Unity烘焙教程

合集下载

unity的光照烘焙技术摘选

unity的光照烘焙技术摘选

一、光照烘焙技术的概念1.1 光照烘焙技术的定义光照烘焙(Lightmapping)是一种用来模拟光照效果的技术,它通过预先计算并存储场景中的光照信息,然后在运行时应用于渲染过程中,以提高图形渲染的效率和质量。

1.2 光照烘焙技术的优点- 增加渲染效率:光照信息在运行时已经预先计算好,不需要实时计算,可以降低渲染负载,提高性能。

- 改善光照质量:通过光照烘焙可以获得更真实、更精细的光照效果,提高场景的逼真度和观赏性。

- 节省资源:由于光照信息是预先计算好的,不需要实时计算,可以节省系统资源,适用于移动设备等资源受限的评台。

二、光照烘焙技术的原理2.1 光照烘焙的基本原理光照烘焙技术是通过将三维场景中的光照信息计算并存储为纹理或纹理集,然后在运行时应用于模型的表面,以模拟真实的光照效果。

光照烘焙的基本原理包括光照采样、纹理映射和渲染应用等步骤。

2.2 光照烘焙的计算方法- 光照贴图(Lightmaps):通过将场景中的光照信息渲染到纹理上,然后在运行时将光照信息映射到模型表面,以获得真实的光照效果。

- 光子映射(Photon Mapping):通过模拟光子在场景中的传播和相互作用,计算场景中的光照信息,并存储为纹理或纹理集,然后在运行时应用于模型的表面。

三、Unity中的光照烘焙技术3.1 Unity的光照烘焙工具Unity提供了丰富的光照烘焙工具和功能,包括实时光照、烘焙照明、环境光遮蔽(AO)等,可以满足不同场景的照明需求。

3.2 使用Unity进行光照烘焙的步骤- 设置光照参数:在Unity中设置场景的光源、材质和照明参数,为光照烘焙做准备。

- 执行光照烘焙:在Unity中执行光照烘焙,将场景中的光照信息计算并存储为纹理或纹理集。

- 应用光照烘焙:在运行时将光照信息映射到模型的表面,以获得真实的光照效果。

四、光照烘焙技术在游戏开发中的应用4.1 光照烘焙技术的作用在游戏开发中,光照烘焙技术可以用于优化场景的渲染效果和性能,提高游戏的视觉质量和用户体验。

unity cinemacth使用教程遮挡物

unity cinemacth使用教程遮挡物

unity cinemacth使用教程遮挡物基本概念:“遮挡剔除”过程可防止 Unity 为那些被其他游戏对象完全挡住(遮挡)的游戏对象执行渲染计算。

说白了就是如果摄像机看不见的物体,我就不用去管它了(渲染)。

遮挡剔除我认为其实也是一个空间换时间的方法,做项目的时候可以结合遮挡区域、遮挡入口灵活运用。

遮挡剔除的工作原理:遮挡剔除会在 Unity Editor 中生成有关场景的数据,然后在运行时使用该数据来确定摄像机可以看到的内容。

这种生成数据的过程称为烘焙。

在对遮挡剔除数据进行烘焙时,Unity 将场景划分为多个单元,并生成描述单元内几何体以及相邻单元之间可见性的数据。

然后,Unity 尽可能合并单元,以减小生成的数据的大小。

要配置烘焙过程,可以在 Occlusion Culling 窗口中更改参数,并在场景中使用遮挡区域。

在运行时,Unity 会将这些烘焙的数据加载到内存中,并且对于每个启用了 Occlusion Culling 属性的摄像机,将会对数据执行查询以确定该摄像机可以看到的内容。

请注意,启用遮挡剔除后,摄像机将执行视锥体剔除和遮挡剔除。

如何使用静态遮挡剔除:使用遮挡剔除一定要在相机的Inspector窗口勾选Occlusion Culling。

静态遮挡物限定:具有 Terrain 或 Mesh Renderer 组件、不透明、运行时不移动静态被遮挡物限定:具有任何类型的 Renderer 组件、运行时不移动第一步设置被遮挡物和遮挡物:静态遮挡物的所有游戏对象,设为Occluder Static,被静态遮挡物的所有游戏对象,设为Occludee Static。

第二步烘焙遮挡数据:1.在顶部菜单中,选择 Window > Rendering > Occlusion Culling 以打开 Occlusion Culling 窗口。

2.选择 Bake 选项卡。

3.在 Inspector 窗口的右下角,按 Bake 按钮。

unity 灯光-烘焙光照贴图剖析

unity 灯光-烘焙光照贴图剖析

灯光-Light对于每一个场景灯光是非常重要的部分。

网格和纹理定义了场景的形状和外观,而灯光定义了场景的颜色和氛围。

可以通过从菜单中选择 GameObject->Light并将其添加到你的场景中。

有3种类型的灯光。

一旦添加了一个灯光你就可以像操作其他物体一样操作它。

相关属性介绍◆Type:灯光的类型⏹Directional:平行灯,类似太阳光;⏹Point:点光源,类似灯泡;⏹Spot:聚光灯,类似舞台聚光灯;◆Baking:该选项有三个选择⏹Realtime:即光源不参与烘焙,只作用于实时光照;⏹Baked:表示光源只在烘焙时使用⏹Mixed:该光源会在不同的情况下做不同的响应;在烘焙时,该光源会作用于所有参与烘焙的物体;在实际游戏运行中,该光源会作为实时光源作用于那些不参与烘焙的物体或者动态的物体(不作用于静态的物体,就是勾选了Static);◆Color:光源的颜色,根据不同的环境设置不同的颜色,营造出不同的氛围;◆Intensity:光线强度;◆Bounce Intensity:光线的反射强度;◆Shadow Type:设置是否显示光源作用在的物体的阴影,⏹No Shadows不显示阴影,阴影不存在;⏹Hard Shadows:硬阴影(无过滤),效果不是很自然比较生硬;⏹Soft shadows:柔化阴影,更加贴近实际生活中的阴影显示,但比较消耗资源;◆Strength:阴影黑暗程度,取值范围0~1◆Resolution:阴影的清晰度,细化度,越高消耗越大;◆Bias:阴影的偏移量,越小,物体表面会有来自它自身的阴影,太大光源就会脱离了接收器;◆Cookie:灯光投射的纹理,如果灯光是聚光灯和方向灯就必定是一个2D纹理,如果是点光源必须是一个Cubemap(立体贴图);◆Cookie Size:缩放Cookie的投影,只适用于方向光◆Draw Halo:如果勾选,那光源带有一定半径范围的球形光源◆Flare:在选中的光源的位置出现镜头光晕;◆Render Mode:此项决定了选中的光源的重要性,影响照明的保真度和性能;⏹Auto:渲染的方法根据附近灯光的亮度和当前的质量设置在运行时由系统确定;⏹important灯光是逐个像素渲染的;⏹Not Important灯光总是以最快速度渲染;Culling Mask:剔除遮罩,类似摄像机的遮罩,选中指定的层收到光照影响,未选中的不受到光照影响;设置全局光照和烘焙光照贴图-LightMap一个场景中灯光添加多了资源消耗也就大了,为了降低资源的消耗,可以选择烘焙光照贴图;把光源的效果烘焙到贴图上,形成自带光源效果的贴图,这样就可以减少灯光的使用。

