如何从 TextureImporterFormat 到 TextureFormat?
How to go from TextureImporterFormat to TextureFormat?
这是一个特定于 Unity3d 的问题,但我想我应该在这里提问,因为我在 Unity 论坛上没有得到有用的反馈。
简而言之;我需要为任何 TextureImporterFormat
.
获取相应的 TextureFormat
我正在写一篇AssetPostprocessor
;我想在导入后更改纹理,然后压缩它们。
所以在 OnPostprocessTexture(Texture2D texture)
函数中我想以编辑器中定义的纹理格式压缩纹理(在 TextureImporter
中),就像我在这个函数中什么都不做一样.
然而,压缩函数(EditorUtility.CompressTexture()
)期望格式为TextureFormat
类型,但我能得到的唯一格式是TextureImporterFormat
.[=18=类型]
我如何从一个到另一个?
或者我怎样才能完全避免这个问题?
我现在是手动做的,真麻烦。特别是因为它根据 Unity 的版本而有所不同,这也意味着它可能会随着任何新的 Unity 更新而改变。 :(
我忘记了这个问题,有点晚了,但我想我还是应该回答一下。
原来我误解了我得到的结果。
此函数后自动进行压缩。
我做了一个测试,看看在使用 OnPostprocessTexture() 后纹理是否被压缩,我认为它们没有,但它们是。
这是一个特定于 Unity3d 的问题,但我想我应该在这里提问,因为我在 Unity 论坛上没有得到有用的反馈。
简而言之;我需要为任何 TextureImporterFormat
.
TextureFormat
我正在写一篇AssetPostprocessor
;我想在导入后更改纹理,然后压缩它们。
所以在 OnPostprocessTexture(Texture2D texture)
函数中我想以编辑器中定义的纹理格式压缩纹理(在 TextureImporter
中),就像我在这个函数中什么都不做一样.
然而,压缩函数(EditorUtility.CompressTexture()
)期望格式为TextureFormat
类型,但我能得到的唯一格式是TextureImporterFormat
.[=18=类型]
我如何从一个到另一个?
或者我怎样才能完全避免这个问题?
我现在是手动做的,真麻烦。特别是因为它根据 Unity 的版本而有所不同,这也意味着它可能会随着任何新的 Unity 更新而改变。 :(
我忘记了这个问题,有点晚了,但我想我还是应该回答一下。
原来我误解了我得到的结果。 此函数后自动进行压缩。
我做了一个测试,看看在使用 OnPostprocessTexture() 后纹理是否被压缩,我认为它们没有,但它们是。