|
|
| CForwardRP (bool linearRGB=true, bool useEmission=true) |
| virtual void | initRender (int w, int h) |
| virtual void | resize (int w, int h) |
| virtual void | render (ITexture *target, CCamera *camera, CEntityManager *entityManager, const core::recti &viewport, int cubeFaceId=-1, IRenderPipeline *lastRP=NULL) |
|
void | setPostProcessor (IPostProcessor *pp) |
|
ITexture * | getEmissionTexture () |
| virtual bool | canRenderMaterial (CMaterial *m) |
| virtual bool | canRenderShader (CShader *s) |
| virtual void | setCamera (CCamera *camera) |
| virtual void | setNextPipeLine (IRenderPipeline *next) |
|
virtual void | onNext (ITexture *target, CCamera *camera, CEntityManager *entity, const core::recti &vp, int cubeFaceId) |
| virtual void | drawMeshBuffer (CMesh *mesh, int bufferID, CEntityManager *entity, int entityID, bool skinnedMesh) |
| virtual void | drawInstancingMeshBuffer (CMesh *mesh, int bufferID, CShader *instancingShader, CEntityManager *entityMgr, int entityID, bool skinnedMesh) |
|
virtual void | updateTextureResource (CMesh *mesh, int bufferID, CEntityManager *entity, int entityID, bool skinnedMesh) |
|
virtual void | updateShaderResource (CShader *shader, CEntityManager *entity, int entityID, video::SMaterial &irrMaterial) |
|
void | beginRender2D (float w, float h) |
|
void | renderBufferToTarget (float sx, float sy, float sw, float sh, SMaterial &material, bool flipY=true, bool flipX=false) |
|
void | renderBufferToTarget (float dx, float dy, float dw, float dh, float sx, float sy, float sw, float sh, SMaterial &material, bool flipY=true, bool flipX=false) |
|
void | renderEnvironment (CCamera *camera, CEntityManager *entityMgr, const core::vector3df &position, ITexture *texture[], int *face, int numFace, bool allPipeline) |
|
void | renderCubeEnvironment (CCamera *camera, CEntityManager *entityMgr, const core::vector3df &position, ITexture *texture, int *face, int numFace, bool allPipeline) |
|
void | unbindRTT () |
|
virtual ERenderPipelineType | getType () |
|
virtual void | render (ITexture *target, CCamera *camera, CEntityManager *entity, const core::recti &viewport, int cubeFaceId=-1, IRenderPipeline *lastRP=NULL)=0 |
|
virtual void | onNext (ITexture *target, CCamera *camera, CEntityManager *entity, const core::recti &viewport, int cubeFaceId)=0 |
This object class will perform draw commands using "Forwarder rendering".
This is the most basic rendering style, where lighting is calculated directly from the shader. Because of this, forward shaders generally only support one directional light (CDirectionalLight). Any other complex lighting is baked into a lightmap, and the shader computes all the visual output.
- See also
- CShadowMapRP, CDeferredRP