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

欢迎来到光光的奇妙冒险,我是你们的煎饼光子老师。

今天是我们的第八期笔试面试题总结。


C#部分:

1、如果我们想为Unity中的Transform类添加一个自定义的方法,应该如何处理?

答案:
通过C#的拓展方法相关知识点进行添加

2、请说出using关键字的两个作用

答案:
1.引入命名空间


2.安全使用引用对象

3、C#中Dictionary不支持相同键存储,如果想要一个键对应多个值如何处理?

4、请问下面代码的最终打印结果是什么?为什么? 

答案:
全是10
当委托最终执行时,他们使用的i,都是for循环中声明的i,此时的i已经变成了10 

5、上题中的代码,如果我们希望打印出0~9,应该如何修改代码? 

答案:

 


Unity部分:

1、Unity中如何将本地坐标转为世界坐标?

答案:
1.用本地坐标加上父对象相对世界的坐标(如果有多层父子关系,不停地往上加即可)
2.利用Transform中的TransformPoint方法

2、Unity中如何计算出两个向量之间的夹角,请说出两种方式

答案:
1. 利用Vector3中的API:Vector3.Angle
2. 先使用 Vector3.Dot 算出方向向量点乘结果,再通过Mathf.Acos反三角函数算出弧度,再将弧度转为角度

3、请写出UGUI中两种处理异形按钮的具体方法

答案:
方法一:异形按钮,自带的像素检测阈值

第一步:将需要进行异形按钮判断的图片可读写打开

第二步:通过代码控制Image组件上阀值改变


方法二:异形按钮,通过子对象拼凑

4、请说出Unity中如何进行数据持久化,至少说出5种方式

答案:
PlayerPrefs
2进制文件存储
xml文件存储
json文件存储
数据库存储(本地、远端、通过服务器存储到数据库)

※ 5、在Unity中如何控制渲染优先级?(谁先渲染谁后渲染,分情况回答) 

答案:
1.不同摄像机渲染时,摄像机深度(Camera depth)控制优先级
2.相同摄像机时,排序层级(Sorting Layer)控制优先级
3.相同排序层级时,层中的顺序(Order in Layer)控制优先级
4.相同摄像机,无排序层级属性时,Shader中的RenderQueue(渲染队列)控制优先级

猜你喜欢

转载自blog.csdn.net/Blueberry124/article/details/142652666