- Home /
OP too dumb
What is the best way to deactivate ALL pro-shaders only from a project?
How can I disable all pro only shaders from a project? One way I can think of is to return my pro license and make builds by using free version of Unity.
What is the best way of accomplishing this? Is there a switch in Unity that disable the use of pro shaders in a project and use only the basic ones?
Additional info: Some people would like to use my training simulation, however, their department has 5-6 y.o. single core processor PCs with no fancy graphics card. Trying to get funding to upgrade all PCs is an absolute bleak attempt at the moment.
Answer by Bunny83 · Jun 19, 2014 at 11:24 PM
I think you don't know what a shader is, do you? A shader is responsible for shading your triangles on your screen. If you don't have a shader you wouldn't see anything. Next thing is the pro license only add some very special features, most shaders will work with the free version as well.
If you don't have a good PC, the most problems you get from too many drawcalls or too many triangles / vertices. Shaders are almost irrelevant unless you don't have some heavy stuff in the fragment shader.
So shaders can't be "deactivated". You can replace the shader of a Material with another one, however most shaders are there to serve a specific effect. Replacing a transparent shader with the default diffuse will result in strange results.
There's no way to deter$$anonymous$$e if a shader needs Unity pro or not. The shaders actually should run even on Unity free.
Only certain API features are pro only like RenderTextures and shadows for example. If a shader really doesn't work, it's mainly because the clients hardware isn't capable of running that shader which is independent from the "pro" state of your application.
You can check if a shader is supported on the users hardware by using the Shader.isSupported property, however almost all shaders have a built-in fallback shader which should work on almost all kinds of hardware. If the fallback doesn't work, it's most likely that your whole application won't run at all.
Follow this Question
Related Questions
Material doesn't have a color property '_Color' 4 Answers
A node in a childnode? 1 Answer
DirectX11 & Unity problem 1 Answer
Upgraded to Unity 3.4 problem 2 Answers
The name 'Joystick' does not denote a valid type ('not found') 2 Answers