随笔分类 - Unity 3D
Unity3D引擎开发技能学习记录
摘要:在 Unity 中实现对游戏数据存储和读取的方法主要有这几种: 使用本地持久化类 PlayerPrefs 使用二进制的方法序列化和反序列化(Serialize / Deserialize) 使用 Json 方法 使用 XML 方法 数据场景 在 Demo 中分别使用这四种方法实现面板上数据的存储和读
阅读全文
posted @ 2022-10-19 15:35
Mr.Cat~
摘要:引用 DOTween 官网上对该插件的介绍: “ DOTween是一种快速、高效、类型安全的面向对象的补间动画引擎 ” 利用 DOTween,我们可以很方便快速的完成许多动画效果,而且因为一切都被缓存并重用,避免了无用的GC分配 DOTween 特性 非常准确 时间以非常精确的方式进行计算:这意味着
阅读全文
posted @ 2022-10-13 10:54
Mr.Cat~
摘要:正弦函数/正弦波 是最基础的波形 在游戏中通常使用 正弦函数/正弦波 来逼近真实世界中的涟漪效果 涟漪效果 有了波形并不意味着就能产生涟漪的效果 往往还需要在画面中添加折射、反射、扭曲等效果 看图中的涟漪效果 之所以人眼看起来像涟漪 是因为在涟漪处的空间发生了轻微的扭曲,而 “空间扭曲”,也就是贴图
阅读全文
posted @ 2022-01-06 20:01
Mr.Cat~
摘要:流光效果是非常常见的游戏效果 不管是2D的UI和图片还是3D的模型,在一些精致的特写镜头下都会加入流光的效果 2D 流光效果 实现流光效果,通常需要一张主要的贴图和一张条状的流光贴图 通过计算,让条状的流光贴图在主贴图上面进行移动,来实现表面的流光效果 Shader Shader "Effect/M
阅读全文
posted @ 2021-12-30 17:13
Mr.Cat~
摘要:游戏中有一种很常见的效果:角色死亡或者场景烧毁会逐渐消融 消融效果 要实现消融效果,最重要的就是让某些像素显示,某些像素消失 为了实现这种效果 我们就需要标记哪些像素要显示,哪些像素要消失,可以使用噪声图来给每一个像素做标记 由于噪声图的随机性,使得像素的显示和消失显得非常不规则,这也就满足了消融效
阅读全文
posted @ 2021-12-25 15:24
Mr.Cat~
摘要:Shader 的中文意思是着色器,是给模型上色的一个工具 在 Unity 中往往需要配合使用材质和 Unity Shader 才能达到理想的效果 常见的流程: 创建一个新的材质 创建一个 Unity Shader,并把它赋所创建的材质 把这个关联了 Shader 的材质赋给需要渲染的游戏对象 在材质
阅读全文
posted @ 2021-12-21 20:59
Mr.Cat~
摘要:Shader Shader 的中文意思是着色器 简单通俗的理解就是给模型上色的一个工具 这里的上色并不是简单的填色,而是通过对一些模型数据和光照信息的计算而产生相应效果的颜色艺术 物体外部线框 在模拟建造类的游戏中,游戏对象往往需要一个创建前的预览效果 而用游戏物体的本身外部边框来进行前期预览就是最
阅读全文
posted @ 2021-12-08 17:48
Mr.Cat~
摘要:Unity 通过内置的 Input 类获取外部的输入 具体可通过 Editor Project Setting Input 查看 常见的输入例如:Vertical、Horizontal、Fire1、Jump等 物体移动 1、物体自己移动 private Transform transform; tr
阅读全文
posted @ 2020-07-30 09:05
Mr.Cat~
摘要:Charactor Controller(角色控制器) “ 角色控制器允许你在受制于碰撞的情况下很容易的进行运动,而不用处理刚体。 角色控制器不受力的影响,仅仅当你调用 Move 函数时才运动。 然后它将执行运动,但是受制于碰撞。" From Unity3d 官方文档 我们通常在人物模型上加上这个组
阅读全文
posted @ 2020-07-29 09:12
Mr.Cat~
摘要:什么是协同程序?什么是协程? Unity 协程是一个能够暂停协程执行,暂停后立即返回主函数 执行主函数剩余的部分,直到中断指令完成后,从中断指令的下一行继续执行协程剩余的函数 函数体全部执行完成,协程结束 由于中断指令的出现,使得可以将一个函数分割到多个帧里去执行 而在性能上,协程相比于一般函数并没
阅读全文
posted @ 2020-07-28 09:28
Mr.Cat~
摘要:一、Mathf.Round 四舍五入 四舍五入取最接近的整数,返回值是 float 类型 如果数字的末尾是 .5,不管是偶数还是奇数,将返回偶数 例如: 1 Debug.Log(Mathf.Round(10.0f)); 2 Debug.Log(Mathf.Round(10.2f)); 3 Debug
阅读全文
posted @ 2020-07-27 09:32
Mr.Cat~
摘要:1、首先了解下 Unity 的 PlayerPrefs 存储 目前,在 Unity 中只支持 int、string、float 三种数据类型的读取,所以我们可以使用这三种数据类型来存储简单的数据 而其中用于数据持久化的类为 PlayerPrefs,如下: 数据保存 PlayerPrefs.SetSt
阅读全文
posted @ 2020-07-24 10:10
Mr.Cat~
摘要:一、音频 音频剪辑(AudioClip):导入到 Unity 中的所有声音文件,在引擎中的资源类型都是 AudioClip 音频源组件(AudioSource):用于播放音频剪辑(AudioClip)资源,可以当作一个音响 常用属性: AudioClip:播放那个音频文件 Play On Awake
阅读全文
posted @ 2020-07-23 09:07
Mr.Cat~
摘要:制作进度条所需的资源: 用以载入进度条显示的场景 进度条背景以及进度条本身(颜色区别) 展示百分制进度情况的Text文本 需要载入的场景(这里使用的是自带场景) 载入时的场景布局:要将 Load 的 Image Type 修改为 Filled,Fill Method 修改为 Horizontal 具
阅读全文
posted @ 2020-07-22 09:31
Mr.Cat~
摘要:ActiveSelf Unity 获得自身 Active 属性的时候可以用 gameObject.activeSelf 来获得,注意这是获取自身的 Active 属性 假如该物体的父对象在层级面板上是关闭的状态,获取到的 ActiveSelf 属性仍然是 True 那么如果想获得这个物体的父对象状态
阅读全文
posted @ 2020-07-21 09:22
Mr.Cat~
摘要:一、可视化创建及事件绑定 先写一段 Button 的响应代码: 1 using UnityEngine; 2 using UnityEngine.UI; 3 4 public class ButtonTest : MonoBehaviour 5 { 6 public Text m_Text; 7 8
阅读全文
posted @ 2020-07-17 09:37
Mr.Cat~
摘要:一、创建空的游戏物体 创建一个空的游戏物体 1 void Start() 2 { 3 new GameObject(); 4 } 创建一个空的游戏物体,并命名 1 void Start() 2 { 3 new GameObject("Table"); 4 } 创建一个空的游戏物体,命名并用 go 接
阅读全文
posted @ 2020-07-16 09:23
Mr.Cat~
摘要:利用 Mesh 网格在理论上可以绘制出各种形状,而原理就是所有图形都是由三角形构成的 一、绘制三角形 1 // 绘制的材质 2 public Material material; 3 4 void DrawTriangle() 5 { 6 // 添加 MeshFilter 和 MeshRendere
阅读全文
posted @ 2020-07-14 10:49
Mr.Cat~
摘要:一、扇形攻击范围检测 1 using System.Collections.Generic; 2 using UnityEngine; 3 4 public class AttackRange : MonoBehaviour 5 { 6 // 攻击目标 7 public Transform Targ
阅读全文
posted @ 2020-07-13 11:30
Mr.Cat~
摘要:Unity 中提供了三种关于对象销毁的方法: Destroy 方法 DestroyImmediate 方法 DontDestroyOnLoad 方法 Destroy 方法 static void Destroy(Object obj, float t = 0.0F); 删除一个游戏物体或组件等 如果
阅读全文
posted @ 2020-07-10 10:07
Mr.Cat~

浙公网安备 33010602011771号