繁体   English   中英

优化片段着色器

[英]Optimize Fragment Shader

我想优化片段着色器性能。 目前我的片段着色器是

fragment half4 fragmen_shader_texture(VertexOutTexture vIn [[stage_in]],
                                       texture2d<half> texture [[texture(0)]]){

    constexpr sampler defaultSampler;

    half4 color =  half4(texture.sample(defaultSampler, vIn.textureCoordinates));


    return color;
}

此任务是返回纹理颜色。 无论如何,优化不只是这个。

没有优化片段着色器AFAICT的选项,除了采样纹理外,它几乎什么也没有做。 但是,根据您的情况,可能还有以下方面的优化范围:

  • 通过使用更紧凑的纹理格式(565或4444而不是8888,或者更好的4位或2位PVRTC)来减少带宽使用。
  • 如果不需要alpha混合,请确保禁用alpha混合。
  • 如果纹理具有很多“空白空间”(例如,认为具有中心圆形斑点和空白角的粒子纹理),则可以通过将其渲染为八边形而不是四边形来确保几何形状更紧密地适合它。
  • 如果有可能将图像最小化,请启用mipmapping。 禁用更昂贵的mipmapping选项,例如三线性/各向异性过滤。

暂无
暂无

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

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