06 2020 档案
摘要:Time.timeScale 时间缩放 在 Unity 中,利用 Time.timeScale=0 可以暂停游戏,Time.timeScale=1 恢复正常, 但这是作用于整个游戏的设置,不单单是当前的场景,所以在需要的时候重置回 Time.timeScale=1。 当然,也可以使用 Time.ti
阅读全文
posted @ 2020-06-30 09:22
Mr.Cat~
摘要:在 Unity 项目开发中,延迟执行一段代码、一个方法甚至几个方法的情况是普遍存在的。 一般会用到 Invoke 和 InvokeRepeating 方法。 第一个参数为方法名(注意是字符串形式),并不是更方便的委托; 第二个参数是延迟执行的时间; 这个方法只会执行一次。 第一个参数同样为方法名(字
阅读全文
posted @ 2020-06-29 10:08
Mr.Cat~
摘要:第一种:每帧检查 定义一个时间变量 timer,每帧都将这个时间减去帧间隔时间 Time.deltaTime,如果小于或者等于零,说明定时到了,执行相应功能的代码,将这个定时器重置。如下: 1 using UnityEngine; 2 3 public class Timer : MonoBehav
阅读全文
posted @ 2020-06-28 09:51
Mr.Cat~
摘要:一、旋转方法 在 Unity 中为物体旋转提供了各种 API ,例如 RotateAround、Rotate、LookAt 等方法。但为了避免万向节死锁的问题,一般使用四元数来表示物体的旋转。 四元数的乘法可以看作对一个物体施加两次旋转,最终的旋转角度由这两次旋转的角度决定,旋转的顺序也会对旋转的结
阅读全文
posted @ 2020-06-24 10:41
Mr.Cat~
摘要:一、常用的坐标系 世界坐标:World Space 简单来说,我们通过 transform.position | transform.rotattion 获取得到的位置和旋转信息都是基于世界坐标系的,可以说,我们很大一部分的操作都是基于世界坐标系。 观察坐标:Eye Space 我们在 Unity
阅读全文
posted @ 2020-06-23 11:03
Mr.Cat~
摘要:接口的定义 接口描述的是可属于任何类或结构的一组相关功能,所以实现接口的类或结构必须实现接口定义中指定的接口成员。 接口使用 interface 关键字进行定义,可由方法、属性、事件、索引器或这四种成员类型的任意组合构成。 接口的特性 接口类似于抽象基类,不能直接实例化接口;接口中的方法都是抽象方法
阅读全文
posted @ 2020-06-22 10:56
Mr.Cat~
摘要:SceneManager 场景管理器,包含多个与场景管理相关的函数,将这些函数结合使用就能实现多种场景的切换方式,并提高游戏性能。 LoadScene + GetSceneByBuildIndex + LoadSceneMode LoadScene() 在大多数情况下,为了避免在加载时出现暂停或者性
阅读全文
posted @ 2020-06-19 11:23
Mr.Cat~
摘要:阴影类型(Shadow) Unity3D 的灯光可以设置不同的阴影类型,分别是:无阴影、硬阴影、软阴影。 要注意的是,不论是硬阴影还是软阴影,本质上都是用阴影贴图模拟的阴影效果,而不是真实光照而自然形成的暗色区域。 灯光上阴影设置部分会随着Mode参数的不同而变化,Realtime Lighting
阅读全文
posted @ 2020-06-18 12:35
Mr.Cat~
摘要:光照系统 在2017年以前光照贴图技术是游戏光照设置的主流方式,但由于光照贴图需要事先烘焙(baking)出来,且仅支持静态物体(Static Object)。而游戏场景几乎不可能全都是静态物体,所以通常游戏场景中的灯光照明是多种照明方式的混合作用。 对于静态物体来说,大多使用光照贴图来模拟间接光的
阅读全文
posted @ 2020-06-17 11:47
Mr.Cat~
摘要:一、单例模式(Slingleton Pattern) 单例模式是最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化
阅读全文
posted @ 2020-06-16 11:23
Mr.Cat~
摘要:回调函数(Callback) 将函数作为参数传到另一个函数里面,当哪个函数执行完之后,再执行传进去的这个参数。 这个过程就叫做回调:也就是主函数执行完,回头再调用传进来的那个函数。 回调函数的作用 回调函数的作用通常来说就是完成某个动作之后可以立马进行另一个动作,但你不确定那个动作具体会干什么,你可
阅读全文
posted @ 2020-06-15 10:38
Mr.Cat~
摘要:FPS(Frame rate) 用于测量显示帧数的量度。所谓的测量单位为每秒显示帧数(Frames per Second,简称:FPS)或“赫兹”(Hz),通俗来讲就是指动画或视频的画面数。FPS 是测量用于保存、显示动态视频的信息数量。每秒钟帧数越多,所显示的动作就会越流畅。通常,要避免动作不流畅
阅读全文
posted @ 2020-06-12 11:06
Mr.Cat~
摘要:GUI Unity 的 GUI 主要分成两种制作方式: 一种是以 Component 命令的方式直接附给场景物体使用; 像 GUITexture 及 GUIText,它们的建立及调整相当方便,不用在执行期就能看得到,而且因为继承自 Component,所以也可以直接使用 transform、game
阅读全文
posted @ 2020-06-11 10:48
Mr.Cat~
摘要:我们多少应该都遇到过,做好的游戏打包出来后,某些 UI 元素的位置全都乱了。出现这种情况是因为:在进行 UI 元素摆放的时候没有考虑到在不同分辨率下,UI 元素的位置变动,没有对它们进行针对性的修改和调整。 1、所谓的自适应 a.保持相对位置不变 比如将 UI 设计在屏幕的右上角,那么在各种的分辨率
阅读全文
posted @ 2020-06-10 10:34
Mr.Cat~
摘要:特性 特性:就是一种声明性的标签,例如 类、结构体、枚举、字段(变量)等 可以大致的分为以下三个方面: 一、修饰字段 [Header(" ")]:面板标题 在 Unity 的 Inspactor 面板上显示一个标题 [Tooltip(" ")]:悬停的注释 当鼠标悬停在 Inspector 面板上的
阅读全文
posted @ 2020-06-09 11:08
Mr.Cat~
摘要:一、Get/Set 的疑问 通常来说,我们在 Unity 内声明一些属性,比如: 1 private float hp; 2 3 public int index; 但是,偶尔可能会看到另外一些属性声明的方法,比如: 1 public float Hp 2 { 3 get 4 { 5 return
阅读全文
posted @ 2020-06-08 10:06
Mr.Cat~
摘要:Unity中的数据存储 数据的本地持久化保存方式: A. PlayerPrefs:Unity 特有的存储方式,用于游戏简单的基本数据存储。 B. XML:跨平台公认标准,兼容性好。 C. JSON:轻量级数据模式,跟 XML 一样具有跨平台特性,同时语法更加简洁。 D. 数据库:主流的数据库都支持,
阅读全文
posted @ 2020-06-05 11:15
Mr.Cat~
摘要:Navigation Mesh 导航网格 Navigation mesh (导航网格)是 3D 游戏世界中用于实现动态物体自动寻路的一种技术,将游戏中复杂的结构组织关系简化为带有一定信息的网格,在这些网格的基础上通过一系列的计算来实现自动寻路。 导航的时候,只需要给导航物体挂载 Nav Mesh A
阅读全文
posted @ 2020-06-04 10:27
Mr.Cat~
摘要:一、延迟销毁游戏对象 默认情况下,使用 Destroy() 方法会立即销毁游戏对象,如果想延迟一段时间再销毁,可以在这个方法中传递一个时间参数。 1 Destroy(gameObject, 2.5f); 这段代码实现的效果就是经过 2.5 秒后销毁游戏对象。 二、获取一个随机布尔值 我们知道 Ran
阅读全文
posted @ 2020-06-03 10:48
Mr.Cat~
摘要:一、高亮选择 在 Scene 面板右上角的 Gizom 下拉列表中,可以通过设置 Selection Outline 选项决定是否在选中物体时显示边缘的高亮标识。 二、Pixel Perfect Camera 在摄像机上挂载 Pixel Perfect Camera 组件能够使 2D 像素风格的游戏
阅读全文
posted @ 2020-06-02 11:21
Mr.Cat~
摘要:Find 使用规则 在 Unity 项目开发的时候,我们可以通过代码 Find 对象的名字从而获得指定的对象。Find 会遍历 Hierarchy 视图里面的游戏对象,在找到第一个符合的对象的时候就会终止遍历。而通过实践可以发现,这种遍历是从底部开始到上面,而不是从顶部遍历到下面,这个在运用的时候很
阅读全文
posted @ 2020-06-01 11:33
Mr.Cat~

浙公网安备 33010602011771号