ue烘焙流程

ue烘焙流程

ue烘焙流程UE烘焙流程烘焙是一门需要技巧和耐心的艺术,而UE烘焙则是指使用Unity引擎的烘焙工具来为游戏场景创建光照和阴影效果。

本文将介绍UE烘焙流程的一般步骤和注意事项。

一、准备工作在开始烘焙之前,我们需要准备好以下几项内容:1. 游戏场景:确保场景中已经设置好了需要烘焙的光源和物体。

2. 光照贴图:在烘焙过程中,我们需要使用到光照贴图来模拟光线的传播和反射。

可以根据场景需要选择合适的光照贴图。

3. 烘焙设置:在Unity中,我们可以通过调整烘焙设置来控制烘焙的效果和质量。

可以设置光照贴图的分辨率、烘焙的范围和精度等参数。

二、烘焙流程下面是UE烘焙的一般流程:1. 打开Unity引擎,选择需要烘焙的场景。

2. 在Unity编辑器中,找到烘焙工具。

通常可以在菜单栏的“Window”或者“Lighting”选项中找到烘焙工具。

3. 进入烘焙工具后,可以进行光照贴图的设置。

根据场景需要选择合适的光照贴图,并调整其分辨率和其他参数。

4. 设置好光照贴图后,可以进行烘焙的设置。

可以选择烘焙的范围和精度,以及其他相关参数。

5. 点击“开始烘焙”按钮,等待烘焙过程完成。

烘焙时间的长短取决于场景的复杂度和烘焙设置的精度。

6. 烘焙完成后,可以在Unity编辑器中查看烘焙的效果。

可以通过调整摄像机的角度和距离来观察烘焙后的光照和阴影效果。

7. 如果对烘焙结果不满意,可以回到烘焙工具中重新调整设置,并重新进行烘焙。

8. 当烘焙结果满意后,可以保存场景并导出烘焙结果。

烘焙结果通常保存为纹理贴图或者Lightmap文件,供游戏运行时使用。

三、注意事项在进行UE烘焙时,还需要注意以下几点:1. 场景布局:合理的场景布局可以减少烘焙的时间和计算量。

尽量避免过多的重叠物体和遮挡物。

2. 光源设置:光源的位置、强度和颜色等参数都会影响烘焙的效果。

需要根据场景需要进行合理的调整。

3. 烘焙设置:烘焙的范围和精度会直接影响烘焙的效果和计算时间。

从MAYA建模到Unity漫游的详细教程bysking

从MAYA建模到Unity漫游的详细教程bysking

从MAYA建模到Unity漫游的详细教程bysking从MAYA建模到Unity漫游的详细教程_bysking⼀、MAYA建模部分(maya版本:windows 2018版 (64-bit))我们的思路是建⽴⼀楼各个房间及楼梯然后不断的向上复制出整个楼栋1.⾸先我们要拿到模型的俯视图了解⼤致的布局:建⽴⼀楼的地板,原理:新建⼀个⽴⽅体再建⽴另外⼀个⽴⽅体让它们相交,按住ctrl键选中其中⼀个再加选另外⼀个然后使⽤maya的布尔运算⼯具,在设置⾥⾯选择旧版算法,作差集利⽤此原理得到如下效果:预计效果图如下:元素类型有以下的⼏种:房间分为三种类型教室(有桌⼦椅⼦讲台⿊板),会议室(有桌⼦椅⼦会议桌柜⼦)和左下⾓的⼩房⼦,所以我们分别把这些元素建出来然后拼装在⼀起。

--桌⼦(倒⾓⼯具+⽴⽅体的组装+贴图)--椅⼦椅⼦模型,限于篇幅,不做讲解,简单说来就是,绘制曲线,绘制圆环曲线,同时选中,使⽤曲⾯挤出⼯具就可以做出弯曲的框架,还可以使⽤倒⾓⼯具美化模型棱⾓。

--会议桌(挤出+倒⾓+贴图)--柜⼦(布尔差⼯具+贴图)--讲台(⽴⽅体的⾯的挤出以及倒⾓就可以实现,再贴图)--⿊板(倒⾓+贴图)--房间框架新建⼀个⽴⽅体,利⽤布尔⼯具抠去镂空,得到房间的框架,这⾥要注意使⽤的是旧版算法,(带窗户的房间框架)⽤⽴⽅体组装⼀个窗户并赋予玻璃材,⽤⽴⽅体组装⼀个窗户并赋予玻璃材质。

选中房间框架模型进⾏uv展开,烘焙UV成TGA格式的图像⽂件,使⽤ps⼯具绘制贴图,再重新贴回模型(导⼊部分有详细教程)--楼梯好了,基本元素做完之后我们就开始组装最基本的两间房间:教室以及会议室,并把他们打组命名,并居中枢轴,清除构建历史,最核⼼的基本元素就做好了。

然后在我们根据卫星地图构建的地板上再次组装出我们的⼀楼:加上楼顶,整体打组,命名⽐如:floor1(⼀楼),选中这个组,居中枢轴,清除历史:剩下的⼯作⼗分简单,可以在maya⾥⾯整体复制五份堆出五层楼,但是在Unity⾥⾯还需要进⾏添加碰撞,所以我们选择去unity⾥⾯,为⼀层楼添加碰撞后再复制,节省⼯作时间,于是这栋楼就算完成了。

Unity 3d英文翻译

Unity 3d英文翻译

