前期准备:安装unity2021.3.x,安装vscode编程工具(vs也可使用),创建一个3d项目。
相关配置:
引入资源包:assets-import package-custom package
配置colorspace:editor-project settings-player-color space-linear,如果使用Gamma无法实现所需要的效果(线性颜色空间更适合于处理光照和颜色混合,能够更准确地显示颜色和光照效果;而伽马颜色空间则更适合于适应显示设备的亮度响应曲线,但可能会导致颜色和光照效果的失真。)
下载安装包:
Universal RP
下载方法:windows-package manager-切换到Unity Registry,寻找相关安装包
下载完成后edit-project settings-Graphics-Scriptable Render Pipeline Settings,选择UniversalRP-HighQuality,
Cinemachine
Visual Effect Graph
progrids
下载方法:Package manager界面的+,点击后选择add package from URL,输入com.unity.progrids,
加号和Unity Registry
场景搭建:
File-New Scene-Empty(选择空场景的原因是其他的场景自带的对象会影响我们的需求)
添加一个camera,标签设置为MainCamera ,reset位置,勾选Post Processing(现在勾选后会出现画面模糊的问题,原因是功能不完备导致的)
prefab文件夹找到Game Level
调整主相机的视角,(再场景视图中调整完毕后,选中Camera,GameObject-Align with View)
创建一个空对象Player,然后从Character文件夹选取LittleAdventurerAndie.fbx,拖给player做player的子物体,并同时删除Animator,重命名为Visual(移除Animator组件的原因是组件发出的信息只能被他所在的对象接收,Visual和player是父子对象,Animator只能作用于Visual)
给player增加灯光效果,在prefab中找到Player Lights,将他作为Player的子对象,然后将Visual中的LittleAdventurerAndieMesh的Layer设置为player(游戏对象的layer也会影响视觉渲染。在Unity中,可以通过相机的culling mask来控制相机只渲染特定layer的游戏对象。因此,更改游戏对象的layer可能会影响其在视觉上的呈现。)个人问题:为什么不直接设置成预制体?
创建一个虚拟相机:
Hierachy界面,右键选择cinemamachine-virtual machine;参数修改如图。