雪碧

读取指定路径图片

你说的曾经没有我的故事 提交于 2020-01-04 16:28:38
public static Sprite GetSpriteByIO(string _path) { FileStream fileStream = new FileStream(_path, FileMode.Open, FileAccess.Read); fileStream.Seek(0, SeekOrigin.Begin); byte[] bytes = new byte[fileStream.Length]; fileStream.Read(bytes, 0, (int)fileStream.Length); fileStream.Close(); fileStream.Dispose(); Texture2D tex = new Texture2D(1, 1); tex.LoadImage(bytes); Sprite sp = Sprite.Create(tex, new Rect(0, 0, tex.width, tex.height), new Vector2(0.5f, 0.5f)); sp.name = tex.name; return sp; } 来源: https://www.cnblogs.com/SevenPixels/p/11062798.html

cocos2d对动画的各种操作

。_饼干妹妹 提交于 2019-12-06 16:24:36
关于动画的各种操作,总结一下以便以后复习查找。 内容简要: 1、 瞬时动作 2、 延时动作 3、 组合动作 4、动画 5、速度变化 6、函数调用 7、创建动作动画 8、控制动画帧的速度 原文地址: http://blog.csdn.net/dingkun520wy/article/details/7014233 ----------------------------------------------------------------------------------------------------------------------------------------------------- 瞬时动作 :瞬时动作的基类是InstantAction 1、放置位置 CGPoint p = ccp(width,height); [sprite runAction:[CCPlace actionWithPosition:p]]; 2、隐藏 [sprite runAction:[CCHide action]]; 3、显示 [sprite runAction:[CCShow action]]; (效果类似亍 [node setVisible:YES]. 之所以作为一个劢作来实现是为了可以不其 他劢作形成一个连续劢作) 4、可见切换 [sprite runAction:

cocos2D-X 常用功能封装

帅比萌擦擦* 提交于 2019-12-03 06:27:55
Packaging_Kernel.h #pragma once #include <string> #include <map> #include <vector> #include "cocos2d.h" #include "ui\CocosGUI.h" #include "SimpleAudioEngine.h" #include "cocostudio\CocoStudio.h" #include "cocos\editor-support\spine\SkeletonAnimation.h" #include "cocos\platform\desktop\CCGLViewImpl-desktop.h" #include "cocos\math\CCGeometry.h" #include "cocos\editor-support\spine\extension.h" #include "cocos\math\Vec2.h" #include "cocos2d/extensions/GUI/CCScrollView/CCTableView.h" #include <iostream> #include <windows.h> #include <tchar.h> using namespace std; using namespace cocos2d; using

02.基本动作

我的未来我决定 提交于 2019-12-03 03:39:30
玩家控制的小船: def play_lives(num_icons, batch=None): """ 小船图标 :param num_icons: 数量 :param batch: 批处理 :return: """ play_lives = [] for i in range(num_icons): new_sprite = pyglet.sprite.Sprite(img=resources.player_image, x=785 - i * 30, y=585, batch=batch) new_sprite.scale = 0.5 # 比例 play_lives.append(new_sprite) return play_lives 运动类physicalobject: """运动类physicalobject""" import pyglet class Physicalobject(pyglet.sprite.Sprite): """ 存储对象的速度 """ def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.velocity_x, self.velocity_y = 0.0, 0.0 def update(self, dt): """ 每个对象都需要在每一帧进行更新

ThreeJS之sprite高级进阶使用

匿名 (未验证) 提交于 2019-12-02 23:03:14
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>threejs之Sprite</title> <script src="../js/three.js"></script> </head> <body> <!-- 精灵 --> <!-- --> <canvas id="cc"></canvas> <script type="text/javascript"> // 创建一个场景,它将保存我们所有的元素,如物体、照相机和灯光。 var scene = new THREE.Scene(); // 创建一个摄像机,它定义了我们所处的位置. var camera = new THREE.PerspectiveCamera(45, window.innerWidth / window.innerHeight, 0.1, 1000); // 创建渲染并设置大小 指定渲染canvas对象 var renderer = new THREE.WebGLRenderer({ canvas: document.querySelector("#cc")//渲染器绘制其输出的画布, }); renderer.setClearColor(0xEEEEEE); renderer.setSize(window.innerWidth,

