Game Dev Lab

Techniques In Game Dev And Computer Graphics


  • Home

  • Tags

  • Categories

  • Archives

  • Docs

  • Resources

TerrainAtlas

Posted on 2020-01-17 | In CG

贴图内存优化

Posted on 2019-09-24 | In U3D

unity移动端贴图压缩格式

格式 通道 适用平台 压缩率1 bits/pixel
RGB Compressed PVRTC 2 bits RGB Android(PowerVR),iOS 8.33% 2
RGBA Compressed PVRTC 2 bits RGBA Android(PowerVR),iOS 6.25% 2
RGB Compressed PVRTC 4 bits RGB Android(PowerVR),iOS 16.67% 4
RGBA Compressed PVRTC 4 bits RGBA Android(PowerVR),iOS 12.5% 4
RGB Compressed ETC 4 bits RGB Android,iOS 16.67% 4
RGB Compressed ETC2 4 bits RGB Android(OpenGL ES 3.0),iOS(OpenGL ES 3.0) 16.67% 4
RGB + 1-bit Alpha Compressed ETC2 4 bits RGBA Android(OpenGl ES 3.0),iOS(OpenGL ES 3.0) 12.5% 4
RGBA Compressed ETC2 8 bits RGBA Android(OpenGL ES 3.0),iOS(OpenGL ES 3.0) 25% 8
R Compressed EAC 4 bits R Android(OpenGL ES 3.0),iOS(OpenGL ES 3.0) 50% 4
RG Compressed EAC 8 bits RG Android(OpenGL ES 3.0),iOS(OpenGL ES 3.0) 50% 8
RGB Compressed ASTC 4x4 block RGB Android,iOS(A8) 33.33% 8
RGB Compressed ASTC 5x5 block RGB Android,iOS(A8) 21.33% 5.12
RGB Compressed ASTC 6x6 block RGB Android,iOS(A8) 14.81% 3.56
RGB Compressed ASTC 8x8 block RGB Android,iOS(A8) 8.33% 2
RGB Compressed ASTC 10x10 block RGB Android,iOS(A8) 5.33% 1.28
RGB Compressed ASTC 12x12 block RGB Android,iOS(A8) 3.71% 0.89
RGBA Compressed ASTC 4x4 block RGBA Android,iOS(A8) 25% 8
RGBA Compressed ASTC 5x5 block RGBA Android,iOS(A8) 16% 5.12
RGBA Compressed ASTC 6x6 block RGBA Android,iOS(A8) 11.11% 3.56
RGBA Compressed ASTC 8x8 block RGBA Android,iOS(A8) 6.25% 2
RGBA Compressed ASTC 10x10 block RGBA Android,iOS(A8) 4% 1.28
RGBA Compressed ASTC 12x12 block RGBA Android,iOS(A8) 2.78% 0.89

1:对比RGB24 或 RGBA32

unity自动做的优化

  • normal map会被压缩成两个通道

unity提供的分析接口

  • 文件大小
    • UnityEditor.TextureUtil.GetStorageMemorySizeLong(Texture)
  • 占用内存大小
    • UnityEditor.TextureUtil.GetRuntimeMemorySizeLong(Texture)
    • UnityEngine.Profiling.Profiler.GetRuntimeMemorySizeLong(Texture)

其中查看内存大小的接口在Editor下得到的数据会偏大,因为Editor下会创建一份贴图的副本。
如果贴图有生成mipmap,那么这份副本会从mipmap中拷贝,否则副本的分辨率等于贴图原始分辨率(别问我是怎么知道的)。
要在Editor下获得贴图的运行时内存占用,比较准确的方法是使用GetStorageMemorySizeLong方法2,再根据贴图的可读写标记决定是否乘以系数2。

2:在不开启Read/Write的情况下,GetStorageMemorySizeLong方法得到的大小和实际内存占用几乎没有区别。

Read more »

猪猪

Posted on 2019-06-01 | In Gallery

猪猪

Jade

Posted on 2019-05-12 | In Gallery

Jade

搞破坏.beta

Posted on 2019-04-22 | In CG

操作说明:

  • 切割:鼠标左键/单指拖拽
  • 旋转:鼠标右键/双指拖拽
Read more »
123
PUM4CH3И

PUM4CH3И

12 posts
3 categories
4 tags
GitHub Mail ArtStation
© 2018 — 2020 PUM4CH3И
闽ICP备19001111
闽公网安备 35020302033360 号