自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 Unity国际版的那些问题,看这一篇文章就够了

我一开始认为既然Unity版本做了区分,那Unity Hub肯定也有所不同,为此我还新建了一个文件夹用来放国际版的Hub。结论:不管在哪个官网下载的,Unity Hub本质都是同一个,但会有些细微区别,并且其本质上是一个Unity启动器。但没想到,我在国际版官网下载的Unity Hub,安装完成后,直接覆盖了之前中国版官网下载的Hub。不在Unity Hub里下载,而是在官网里找对应版本的安装包下载,再进行Locate关联。但是在国际版Hub里只能找到国际版的Unity下载,中国版只能找到中国版的下载。

2025-03-23 19:00:55 414

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第13期

HDRP是Unity官方提供的高级渲染管线,专注于提供逼真的图形质量和高度可定制的渲染效果。是指在多线程环境中,对共享资源(如数据、变量、对象等)进行操作时,不会产生不正确的结果或不可预期的行为。虽然结构体本身是值类型,存储在栈上,但是如果结构体的成员包含引用类型,那么引用类型的对象会存储在堆上,而结构体的实例内部会包含对这些堆上对象的引用。int、float、double、byte、short、long、uint、ulong、uint、sbyte、decimal、char、bool、自定义结构体。

2024-10-03 09:34:01 2693

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第12期

2.Unity采用组件式设计,通过使用反射,可以将某些逻辑解耦,将组件的功能模块化,使得逻辑更加灵活和可复用,当触发一个生命周期,需要通知相应GameObject的所有组件,如果使用继承多态来实现,则所有组件都要派生自包含对应生命周期的基类,或者是筛选出派生自此基类的组件逐一通知。1.并非所有继承MonoBehaviour的类都需要使用所有声明周期函数,如果使用继承,就会有大量的空虚函数被调用,而使用反射,有哪些生命周期就调用哪些,并且反射还可以调用私有方法。这种情况下我们就需要显示的手动释放这些资源了。

2024-10-03 08:59:08 1614

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第11期

Prefab在游戏开发中的作用非常重要,因为它们允许你创建可重用的游戏对象,并且可以在开发过程中快速迭代和修改。例如,当你需要在游戏中生成大量相似的敌人时,使用一个敌人Prefab可以使得你仅需创建和修改一个敌人对象,而不必重复编写和调整代码。此外,Prefab还允许你在编辑器中预览和调整游戏对象的属性和组件,使得你可以快速地进行修改和测试,从而加快开发进程。当你在场景中使用一个Prefab实例时,它将保留与原始Prefab相同的组件、属性和位置,使得你可以轻松地创建和管理大量相似的游戏对象。

2024-10-01 20:00:22 1771

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第十期

ILRuntime通过读取DLL文件中的IL汇编码,通过在Unity中内置的IL解释执行虚拟机(解释器)来执行热更DLL中的代码。总体来说,他们都是在Unity中内置各自的解释器(写好的用于解释执行相关的代码)来执行我们的热更新代码。栈:由操作系统自动分配释放,存放函数的参数值,局部变量值,栈中数据的生命周期随着函数的执行完成而结束。2、Unity中鼠标、键盘、触屏、手柄等输入事件会在Update 之前、还是之后、还是同时执行?一个byte,有8位,我们可以让每一位代表一种状态,0代表无,1代表有。

2024-10-01 18:54:08 800

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第九期

2.在切换动画一开始,进行延迟触发,延迟时间为想要触发伤害的时间(延迟可以用延迟函数,也可以用协同程序)__newindex用于更新:如果对不存在的数据赋值,由__newindex对数据进行赋值。3、Unity中如果想要在动作的某一时刻进行伤害检测,我们应该怎么做?5、游戏编辑器(比如 角色编辑器、关卡编辑器、地图编辑器等工具)的本质是什么?(请至少说出两种做法)pairs可以遍历出表中的所有键值对信息,在遍历不规则表时,建议用它。2.逻辑上,当攻击按键输入时,我们需要触发动作,并且进行攻击计数。

2024-09-30 11:32:30 555

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第八期