ps_cc:制作sprite拼贴图片

扶醉桌前 提交于 2019-11-29 07:49:47
本文转载于: 猿2048 网站 ps_cc:制作sprite拼贴图片 我们的目标是: 将 合并为一张图片 step1:制作动作,便于批处理和重复使用 首先随便 新建空白文档 (建议:90x300px) 录制动作,alt+F9 上图中,可以新建分组前端,再新建动作sprite,这样可以方便管理和调用。 正题来了! 创建新动作-> 1、打开一个小图 2、图像->模式->RGB(避免有的图片是索引之类的,那样图片会不清晰) 3、全选 4、复制 5、返回刚 新建的空白文档,粘贴 6、关闭小图->不保存 7、停止录制 step2:下次使用的时候,根据图层,算出合适的高度和宽度,新建空白文件 step3:执行批处理,“文件”->“自动”->“批处理” ,找到相应动作-->选择目录文件-->勾选覆盖动作中的“打开”命令 然后就可以看到图层全部导入了 step4:把图层排列 1、把所有图层移到左上角: 选择所有图层 ,选择 “图层”-->“对齐”-->“顶端” 和 “图层”-->“对齐”-->“左侧” 2、找到你希望排到最后的图层,拖动到文档底端 3、选择“图层”->“分布”->“顶端”,这样将平分各个图层间的距离。 上图 至此,制作sprite图片的关键步骤都列出来了。希望能帮到各位看官。 来源: https://my.oschina.net/u/4191619/blog/3103188

Cocos2d-x3.0模版容器详解之二:cocos2d::Map<K,V>

人走茶凉 提交于 2019-11-27 16:45:20
1.概述 版本: v3.0 beta 语言: C++ 定义在 “COCOS2DX_ROOT/cocos/base” 路径下的 " CCMap.h " 的头文件中。 ? 1 2 template < class K, class V> class CC_DLL Map; cocos2d::Map<K,V> 是一个内部使用了 std::unordered_map 的关联容器模版。 std::unordered_map 是一个存储了由key-value键值对组合成构成的关联性容器,允许基于键对单个元素进行快速检索。 在 unordered_map 中,key value 一般用来标识唯一的一个元素,而 mapped value 是一个对象,其内容关联到对于的 key value。 在内部,unordered_map 的元素并不依赖于 key 或者 mapped 值来使用任何的特定方式排序,而是取决于它们的哈希值,以便通过他们的key值快速访问单个元素(使用平均时间复杂度)。 在 Cocos2d-x v3.0 beta 之前,存在另一个顺序性容器 cocos2d::CCDictionary ,这将会被弃用。 我们很细致地设计了 cocos2d::Map<K,V> 容器作为 cocos2d::CCDictionary 的替代品,所以请使用 cocos2d::Map 代替 cocos2d:

Learning Cocos2d-x for WP8(8)——动作Action

梦想的初衷 提交于 2019-11-26 21:45:33
游戏很大程度上是由动作画面支撑起来的。 动作分为两大类:瞬间动作和延时动作。 瞬间动作基本等同于设置节点的属性,延时动作会执行一段时间,不需要清除这两种动作,一旦动作完成,就会从节点上清除并释放所占内存。 封装CCSpriteBatchNode的使用方法 BatchAnimatitonSprite 1 CCSprite* SpriteActionLayer::BatchAnimatitonSprite(CCLayer* pLayer,CCSprite *pSprite, CCPoint* spriteStartPoint, const char *strFramesFileName, const char *strFramesFileNameImg, const char *strFirstFrameName, const char *strEachFrameName, int frameCount, float frameDelay) 2 { 3 // CCSpriteBatchNode 4 // 创建批处理节点,读取plist文件 5 CCSpriteFrameCache* cache= CCSpriteFrameCache::sharedSpriteFrameCache(); 6 cache-> addSpriteFramesWithFile