Unity Manual 用户手册•User Guide用户指南o Unity Basics Unity基础翻译:U_鹰▪Learning the Interface学习界面翻译:U_鹰▪Project Browser项目浏览器视图翻译:U_鹰▪Hierarchy层级面板视图翻译:U_鹰▪Toolbar工具栏翻译:U_鹰▪Scene View场景视图翻译:U_鹰▪Game View游戏视图翻译:U_鹰▪Inspector检视面板翻译:U_鹰▪Other Views其他视图翻译:U_鹰▪Customizing Your Workspace自定义工作区翻译:第七把剑▪Asset Workflow资源工作流程翻译:第七把剑▪Creating Scenes创建场景翻译:第七把剑▪Publishing Builds编译发布翻译:第七把剑▪Tutorials教程翻译:U_鹰▪Unity Hotkeys Unity3D快捷键翻译:U_鹰▪Preferences首选项翻译:U_鹰o Building Scenes构建场景▪GameObjects游戏对象翻译:第七把剑▪The GameObject-Component Relationship游戏对象和组件的关系翻译:第七把剑▪Using Components使用组件翻译:第七把剑▪The Component-Script Relationship组件和脚本之间的关系翻译:第七把剑▪Deactivating GameObjects停用游戏对象翻译:feicheng2005▪Using the Inspector使用检视面板翻译:第七把剑▪Editing Value Properties编辑值属性翻译:第七把剑▪Preset Libraries预设库翻译:U_鹰▪Assigning References指定引用翻译:第七把剑▪Multi-Object Editing多重对象编辑翻译:colin3dmax▪Inspector Options检视面板选项翻译:第七把剑▪Using the Scene View使用场景视图翻译:第七把剑▪Scene View Navigation场景视图导航翻译:第七把剑▪Positioning GameObjects定位游戏对象翻译:第七把剑▪View Modes视图模式翻译:第七把剑▪Gizmo and Icon Display Controls Gizmo和图标显示控制翻译:U_鹰▪Searching搜索翻译:第七把剑▪Prefabs预制翻译:第七把剑▪Lights灯光翻译:第七把剑▪Cameras摄像机翻译:第七把剑▪Terrain Engine Guide地形引擎指南翻译:第七把剑o Asset Import and Creation资源导入与创建翻译:第七把剑▪Primitive Objects基本对象翻译:U_鹰▪Importing Assets导入资源翻译:第七把剑▪Models模型翻译:用生命舞蹈▪3D formats3D格式翻译:用生命舞蹈▪Materials and Shaders材质与着色器翻译:第七把剑▪Texture 2D二维纹理翻译:第七把剑▪Procedural Materials程序材质翻译:U_鹰▪Movie Texture影片纹理翻译:U_鹰▪Audio Files音频文件翻译:U_鹰▪Tracker Modules音轨模块翻译:U_鹰▪Using Scripts使用脚本翻译:colin3dmax▪Creating and Using Scripts▪Controlling GameObjects Using Components▪Event Functions事件函数翻译:RICO▪Creating and Destroying GameObjects▪Coroutines▪Special Folders and Script Compilation Order▪Namespaces▪Asset Store资源商店翻译:肥耀▪Asset Store Access and Navigation▪Asset Store Publisher Administration资源商店发布者管理翻译:13y32r▪Asset Store FAQ▪Asset Server (Team License Only)资源服务器(仅团队许可)翻译:colin3dmax▪Setting up the Asset Server设置资源服务器(仅团队许可)翻译:青青子矜▪Cache Server (Team License Only)缓存服务器(仅团队许可)▪Cache Server (Team license only)缓存服务器(仅团队许可)翻译:一米的馒头▪Cache Server FAQ缓存服务器常见问题翻译:13y32r ▪Behind the Scenes场景幕后翻译:colin3dmaxo Creating Gameplay创建游戏翻译:U_鹰▪Instantiating Prefabs at runtime运行时实例化预置翻译:U_鹰▪Input输入翻译:U_鹰▪Transforms变换翻译:U_鹰▪Physics物理翻译:U_鹰▪Adding Random Gameplay Elements添加随机的游戏元素翻译:一米的馒头▪Particle Systems粒子系统翻译:小yue▪Particle System Curve Editor粒子系统曲线编辑器翻译:小yue▪Colors and Gradients in the Particle System (Shuriken)粒子系统中的颜色和渐变翻译:小yue▪Gradient Editor渐变编辑器翻译:小yue▪Particle System Inspector粒子系统检视面板翻译:小yue▪Introduction to Particle System Modules (Shuriken)粒子系统模块介绍翻译:小yue▪Particle System Modules (Shuriken)粒子系统模块翻译:小yue▪Particle Effects (Shuriken)粒子效果翻译:小yue▪Mecanim Animation System Mecanim动画系统翻译:FancyBit ▪ A Glossary of Animation and Mecanim terms动画和Mecanim 术语表翻译:FancyBit▪Asset Preparation and Import资源准备和导入翻译:FancyBit ▪Preparing your own character准备你自己的角色翻译:FancyBit▪Importing Animations导入动画翻译:FancyBit▪Splitting Animations分割动画翻译:FancyBit ▪Working with humanoid animations▪Creating the Avatar创建Avatar翻译:FancyBit▪Configuring the Avatar配置Avatar翻译:FancyBit▪Muscle setup肌肉设定翻译:FancyBit▪Avatar Body Mask阿凡达身体遮罩翻译:Karsion▪Retargeting of Humanoid animations为类人动画重新定位目标翻译:Karsion▪Inverse Kinematics (Pro only)▪Generic Animations in Mecanim Mecanim中的通用动画翻译:bwhale▪Bringing Characters to Life为角色赋予生命翻译:bwhale▪Looping animation clips循环动画剪辑翻译:bwhale▪Animator Component and Animator Controller动画组件和动画控制器翻译:bwhale▪Animation State Machines动画状态机翻译:bwhale▪Animation States动画状态翻译:bwhale▪Animation Transitions动画状态转移翻译:bwhale▪Animation Parameters动画参数翻译:bwhale ▪Blend Trees混合树翻译:bwhale▪1D Blending一维混合翻译:bwhale▪2D Blending二维混合翻译:bwhale▪Additional Blend Tree Options附加混合树选项翻译:bwhale▪Mecanim Advanced topics Mecanim进阶主题翻译:bwhale▪Working with Animation Curves in Mecanim(Pro only)使用Mecanim的动画曲线(仅限Pro版本)翻译:bwhale▪Sub-State Machines子状态机翻译:bwhale▪Animation Layers动画层翻译:bwhale▪Animation State Machine Preview (solo andmute)动画状态机预览(独立和关闭)翻译:bwhale▪Target Matching目标匹配翻译:bwhale▪Root Motion - how it works根动作-如何工作翻译:bwhale▪Tutorial: Scripting Root Motion for"in-place" humanoid animations教程:为一个人形场景动画编写根动作脚本翻译:bwhale▪Mecanim Performance and Optimization Mecanim性能和优化翻译:feicheng2005▪Mecanim FAQ Mecanim问答翻译:feicheng2005▪Legacy animation system旧版动画系统翻译:feicheng2005▪Animation View Guide(Legacy)动画视图指南翻译:U_鹰▪Animation Scripting(Legacy)动画脚本翻译:U_鹰▪Navmesh and Pathfinding (Pro only)导航网格和寻路(仅专业版)翻译:肥耀▪Navmesh Baking导航网格烘焙翻译:肥耀▪Sound声音翻译:U_鹰▪Game Interface Elements游戏界面元素翻译:U_鹰▪Networked Multiplayer多人网络翻译:U_鹰Android•Getting Started with Android Development Android 开发入门翻译:闲人若林o A ndroid SDK Setup安装Android SDK翻译:闲人若林o A ndroid Remote安卓远程工具翻译:闲人若林o T rouble Shooting故障排除翻译:U_鹰o R eporting crash bugs under Android在Android中报告崩溃BUG翻译:Summer Windso F eatures currently not supported by Unity Android目前在Unity Android 中不支持的特性翻译:Summer Windso S upport for Split Application Binary (.OBB)对分割应用程序二进制(.OBB)的支持翻译:悄悄o P layer Settings播放器设置翻译:U_鹰o A ndroid Scripting Android脚本翻译:U_鹰▪Input输入翻译:U_鹰▪Mobile Keyboard手机键盘翻译:雨天▪Advanced Unity Mobile Scripting高级Unity手机脚本翻译:SummerWinds▪Using .NET API 2.0 compatibility level使用.NET API 2.0 兼容级别翻译:U_鹰o B uilding Plugins for Android为Android创建插件翻译:雨天o C ustomizing the Splash screen of Your Mobile Application自定义手机启动画面翻译:闲人若林Blackberry 10•Getting Started with Blackberry 10 Developmento S etting up Unity to Build to Your Blackberry10 Deviceo B lackberry10 Detailso P lugins for Blackberry 10o B lackBerry 10 Controllero D ebugging on Blackberry10o B lackberry10 FAQWindows Store•Windows Store: Getting Startedo W indows Store: Deploymento W indows Store: Debuggingo W indows Store: Profilero W indows Store : Command line argumentso W indows Store : Pluginso W indows Store : Project Types▪AppCallbacks classo W indows Store : FAQ▪Windows Store FAQ : WACKo w indowsstore-examplesWindows Phone 8•Windows Phone 8: Getting Started Windows Phone 8:入门翻译:Cantilenao W indows Phone 8: Deployment Windows Phone 8:部署翻译:Cantilenao W indows Phone 8: Debugging Windows Phone 8:调试翻译:Cantilenao W indows Phone 8: Profilero I nteraction between Unity and Windows Phone step by step guideo W indows Phone 8: Plugins▪Windows Phone Plugins step by step guide (using C#)▪Windows Phone Plugins step by step guide (using C++)o W indows Phone 8: FAQ Windows Phone 8:常见问题翻译:Cantilenao W P8 Examples▪Xbox One: Getting Started•Getting Started with Native Client Development本地客户端开发入门翻译:peiandsky •Getting Started with Flash Development Flash开发入门翻译:我是头觅食的野猪o Flash: Setup Flash:安装翻译:我是头觅食的野猪o Flash: Building & Running Flash:生成并运行翻译:我是头觅食的野猪o Flash: Debugging Flash:进行调试翻译:我是头觅食的野猪o Flash: What is and is not supported Flash:支持和不支持的翻译:我是头觅食的野猪o Flash: Embedding Unity Generated Flash Content in Larger Flash Projectso Example: Supplying Data from Flash to Unityo Example: Calling ActionScript Functions from Unityo Example: Browser JavaScript Communicationo Example: Accessing the Stageo Example: Flash Vars•FAQ常见问题o Upgrade Guide from Unity 3.5 to 4.0Unity3.5升级指南翻译:青青子矜o Unity 3.5 upgrade guide Unity3.5升级指南翻译:U_鹰o Upgrading your Unity Projects from 2.x to 3.x升级项目从2.x 到3.x翻译:U_鹰▪Physics upgrade details物理升级细节翻译:U_鹰▪Mono Upgrade Details Mono升级细节翻译:U_鹰▪Rendering upgrade details渲染升级细节翻译:U_鹰▪Unity 3.x Shader Conversion Guide Unity 3.x着色器转换指南翻译:U_鹰o Unity 4.0 Activation - Overview Unity 4.0 激活- 概述翻译:U_鹰▪Managing your Unity 4.x license管理你的Unity 4.x许可证翻译:U_鹰▪Step-by-Step Guide to Online Activation of Unity 4.0在线激活Unity4.0逐步指南翻译:U_鹰▪Step-by-Step Guide to Manual Activation of Unity 4.0手工激活Unity4.0逐步指南翻译:U_鹰o Game Code Questions游戏代码问题翻译:U_鹰▪How to make a simple first person walkthrough如何制作一个简单的第一人称步骤?翻译:U_鹰o Graphics Questions图形问题翻译:U_鹰▪How do I Import Alpha Textures?如何导入Alpha纹理?翻译:我是头觅食的野猪▪How do I Use Normal Maps?如何使用法线贴图?翻译:我是头觅食的野猪▪How do I use Detail Textures?如何使用细节纹理?翻译:杨希羚▪How do I Make a Cubemap Texture?如何制作一个Cubemap纹理?翻译:杨希羚▪How do I Make a Skybox?如何制作天空盒?翻译:我是头觅食的野猪▪How do I make a Mesh Particle Emitter? (Legacy Particle System)如何制作网格粒子发射器?(旧的粒子系统)翻译:我是头觅食的野猪▪How do I make a Splash Screen?如何制作启动屏幕?翻译:杨希羚▪How do I make a Spot Light Cookie?如何制作聚光灯投影遮罩?翻译:杨希羚▪How do I fix the rotation of an imported model?如何修正导入模型的旋转?翻译:我是头觅食的野猪▪How do I use Water?如何使用水?翻译:杨希羚o FBX export guide如何导出FBX翻译:我是头觅食的野猪o Art Asset Best-Practice Guide怎样高效部署资源文件实践指南翻译:一米的馒头o How do I import objects from my 3D app?如何从3d应用程序中导入物体?翻译:用生命舞蹈▪Importing Objects From Maya从maya导入物体翻译:用生命舞蹈▪Importing Objects From Cinema 4D从Cinema 4D导入物体翻译:用生命舞蹈▪Importing Objects From 3D Studio Max从3D Studio Max导入物体翻译:用生命舞蹈▪Importing Objects From Cheetah3D从Cheetah3D导入物体翻译:我是头觅食的野猪▪Importing Objects From Modo从Modo导入物体翻译:我是头觅食的野猪▪Importing Objects From Lightwave从Lightwave导入物体翻译:我是头觅食的野猪▪Importing Objects From Blender从Blender导入物体翻译:我是头觅食的野猪▪Using Blender and Rigifyo Workflow Questions工作流程问题▪Getting started with Mono Develop(Mono Develop入门)翻译:肥耀▪How do I reuse assets between projects?怎样在项目间重用资源?翻译:肥耀▪How do I install or upgrade Standard Assets?怎样安装和升级标准资源包?翻译:肥耀▪Porting a Project Between Platforms平台间的项目移植翻译:Cantilena o Mobile Developer Checklist移动开发者清单翻译:悄悄▪Crashes系统崩溃翻译:悄悄▪Profiling性能分析翻译:悄悄▪Optimizations优化翻译:悄悄o How to deliver an application to the Apple Mac Store.•Advanced高级o Vector Cookbook向量介绍翻译:冷水泡面▪Understanding Vector Arithmetic理解向量运算翻译:冷水泡面▪Direction and Distance from One Object to Another从一个对象到另一个对象的方向和距离翻译:冷水泡面▪Computing a Normal/Perpendicular vector计算法线向量/垂直向量翻译:冷水泡面▪The Amount of One Vector's Magnitude that Lies in Another Vector's Direction一个向量的大小的数量位于另一个向量方向上翻译:冷水泡面o AssetBundles (Pro only)资源包(仅专业版)翻译:bwhale▪AssetBundles FAQ资源包问答翻译:bwhale▪Building AssetBundles创建资源包翻译:bwhale▪Downloading AssetBundles下载资源包翻译:bwhale▪Loading resources from AssetBundles从资源包中加载资源翻译:bwhale▪Keeping track of loaded AssetBundles追踪所下载的资源包翻译:bwhale▪Storing and loading binary data in an AssetBundle存储加载资源包中的二进制数据翻译:bwhale▪Protecting Content内容保护翻译:bwhale▪Managing asset dependencies管理资源依赖关系翻译:bwhale▪Including scripts in AssetBundles在资源包中包含脚本翻译:bwhaleo Graphics Features图形功能▪HDR (High Dynamic Range)高动态范围(HDR)图像翻译:肥耀▪Rendering Paths渲染路径翻译:肥耀▪Linear Lighting (Pro Only)线性光照(仅专业版)翻译:U_鹰▪Level of Detail (Pro Only)细节级别(仅专业版)翻译:肥耀▪Shaders着色器翻译:肥耀▪Shaders: ShaderLab & Fixed Function shaders着色器:着色器语言&固定功能着色器翻译:风里疯语▪Shaders: Vertex and Fragment Programs着色器:顶点和片段程序翻译:风里疯语▪Using DirectX 11 in Unity 4在Unity 4使用DirectX 11翻译:U_鹰▪Compute Shaders计算着色器翻译:13y32r▪Graphics Emulation图形仿真翻译:我是头觅食的野猪o AssetDatabase资源数据库翻译:肥耀o Build Player Pipeline构建播放器管线翻译:我是头觅食的野猪o Profiler (Pro only)分析器(仅专业版)翻译:肥耀▪Profiler window分析器窗口翻译:肥耀▪CPU Usage Area CPU使用率区域翻译:Cantilena▪Rendering Area渲染区域翻译:肥耀▪Memory Area内存区域翻译:Cantilena▪Audio Area音频区域翻译:Cantilena▪ProfilerPhysics物理学区域翻译:肥耀▪GPU Area GPU区域翻译:肥耀o Lightmapping Quickstart光照贴图快速入门翻译:用生命舞蹈▪Lightmapping In-Depth光照贴图深入学习翻译:用生命舞蹈▪Custom Beast Settings自定义Beast设置翻译:一米的馒头▪Lightmapping UVs光照贴图UV翻译:用生命舞蹈▪Light Probes灯光探测器翻译:用生命舞蹈o Occlusion Culling (Pro only)遮挡剔除(仅专业版)翻译:肥耀o Camera Tricks摄像机技巧翻译:U_鹰▪UnderstandingFrustum了解视锥体翻译:重生の记忆▪The Size of the Frustum at a Given Distance from the Camera从摄像机到给定距离的视锥体的大小翻译:我是头觅食的野猪▪Dolly Zoom (AKA the "Trombone" Effect)推拉变焦(又称伸缩变焦)翻译:我是头觅食的野猪▪Rays from the Camera摄像机射线翻译:我是头觅食的野猪▪Using an Oblique Frustum使用斜视锥体翻译:我是头觅食的野猪▪Creating an Impression of Large or Small Size创建一个大或小尺寸的感觉翻译:我是头觅食的野猪o Loading Resources at Runtime在运行时加载资源翻译:肥耀o Modifying Source Assets Through Scripting通过脚本修改源资源翻译:肥耀o Generating Mesh Geometry Procedurally用程序生成网格几何体翻译:肥耀▪Anatomy of a Mesh网格剖析翻译:肥耀▪Using the Mesh Class使用Mesh类翻译:肥耀▪Example - Creating a Billboard Plane示例- 创建一个广告牌平面翻译:肥耀o Rich Text富文本翻译:无悔o Using Mono DLLs in a Unity Project在Unity项目中使用Mono DLL(动态链接库)翻译:X-droido Execution Order of Event Functions事件函数的执行顺序翻译:X-droido Practical Guide to Optimization for Mobiles优化手机的实用指南翻译:Cantilena ▪Practical Guide to Optimization for Mobiles - Future & High End Devices优化手机的实用指南- 未来及高端设备翻译:Cantilena ▪Practical Guide to Optimization for Mobiles - Graphics Methods优化手机的实用指南- 图形方法翻译:Cantilena▪Practical Guide to Optimization for Mobiles - Scripting and Gameplay Methods优化手机的实用指南- 脚本和游戏设置方法翻译:萤之助▪Practical Guide to Optimization for Mobiles - Rendering Optimizations 优化手机的实用指南- 渲染优化翻译:萤之助▪Practical Guide to Optimization for Mobiles - Optimizing Scriptso Structure of an Unity XCode Project Unity XCode项目结构翻译:U_鹰o Optimizing Graphics Performance优化图形性能翻译:肥耀▪Draw Call Batching描绘调用批处理翻译:Amazonzx▪Modeling Characters for Optimal Performance为优化性能建模角色翻译:肥耀▪Rendering Statistics Window渲染数据统计窗口翻译:肥耀o Reducing File Size减小文件大小翻译:我是头觅食的野猪o Understanding Automatic Memory Management了解自动内存管理翻译:一米的馒头o Platform Dependent Compilation平台依赖编译翻译:我是头觅食的野猪o Generic Functions泛型函数翻译:肥耀o Debugging进行调试翻译:我是头觅食的野猪▪Console控制台翻译:U_鹰▪Debugger调试器翻译:我是头觅食的野猪▪Log Files日志文件翻译:肥耀▪Accessing hidden folders访问隐藏文件夹翻译:肥耀o Plugins (Pro/Mobile-Only Feature)插件- 只用于专业版/移动版功能翻译:太昊|仙境乐网▪Building Plugins for Desktop Platforms为桌面平台创建插件翻译:雨天▪Building Plugins for iOS为iOS创建插件翻译:雨天▪Building Plugins for Android为Android创建插件翻译:雨天▪Low-level Native Plugin Interface底层本地插件接口翻译:雨天o Textual Scene File Format (Pro-only Feature)文本场景文件格式(仅专业版功能)翻译:U_鹰▪Description of the Format格式说明翻译:我是头觅食的野猪▪YAMLSceneExample YAML场景示例翻译:我是头觅食的野猪▪YAML Class ID Reference YAML 类ID参考翻译:U_鹰o Streaming Assets流媒体资源翻译:我是头觅食的野猪o Command line arguments命令行参数翻译:一米的馒头o Running Editor Script Code on Launch启动时运行编辑器脚本代码翻译:U_鹰o Network Emulation网络仿真翻译:肥耀o Security Sandbox of the Webplayer网络播放器的安全沙箱翻译:我是头觅食的野猪o Overview of available .NET Class Libraries可用的.NET类库概述o Visual Studio C# Integration Visual Studio C#集成翻译:我是头觅食的野猪o Version control integration (Team license only)o Using External Version Control Systems with Unity使用Unity的外部版本控制系统翻译:我是头觅食的野猪o Analytics分析翻译:肥耀o Check For Updates更新检查翻译:肥耀o Installing Multiple Versions of Unity安装多个Unity版本翻译:青青子矜o Trouble Shooting故障排除翻译:U_鹰▪Troubleshooting Editor编辑器故障排除翻译:IanZhang▪Troubleshooting Webplayer网页播放器故障排除翻译:IanZhang Desktop•Shadows in Unity阴影翻译:U_鹰o D irectional Shadow Details平行光阴影细节翻译:U_鹰o T roubleshooting Shadows阴影疑难解答翻译:U_鹰o S hadow Size Computation阴影大小计算翻译:U_鹰o I ME in Unity Unity的输入法编辑器翻译:U_鹰o O ptimizing for integrated graphics cards为集成显卡优化翻译:U_鹰•Web Player Deployment网络播放器部署翻译:U_鹰o H TML code to load Unity content用HTML代码加载Unity内容翻译:U_鹰o W orking with UnityObject2使用精缩的UnityObject2翻译:IanZhango C ustomizing the Unity Web Player loading screen自定义Unity网络播放器加载的屏幕翻译:U_鹰o C ustomizing the Unity Web Player's Behavior自定义Unity网络播放器的行为翻译:U_鹰o U nity Web Player and browser communication Unity网络播放器和浏览器通信翻译:U_鹰o U sing web player templates使用网络播放器模板翻译:U_鹰o W eb Player Streaming网络播放器流处理翻译:U_鹰o W ebplayer Release Channels网页播放器版本翻译:人中吕布•Using the Chain of Trust system in the Web Player在网页播放器使用信任链系统翻译:人中吕布。

unity烘焙场景的创建保存和使用(附demo项目)

unity烘焙场景的创建保存和使用(附demo项目)

unity烘焙场景的创建保存和使用(附demo项目)Unity烘焙场景是一种将场景中的静态物体和光照信息转换为纹理贴图的过程,可以提高游戏的渲染效率。

在Unity中,烘焙场景的创建、保存和使用非常简单。

首先,我们需要创建一个新的场景,并将需要烘焙的物体放置在场景中。

烘焙通常用于静态物体,因为它们不会在运行时发生移动。

可以使用Unity的预制体或手动创建物体。

在场景中,我们还需要设置光照信息。

这可以通过创建光源或使用Unity提供的预置光照设置来完成。

光照设置包括环境光、定向光、点光源、聚光灯等。

根据场景需要,可以调整光源的位置、颜色和强度等属性。

完成物体和光照的设置后,我们可以开始进行烘焙。

在Unity的顶部菜单栏中,选择“Window”->”Lighting”打开烘焙窗口。

在烘焙窗口中,选择“Scene”选项卡。

在这里,可以设置烘焙的一些参数,如光照贴图的像素分辨率、间接光照的质量等。

同时,还可以选择烘焙的物体和光照信息。

点击“Bake”按钮开始烘焙过程。

Unity会根据场景中物体的位置和光照的设置,计算出每个像素的颜色和光照强度,并将其保存为一张贴图。

这张贴图将被应用到场景中的物体上,提高渲染效率。

完成烘焙后,我们可以保存场景。

在Unity的顶部菜单栏中,选择“File”->”Save Scene”来保存场景。

保存后,场景将包含烘焙后的光照信息,可以在其他项目中使用。

保存的场景可以在其他项目中导入和使用。

在新的项目中,打开场景后,场景中的物体将自动应用保存的光照信息。

这样可帮助我们节省时间和提高工作效率。

除了创建、保存和使用烘焙场景,我们还可以进一步优化烘焙结果。

在烘焙窗口的“Lighting”选项卡中,可以调整烘焙参数,如光照贴图的分辨率、间接光照的采样数量等。

通过适当调整这些参数,可以使烘焙结果更精确和逼真。

总结来说,Unity烘焙场景的创建、保存和使用非常简单。

通过将静态物体和光照信息转换为纹理贴图,可以提高游戏的渲染效率和优化性能。

unity3d烘焙场景设置注意事项

unity3d烘焙场景设置注意事项

unity3d烘焙场景设置注意事项Fbx、贴图导入Unity时的注意事项:在导出Fbx之前,Maya中已经对物体连接了正确的贴图,并且贴图文件名不能更改。

把Fbx和贴图放在同一文件夹内,直接把此文件加拖入Unity内。

此时Diffuse贴图应能自动识别。

此时,对贴图修改后,在Unity中更新贴图(删除老贴图,导入新贴图,并保持命名,路经一致),模型能够自动更新。

假如Unity中删除贴图,关闭Unity,再打开Unity,导入之前删除的贴图,模型不会自动更新贴图。

------------------------------------------------------i3D的这篇教程中的模型比例有问题,先根据Unity官方帮助文档中的内容说一下:Unity官方帮助文档中认为,模型的缩放尺寸是非常重要的。

特别是涉及到一些物理特效模拟的时候。

Unity认为,在理想状态下,不要更改模型的Transforms Scale 值,保持Scale值为(1,1,1)。

(这样的话,模型在Maya中制作时需要freeze,使缩放值为(1,1,1))。

原因是,额外的缩放数值会增加不必要的计算量。

Unity首先推荐模型在创建时使用真实尺寸。

其次是在Unity的Import Settings中更改尺寸。

Unity在进行场景优化时会根据物体尺寸来进行优化。

当在Unity中把一个物体parent到另外一个物体时,最好父级物体的坐标值是(0,0,0),否则之后会遇到不少头痛问题。

Unity的粒子系统不受Transforms Scale值的影响。

物体的不均匀缩放值在Parent后会产生不良后果(这个情况和Maya中是一样的)Unity中,1个单位尺寸代表1米。

即在Unity中创建一个Cube的尺寸是1x1x1米大小。

Unity推荐把人的身高定为大约2个Unity单位高度(2米)。

在Max中,只要正确设置单位尺寸(系统单位尺寸设置以及输出时单位尺寸设置)成厘米后,得到的效果是一致的。

Unity自动寻路Navmesh之入门

Unity自动寻路Navmesh之入门

Unity手游之路<八>自动寻路Navmesh之入门现在的大部分mmo游戏都有了自动寻路功能。

点击场景上的一个位置,角色就会自动寻路过去。

中间可能会有很多的障碍物,角色会自动绕过障碍物,最终达到终点。

使用Unity来开发手游,自动寻路可以有很多种实现方式。

第一种比较传统的是使用A星寻路,它是一种比较传统的人工智能算法,在游戏开发中比较常用到。

大部分的页游和端游都用到这种技术。

在Unity游戏也可以用这种技术,Asset Store上面已经有相关的组件了,感兴趣的同学可以自己去了解。

我在后面有机会再来详细介绍了。

今天我们来学习Unity官方内置的寻路插件-Navmesh。

由于内容比较多,我们将分几次来系统学习。

今天先通过学习一个最简单的例子来入门。

(转载请注明原文地址/janeky/article/details/17457533)∙实例我们要实现一个功能:点击场景中的一个位置,角色可以自动寻路过去。

角色会绕过各种复杂的障碍,找到一条理论上”最短路径“。

∙步骤1.创建地形2.添加角色3.创建多个障碍物,尽量摆的复杂一点,来检查Navmesh的可用性和效率。

4.选中地形,在Navigation窗口中,设置Navigation Static5.依次选中障碍物,在avigation窗口中,设置Navigation Static7.Navigation窗口中,选择Bake(烘焙)界面,点击Bake按钮,进程场景烘焙,就可以烘焙出寻路网格了8.为角色添加NavMeshAgent组件。

Component->Navigation->Nav Mesh Agent9.为角色新增一个脚本PlayerController.cs,实现点击目标,自动寻路功能[csharp]view plaincopyusing UnityEngine;using System.Collections;//Author:ken@public class PlayerController : MonoBehaviour{private NavMeshAgent agent;void Start(){//获取组件agent = GetComponent<NavMeshAgent>();}void Update(){//鼠标左键点击if (Input.GetMouseButtonDown(0)){//摄像机到点击位置的的射线Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);RaycastHit hit;if (Physics.Raycast(ray, out hit)){//判断点击的是否地形if (!.Equals("Terrain")){return;}//点击位置坐标Vector3 point = hit.point;//转向transform.LookAt(new Vector3(point.x, transform.position.y, point.z)); //设置寻路的目标点agent.SetDestination(point);}}//播放动画,判断是否到达了目的地,播放空闲或者跑步动画if (agent.remainingDistance == 0){animation.Play("idle");}else{animation.Play("run");}}完成了,可以看看效果:相关知识1.角色身上的Nav Mesh Agent 组件Radius 半径:代理的半径(仅用于寻路目的,可以跟实际对象的半径大小不一样,一般比实际对象的半径大)。

unity烘焙光照贴图

unity烘焙光照贴图

光影烘焙,英文叫Lightmapping 或 light baking。

Unity自带了Lightmapping的功能(是Illuminate Labs出的名为Beast的产品)。

本系列教程分为4讲:第一讲光影烘焙第二讲 AreaLight第三讲 Light Probes第四讲脚本控制其中第三第四讲讲解的是动态物体与烘焙后场景的融合。

光影烘焙打开方式Window –Lightmapping有几点需要注意:1.所要烘焙物体的mesh 必须要有合适的lightmapping uv。

如果不确定的话,就在导入模型设置中勾选 Generate Lightmap UVs2.任何Mesh Renderer, Skinned Mesh Renderer 或者 Terrain都要标注为static(lightmap static)界面一:Object点击Bake Scene即开始烘焙界面2:Bake烘焙参数的设置(1)Dual Lightmap mode:近景烘焙图(near lightmaps)和远景烘焙图(far lightmaps)都会被烘焙,只有deferred rendering path支持该模式。

(2)Single Lightmap mode:只有远景烘焙图(far lightmaps)会被烘焙,(3)Directional Lightmap mode:Use in forward rendering:一般可以忽略它。

针对Dual lightmaps的设定,只在Mode选的是Dual时才会出现。

在forward rendering模式下是否激活dual lightmaps,需要自己写对应的Shader。

Quality:High low 2个选项。

决定采集射线的数量,对比界限,以及反锯齿等设置。

Bounces:Global Illumination模拟中 light bounces的数量。

0表示只有直接光照会被计算,如果要加入柔软的,真实的间接光照的话,则至少填1。

UNITY光照系统简介

UNITY光照系统简介

UNITY光照系统简介UNITY_光照系统光照系统⼜称照明系统;从字⾯意思理解,光照系统的作⽤就是给我们的场景带来光源,⽤于照亮场景。

⼀个五彩缤纷的游戏场景肯定要⽐⼀个漆⿊⼀⽚的游戏场景更具吸引⼒,想让游戏场景变的更漂亮,光照系统是必不可缺的。

在 Unity5.x 中光照系统主要组成部分有两个:灯光组件(4 个灯光组件,2 个特殊功能组件)以及 Lighting ⾯板。

两种类型:实时光照:PC,主机端运⾏,照明效果好,但是消耗资源较⼤。

烘焙光照:移动端运⾏,照明效果也不错,消耗资源较少。

光照系统之实时光照实时光照全称为 Precomputed Realtime GI(预先计算的实时全局光照);GI 全称是 Global illumination(全局光照);Unity5.x 光照系统默认使⽤的就是实时光照类型。

光照结论:所有的灯光都真实的参与运算,可以动态的改变任何的灯光(位置,颜⾊,强度....),且随着改变,灯光对场景环境的影响也是实时的。

所有的场景环境模型,也同样是真实的参与运算,这些场景模型也是真实的受到各种光源的影响。

综合结论:光源真实的影响环境,环境真实的受光源影响。

Lighting⾯板相关设置:Ambient GI:显⽰当前光照系统的模式(实时还是烘焙)。

Auto 复选框的作⽤:默认是勾选状态,也就意味着我们场景⾥⾯添加了新的模型,改变了原有模型的位置,场景灯光是会⾃动计算的。

场景内资源模型较少时,可以勾选,但是如果场景很复杂了,就要取消这个 Auto 的勾选状态,否则你每次调整了场景中模型,都要重头Build ⼀次,是很消耗时间的。

Build 按钮的作⽤:场景实时光照,烘焙光照的相关光照数据的“构造⽣成”。

前⾯的 Auto 选项就是控制这些相关数据,是⾃动还是⼿动⽣成。

光照系统之烘焙光照烘焙光照全称为 Baked GI(烘焙全局光照);烘焙光照的特点是将场景中的光源信息事先烘焙为“光照贴图”,⽤这些贴图存储光照,然后引擎会⾃动的将这些“光照贴图”与场景模型相匹配,烘焙完光照贴图后,在游戏运⾏过程中场景内的灯光是不会真正的参与实时运算的。

unity光照探针使用中的一些问题

unity光照探针使用中的一些问题

Unity光照探针使用中的一些问题1.引言U n it y作为目前最为流行的游戏引擎之一,其强大的渲染引擎在实现真实光照效果方面有着显著的优势。

光照探针作为Un it y中调整场景光照的重要工具,可以有效地增强场景渲染的真实感。

然而,在使用光照探针的过程中,我们可能会遇到一些常见的问题和挑战。

本文将针对这些问题进行详细讨论,并提供解决方案。

2.光照探针介绍2.1光照探针的作用光照探针是U ni ty中用于捕捉场景光照信息的关键工具。

通过在场景中放置光照探针,我们可以捕捉到各个位置的光照信息,并在渲染过程中使用这些信息来模拟真实的光照效果。

2.2光照探针的原理光照探针原理基于反射原理,通过在场景中放置一系列的反射球体,并在运行时动态地计算这些球体的光照信息,最终生成光照探针数据。

3.光照探针的使用问题及解决方案3.1光照探针的摆放位置选择在使用光照探针之前,我们需要合理选择摆放位置,以确保光照探针能够捕捉到场景中各个重要区域的光照信息。

一般来说,我们可以遵循以下原则进行选择:-对于场景中的重要区域,如主角所在位置、关键房间等,应当优先考虑放置光照探针。

-对于场景中的大面积区域,可以通过合理地放置一定数量的光照探针来均匀采样,以获取整体的光照信息。

-在摆放光照探针时,应尽量避免与其他物体或碰撞体重叠,以免产生误差。

3.2光照探针的设置参数在使用光照探针之前,我们还需要进行一些必要的设置,以确保光照探针能够正确地捕捉光照信息。

其中,以下参数是比较重要的:-光照模式选择:根据场景的不同特点,我们可以选择合适的光照模式,如R ea lt im e、Ba ked等。

-球体大小调整:通过调整球体的大小,可以影响光照探针的采样精度,需要根据具体场景进行调整。

-光照探针系数:通过调整光照探针的系数,可以控制其对最终渲染结果的影响程度,以满足不同的需求。

3.3光照探针的优化技巧在大规模场景中使用光照探针时,可能会遇到性能方面的问题。

Unity3D教程:关于LightMapping和NavMesh烘焙的动态加载

Unity3D教程:关于LightMapping和NavMesh烘焙的动态加载

Unity3D教程:关于LightMapping和NavMesh烘焙的动态加载熟悉Unity的朋友都应该知道,unity有内部LightMapping烘焙和NavMesh寻路的功能。

但这些非常好用的功能,都是基于对某个已经保存的关卡(scene)进行烘焙(Bake)的操作,我一直以为,一般来说这样很难做到外部加载或者动态加载的。

但通过最近一段时间的研究,发现其实这些基于scene的功能,也是可以动态加载的,虽然在使用上是有一定的限制,不过合理利用还是能做到不少想要的效果的。

假设我们限制有这样的项目要求,游戏项目是网页游戏,由于容量的关系,我们所有的场景都是外部动态加载的,但为了效果好,我们使用了LightMapping烘焙了场景,而为了有寻路功能,我们对场景进行了NavMesh的烘焙。

我们希望把这个烘焙了的场景像一般的assetBundle那样从外部加载进来。

现在我们需要把这个烘焙好的场景导出成assetBundle。

使用的方法是:BuildPipeline.BuildPlayerBuildPipeline.BuildPlayer 编译播放器例如我们把上面烘焙好的场景保存成scene001,那么我们就可以写成:这样我们可以把这个scene001的场景导出成了scene001.unity3d的assetBundle。

当我们想从外部加载这个烘焙好的场景时,可以使用WWW来下载他,但用法和一般的www加载assetBundle有点不同的用法。

假设我们把这个导出的asssetBundle放在了一个路径(url),那么我们可以这样加载它:可以看出,在前两步,我们的做法和普通的www加载assetBundle是一样的,都是获取一个新的WWW资源,但下面的一步就有点不一样,由于他是一个场景,而不是一个GameObject,所以我们不能通过Instantiate 来实例化他,而是用Application.LoadLevel 或者Application.LoadLevelAdditive 之类的加载关卡的方法来读取他的。

unity灯光-烘焙光照贴图讲解

unity灯光-烘焙光照贴图讲解

实用标准文案灯光-Light 对于每一个场景灯光是非常重要的部分。

网格和纹理定义了场景的形状和外观,而灯光定义了场景的颜色和氛围。

可以通过从菜单中选择GameObject->Light并将其添加到你的场景中。

有3种类型的灯光。

一旦添加了一个灯光你就可以像操作其他物体一样操作它。

相关属性介绍♦Type:灯光的类型■Directional:平行灯,类似太阳光;■Point:点光源,类似灯泡;■Spot:聚光灯,类似舞台聚光灯;♦Baking:该选项有三个选择■Realtime/口光源不参与烘焙,只作用于实时光照;文档大全实用标准文案■Baked:表示光源只在烘焙时使用■Mixed:该光源会在不同的情况下做不同的响应;在烘焙时,该光源会作用于所有参与烘焙的物体;在实际游戏运行中,该光源会作为实时光源作用于那些不参与烘焙的物体或者动态的物体(不作用于静态的物体,就是勾选了Static);♦Color:光源的颜色,根据不同的环境设置不同的颜色,营造出不同的氛围;♦Intensity:光线强度;♦Bounce Intensity:光线的反射强度;♦Shadow Type:设置是否显示光源作用在的物体的阴影,■No Shadows不显示阴影,阴影不存在;■Hard Shadows:硬阴影(无过滤),效果不是很自然比较生硬;■Soft shadows:柔化阴影,更加贴近实际生活中的阴影显示,但比较消耗资源;♦Strength:阴影黑暗程度,取值范围0~1♦Resolution:阴影的清晰度,细化度,越高消耗越大;♦Bias:阴影的偏移量,越小,物体表面会有来自它自身的阴影,太大光源就会脱离了接收器;♦Cookie:灯光投射的纹理,如果灯光是聚光灯和方向灯就必定是一个2D纹理,如果是点光源必须是一个Cubemap (立体贴图);♦Cookie 5»2«:缩放Cookie的投影,只适用于方向光♦Draw Halo:如果勾选,那光源带有一定半径范围的球形光源♦Flare:在选中的光源的位置出现镜头光晕;♦Render Mode:此项决定了选中的光源的重要性,影响照明的保真度和性能;■Auto:渲染的方法根据附近灯光的亮度和当前的质量设置在运行时由系统确定;■important灯光是逐个像素渲染的;■Not Important灯光总是以最快速度渲染;Culling Mask:剔除遮罩,类似摄像机的遮罩,选中指定的层收到光照影响,未选中的不受到光照影响;文档大全实用标准文案设置全局光照和烘焙光照贴图-LightMap一个场景中灯光添加多了资源消耗也就大了,为了降低资源的消耗,可以选择烘焙光照贴图;把光源的效果烘焙到贴图上,形成自带光源效果的贴图,这样就可以减少灯光的使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

unity自带LightMapping和3Ds Max烘焙贴图的小对比
对于做虚拟现实的朋友来说,烘焙贴图应该不是一个陌生的东西。

想要在有限性能的电脑上面即时运算较好的光影效果,一般都会采用烘焙贴图的方法。

而除了在3dmax里面烘焙贴图之外,Unity3D也自带了LightMapping烘焙贴图的功能。

下面我们来做一个小例子,对两者的意义和效果做一个小对比。

在3dmax里面,我简单的建立了几个模型,并分别赋予他们不同的颜色:
然后使用3dmax自带的光线追踪渲染一下,会出现这样的效果:
很明显的,光线追踪之后的渲染效果比没有光线追踪时立体感强了很多。

这是因为高级渲染器模拟了真实环境里面光线的各种反射和散射,使物体看起来接近真实的效果。

我们所要做的烘焙,其实就是把这种经过高级渲染器计算的光影效果,记录在贴图上面。

我对上面的几个物体展了UV,并使用3dmax的烘焙功能,烘焙出相应的贴图。

并把这个带着UV信息的模型导出为FBX,放进Unity里面。

在unity里面,我拉出了两个模型,一个按照原来的颜色直接给予他材质,另外一个把3dmax里面烘焙的贴图贴上了模型,会出现上图的情况。

场景里面也没有打灯光,假如是只有颜色的材质时,模型会没有任何的轮廓和立体感。

而贴上了烘焙贴图的模型,看起来会和在3dmax里面使用光线追踪时渲染的效果差不多。

接下来我们对只有颜色的这个模型进行LightMapping烘焙处理。

选择该模型,然后在Static里面选择Lightmap Static。

在菜单栏的Window——>lightMapping打开lightMapping面板,在bake栏里面设置一下烘焙的参数,我这里用了如下参数:
设置好之后,就可以烘焙了,在烘焙之前先保存场景,然后点击Bake Scene按钮。

经过漫长的等待(等待的时间取决于你的模型的复杂程度),烘焙结束,生成了贴图,我们可以在maps里面查看:
这时候,我们可以进行一个小对比了:
同样是场景里面没有灯光,但不论是经过Lightmapping烘焙的模型,还是在3DMax里面烘焙贴图的模型,都有了较为真实的光影效果。

既然两者都能达到差不多的效果,那么究竟他们之间有什么差别呢?
3dmax烘焙:
1、可以使用各种高级渲染器对模型进行烘焙,比如Vray。

2、可以烘焙像反射这样的效果。

3、因为光影是固定了,所以在引擎里面只能按照在3DMax里面的摆放,不然就会穿帮。

所以模型贴图不能在各个不同场景通用。

unity的LightMapping烘焙:
1、设置的参数相对没有3DMax里面高级渲染器丰富。

2、只能烘焙光影的追踪效果,不能烘焙反射。

3、可以一个模型放在不同场景单独烘焙,模型可以通用。

4、由于每个场景需要烘焙一组贴图,所以如果场景多了,也会增加贴图数量。

至于两者之间的具体效果对比,这要根据烘焙时的具体参数来看。

这里注意的一点是,无论哪种烘焙,你都需要对模型进行展UV操作,假如UV 没有展,或者UV的范围超出了0-1的框,烘焙都是会出错的。

相关文档
最新文档