4.相同摄像机,无排序层级属性时,Shader中的RenderQueue(渲染队列)控制优先级。1、如果我们想为Unity中的Transform类添加一个自定义的方法,应该如何处理?当委托最终执行时,他们使用的i,都是for循环中声明的i,此时的i已经变成了10。3.相同排序层级时,层中的顺序(Order in Layer)控制优先级。5、上题中的代码,如果我们希望打印出0~9,应该如何修改代码?2、Unity中如何计算出两个向量之间的夹角,请说出两种方式。欢迎来到光光的奇妙冒险,我是你们的煎饼光子老师。

2024-09-30 11:24:00 611

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第七期

从不同距离渲染对象时,使用的是质量不同的模型(LOD)和贴图(Mipmap)。(一般情况是越远面数越低,图片越小)ThreadPool是线程池,他是C#为线程实现的缓存池,主要用于减少线程的创建,减少GC触发。2.AssetBundle类中或Addressables类中的相关方法加载AB包中的资源。5、请简述GC(垃圾回收)产生的原因,并至少说出避免GC发生的三种方式?Task是任务,他是基于线程池的优化,让我们可以更方便的控制线程。5、游戏开发中,客户端和服务端交互数据,程序中常用方式是什么?

2024-09-28 18:48:19 623

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第六期

在其中的某一步骤中,是可以使用多线程来完成某些加载操作的,多线程加载完成后,再进入协同程序的下一步继续执行。利用yield return语法糖,实现GetEnumerator方法即可完成迭代器的实现。1、Unity中Awake和Start两个生命周期函数,分别在什么时候被调用?4、Unity中的协同程序中yield return不同的内容,代表的含义不同。不同对象,有相同行为时,我们可以利用接口对不同对象的行为进行整合。5、使用Unity协同程序进行异步加载时,底层是否会使用多线程?

2024-09-28 18:42:36 903

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第五期

4、如果不考虑IOS平台,只在Windows和Android平台上发布游戏,如何在不使用第三方热更新方案的前提下实现热更新功能。3、在没有使用遮挡剔除的情况下,图中A和B都是默认标准材质,图中的小球最终是否会被渲染,是否会产生DrawCall。最终不会被渲染,标准材质存在深度测试,小球在立方体后方,不会通过深度测试,所以不会被渲染。数组由于是顺序存储,在插入和删除时,需要整体移动数组中的大部分元素,效率低。数组由于是顺序存储,声明时容量是固定的,如果不处理扩容逻辑,存在越界风险。

2024-09-27 10:27:56 729

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第四期

使用IL2CPP打包时,最可能出现的问题就是代码裁剪,IL2CPP会自动将它认为不会使用的代码裁剪掉,比如我们在使用Lua开发时,其实会用到很多UnityEngine或者我们自己写的C#代码,但是这些代码并不会在引擎中直接使用,都是在Lua中使用的,此时最容易出现的问题就是代码裁剪,导致打包后出现异常和报错。2.脚本初始化:实例化对象时,会同步执行它身上挂载所有脚本的初始化工作,我们可以策略性的改变一些初始化逻辑,尽量不要再Awake和Start中做较复杂的逻辑,或者将复杂逻辑提前或者分帧处理。

2024-09-27 09:40:50 739

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第三期

就是将内存中的数据按照我们自己定义的规则进行序列化,序列化之后就可以用于存储和传输,当读取和接受数据时,只需要按照对应规则进行反序列化便可得到原始数据。Test2处参数是指针类型,指针是用于存储内存地址的变量,我们传入的是值得地址&test2Value,在函数内部改变的是地址中存储的值,所以外部的test2Value会随之改变。Test3处ref关键字,底层逻辑中是将value作为test3Value的一个别名,他们指向的空间一致,所以value改变后,外部的test3Value也会改变。

2024-09-22 15:10:42 1177

原创 制作角色AI必用?!速通有限状态机

欢迎加入光光的奇妙冒险,我是你们的煎饼光子老师。首先我们创建一个FSM,也就是我们的有限状态框架。接着我们来实际使用一下这个有限状态机框架。我认为一个有限状态机必须要满足这三个条件。3.通过Switch等逻辑去切换状态。这期我们来速通一套有限状态机框架。在代码中我已经给出了详细的注释。1.枚举表示的状态类型。

2024-09-21 20:57:24 325

原创 Unity最好用的插件?!速通DOTween插件的使用

