Engine features I need

Miscellaneous Forums/General Discussion/Engine features I need

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

heh, worst thing about modern shaders is that you have to set up your lighting on a per material basis. Making shaders is pretty tricky, and to be fast shaders need to be optimized and often tailor made to a specific task.

theres about 14 combinations of shadows you can use in ogre, and they all have their quirks. If your not using more than the basic modulative stencil shadows then a fairly good knowledge of shaders is required. Some shadows like Additive shadows require you to have

1. Ambient or depth-only pass
2. Lighting pass with 'iterate once_per_light'. Only lighting components, any textures must solely be concerned with lighting e.g. normal maps. No diffuse maps here.
3. Diffuse pass (1 or more). This modulates with the light that's been built up.

You have to set the number of lights on a per material basis, whether lights can have attenuation etc. Luckily Ogre has some auto_paramaters to take care of much of this for you. But for artists that arent familiar with coding, shaders can be a royal pain. Most people just use a handfull of shaders that are avaliable in the public domain and are restricted to those.

A lot of the fancy effects in modern engines are post effects done globaly to the entire screen after your meshes and materials are rendered. In Ogre these are called compositors.

Anyway, Shaders are a lot more complicated than fixed function, but with the complexity you get a lot of fine control.