繁体   English   中英

Unity Texture vs 2D数组

[英]Unity Texture vs 2d array

我需要在2D数组中的Unity中存储一些图层数据。 我的问题是。 将其存储在Unity Texture或简单的2D数组中,哪一种是最好的(速度和实用性的结合)?

纹理只是2D数字数组,可以通过在GPU上进行存储和转换来对其进行优化。

数字的大小由您选择的格式决定。 常见的是4个浮点数:红色,绿色,蓝色和Alpha。 GPU允许更有效的转换,但将其限制为Unity的着色器语言支持的转换。 在GPU上加载和加载纹理是一个缓慢的过程,这可能是一个相关问题。

在CPU端使用2D阵列更为灵活,但速度较慢。 由于可以使用C#工具链,因此编程和调试更加容易。

我建议在CPU上使用2D阵列,除非:

  1. 您需要频繁渲染数组(例如,每帧)
  2. 您已经在CPU端实现了它,这是性能瓶颈

将数据存储在GPU上可能是过早的优化

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM