unity是一款游戏设计软件,可以帮助用户在电脑上设计3D游戏,这款unity
Hub软件主要的功能就是管理unity游戏开发项目,您可以在软件新建一个项目,可以在软件查看社区教程,可以在软件查看官方提供的游戏开发作品,可以学习游戏开发教程,为用户提供更多游侠开发资源,对于需要学习unity软件的朋友很适合,本软件提供主程序安装功能,在软件点击“安装”功能就可以找到官方提供的全部unity版本,您可以选择自己需要的一个版本安装使用,如果你需要管理unity游戏项目就可以下载这款软件!
软件功能
1、unity Hub可以帮助用户管理游戏项目
2、将自己设计完毕的游戏添加到软件管理
3、也可以在软件新建一个项目,随后在unity软件打开您的新项目
4、支持教程内容,点击学习界面可以找到很多游戏项目
5、可以下载游戏项目学习,可以添加项目到unity打开学习
6、您也可以进入社区查看更多内容,可以和其他网友交流unity知识
7、支持unity软件安装,可以在软件找到最新版unity 2020安装
软件特色
Unity编辑器管理功能
发现并下载多个Unity版本(包括测试版、正式版)
自定义安装位置
安装完成后,添加编辑器组件
集中式Unity项目创建功能
项目模板
添加Asset Store资源商店资源包
修改项目构建目标
访问Getting Started和Tutorial系列项目
账户和权限管理功能
安装方法
1、打开UnityHubSetup2.3.0.exe直接启动,接受软件协议
2、提示软件的安装地址C:\Program Files\Unity Hub
3、提示软件的安装进度界面,等待软件安装结束
4、这里是软件的安装结束界面,点击完成立即启动UnityHub
使用说明
1、打开软件提示没有许可证,为了能够开始使用 Unity激活新许可证,或手动激活。
2、保存许可证申请,单击此处保存许可证请求密钥
3、 Unity编辑器安装路径,在此选择 Unity编辑器的安装路径。已安装编辑器的路径将保持不变。
4、点击新建创建新项目。点击添加会往项目列表中添加一个项目,如果您想学习如何使用 Unity,请前往学习区域。
5、学习界面如图所示,可以查看已经设计完毕的项目,显示 FPS Microgame、Karting Microgame
6、FPS微型游戏模板是您可以修改和自定义的3D第一人称射击游戏。 在学习Unity基础知识的同时,完成Creative Mods以在项目上构建并使其更具您自己的风格
7、可以将当前的项目下载到你的电脑使用,从而学习游戏开发
8、如果要开始工作,安装一个 Unity版本,或者选择一个已经安装的Unity版本
9、如果无法找到所需版本,请查看:官方发布网站。在此下载Beta版本:Beta,或者在此下载 Patch
Unity介绍
内置渲染管线
Unity的内置渲染管道是通用的渲染管道。
内置渲染管道在自定义扩展方面比可脚本渲染管道受到更多限制,但是您可以在不同的渲染路径
之间进行选择并通过命令缓冲区和回调扩展其功能。
前向渲染路径
此页面描述了正向渲染路径
Unity内置渲染管线。
正向渲染
渲染”,具体取决于影响对象的灯光,从而一次或多次渲染每个对象。灯光本身也可以通过前向渲染进行不同的处理,具体取决于它们的设置和强度。
实施细节
在正向渲染中,影响每个对象的一定数量的最亮光源以完全按像素的照明模式渲染。然后,每个顶点最多计算4个点光源。其他的光以球谐(SH)的形式计算,虽然速度更快,但只是一个近似值。灯光是否将是每个像素的灯光取决于此:
将“渲染模式”设置为“不重要”的灯光始终是每个顶点或SH。
最亮的定向光始终是每个像素。
将“渲染模式”设置为“ 重要”的灯光始终按像素进行渲染。
如果以上结果导致的光线少于当前的“ 像素光线计数 质量设置”,则按像素递减的顺序按亮度降低顺序渲染更多的光线。
每个对象的渲染如下:
Base Pass可应用一个按像素的定向光和所有按顶点/ SH的光。
其他每个像素的光将在其他遍次中渲染,每种光一次。
例如,如果某些对象受到许多灯光的影响(下图中的圆圈,则受灯光A到H的影响):
假设光源A到H具有相同的颜色和强度,并且所有光源都具有“自动渲染”模式,因此将为此对象按照完全相同的顺序对其进行排序。最亮的灯光将在每个像素的照明模式(A到D)中渲染,然后在每个顶点照明的模式(D到G)中最多渲染4盏灯,最后在SH(G到H)中渲染其余的灯光:
请注意,灯光组重叠;例如,最后的每个像素的光混合到每个顶点的照明模式下,因此当对象和灯光四处移动时,“爆光”次数减少了。
基本通行证
基本遍历使用每个像素的定向光和所有SH / vertex光源渲染对象。此阶段还添加了任何光照贴图。
着色器的环境照明和发射照明
在此过程中渲染的定向光可以具有阴影。请注意,Lightmapped对象不会从SH光源获得照明。
请注意,在着色器中使用“ OnlyDirectional” 通过标志时,向前的基本传递仅渲染主方向光,环境/光照探针和光照贴图(SH和顶点光不包括在传递数据中)。
附加通行证
对于影响此对象的每个其他每像素光,将渲染其他通过。除非使用multi_compile_fwdadd_fullshadows变体快捷方式,否则默认情况下,这些传递中的灯光没有阴影(因此,正向渲染支持带阴影的一个定向光)。
性能考量
球形谐波灯光的渲染速度非常快。它们在CPU上的成本很小,实际上可以免费供GPU使用(也就是说,基本遍历总是计算SH照明;但是由于SH照明的工作方式,无论有多少SH照明,成本都完全相同在那里)。
SH灯的缺点是:
它们是在对象的顶点而不是像素
处计算的,。这意味着它们不支持浅Cookie或法线贴图。
SH照明频率很低。SH灯不能有尖锐的灯光过渡。它们也仅影响漫射照明(对于高光高光而言频率太低)。
SH照明不在本地;靠近某个表面的点或点SH灯将“看起来不正确”。
总而言之,SH灯通常足以应付小型动态物体。
延迟着色渲染路径
本页详细介绍了“ 延迟着色” 渲染路径
Unity内置渲染管线。有关递减阴影的入门技术概述,请参见Wikipedia:递减阴影。
总览
使用延迟着色时,可以影响GameObject
的灯光数量没有限制。Unity。所有光源均按像素进行评估,这意味着它们都可以与法线贴图
正确交互等。此外,所有灯光都可以包含Cookie和阴影。
延迟阴影的优点是照明的处理开销与像素
数成正比。这由场景中的灯光大小决定。
不管它照亮了多少个GameObject。因此,可以通过保持较小的灯光来提高性能。延迟阴影还具有高度一致且可预测的行为。每种光的效果都是按像素计算的,因此没有照明计算会分解成大三角形。
不利的一面是,延迟着色对反走样没有真正的支持,并且不能处理半透明的GameObject(使用正向渲染来渲染)。也没有对Mesh
支持。Renderer的“接收阴影”标志和剔除蒙版
仅在有限的方式中支持中的。您最多只能使用四个剔除口罩。就是说,您的剔除图层蒙版
,其中至少必须包含所有层减去四个任意层,因此必须设置32个层中的28个。否则,您将获得图形工件。
要求
它需要具有多个渲染目标(MRT),着色器
的图形卡 Model 3.0(或更高版本),以及对深度渲染纹理的支持
。2006年以后生产的大多数PC图形卡都支持延迟着色,从GeForce 8xxx,Radeon X2400和Intel G45开始。
在移动设备上,至少运行OpenGL ES 3.0的所有设备都支持延迟着色。
注意:延迟渲染
使用正交投影时,不支持。如果是Camera
”中的“投影模式”设置为“正交”,“ 摄影机”退回到“正向渲染”。
性能考量
实时灯光
的渲染开销中的延迟阴影与灯光照明的像素数量成正比,而不取决于场景的复杂性。因此,小的点光源或点光源的渲染成本非常低廉,如果它们被场景游戏对象完全或部分遮挡,那么它们甚至会更便宜。
当然,带有阴影的灯比没有阴影的灯贵得多。在延迟着色中,仍然需要为每个阴影投射光渲染一次或多次阴影投射GameObject。此外,应用阴影的照明着色器比禁用阴影时使用的着色器具有更高的渲染开销。
实施细节
带有不支持延迟着色的着色器的对象将在延迟着色完成后使用正向渲染进行渲染。
路径。
下面列出了几何缓冲区(g缓冲区)中渲染目标(RT0-RT4)的默认布局。数据类型放置在每个渲染目标的各个通道中。使用的通道显示在括号中。
RT0,ARGB32格式:漫反射色(RGB),遮挡(A)。
RT1,ARGB32格式:镜面反射颜色
高光(RGB),粗糙度(A)。
RT2,ARGB2101010格式:世界空间标准(RGB),未使用(A)。
RT3,ARGB2101010(非HDR)或ARGBHalf(HDR)格式:发射+照明+ 光照贴图
+“ 反射探针”。
缓冲区。
Depth + Stencil buffer(
深度+ 模板缓冲区)。
因此,默认的g缓冲区布局为160位/像素(非HDR)或192位/像素(HDR)。
如果将“ 阴影蒙版”或“ 距离阴影蒙版”模式用于混合照明,则使用第五个目标:
RT4,ARGB32格式:光遮挡值(RGBA)。
因此,g缓冲区布局为192位/像素(非HDR)或224位/像素(HDR)。
如果硬件不支持五个并发渲染目标,则使用阴影遮罩的对象将回退到正向渲染路径。当照相机不使用HDR
动态范围时,对数发射+发光缓冲区(RT3)进行对数编码,以提供比通常使用ARGB32纹理可能提供的更大的动态。
请注意,当相机使用HDR渲染时,不会为发射+照明缓冲区(RT3)创建单独的渲染目标;而是将Camera渲染到的渲染目标(即传递到图像效果的渲染目标)用作RT3。
G-缓冲区通过
g缓冲区传递将每个GameObject渲染一次。漫反射和镜面反射的颜色,表面平滑度,世界空间法线以及发射+环境+反射+光照贴图将渲染为g缓冲区纹理。将g缓冲区纹理设置为全局着色器属性,以供以后由着色器(CameraGBufferTexture0 .. CameraGBufferTexture3名称)访问。
照明通行证
光照过程基于g缓冲区和深度来计算光照。光照是在屏幕空间中计算的,因此处理所需的时间与场景的复杂性无关。将照明添加到发射缓冲区。
未穿过相机近平面的点光源和点光源被渲染为3D形状,并启用了Z缓冲区针对场景的测试。这使得部分或完全遮挡的点光源和聚光灯渲染起来非常便宜。穿过近平面的方向光
和点/点光源被渲染为全屏四边形。
如果光源启用了阴影,则还将在此过程中渲染并应用阴影。请注意,阴影并不是为了“自由”而来。需要渲染阴影投射器,并且必须应用更复杂的灯光着色器。
唯一可用的照明模型是“标准”。如果需要不同的模型,则可以通过将内置着色器的Internal-DeferredShading.shader文件的修改后的版本放置到“资产”文件夹中名为“资源”的文件夹中来修改照明传递着色器。然后打开“ 图形”设置(菜单:“ 编辑” >“ 项目设置”,然后单击“图形”类别)。将“延迟”下拉列表更改为“自定义着色器”。然后更改显示在您使用的着色器上的“着色器”选项。
旧版延迟渲染路径
本页详细介绍了“旧版延迟的(渲染
前)” 渲染路径 Unity内置渲染管线。有关延迟照明的技术概述,请参见本文。
注意:旧版延迟渲染
路径,它被视为从Unity 5.0开始的旧功能,因为它不支持某些渲染功能(例如,标准着色器,反射探针)。新项目应考虑使用“ 延迟着色Deferred Shading)
渲染路径。
注意: 使用正交投影时,不支持延迟渲染。如果是相机
”中的“投影模式”设置为“正交”,相机将始终使用正向渲染。
总览
使用延迟照明时,可以影响对象的照明数量没有限制。所有光源均按像素进行评估,这意味着它们都可以与法线贴图
正确交互等。此外,所有灯光都可以包含Cookie和阴影。
延迟照明的优点是照明的处理开销与像素
数成正比。这取决于场景中的灯光大小。“ 场景
不管它照亮了多少物体。因此,可以通过保持较小的灯光来提高性能。延迟照明还具有高度一致且可预测的行为。每种光的效果都是按像素计算的,因此没有照明计算会分解成大三角形。
不利的一面是,延迟照明不真正支持抗锯齿,并且不能处理半透明对象(这些对象将使用正向渲染进行渲染)。也没有对Mesh
支持。Renderer的“接收阴影”标志和剔除蒙版
仅在有限的方式中支持中的。您最多只能使用四个剔除口罩。就是说,您的剔除图层蒙版,其中至少必须包含所有层减去四个任意层,因此必须设置32个层中的28个。否则,您将获得图形伪像。
要求它需要带有Shader的图形卡。 Model 3.0(或更高版本),支持深度渲染纹理和双面模板缓冲区。2004年以后生产的大多数PC图形卡都支持延迟照明,包括GeForce FX和更高版本,Radeon X1300和更高版本,Intel 965 / GMA X3100和更高版本。在移动设备上,所有支持OpenGL ES 3.0的GPU都支持延迟照明,而某些支持OpenGL ES 2.0的GPU也支持延迟照明(那些确实支持深度纹理的GPU)。
性能考量
实时灯光
的渲染开销中的延迟照明与灯光照明的像素数量成正比,而不取决于场景的复杂性。因此,小点或聚光灯的渲染成本非常低廉,如果它们被场景对象完全或部分遮挡,那么它们甚至会更便宜。
当然,带有阴影的灯比没有阴影的灯贵得多。在延迟照明中,仍然需要为每个阴影投射光源渲染一次或多次阴影投射对象。此外,应用阴影的照明着色器比禁用阴影时使用的着色器具有更高的渲染开销。
实施细节
使用Deferred Lighting时,Unity中的渲染过程分三步进行:
1、基本通过:渲染对象以产生具有深度,法线和镜面反射力的屏幕空间缓冲区。
2、光照遍历:先前生成的缓冲区用于将光照计算到另一个屏幕空间缓冲区中。
3、最终通过:再次渲染对象。他们获取计算出的照明,将其与颜色纹理结合起来,并添加任何环境/发射照明。
~在此过程完成之后,使用正向渲染
对具有无法处理延迟光照的着色器的对象进行渲染。此路径。
基本通行证
基本遍将每个对象渲染一次。视图空间法线和镜面反射功率渲染到单个ARGB32中。渲染纹理
(RGB通道中的法线和A中的镜面反射功率)。如果平台和硬件允许将Z缓冲区作为纹理读取,则不会显式呈现深度。如果Z缓冲区不能作为纹理访问,则使用着色器替换在另一个渲染通道中渲染深度。
基本遍历的结果是一个Z缓冲区,该缓冲区填充了场景内容,以及一个具有法线和高光强度的渲染纹理。
照明通行证
光照过程基于深度,法线和镜面反射功率来计算光照。光照是在屏幕空间中计算的,因此处理所需的时间与场景的复杂性无关。照明缓冲区是单个ARGB32渲染纹理,在RGB通道中具有漫反射照明,在A通道中具有单色镜面照明。对光值进行对数编码,以提供比ARGB32纹理通常可能提供的更大的动态范围。当摄像机具有HDR
渲染”时,则照明缓冲区为ARGBHalf格式,并且不执行对数编码。
未穿过相机近平面的点光源和点光源被渲染为3D形状(的正面),并启用了针对场景的深度测试。穿过近平面的光也使用3D形状渲染,但是作为背面进行了深度倒置测试。这使得部分或完全遮挡的灯光渲染起来非常便宜。如果光线同时在远处和近处相交,则无法使用上述优化方法,并且将光线绘制为紧密的四边形,无深度测试。
以上不适用于定向光源,定向光源始终渲染为全屏四边形。
如果光源启用了阴影,则还将在此过程中渲染并应用阴影。请注意,阴影并不是为了“自由”而来。需要渲染阴影投射器,并且必须应用更复杂的灯光着色器。
唯一可用的照明模型是Blinn-Phong。如果需要其他模型,则可以通过将内置着色器的Internal-PrePassLighting.shader文件的修改后的版本放置到“资产”文件夹中名为“资源”的文件夹中来修改照明通道着色器。然后转到“编辑”->“项目设置”->“图形”窗口。将“延迟旧版”下拉列表更改为“自定义着色器”。然后更改显示在您使用的照明着色器上的“着色器”选项。
最终通行证
最终通过会产生最终的渲染图像。在这里,所有对象再次使用着色器进行渲染,以获取照明,将其与纹理结合并添加任何自发光。光照贴图
中的最终通行证。在靠近摄像机的地方,使用了实时照明,并且仅添加了烘烤的间接照明。这种淡入淡出的效果是完全烘烤的照明,距离相机更远。
∨ 展开