Hi everyone,
I'm back after quite a long time of inactivity - I'm wondering what progress has been made, if any, on the shaders front.
I ask because I found the code for the old FPSC cube map shader because as far as I know Game Guru doesn't have one. I ran it through Nvidia's excellent FX composer where it seemed to work an absolute treat, particularly when you slightly modify the code and turn it into a sort of chrome shader, almost appearing to be a mirror.
Unfortunately whilst everything appeared to work well there, once saving it and attempting to use it in Game Guru I have just a black outline of the entity. I've changed pretty much every setting I can think of on the fpe file and on the shader itself, tried the entity as static and dynamic, various levels of shader settings, and eventually after four hours of work I have a black outline still.
I'm surprised to note that the first real mention of a shaders system is quite some way down the features list. The present shaders library is very small and doesn't really promote expansion - it's a wall of code that probably made sense to the person who wrote it, but for anyone attempting to adapt it it's almost impossible (I think probably because they all have to fit in with the hard coded ambient system). Add that to the fact that shaders are (as they always have been) a very elusive and mostly undocumented feature and the fact that the ability to change entity textures in editor has been removed (why is that, by the way?), and that the shaders system doesn't appear to be backwards-compatible.
Is there no great desire for a properly sorted shader system, with a materials library (such as water, snow, ice, metal, wood, plastic, lava, glass, sand, expandable by the user) and the ability for the user to once and for all select and define texture maps on an entity by entity basis (maybe I want to re-use the same normal map texture multiple times with the same diffuse map). Maybe Game Guru could automatically generate the required maps based on the type of material you have specified.
I remember some years back using the CryEditor which could take any texture and add overlays, making the entity appear to be frozen or dripping with rain.
It seems to me that the shaders system hasn't advanced greatly from the FPSC Classic days - one might argue it's actually less advanced now because FPSC vanilla shaders no longer work.
I've mocked up a basic idea of how I think it should work. I don't think it would actually use any more resources than are presently used - after all it wouldn't do anything a particularly determined user couldn't do, it would just make it a hell of a lot easier.