在上面的API中,有一个使用到了SetEase,这其实是一种变化曲线,应用后,你的DOTween效果就会像对应曲线那样变化。当然它的内容还远远不止如此,像是改变材质,与UI控件结合这些操作都可以在DOTween的官方网站的手册中查看。在Unity的资源商店中搜索DOTween,选择Free,也就是免费的版本即可,可以满足我们大部分的需求。到这里为止,本期的速通挑战就结束了,相信大家已经对DOTween建立了一个基本的理解。欢迎加入光光的奇妙冒险,我是你们的煎饼光子老师。然后点击Setup DOTween。

2024-09-21 20:42:50 819

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第二期

欢迎来到光光的奇妙冒险,我是你们的煎饼光子老师。今天是我们的第二期笔试面试题总结。C#部分:1、请说说你认为C#中 == 和 Equals 的区别是什么?答案:(1). == 是运算符,Equals是万物之父Object中的虚方法,子类可重写(2). Equals 一般在子类中重写后用于比较两个对象中内容是否相同 ==在没有运算符重载的前提下时 引用类型用于比较地址;值类型用于比较值是否相同(3). 运算效率不同,一般Equals没有==效率高,因为一般Equals比较

2024-09-20 15:59:10 789

原创 【春秋招必看】Unity相关笔试面试题(内有完整答案)第一期

欢迎来到光光的奇妙冒险,我是你们的煎饼光子老师。今天是我们的第一期笔试面试题总结。1、Unity中点乘和叉乘对于我们来说的作用是什么?答案:点乘作用1.判断对象的方位2.计算两向量之间的夹角叉乘作用1.获取一个平面的法向量2.得到两向量之间的左右位置关系

2024-09-20 15:41:35 1059

原创 Unity框架之公共Mono模块

首先这里的Mono指的就是Unity中的MonoBehaviour类为什么要介绍这个框架呢?相信大家在游戏开发一定会碰到这个问题,想让不继承Mono的类也能够使用Mono的API,类似生命周期函数和协程这些,但是该怎么实现呢其实非常简单,只需要两个脚本就可以搞定

2024-09-19 15:28:50 667

原创 Unity中常用的三种单例模式基类

提到框架,大家可能会觉得很复杂,我也是有同感但好在,也不是所有的框架都需要我们掌握的但这期提到单例模式却是大家一定要掌握!!!因为它真的非常重要!!!

2024-09-19 14:57:43 534

原创 手把手教你使用Unity自带的对象池

上期说完自定义的对象池之后,这期我们来介绍Unity中自带的对象池是的,Unity也是有自己的对象池使用的话,要先引用命名空间UnityEngine.Pool引用了就可以使用Unity自带的各种类型的对象池了这次我们使用的是Object类型的,普适性强一点

2024-09-18 18:11:23 731

原创 手把手教你写一个自定义的Unity对象池

首先对象池也叫做缓存池,是常见的一种优化内存的手段(划重点,常用,一定要学会哦)再来看,对象池主要用于面对以下问题:1.对象的频繁创建频繁的实例化对象会带来一定的性能开销2.对象的频繁销毁对象的频繁销毁会产生大量的内存垃圾,会造成GC(垃圾回收)的频繁触发GC的触发,内存的释放,可能会带来卡顿感,影响玩家体验省流:就是游戏中如果有需要频繁创建和销毁对象你就要考虑使用对象池了

2024-09-18 13:53:48 973

Unity中让不继承Mono的类也能使用Mono的API的相关框架

Unity中让不继承Mono的类也能使用Mono的API的相关框架

2024-09-19

Unity常用的对象池框架

Unity常用的对象池框架

2024-09-18

使用Unity自带对象池所建立的对象池框架

使用Unity自带对象池所建立的对象池框架

2024-09-18

Unity游戏开发中常用的三种单例模式基类框架

Unity游戏开发中常用的三种单例模式基类框架,包含三个文件,分别是不继承mono的,继承mono但需要手动挂载的,继承mono可自动挂载的,前两种的使用会更加广泛

2024-09-18

Unity3D,游戏开发用于进行Json序列化存储数据的框架

Unity3D,游戏开发用于进行Json序列化存储数据的框架

2024-09-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除