Ogre Version: : 1 12 13:
Operating System: :Linux Tumbleweed:
Render System: :OpenGL3+
I try recently to make two markers for OD, one of them being Outliner in shaders ( works) the other being the ambient light made brighter.
Problem is not all creatures reacts to such ambient increase :
Code: Select all
for(int ii =0 ; ii < myBrighter->getTechnique(myBrighter->getNumTechniques() - 1)->getNumPasses(); ++ii)
{
Ogre::ColourValue cv = myBrighter->getTechnique(myBrighter->getNumTechniques() - 1)->getPass(ii)->getAmbient();
cv = cv * 8.0;
myBrighter->getTechnique(myBrighter->getNumTechniques() - 1)->getPass(ii)->setAmbient(cv);
}
For example the PitDeamon with such material does not SEEM react to such ambient change, although it has clearly defined the ambient quantity in the script :
Code: Select all
// PitDemon genrated by blender2ogre 0.6.0
import RTSS/NormalMapping_MultiPass from "RTShaderSystem.material"
material PitDemon : RTSS/NormalMapping_MultiPass
{
receive_shadows on
technique
{
pass lighting
{
// Override the normal map.
rtshader_system
{
lighting_stage normal_map PitDemonNormal.png
}
}
pass decal
{
ambient 0.8 0.8 0.8 1.0
diffuse 0.65 0.65 0.65 1.0
specular 0.1 0.1 0.1 0.0 2.0
emissive 0.0 0.0 0.0 0.0
texture_unit decalmap
{
texture PitDemon.png
tex_address_mode wrap
scale 1.0 1.0
colour_op modulate
}
}
}
}
At the same time the Knight SEEMS increasing it's ambient fine : while there is no ambient quantity in it's script :
Code: Select all
// Knight
import RTSS/NormalMapping_MultiPass from "RTShaderSystem.material"
material Knight RTSS/NormalMapping_MultiPass
{
technique
{
pass
{
texture_unit decalmap
{
texture Knight.png
}
}
}
}
material Knight/TWOSIDE RTSS/NormalMapping_MultiPass
{
technique
{
pass
{
texture_unit decalmap
{
texture Knight.png
}
}
}
}
How do I get uniform treatment of ambient from Creatures's scripts using RTShader system ?
What are default ambient , specular, diffuse, emissive value in this system when not defined ?