Amber Platform Support
Amber Platform Support
The new platform - Amber - is strongly related to the new supported API - OpenGLES1.1. OpenGLES1.1 provides less features than OpenGLES3.0. The most important missing feature is the programmable pipeline - (Shader configurations). On Amber platform, one cannot create shaders. However, the platform is simulated over OpenGLES3.0 so there are some pre-defined shaders that emulate the specific 1.1 functionality.
In order to accommodate SceneComposer to Amber platform, several changes were done/are currently under development (Mantis 5393):
Shaders:
- Following Shader (substitutes) shall be exposed: Default Shader; BRDF Lighting Shader; Emission Texture Shader; Gradation Texture Shader.
- ShaderParamSetters (UniformSetters) remain and are required to set parameters of special effects, like BRDF.
- Shader Editor shall be read only. This allows at least to introspect usage of the effect parameters.
- Disallow creation and import of new shaders.
- Target Shader Compiler replaces effects with binary identifier in asset.
Textures:
- Amber supports two default or three BRDF textures
- SceneComposer shall allow three textures in general and throw warning if three textures are used with any other shader than BRDF
- If two default textures are used, internally the default blend mode is applied [Alpha blending with src*(srcAlpha) + dst*(1-srcAlpha)]
- No option to set (other) blend mode for multi-texturing.
- Tangients in VertexBuffer required for BRDF textures can be generated by SceneComposer
Render Mode:
- Alpha Blend Values are ignored, BackStencil function and operation are ignored.
Candera Objects in Toolbox to remove:
- Morphing Mesh, Stereo Camera, SkyBox, Cube Map, Point Sprite.
Render Targets:
- Remove Conformant Property (EGL Conformance)
Lights:
- 8 Lights are supported. Range property is ignored. All light types supported.
Info - in simulation, Amber P renders objects without effects (default shader is associated) with OpenGL 1.1 API without shaders. SC Gizmos plus objects with special effects are rendered with OpenGL 2.0 via RenderDevice Extension.