Unity引擎基础

场景视角移动

鼠标右键旋转场景

选中view tool后鼠标左键移动场景

按住右键点击W/S/A/D/Q/R可实现场景漫游

选中物体 按住alt(option)通过鼠标左键围绕物体旋转场景 右键缩放场景

选中物体按F键 或在Hierarchy面板双击物体 可将物体视为场景中心

变换工具快

移动场景Q

移动物体W

旋转物体E

缩放物体R

扫描二维码关注公众号,回复: 16918909 查看本文章

·实用技巧

顶点吸附:选择物体后按住V 选择顶点 拖动顶点到目标顶点

Camera(Cam)

只可现实视锥内的画面

Audio Listener音频监听器:接收场景输入的音频源audio souse 并通过计算机的扬声器播放音乐

clear flags:处理空白部分(没物体的地方)

skybox 围绕整个场景的包装器,用于模拟天空材质 可更换材质

ctrl+shift+F 快速定位

将摄像机拖进组可跟随移动

只能有一个audio listener

projection中 perspective为3D Orthographic为2D

地图摄像机最好用2D(clear flags设置为depth only可不渲染空白部分)

*在人物头上放个片 加入组 可在地图摄像机中显示几何体 主摄像机不显示:

1.给片添加Layer mark 给物体添加Layer model并选择

2.在main camera Culling Mask中 选model 取消mark

3.在map camera Culling Mask中 选mark 取消model

Material

在project面板中新建Material

Inspector面板中 Mesh Renderer负责渲染

Rendering Mode

opaque不透明默认模式

cutout 去掉透明通道

transparent模式 改变Albedo中的A 可调整透明度

fade 渐变

Main Maps

Albedo 基础贴图 决定物体表面纹理与颜色

Metallic 使用金属特性模拟外观

Specular 镜面反射

Smoothness 光滑度

Normal Map 描述物体表面凹凸程度

Emission 自发光(none不影响环境 realtime实时动态改变 backed烘焙效果)

Tiling 沿不同的轴 纹理平铺个数

Offset 滑动纹理

Shader(着色器)

一段嵌入到渲染管线中的程序,控制GPU运算图像效果的算法
Shader 材质 物体 的关系
Shader 决定是否具有纹理颜色等某种功能

Material 只是配具体数值的面板

InstanOC

在这里插入图片描述

渲染管线

在这里插入图片描述
CPU负责运算 GPU负责渲染

draw call:一帧需要渲染物体的次数

运行后stats中Batches为draw call(一般一个物体一个draw call 光线比较复杂)Tris为三角面数 Verts为顶点数

顶点处理:1.接收模型顶点数据(cpu给它发)【任何一个图形都是由点线(若干个三角组成的)】2.坐标系转换

图源装配:组成面 连接相邻顶点绘制三角面

光栅化:计算三角形面上的像素 并为后面着色阶段提供合理的插值参数

像素处理:对每个像素区域进行着色 写入到缓存中

缓存

一个存储像素数据的内存块(最重要的缓存是帧缓存与深度缓存)

帧缓存:存储每个像素的色彩 即渲染后的图像 帧缓存常在显存中 显卡不断读取并输出到屏幕中

深度缓存z-buffer:存储像素的深度信息(物体到摄像机的距离),光栅化时便计算各像素的深度值,如果新的深度值比现有值更近(更贴近摄像机),则像素颜色被写到帧缓存,并替换深度缓存。

Occlusion Culling(遮挡剔除)

当物体被送进渲染流水线之前,将摄像机视角内看不到的物体进行剔除,从而减少渲染数据量,提高渲染性能。(缺点:判断物体是否被遮挡额外消耗cpu)

步骤:

1.创建层

2.为游戏物体指定层(将参与遮挡剔除)与标签(将自动附加IOClod脚本)

3.物体添加碰撞器collider组件

4.摄像机附加脚本IOCcam

Lod(多层次细节)

根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获取高效率的渲染运算。(位置近用精模 位置远用简模 draw call不会变化)

光照系统

在这里插入图片描述

Global Illumination(GI全局光照)

能够计算直接光、间接光、环境光以及反射光的光照系统

通过GI算法可以使渲染出来的光照效果更真实
在这里插入图片描述

直接光

通过light组件(culling mask可选择照射对象)(可为场景添加光源)

阴影:Mesh Renderer中可开关投射阴影(cast shadows)和接收阴影(receive shadows)关闭不必要的阴影可优化渲染

*edit中project settings中quality调解质量

阴影剔除(设置阴影距离):edit—project settings—quality—shadows distances

环境光

作用于场景内所有物体的光照(通过Windows—Rendering—lightings—environment lighting设置)

Ambient Source 环境光源:

sky box通过天空盒颜色设置环境光照

Gradient 梯度颜色:sky天空颜色 Equator地平线颜色 Ground地面颜色

Ambient Color 纯色

Ambient Intensity 环境光强度

Ambient GI 环境光GI模式:1.Realtime实时更新 环境光源会改变选择此项 2.Backed烘焙 环境光源不会改变选择此项

反射光

根据天空盒或立方体贴图计算的作用于所有物体的反射效果,通过Environment Lightings中的Reflection控制

Reflection Source 反射源

间接光

物体表面在接受光照后反射出来的光

(通过Light组件中Bounce Intensity 反弹强度控制)

(可通过Scene面板Irradiance模式查看间接光照)

将不动的物体标记为静态(Inspector—Static)只有标记Lightmaping Static的物体才能产生间接反弹光照

实时GI

操作步骤:

1.游戏对象设置为Lightmaping Static

2.启动 Lighting 面板的 Precomputed Realtime GI

3.点击Build按钮(如果勾选Auto编辑器会自动检测场景的改动修复光照效果)

edit—preference—GI cache 可修改缓存

Precomputed Realtime GI:

Realtime Resolution 实时计算分辨率

CPU Usage:CPU利用率 值越大实时渲染效率越高

烘焙GI

当场景包含大量物体时,实时光照和阴影对游戏性能有很大影响,使用烘焙技术,可以将光线效果预渲染成贴图再作用到物体上模拟光影,从而提高性能,适用于在性能较低的设备上运行的程序。

声音

unity支持格式:mp3、ogg、wav、aif、mod、it、s3m、xm

声音分为2D、3D

2D:适合背景音乐

3D:有空间感 近大远小

在场景中产生声音 主要依靠两个组件:

Audio Listener音频监听器 接收场景中音频源Audio Source发出的声音 通过计算机的扬声器播放

Audio Clip:需要播放的音频资源

Mute 静音

Play on Awake 勾选后场景启动时自动播放

Loop 循环播放

Pitch 音调

Stereo Pan:2D设置左右声道

Spatial Blend:2D和3D切换

3D Sound Settings 中 Volume Rolloff音量衰减方式 一般选Linear Rolloff 线性衰减(x轴为距音源距离 y轴为音量大小)

Min Distance 开始衰减距离

Max Distance 结束衰减距离

猜你喜欢

转载自blog.csdn.net/m0_73241844/article/details/131504196
今日推荐