- Home /
Does pixel shaders behave like vertex shaders when pixel light count is set to 0 from quality settings ?
I have some objects using pixel shaders in my scene and some vertex shaders. As I am planning to make an android game I wanted all my shaders to behave as vertex shaders. Does changing the value of pixel light count from quality settings to 0 makes the pixel shaders behave as vertex shaders?
Answer by DiegoSLTS · Apr 19, 2019 at 05:22 PM
I'm not sure what you mean by pixel shaders "behaving as" vertex shaders. vertex shadres and pixel shaders do different stuff, vertex shaders process vertex data from meshes you draw, pixel/fragment shaders process fragment data produced by the GPU resterizer. The code you write for a pixel shader runs at a pixel shader processor after the rasterization, it can't run in the vertex processors, it uses different input data and produces different output data.
So what does the pixel lights do? Do they have nothing to do with the shaders used ??
Here are some examples comparing pixel and vertex lights, maybe this will answer your question: https://unity3d.college/2017/07/06/pixel-vertex-lights-unity3d/
What I meant with my answer is that it's not clear what mean by "behaves as". Shaders do other stuff apart from light computations. Built-in shaders are writen to support different configurations of Pixel and Vertex lights count. If you set all your lights as vertex lights, the pixel shaders have to run anyway, they have to do all the other stuff anyway.
Yes, I did read about that, but that makes me think that only built-in shaders are able to use the benefits of pixel light count setting, am I right? I also knew that shaders will do what they have to do anyway, but after reading about the pixel light count setting it confused me...
Your answer
Follow this Question
Related Questions
Mobile performance of splat map shader with distance blending 0 Answers
How to Mask Vertex Animation? 0 Answers
vertex and geometry shader change with distance 0 Answers
How to reuse HLSL shader code? 1 Answer