Unity官方示例教程《Stealth》学习笔记

    xiaoxiao2021-03-25  53

    Unity官方游戏实例教程《Stealth》中文版 *写在前面*

    《Stealth》是Unity官方示例项目,大家可以到Unity官网上去下载资源包和视频教程。在此,笔者将自己学习《Stealth》时的笔记搬到博客上,以供大家学习参考,与官方视频教程配合使用。

    Unity官方游戏实例教程《Stealth》中文版 第2集 *开发准备与灯光设置*

    1、新建场景  Models.env_stealth_static -> Hierarchy env_stealth_static.Transform.Position =  (0, 0, 0) Models.prop_battleBus -> Hierarchy prop_battleBus.Transform.Position = (-15,0 ,17.5) prop_battle_Bus.Transform.Rotation.Y = 270 2、添加碰撞网络(Mesh Collider)  env_stealth_static.Add Component.Physics.Mesh Collider env_stealth_static.Mesh Collider.Mesh = Models.env_stealth_collision.env_stealth_collision_001  4、使用Deferred Lighting(延迟拍摄)  camera_main.Camera.Rendering Path = Deferred Lighting  camera_main.Camera.Background = black  camera_main.Carera.Clipping Planes.Far = 100 5、引入灯光 env_stealth_static + prop_battleBus.Static = true//场景不会移动,可以使用灯光贴图 env_stealth_static.* - extents + prop_battleBus.Layer = PlayArea env_stealth_static.extents.Layer = Extents//设置不同的层以显示不同的灯光效果  Prefabs.light_baked => Hierarchy  3D Gizmos(3D线框) 6、创建点光源(Point Light)  light_playerArea_point = Hierarchy.Create Point Light  light_playerArea_point.Light.Color = yellow  light_playerArea_point.Light.Range = 8  light_playerArea_point.Light.Lightmapping = BakedOnly//确保灯光烘焙为灯光贴图,否则灯光是即使渲染的,会增大内存消耗 7、修改渲染设置(Render Settings)  打开Edit->Render Settings  (笔者注:Unity5中Render Settings已经集成到Window->Lighting中,Unity5雾化详情请参见博客Unity雾化效果)  RenderSettings.Fog = true  RenderSettings.Fog Color = purpel  RenderSettings.Fog Density = 0.04  RenderSettings.Linear Fog Start = 3  RenderSettings.Linear Fog End = 24  Ambient Light(环境光) = black//Amibient Light是模拟漫反射的一种光源。它能将灯光均匀的照射在场景中每个物体上面,在使用Amibient Light可以忽略方向和角度,只考虑光源的位置。 8、画质设置(Quality)  打开Edit.Project Settings.Quality  知识点:QualitySettings.Quality Level相关  QualitySettings.Pixel Light Count = 6 (Quity设置详见博客Unity Quality参数详解) 9、烘焙灯光贴图:把灯光效果保存为纹理(Lightmapping)  打开Window->Lightmapping  Lightmapping.Bake.Mode = Directional Lightmaps(定向光线映射)  Lightmapping.Bake.Quality = Low  Lightmapping.Bake.Bounces(反弹) = 4  Lightmapping.Bake.Bounces Boost(反弹增强) = 0.5  Lightmapping.Bake.Contrast Threshold(对比界限) = 0.05  Lightmapping.Bake.Interpolation(插值) = 0.25  Lightmapping.Bake.Interpolation Point(插值点) = 30  Lightmapping.Bake.Ambient Occlusion(环境光散射) = 1  Lightmapping.Bake.Max Distance = 0.25  Lightmapping.Bake.Contrast(对比度) = 0  Lightmapping.Bake.Resolution(分辨率) = 30  Lightmapping.Bake.Padding(填充) = 2 10、场景烘焙(Bake Scene)    Lightmapping.Bake Scene 11、动态光照亮游戏人物  Create.Directional Light  Inspector.Tag = MainLight  Light.Color = blue-gray  Light.Shadow Type(阴影类型) = Soft Shadows(柔和阴影)  Light.Bias(偏差) = 0.01(决定影子与物体的距离,值太小会产生假象,值太大会让物体看起来在漂浮)  Light.Softness Fade(柔软褪色) = 0.8(定义距离摄像机多近时,才会产生影子)  Light.Culling Mask(裁剪蒙板) = No Extents(决定灯光影响哪些层)  Light.Rotation = (45, 305, 0)(Directonal Light 不受自身Position影响,只受Rotation影响)  Lightmapping = RealtimeOnly 12、创建警戒灯光  light_main_directional = Hierarchy.Create.Directional Light  light_main_directional.Tag = AlarmTag  light_main_directional.Light.Color = red  light_main_directional.Light.Intensity = 0  light_main_directional.Light.Culling Mask = Everything  light_main_directional.Lightmapping = RealtimeOnly
    转载请注明原文地址: https://ju.6miu.com/read-40645.html

    最新回复(0)