Howto:Aircraft reflection shader: Difference between revisions

Jump to navigation Jump to search
add warning against using reflect.eff and reflect-bump-spec in new work. clarify model-combined-* usage
(add warning against using reflect.eff and reflect-bump-spec in new work. clarify model-combined-* usage)
Line 9: Line 9:


=== reflect.eff ===
=== reflect.eff ===
{{note|This shader is deprecated, and should not be used by new development. It is left in due to the vast amount of aircraft relying on it that need to be upgraded to model-combined-deferred/model-combined-transparent}}
   
   
It all began with a simple ReflectionShader, which simply adds a spherical map on the surface of the object. This shader works on not-UVmapped surfaces. Ideal for simple chrome parts.
It all began with a simple ReflectionShader, which simply adds a spherical map on the surface of the object. This shader works on not-UVmapped surfaces. Ideal for simple chrome parts.
Line 15: Line 17:


=== reflect-bump-spec.eff ===
=== reflect-bump-spec.eff ===
{{note|This shader is deprecated, and should not be used by new development. It is left in due to compatibility reasons}}
Later it had been enhanced by a [[Howto: Use the normal map effect in aircraft|Normalmap]]. This makes the surface appear "bumpy" depending on the used normalmap. The alpha channel of the normalmal also defines the specularity of the surface. This shader works only on UVmapped surfaces!
Later it had been enhanced by a [[Howto: Use the normal map effect in aircraft|Normalmap]]. This makes the surface appear "bumpy" depending on the used normalmap. The alpha channel of the normalmal also defines the specularity of the surface. This shader works only on UVmapped surfaces!
'''Example aircraft:''' c172p


=== model-combined-deferred.eff and model-combined-transparent.eff ===  
=== model-combined-deferred.eff and model-combined-transparent.eff ===  
This shaders had been enhanced even more. You have now: reflections, normalmap and specularity map, dirt, lightmaps with 4 simulated lights per object in Default and [[Project Rembrandt|Rembrandt]]. In [[Atmospheric light scattering FAQ|ALS]] you will get in addition also a grain/ rain effect and the darkmap. This shader works only on UVmapped surfaces!
These shaders had been enhanced even more. You have now: reflections, normalmap and specularity map, dirt, lightmaps with 4 simulated lights per object in Default and [[Project Rembrandt|Rembrandt]]. In [[Atmospheric light scattering FAQ|ALS]] you will get in addition also a grain/ rain effect and the darkmap. This shader works only on UVmapped surfaces!
This shader inherits from [[Model-combined_effect|model-combined.eff]], a shader wich has the same features, but won't work correctly in [[Project Rembrandt|Rembrandt]].
This shader inherits from [[Model-combined_effect|model-combined.eff]], an effect which should never be directly used, since it holds only the definition of the common parts of the two effects.
The model-transparent.eff is used for transparent objects which represents transparent surfaces like glass, propdiscs....
The model-combined-transparent.eff has the same features but has the necessary changes to correctly support transparent objects which represents transparent surfaces like glass.


'''Example Aircraft:''' EC 130 B4, EC 135 P2
'''Example Aircraft:''' EC 130 B4, EC 135 P2


=== What will be reflected on the surfaces? ===
=== What will be reflected on the surfaces? ===
All of these effect uses Cubemaps and Cubecrosses from data/Aircraft/Generic/Effects which contains the image of the environment which will be visible as Reflection. Depending on which you choose, the appearance of the model will later change dramatically.
All of these effects use Cubemaps and Cubecrosses from data/Aircraft/Generic/Effects which contains the image of the environment which will be visible as Reflection. Depending on which you choose, the appearance of the model will later change dramatically.


== How to implement the simple ReflectionShader: reflect.eff ==
== How to implement the simple ReflectionShader: reflect.eff ==
422

edits

Navigation menu