Compositor脚本与类型
我们先看下面一张基本的Compositor的脚本图:
上面就是一个Composition资源.在解析时,主要是使用CompositionPass, CompositionTargetPass, CompositionTechnique, Compositor,而在渲染时,使用RenderSystemOperation, TargetOperation, CompositorInstance, CompositionChain.管理Composition用CompositionManage.
Compositor主要类型说明.
CompositionPass:
一次渲染环境设置,包含基本渲染设置,根据PassType不同,生成不同的RenderSystemOperation,主要有如下几种:RSClearOperation, RSStencilOperation, RSSetSchemeOperation, RSRestoreSchemeOperation, RSQuadOperation, RenderSystemOperation.下面以opengl的API举例.
当PassType为PT_CLEAR,对应RSClearOperation,用到的属性为mClearBuffers, mClearColour, mClearDepth, mClearStencil.在opengl中,对应操作FFP的API是glClear(color|depth,stencil).
enum PassType { PT_CLEAR, /// Clear target to one colour PT_STENCIL, /// Set stencil operation PT_RENDERSCENE, /// Render the scene or part of it PT_RENDERQUAD, /// Render a full screen quad PT_RENDERCUSTOM /// Render a custom sequence };