U1L13——物理系统相关
U1L13——物理系统相关  Unity 可帮助您在项目中模拟物理系统,以确保对象正确加速并对碰撞、重力和各种其他力做出响应。 具体可见 物理系统 - Unity 手册 大部分游戏项目使用 Nvidia PhysX 引擎:可通过 Unity 内置的 3D 物理引擎获得的主要组件,您可以在面向对象的项目中使用这些组件。本节包括以下主题:  与物理系统相关的主要概念的概述:刚体、碰撞体、关节、物理接合和角色控制器。 有关特定物理环境的一些说明:连续碰撞检测和多场景物理。 物理调试可视化的描述。   物理系统主要内容 刚体 RigidBody 碰撞器 Collider 物理材质 Physic Material 碰撞检测函数 碰撞检测函数 刚体加力 刚体加力 物理系统第二部分 该部分主要讲解了范围检测和射线检测 —— Unity物理2 物理系统2D部分 该部分主要讲解了2D物理相关 —— Unity2D物理  
U1L12——光面板相关基础
U1L12——光面板相关基础 在Window - Randering - Lighting打开 这里只讲解环境和其他设置,更多的内容在进阶里讲解    Environment - 环境相关设置   Skybox Material - 天空盒材质,可以改变天空盒 关于天空盒材质,详见:US3S8L2——天空盒   Sun Source - 太阳来源  不设置会默认使用场景中最亮的方向光代表太阳    Realtime Shadow Color - 实时阴影颜色   Environment Lighting - 环境光设置   Source - 环境光光源颜色  Skybox - 天空和材质作为环境光颜色 Gradient - 可以为天空、地平线、地面单独选择颜色和他们之间混合  它具体作用会在 US3S1L5——Phong光照模型 中解释   Intensity Multiplier - 环境光亮度   Ambient Mode - 全局光照模式只有启用了实时全局和全局烘焙时才有用  Realtime(已弃用) Baked      Environment...
U1L11——光源组件
U1L11——光源组件 Light  Unity 中光照的工作方式类似于光在现实世界中的情况。Unity 使用详细的光线工作模型来获得更逼真的结果,并使用简化模型来获得更具风格化的结果。  Light的参数如下    Type - 光源类型    Spot - 聚光灯   Range - 发光范围距离 Spot Angle - 光锥角度    Directional - 方向光(环境光)   Point - 点光源   Area - 面光源     Color - 颜色   Mode - 光源模式    Realtime  实时光源 每帧实时计算,效果好,性能消耗大    Baked  烘焙光源 事先计算好,无法动态变化    Mixed  混合光源 预先计算+实时运算      Intensity - 光源亮度   Indirect Multiplier - 环境光亮度  改变间接光的强度 低于1,每次反弹会使光更暗,大于1,每次反弹会使光更亮    Shadow Type - 阴影类型  No Shadows - 关闭阴影 Hard Shadows -...
U1L10-2——Camera代码相关
U1L10-2——Camera代码相关 本章代码关键字 12345678910Camera.main                            //获取主摄像机(有“MainCamera”Tag的摄像机)Camera.allCamerasCount                //获取摄像机的数量Camera.allCameras                    //得到所有摄像机Camera.onPreCull                    //摄像机 剔除前 处理的委托函数Camera.onPreRender                    //摄像机 渲染前 处理的委托Camera.onPostRender                    //摄像机 渲染后 处理的委托.界面上的参数                            //界面上的参数 都可以在Camera窗口中找到,参考可编辑参数相关Camera.main.WorldToScreenPoint()    //转换过后 x和y对应的就是屏幕坐标 z对应的 是...
U1L10-1——Camera可编辑参数相关
U1L10-1——Camera可编辑参数相关 Camera窗口 Camera组件参数如下:    Clear Flags - 清除背景方式   skybox 天空盒   Solid Color 颜色填充,将没有拍摄到内容的部分用颜色填充   Depth only 只画该层,背景透明 该选项常用于多摄像机时,让拥有渲染深度(Depth)更高的摄像机叠加它拍摄到的内容(物体或者特效)到渲染深度低的摄像机上, 但又不覆盖渲染深度低的摄像机拍到的内容 注意!只有一个摄像机使用该选项会出现渲染残影 因为没有别的摄像机去覆盖掉它之前拍摄渲染出来的内容   Don’t Clear 不移除,覆盖渲染     Culling Mask - 选择性渲染部分层级,可以指定只渲染对应层级的对象   Projection - 摄像机投影模式   Perspective 透视模式   FOV Axis - 视场角 轴 - 决定了光学仪器的视野范围  Vertical - 以竖直方向夹角为准 Horizontal - 以水平方向夹角为准     Field of view (FOV) -...
U1L10——Camera摄像机相关
U1L10——Camera摄像机相关 Camera  摄像机 (Camera) 是供玩家观看世界的设备。 屏幕空间的点以像素定义。屏幕的左下角为 (0,0),右上角 为 (pixelWidth,pixelHeight)。z 位置为与摄像机的距离,采用世界单位。 视口空间的点是标准化的、相对于摄像机的点。摄像机左下角为 (0,0),右上角为 (1,1)。z 位置为与摄像机的距离,采用世界单位。 在全球坐标中定义一个世界空间点(例如,Transform.position)。  Camera可编辑参数相关 U1L10-1——Camera可编辑参数相关 Camera代码相关 U1L10-2——Camera代码相关  
U1L9——Screen屏幕相关
U1L9——Screen屏幕相关 Screen  访问显示信息。Screen 类可用于获取支持的分辨率列表、切换当前分辨率、 隐藏或显示系统鼠标指针。  本章代码关键字 12345678910111213141516171819202122Resolution                                //表示分辨率的结构体.wideh                                    //分辨率的宽.height                                    //分辨率的高Screen.currentResolution                //获取当前屏幕的分辨率Screen.width                            //当前屏幕的宽Screen.height                            //当前屏幕的高Screen.sleepTimeout                       ...
U1L8——Input输入相关
U1L8——Input输入相关 Input  输入 - Unity 手册  访问输入系统的接口。这是老输入系统,新输入系统请看这里 ——> U4S1 Input类 提供了大部分和输入相关的内容,包括:鼠标 键盘 触屏 手柄 重力感应 对于我们目前来说,鼠标 键盘 是必须掌握的核心知识 重点是鼠标和键盘相关的API:GetAxis 注意!输入相关内容一定写在Update中 本章代码关键字 12345678910111213141516171819202122232425262728293031Input                        //访问输入系统的接口//鼠标相关Input.mousePosition            //获取鼠标在屏幕的位置,返回值是Vector3,但是只有x和y有值Input.GetMouseButtonDown()    //鼠标按下一瞬间返回True的方法,参数:0左键 1右键 2中键Input.GetMouseButtonUp()    //鼠标抬起一瞬间返回True的方法(只会进入一次)参数:0左键 1右键...
U1L7-6——坐标转换
U1L7-6——坐标转换 Transform的坐标转换 有 世界坐标转本地坐标 和 本地坐标转世界坐标 其中最重要的就是本地坐标系的点 转世界坐标系的点 比如 现在玩家要在自己面前n个单位前 释放技能 这时可以无需关系世界坐标系 通过 相对于本地坐标系的位置 转换为 世界坐标系的点 进行特效的创建 本章代码关键字 123456this.transform.InverseTransformPoint()        //受到缩放影响的 世界坐标系的点 转换为 相对本地坐标系的点 的方法this.transform.InverseTransformDirection()    //不受缩放影响的 世界坐标系的方向 转换为 相对本地坐标系的方向 的方法this.transform.InverseTransformVector()        //受到缩放影响的 世界坐标系的方向 转换为 相对本地坐标系的方向 的方法this.transform.TransformPoint()            //受到缩放影响的 本地坐标系的点 转换为 相对世界坐标系的点...
U1L7-5——父子关系
U1L7-5——父子关系 Transform中的父子关系相关  父子化是使用 Unity 时需要理解的最重要概念之一。 当一个游戏对象是另一个游戏对象的__父__项时,__子__游戏对象完全跟随其父项移动、旋转和缩放。 可将父子化看作是手臂与身体之间的关系;每当身体移动时,手臂也随之移动。 子对象也可以有自己的子项,以此类推。所以,手可以视为手臂的“子项”,然后每只手都有几根手指,等等。 任何一个对象都可以有多个子项,但只有一个父项。这些多级父子关系形成了变换组件的_层级视图 。 层级视图最顶层的对象(即层级视图中唯一没有父项的对象)称为__根_。  在脚本中,我们可以用Transform类中的属性和方法来操作父子关系 本章代码关键字 12345678910111213this.transform.parent.name        //通过transform获取父对象的的名字this.transform.parent            //父对象的Transform对象的属性,可以通过这个获取、设置、脱离父对象this.transform.SetParent()    ...
