常用Shader 3D与天空盒 23:53
程序员文章站
2022-03-26 17:22:56
...
1)笔记
1)Unlit Shader(builtin-unlit)及其重要的参数: 大部分都是使用找个shader
(1)Effect: 使用哪一个shader
最高效的3D shader,效果最少,把一个3D模型最基本的显示出来-->Unlit == unlight 不受光照影响;
只是把物体本来的样子显示出来;
贴图-->3D模型上-->高效-->我们的微信小游戏unlit
(2)Technique: 3D物体渲染对列:
opaque: 不透明物体的渲染队列,把遮挡的剔除掉,一般角色都是非透明
Transparent: 透明物体的渲染队列,透明物体的消耗大一点,你没办法把前面哪些剔除掉,因为是透明的,你还要混合前面的混合后面的
(3)Pass: 只有一个pass(完整渲染流程)
USE VERTEX COLOR: 是否使用顶点颜色
USE TEXTURE: 是否使用纹理贴图
FLIP UV: 是否翻转 一般不勾选
TillingOffset:从哪一个偏移开始来贴的。 一张贴图可能重复好几次,除非有平铺纹理的时候用(如:贴地板砖)
MainTexture: 指定贴图的资源-->没有纹理贴图,那么就是白白的这么个玩意,等绘制的时候,就把贴图贴到这个模型上;
指定贴图资源以后,每一个顶点又对应UV的这个坐标,那么上色的时候,会把贴图准确的上色到这个模型上;
为什么是平面的贴图还能贴到3D的物体上面呢?
(4)USE COLOR: 加一点环境的颜色,勾选后,整个模型都偏红
(5)pipelineStates: 常用渲染管道的参数
a: cullMode: cull模式-->踢出哪些三角形
摄像机拍摄3D物体的时候,背面的总是被剔除掉,这样就可以少绘制一些三角形(背面 前面 不剔除)
BACK:一般选择这个背对摄像机的面给剔除掉
b: depthTest(是否开启深度测试)
Less
c: depthWrite(是否把像素写入到深度缓存)
2)纹理坐标,贴图的基本原理:
当我们的美术做好了模型以后,你准备一张白纸,你把白纸包住这个模型,美术就给这个模型涂颜色,涂好以后你展开这张纸,
就得到这张纹理贴图;
你再把它包回去,我们有这么多三角形,没在每个三角形每个点打一个图钉,打完图钉拔掉,这张纹理贴图上面就会有很多小洞洞,
每一个洞洞都会对应一个UV纹理(白纸)坐标,左上角0,0 右下角(1,1)
* 0 0
* 1 1
3)Builtin Standard
(1)是否使用顶点颜色
(2)是否使用发现贴图: 3D的绘制技术,在不增加
23: 53
上一篇: creator 3d组件化开发
下一篇: 初识cocos creator 3d