On mobile platforms shader optimization is necessary and improve FPS.
But on desktop platforms is optimization still needed (and will improve FPS) or does the GPU driver handle it ?
On mobile platforms shader optimization is necessary and improve FPS.
But on desktop platforms is optimization still needed (and will improve FPS) or does the GPU driver handle it ?
You always need to optimize for any platform you're developing on. There are many ways in which you can write a working algorithm that isn't cache friendly or does useless computation.
Also, you should remember that there are many GPUs in existence and all can behave (performance-wise) differently on possibly the same algorithm because the architecture are different and many other factors can make GPUs range from fast to sluggish.
If you want to optimize your shaders, there is a tool called glsl-optimizer that is (mostly) used on mobile platforms and used directly in Unity, but you can still use it on desktop as it performs many optimizations (constants propagation, loop unrolling, etc...) on your code.
Also, if you want to optimize and profile your application, you can use tools such as apitrace, renderdoc or GLSL-Debugger (even though this one seems to be less actively developed).
EDIT: Also, you can look at this page for a comprehensive list of profilers and debuggers.
Hope this helps.
#version 150 core
or less. Well that's the hard part. Also, you're not going to find any other publicly available optimizer (at least that I know of) :/
\$\endgroup\$
I would recommend optimizing it anyway because you can't just let the GPU do all the magic. Try it out on as many rigs as you can as there will always be these random people that don't have good computers. I had this several times with some of my friends as I use the new macbook pro retina display and they use the old macbook pro with a decreased performance. It definitely helped a lot after I optimized my game for them.