_MainTex_TexelSize what's the meaning?

uniform float4 _MainTex_TexelSize
where is the value of the float4 _MainTexelSize from?

 

It's set by the application if it's present in the shader - it is the size of a texel of the texture in question, in other words, if it's a 1k x 1k texture, both x and y will be 1.0/1024.0

 

_MainTex_TexelSize is set by magic sauce in the darkness of Unity's source code.

It follows the dimensions of the _MainTex sampler and has these contents:

Vector4(1 / width, 1 / height, width, height)

 

https://forum.unity3d.com/threads/_maintex_texelsize-whats-the-meaning.110278/

 

Texture size

{TextureName}_TexelSize - a float4 property contains texture size information:

  • x contains 1.0/width
  • y contains 1.0/height
  • z contains width
  • w contains height

 

https://docs.unity3d.com/Manual/SL-PropertiesInPrograms.html

posted on 2017-04-21 16:24  jiahuafu  阅读(2871)  评论(0编辑  收藏  举报

导航