Unity3D学习笔记(二)
一、Unity编辑器相关
1、 Unity特殊的专属文件夹
1) Editor:编辑器相关资源可以放到此文件中,包括图片、脚本等文件。
2)Editor Default Resources:配合Editor使用不会打包到包中
3)Plugins:存放第三方SDK、插件资源
4)StreamingAssets:Assets下根目录,不会压缩资源,属于只读
2、如何安全的在不同的工程间安全地迁移Asset数据
1) 将Assets和Library一起迁移
2)导出包Package
3)用Unity自带的Assets Server功能
3、Unity提供了几种光源分别是什么?
1) 平行光:Diretional Light
2) 点光源:Point Light
3) 聚光灯:Spot Light
4) 区域光源:Area Light
4、在物体碰撞整个过程中,有几个阶段
- OnCollisionEnter
- OnCollisionStay
- OnCollisionExit
5、获取、增加、删除组件的命令分别是什么?
获取 GetComponent
增加 AddComponent
删除 Destory
6、Unity中记录节点空间几何信息的组件名称及其父类名称?
Transform 父类为Component
7、Unity3d的物理引擎中,有几种施加力的方式
RigidBody.AddForce和RigidBody.AddForceAtPosition
8、物体自身旋转使用的函数和绕某点使用函数是什么?
transform.Rotate()和transform.RotateAround
9、Unity脚本从唤醒到销毁有着一套比较完整的生命周期,列出系统自带的几个重要方法
Awake–>Start–>Update–>FixedUpdate–>LateUpdate–>OnGUI–>Reset–>OnDisable–>OnDestroy
10、Unity中的碰撞器和触发器的区别?
碰撞器是触发器的载体,而触发器只是碰撞器身上的一个属性。
当Is Trigger=false时,碰撞器根据物理引擎引发碰撞,产生碰撞的效果,可以调用OnCollisionEnter/Stay/Exit函数。
当Is Trigger=true时,碰撞器被物理引擎所忽略,没有碰撞效果,可以调用OnTriggerEnter/Stay/Exit函数。
如果既要检测到物体的接触又不想让碰撞检测影响物体移动或要检测一个物件是否经过空间中的某个区域这时就可以用到触发器
11、物体发生碰撞的必要条件?
两个物体都必须带有碰撞器Collider,其中一个物体还必须带有Rigidbody刚体
12、简述四元数Quaternion作用,四元数对欧拉角的优点?
四元数表示旋转,相对欧拉角优点:
a. 能进行增量旋转
b. 避免万向锁
c. 给定方位的表达方式两种,互为负
13、CharacterController和RigidBody区别?
Rigidbody具有真实物理的特性;
CharacterController是受限的RigidBody,具有一定的物理效果但不是完全真实的
14、什么是协同程序?
在主线程运行时,同时开启另一端逻辑处理,协助当前程序的执行。换句话说,开启协程就是开启一个可以与程序并行的逻辑。可以用来控制运动、序列及对象行为。
update函数返回后将正常协程更新。协程是一个可以暂停执行(yield)直到给定的yieldinstruction达到完成状态的函数。
协程的不同用法:
yield 在下一帧调用所有Update函数后,协程将继续;
yiled WaitForSeconds 在为帧调用的所有Update函数后,在指定的时间延迟后继续协程
yield WaitForFixedUpdate 在所有脚本上调用所有FixedUpdate后继续协程;
yield www 在www下载完成后继续
yield StartCoroutine 将协程链接起来,并会等待 MyFunc 协程先完成。
15、Unity3D的协程和C#线程之间区别是什么?
多线程程序同时运行多个线程,而在任一指定时刻只有一个协程在执行,并且这个正在运行的协同程序只在必要时才被挂起。Unity也给我们提供了StartCoroutine(协同程序)和LoadLevelAsync(异步加载关卡)后台加载场景的方法。 StartCoroutine称为协同程序,所谓协同,就是当你在StartCoroutine的函数体里处理一段代码时,利用Yield语句等待执行结果,这期间不影响主程序的继续执行,可以协同工作。
16、在编辑场景时GameObject设置为Static作用有何作用?
设置游戏对象为Static将会禁用网格队形对这些部分被静态物体挡住而不可见时。因此,在你的场景中的所有不会动的物体都应该标记为Static。
17、LocalPosition与Position的使用区别
LocalPosition:自身位置,相对于父级变换的位置;
Position:在世界坐标transform的位置
18、如何与服务器进行交互?
与服务器端交互方式几种,长连接模式(Socket)和短连接模式(http)
相关文章:
Unity3D学习笔记(二)
一、Unity编辑器相关 1、 Unity特殊的专属文件夹 1) Editor:编辑器相关资源可以放到此文件中,包括图片、脚本等文件。 2)Editor Default Resources:配合Editor使用不会打包到包中 3)Plugins:存放第三方SD…...
个人毕业设计--基于HarmonyOS的旅行助手APP的设计与实现(挖坑)
在行业混了短短几年,却总感觉越混越迷茫,趁着还有心情学习,把当初API9 的毕业设计项目改成API13的项目。先占个坑,把当初毕业设计的文案搬过来 摘要:HarmonyOS(鸿蒙系统)是华为公司推出的面向全…...
游戏引擎 Unity - Unity 打开项目、Unity Editor 添加简体中文语言包模块、Unity 项目设置为简体中文
Unity Unity 首次发布于 2005 年,属于 Unity Technologies Unity 使用的开发技术有:C# Unity 的适用平台:PC、主机、移动设备、VR / AR、Web 等 Unity 的适用领域:开发中等画质中小型项目 Unity 适合初学者或需要快速上手的开…...
python开发:爬虫示例——GET和POST请求处理
一、Get请求 import json import requests#输入示例:urlhttps://www.baidu.com #RequestHeader:F12标头-请求标头-原始-复制到这(忽略第一句) def GetRequest(url,RequestHeader""):try:dic{}RequestHeaderList RequestHeader.s…...
开源数据分析工具 RapidMiner
RapidMiner是一款功能强大且广泛应用的数据分析工具,其核心功能和特点使其成为数据科学家、商业分析师和预测建模人员的首选工具。以下是对RapidMiner的深度介绍: 1. 概述 RapidMiner是一款开源且全面的端到端数据科学平台,支持从数据准备、…...
Vue canvas画图画线例子,数据回显与隔离,点拖拽修改
组件 <template><divstyle"display: flex; height: 342px; width: 760px; border: 1px solid #000"><divstyle"position: relative; height: 100%; width: 608px; min-width: 608px"><canvasid"mycanvas"ref"mycanva…...
Python实现CAN FD 通信(基于PCAN开发CAN FD测试工具)
目录 一.背景 二. 硬件环境 1.CAN通信设备之PCAN 2.物理架构图 三. 资料分析 四. 二次开发 五. 应用 六. 总结 一.背景 在汽车电子领域中CAN是一种被广泛应用的通信协议,CAN 是controller area network 的缩写(以下称为can),是iso国际标准化的串行通信协议。 关于…...
LeetCode--347. 前 K 个高频元素/Golang中的堆(container/heap)
例题链接-前k个高频元素 前言 以前都是用的C写算法题,最近也想熟悉一下golang的数据结构,故来一篇题解堆分析。 正文 这里重点不在分析题目,在于golang中的 container/heap 对于内部实现逻辑有兴趣的可以去看看源码。 这里先给出题解的代…...
关于大数据
在大数据背景下存在的问题: 非结构化、半结构化数据:NoSQL数据库只负责存储;程序处理时涉及到数据移动,速度慢 是否存在一套整体解决方案? 可以存储并处理海量结构化、半结构化、非结构化数据 处理海量数据的速…...
9-收纳的知识
[ComponentOf(typeof(xxx))]组件描述,表示是哪个实体的组件 [EntitySystemOf(typeof(xxx))] 系统描述 [Event(SceneType.Demo)] 定义事件,在指定场景的指定事件发生后触发 [ChildOf(typeof(ComputersComponent))] 标明是谁的子实体 [ResponseType(na…...
堆的实现——堆的应用(堆排序)
文章目录 1.堆的实现2.堆的应用--堆排序 大家在学堆的时候,需要有二叉树的基础知识,大家可以看我的二叉树文章:二叉树 1.堆的实现 如果有⼀个关键码的集合 K {k0 , k1 , k2 , …,kn−1 } ,把它的所有元素按完全⼆叉树…...
机器学习6-全连接神经网络2
机器学习6-全连接神经网络2-梯度算法改进 梯度下降算法存在的问题动量法与自适应梯度动量法一、动量法的核心思想二、动量法的数学表示三、动量法的作用四、动量法的应用五、示例 自适应梯度与RMSProp 权值初始化随机权值初始化Xavier初始化HE初始化(MSRA) 