cocos2dx Material System讲解二
material 里面其它很好理解,重点讲解renderstate,这里所有内容在cocos/renderer/CCRenderState.cpp里面,我这里简单的提炼一下,方便以后使用。 renderState blend=true/false blendSrc=ZERO/ONE/SRC_COLOR/ONE_MINUS_SRC_COLOR/DST_COLOR/ONE_MINUS_DST_COLOR/ SRC_ALPHA/ONE_MINUS_SRC_ALPHA/DST_ALPHA/ONE_MINUS_DST_ALPHA/ CONSTANT_ALPHA/ONE_MINUS_CONSTANT_ALPHA/SRC_ALPHA_SATURATE blendSrc=ZERO/ONE/SRC_COLOR/ONE_MINUS_SRC_COLOR/DST_COLOR/ONE_MINUS_DST_COLOR/ SRC_ALPHA/ONE_MINUS_SRC_ALPHA/DST_ALPHA/ONE_MINUS_DST_ALPHA/ CONSTANT_ALPHA/ONE_MINUS_CONSTANT_ALPHA/SRC_ALPHA_SATURATE cullFace = true/false cullFaceSide = BACK/FRONT/FRONT_AND_BACK frontFace=CCW/CW depthTest = true/false depthWrite=true/false depthFunc=NEVER/LESS/EQUAL/LEQUAL/GREATER/NOTEQUAL/GEQUAL/ALWAYS stencilTest等相关内容在文档中被注释掉了,这里就不说了,如果用到了再说。 depthTest作用:用来开启更新深度缓冲区的功能,也就是,如果通过比较后深度值发生变化了,会进行更新深度缓冲区的操作。启动它,OpenGL就可以跟踪再Z轴上的像素,这样,它只会再那个像素前方没有东西时,才会绘画这个像素。在做绘画3D时,这个功能最好启动,视觉效果比较真实。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |