Unity菜鸟起飞01 -- 基础知识

操作:        
1. 按下鼠标转轴可拖动场景,滚动转轴缩放场景        
2. 鼠标右键旋转场景,按Q键,左键可移动场景        
3. 鼠标右键,按下W/S/A/D/Q/E,可场景漫游        
4. 在Scene面板选中物体按F键,可以将物体设置为场景中心        
5. 按住Alt键通过鼠标左键旋转场景,鼠标右键缩放场景        
6. 顶点吸附:选择物体后按V键,定位顶点,拖拽至目标顶点即可        
        
坐标轴:        
坐标:X红色Y绿色Z蓝色        
世界坐标:整个场景的固定坐标,不会改变        
本地坐标:物体自身坐标,随旋转而改变        
        
        
Scene场景:相关联的游戏对象的集合        
Project    contains Scenes
Scene      contains GameObjects
GameObject contains Components        
        
        
        
GameObject游戏对象:组件的集合(容器,挂载组件)        
父子物体:在Hierarchy面板,将一个物体拖拽到另一个物体中        
子物体将继承父物体的移动、旋转和缩放,子物体不影响父物体        
        
Component组件:游戏对象的功能模块(一个类的实例)        
Transform(固有组件):决定物体位置、旋转、缩放比        
Mesh Filter(网格过滤器):从资源中获取网格信息(物体骨架、形状)        
Mesh Renderer(网格渲染器):从过滤器获取形状,根据节点的Transform.Position进行渲染        
Mesh Filter and Mesh Renderer,联合使用,把模型显示在屏幕        
        
Material材质:物体的质地,Shader的实例        
GameObject    contains MeshFilter & MeshRenderer
MeshRenderer  contains Material
Material      equals   Shader
Shader        contains Properties        
        
        
        
Shader着色器:用来渲染3D模型的技术(一段嵌入渲染管线中的程序,可以控制GPU运算图像效果的算法)        
物理着色器(Physically Based Shading,PBS, Unity 5.x特性),遵从物理定律,模拟现实光照效果        
Shader(Standard) 常用属性:        
Rendering Mode 渲染模式(Opaque/Transparent/Cutout/Fade)        
Main Maps - Albedo        
Shader类型:Toon(Basic Outline)/Skybox/……        
        
Camera:向玩家捕获和显示世界的设备(Scene中Camera的数量无限制)        
Audio Listener(音频监听器Component):接收场景输入的音频源Audio Source并通过计算机的扬声器播放声音。(Should be have only one.)
Camera常用属性:
Clear Flags: 决定屏幕的空白部分如何处理 (Skybox/Solid Color/Depth Only/Don’t  Clear)
Culling Mask: 剔除层Layer(只显示选择状态的Layer)
Viewport Rect: 标明这台相机视图将会在屏幕上绘制的屏幕坐标。(X Y W H)
Depth:相机在渲染顺序上的位置。具有较低深度的 摄像机将在较高深度的摄像机之前渲染。      
        
  
        
Skybox:围绕整个场景的包装器,用于模拟天空的材质(6 Sided/Procedural/Cubemap)        
使用天空盒:
1. 给Camera添加Skybox Component
2. Window - Lighting - Environment Lighting - Skybox,可作为反射源将天空色彩反射到场景中物体。       
6 Sided: Tint Color.   Procedural: Sun(None/Simple/Hight Quality)        
        
        
渲染管线:图形数据在GPU上经过运算处理,最后输出到屏幕的过程        
CPU:   游戏执行 -- 图形API(准备数据) -- 发送请求给GPU(Draw Call:每次引擎准备数据并通知GPU。即,每帧调用显卡渲染物体的次数)        
GPU:   顶点处理 -- 图元装配 -- 光栅化 -- 像素处理 -- 缓存        
顶点处理:a.接收模型顶点数据; b.坐标系转换.        
图元装配:点组装成面,连接相邻点,绘制为三角面。        
光栅化:计算三角面的像素,并为着色阶段提供合理的差值参数。        
像素处理:a.对每个像素区域进行着色; b.写入到缓存.        
缓存:一个存储像素数据的内存块,最重要的缓存为帧缓存和深度缓存。
帧缓存:存储每个像素的色彩,即渲染后的图像。帧缓存常常在显存中,显卡不断读取并输出到屏幕中。
深度缓存z-buffer:存储像素的深度信息,即物体到摄像机的距离。
(光栅化时便计算各像素的深度值,如果新的深度值比现有值更近,则像素颜色被写到帧缓存,并替换深度缓存。)             
        
        
Occlusion Culling 遮挡剔除:在物体渲染之前,将摄像机看不到的物体进行剔除,减少每帧的渲染量,从而提高渲染性能        
通过CPU计算需要剔除的物体,减少CPU数据的准备量(对应CPU发给GPU的DrawCall数量),减少GPU每帧的渲染量(数据处理),从而提高渲染性能
CPU:计算需剔除的物体(+),DrawCall数量和计算量(-)
GPU: 需要计算的请求DrawCall(-)
适用:场景中存在大量、密集的物体        
                     
        
LOD:Levels of Detai, 多细节层次        
根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。        
通过CPU计算物体和Camera距离,降低非重要物体的精度(面数和细节度),从而提高渲染性能
CPU:计算物体和Camera的距离(+),物体的精度 - 即需要处理的点和面的数量(-),加载更多的物体模型(+)
GPU: 需要处理的点和面的数量(-)
工作量:美术制作物体模型的工作量(+)
适用:有空间距离的场景        
        

        
GI: Global Illumination, 全局光照,能够计算直接光、间接光、环境光以及反射光的光照系统。        
"直接光照:从光源直接发出的光,通过Light组件实现
Light Type: Directional Light/Point Light/Spot Light/Area Light
Light Properties: Range/Intensity/Culling Mask/Shadow Type(Hard/Soft)
Mesh Renderer: Cast Shadow(Off/On/TwoSided/ShadowsOnly)/Receive Shadow(Check/UnCheck)"        
        
"间接光照: 物体表面在接受光照后反弹出来的光。只有标记Lightmaping Static的物体才能产生间接反弹光照。
Light Properties: Bounce Intensity
可以通过Scene 面板Irradiance 模式查看间接光照"                
        
"环境光照:作用于场景内所有物体的光照,通过Environment Lighting中Ambient控制。
Ambient Source/Ambient Intensity/Ambient GI(Realtime/Backed)"        
        
"反射光照:根据天空盒或立方体贴图计算的作用于所有物体的反射效果,通过Environment Lighting中Reflection控制。
Reflection Source/Reflection Intensity/Resolution/Compression"        
        
        
实时GI(Realtime GI): 指在运行期间任意修改光源,而所有的变化可以立即更新。
操作步骤:
1. 游戏对象设置为Lightmaping Static
2. 启用Lighting面板的Precomputed RealtimeGI
3. 点击Build按钮(如果勾选Auto编辑器会自动检测场景的改动修复光照效果)
Properties: Realtime Resolution/CPU Usage        
      
        
烘焙GI: 烘焙技术,可以将光线效果预渲染成贴图再作用到物体上模拟光影,从而提高性能。适用于在性能较低的设备上运行的程序。
操作步骤:
1. 游戏对象设置为Lightmaping Static。
2. 设置Light组件Baking(Realtime/Baked/Mixed)属性。
3. 启用Lighting面板的Baked GI。
4. 点击Build按钮。(如果勾选Auto 编辑器会自动检测场 景的改动修复光照效果)
可以通过Scene面板Baked模式查看光照贴图        
        
     
实时GI和烘焙GI:
区别:实时GI能够实时计算光影效果(光影效果随物体移动计算变化), 后者是把光照效果预渲染成贴图(光影效果无法随物体移动变化).
实时GI的优点:光影效果随物体移动实时变更,效果更贴近真实
实时GI的缺点:光影信息实时计算,DrawCall增加,CPU和GPU工作量增加
适用性:移动端使用烘焙GI做成贴图,动态物体借助光源侦测感知附近的光照信息        
        
光源侦测(Light Probes):由于LightMapping无法作用于static物体,利用Light Probes组件通过Probe收集光影信息,
对运动物体邻近的几个Probe进行插值运算,最后将光照作用到运动物体上。        
        
        
Audio(声音): 分为2D/3D两类(3D声音:有空间感,近大远小; 2D声音:适合背景音乐.)。        
在场景中产生声音,主要依靠两个重要组件:
Audio Listener音频监听器: 接收场景中音频源Audio Source发出的声音,通过计算机的扬声器播放声音。
Audio Source音频源:
Audio Source Properties: Audio Clip/Mute/Loop/Volume/Spatial Blend(2D-3D)
3D Sound Settings: Volume Rolloff/Min Distance/MaxDistance"       
        
        
        
        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值