java – LIBGDX使用spritesheet或单个图像更好吗?
我是LIBGDX的新手,我为“英雄跑”精灵制作了40帧,我不知道使用spritesheet或单个图像是否更好. Spritesheet非常大,因为即使在1080p设备上我也想要很高的重量.你能告诉我在哪种情况下(spritesheet或个人图片)表现会更好吗?
解决方法
由于此处的其他答案并未指向错误的方向,但并非100%准确,我将添加更详细的解释.
在动画的情况下,它不应该在性能方面有所作为! 无论您使用spritesheet还是单个图像,它们都只会被发送到GPU一次.与spritesheets的唯一区别在于,您只需将纹理绑定一次,并且在渲染不同的东西时不会再强制更改它. 但这并不适用于你的英雄动画.无论是使用spritesheet还是单个图像,在每个帧中都需要再次绑定纹理,并且只绘制其中的一部分(在spritesheet的情况下)或整个图像(在单个图像的情况下),因为在两帧,你也渲染其他非英雄的东西. 如果你在一帧中绘制几个英雄,那么这是一个例外.使用单个图像,您每次都必须切换纹理,因为英雄可能没有同步.在spritesheet的情况下,你只绑定纹理一次,然后用一次sheet-texture绘制所有英雄(在这种情况下只会发生一次纹理绑定). 但是,如果你将角色 – 动画 – spritesheet作为另一个“更大”的spritesheet的一部分,你也肯定会获得性能提升,其中还包含其他纹理.这样,只需一个纹理绑定就可以再次绘制角色和其他东西. spritesheets唯一的问题是,它们往往会浪费一些空间.特别是在移动设备上,当你被迫使用POT(2个幂)大小的纹理时,这可能会有所不同. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- opencv – IplImage Pixel Access JavaCV
- java – 在Swing GUI中嵌入第三方JApplet并传递参数
- java – Spring MVC将属性设置为request / model / modelMa
- java – 在CDI实现项目中包含空beans.xml的目的是什么?
- 常用加解密工具类(MD5、SHA、DES、AES、RSA)
- 如何显示带空格的选项卡?
- Eclipse中引入com.sun.image.codec.jpeg包报错的完美解决办
- 如何在不编写“if语句”的情况下初始化输入字段?
- java – 将JScrollPane添加到显示图像的面板
- base-n系列生成器,用于java中的给定数字,