问题标签 [texturepacker]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - CCAnimate 只是第一次滞后
在“按下”按钮上,我执行如下动画:
以前我加载了框架:
然而,动画在第一次之后运行得更加流畅,第一次需要一段时间才能开始。我预加载动画错误吗?有没有办法让动画第一次流畅运行?
更新
如果我在预览中设置以下内容,它第一次运行速度很快:
因为它与运行动画相同。但是,这仅在我实际显示动画时才有效(使用 addChild 和所有内容)
ios - 为什么在 Cocos2D 2.0 支持 NPOT 纹理时使用纹理图集?
据我所知,从 Cocos2D 2.0 开始,1025*1025 纹理使用的内存并不比 1024*1024 纹理多 4 倍,只是按比例增加。
如果我把我的纹理放到图集中,几乎总是有一些未使用的空间。这是浪费的。(更不用说 iOS5 POT 纹理内存错误,它使 POT 纹理图集浪费了 33% 以上的内存。)但如果我只是按原样使用我的纹理,那么就不会浪费内存。在我看来,Texture Atlases 的唯一优势是能够使用 SpriteBatchNode。但我的应用程序内存严重受限,我只支持支持 NPOT 纹理的设备。我知道 NPOT 纹理处理有点慢,但节省内存对我来说是最重要的。
我可能错了,请确认我,或者告诉我为什么我错了。谢谢!:)
cocos2d-iphone - TexturePackager 导出到 Cocos2d 现有的 sprite sheet
我有一个现有的精灵表在 6x6 矩阵上划分图像。现在我想在我的 Cocos2d 项目中使用它。然而 CCSpriteFrameCache 需要一个 .plist 文件以便稍后在批处理节点上使用它们。所以问题是我如何生成一个包含 Cocos2d 元数据的 .plist 文件,以便正确渲染精灵表。这可以使用 Texture Packager 来完成吗?非常感谢。
android - 如何在 AndEngine 中创建循环动画?
我想做一个“链”或循环动画,如下所述:
LABEL start do Anim1->Anim2->Anim3->Anim4 GOTO start
上面会做一个循环循环:Anim1->Anim2->Anim3->Anim4 然后回到 Anim1 等等。
我无法将所有 PNG 合并到一个纹理中,因为 Andengine/Android 在加载资源方面受到限制。但是,当我将最初的大图块分成 4 个小图块时,一切正常。
我尝试在 Anim1 中使用 AnimationListener。当 onAnimationFinished() 被调用时,我分离 Anim1,运行 Anim2 并在内部函数链中执行此操作。但是,我在Anim4的时候,不知道怎么回到起点,附加Anim1。
注意:如果您知道我如何打包一组 150 个 PNG,这些 PNG 单独很大,但适合 4096x4096 像素的图块,那么所有这些问题都可以解决。
谢谢您的帮助!
编辑(按照 JiMMaR 提出的解决方案):我正在使用 Texture Packer,整体 Texture 超过 4096*4096,导致 Android 上出现 OutOfMemory 错误。
目前,我已将纹理分成四个图块和四个 PNG 图块图。
cocos2d-x - Cocos2d x 如何使用纹理打包器创建 CCMenuItemImage
我正在使用TexturePacker来打包我的精灵。然后我尝试使用它,但我不知道如何使用该精灵表创建 CCMenuImageItem。原因 CCMenuImageItem::create 已定义为:
谢谢!
cocos2d-android - 使用 Mac Texture Packer 进行 Cocos2D Android 移植
我刚刚使用 cocos2d 完成了一个 iPhone 游戏。我使用 Texture Packer 程序来创建我的游戏所需的纹理文件。该程序创建了一些 pvr.ccz 压缩文件。
现在我想将游戏移植到Android。我安装了 Android SDK 并准备导入 cocos2d-android 库。但我不清楚我是否可以使用为 iPhone 创建的相同 pvr.ccz 文件。我到底需要在 Texture Packer 中做什么来创建可在 cocs2d-android 项目中使用的输出文件?
请注意,我肯定想使用 cocos2d-android,因为我是从 iPhone android 移植的,所以我不想切换到 libgdx 或其他一些游戏引擎。
json - 将新属性插入 JSON
我知道我可以像这样将新属性插入 JSON:
但是我需要使用的 JSON 是这样的(来自 Texture Packer):
如何将新属性插入“框架”?由于语音标记,这让我感到困惑。
cocos2d-iphone - 转移到 spritesheets 会导致闪烁,尽管挤出
我有一个 cocos2d iOS 游戏,它最初是用直接图像(没有精灵表)构建的。我正在迁移到 spritesheets,并使用 Texture Packer 来生成 spritesheets。我有几个元素彼此相邻呈现,在初始的非 spritesheet 模式下运行良好。一旦我将这些图像放入精灵表中,图像的边界就会出现一些闪烁。我对每个 spritesheet 使用了 2 个像素的拉伸,并且消除了一些闪烁,但仍然有一些。我有几个问题:
- 闪烁是否可能是由于在图像上运行 ImageOptim 造成的?我不认为这是问题所在,因为我记得即使使用优化的图像,也不会出现闪烁。
- 由于不同的 RGB 设置,一些彼此相邻的图像位于不同的 spritesheet 中 - 这会导致问题吗?我可以将相邻的图像放入同一个精灵表中,但这会在内存方面造成一些开销,因为我可能会放置一个不透明的图像以及一个带有 RGBA4444 的半透明图像(而不是 RGB565 用于不透明) .
- 我假设不需要更改渲染逻辑。渲染图像重叠(如一些消除闪烁的响应所建议的那样)是否有可能解决问题?
easeljs - 为什么easeljs会失败,TexturePacker的动画何时会改变小数位数?
我不知道问题是画架错误还是我做错了什么(很可能)。当我使用 TexturePacker 对象制作动画时,在具有不同小数位数的数字之间的数组位置中的动画不会显示。(例如 9 到 10、99 到 100)
jsfiddle中的代码示例:
android - Andengine - 使用 TexturePacker Spritesheet 时内存使用量增加
我正在使用andengine为Android平台开发游戏。我曾经定期检查应用程序的内存使用情况。
这是使用精灵表之前的内存使用情况
后来我知道了 SpriteSheet 和 Andengine 的 TexturePackerExtension
我试图在我的应用程序中使用它。我创建了一个精灵表,其中包含整个游戏所需的所有图像。
当我加载它时,我的堆比前一个增加了。
我假设使用 SpriteSheet 后堆会减少。
什么地方出了错?
我应该怎么做才能使用 SPriteSheet 和 TexturePackers 来管理内存。
使用的软件:
- CodeANdWeb.com的 TexturePacker
- AndEngine GLES2
- 和engine-TexturePacker 扩展。
[编辑] [已解决]
总堆似乎不是一个更大的问题。我终于设法控制了总堆内存。
我简单地为实际游戏资源创建了 2 个 spritesheets,1 个用于菜单资源。我只加载当前需要的精灵表。在加载另一个 spritesheet 之前,我曾经卸载以前的 spritesheet 等等..
我希望这是一个正确的方法。
创建 2 个 spritesheets 后,我的堆内存永远不会超过 18 mb:D