【基础知识】Unity查漏补缺
最近发现了一些平时不太注重的知识点,特此建立个专题,把零散的东西、疏忽的东西临时记录下来。
Mecanim动画系统:
1)设置AnimatorController时,如果某个动作播放不正常。
首先打开不正常的FBX动作的Inspector面板的Animations属性
然后对如下选项进行检查:
LoopTime:动画结束后是否进行循环播放(在走、跑等动作中,要注意勾选此选项)
----LoopPose:无缝循环动作(勾选)
Root Transform Rotation:根旋转变换
Root Transform Position(Y):根位置变换(Y)
Root Transform Position(XZ):根位置变换(XZ)
----Bake into Pose:是否将根运动保存进骨骼里面。(关闭此选项后,游戏对象的旋转、位置将不受动画的影响)
再检查时间轴的起始点和终止点,根据需求确认4个loop match的灯状态(绿灯时表示开始帧和结束帧为同样的一个造型)。
2)对一次性动画,比如Run动画过程中发生的Jump动画,在Jump结束后的转换状态条件中,必须要添加ExitTime属性,确保动画播放完成。
Network类:
1)服务器端和客户端的代码分两个场景保存导出,避免使用RPC发送消息时,客户端无法接受到消息的情况发生。
预制件:
使用多个预制件进行场景动态加载时,需要注意两方面内容:
1.各个预制件的实例化顺序:摄像机、灯光、场景、UI、其他功能(注意依赖关系)
2.各个预制件之间的引用关系。避免在预制件的Inspector窗口中引用其他预制件的组件。
例如预制件A和预制件B,预制件A的Inspector窗口中引用了预制件的B。
在这两个预制件进行实例化后,游戏对象A的Inspector窗口中仍然引用的是预制件B。
因此,解决方法目前想到两种:
1.采用单例模式引用预制件B
1 /// <summary>
/// 响应切换按钮,切换摄像机
/// </summary>
public void SwitchCamera()
{
SwitchCameraController.Instance.SwitchCamera();
}
2.采用代码动态加载其他预制件
private GameObject[] m_EnemyPath; // 敌人移动路径
void Awake()
{
// 获取敌人移动路径
m_EnemyPath = GameObject.FindGameObjectsWithTag(TagManage.PathTag);
}
【基础知识】Unity查漏补缺的更多相关文章
- JAVA核心技术I---JAVA基础知识(查漏补缺private,static)
一:private对于类和对象(同C++) private是只有这个类内部可以访问(类的成员函数和定义初始化) private是类之间的限制,而不是对对象的限制<重点> 同类对象是可以直接 ...
- 今天開始慢下脚步,開始ios技术知识的查漏补缺。
从2014.6.30 開始工作算起. 如今已经是第416天了.不止不觉.时间过的真快. 通过对之前工作的总结.发现,你的知识面.会决定你面对问题时的态度.过程和结果. 简单来讲.知识面拓展了,你才干有 ...
- 1月10日 ruby基础教程,查漏补缺; 2月22日 Exception补充
https://ruby-doc.org/core-2.5.0/Exception.html 1月20日练习完1,2章. 第一章 初探 ‘’单引号不执行转义符. \t 制表符.\n 换行符. p me ...
- 【代码优化】Unity查漏补缺
1.XML: 使用Unity社区中的开源脚本(Js语言)解析XML文件,网址:http://dev.grumpyferret.com/unity/,已打包XMLParser.unitypackage, ...
- 《CSS权威指南》基础复习+查漏补缺
前几天被朋友问到几个CSS问题,讲道理么,接触CSS是从大一开始的,也算有3年半了,总是觉得自己对css算是熟悉的了.然而还是被几个问题弄的"一脸懵逼"... 然后又是刚入职新公司 ...
- js基础查漏补缺(更新)
js基础查漏补缺: 1. NaN != NaN: 复制数组可以用slice: 数组的sort.reverse等方法都会改变自身: Map是一组键值对的结构,Set是key的集合: Array.Map. ...
- Java基础查漏补缺(2)
Java基础查漏补缺(2) apache和spring都提供了BeanUtils的深度拷贝工具包 +=具有隐形的强制转换 object类的equals()方法容易抛出空指针异常 String a=nu ...
- Java基础查漏补缺(1)
Java基础查漏补缺 String str2 = "hello"; String str3 = "hello"; System.out.println(str3 ...
- CSS基础面试题,快来查漏补缺
本文大部分问题来源:50道CSS基础面试题(附答案),外加一些面经. 我对问题进行了分类整理,并给了自己的回答.大部分知识点都有专题链接(来源于本博客相关文章),用于自己前端CSS部分的查漏补缺.虽作 ...
随机推荐
- AutoMapper 9.0的改造(续)
上一篇有一个读者,有疑问,如何自动化注册Dto 我开篇,做了一个自动化注册的 public sealed class AutoInjectAttribute : Attribute { public ...
- Android 程序间的广播和Manifest找不到(解决方法)
昨天写的是广播接收端的一些操作, 今天学的是广播的发送,上节介绍的标准广播和有序广播指的是发送端发送后,接收端的广播形式. 既然要发送,那就可以自定义发送广播: 把EditText的内容拿出来广播. ...
- Python创建进程、线程的两种方式
代码创建进程和线程的两种方式 """ 定心丸:Python创建进程和线程的方式基本都是一致的,包括其中的调用方法等,学会一个 另一个自然也就会了. "" ...
- OpenCV之高斯平滑(Python实现)
假设一个列数为W,行数为H的高斯卷计算子gaussKernel,其中W,H均为奇数,描点位置在((H-1)/2 ,(W-1)/2),构建高斯卷积核的步骤如下 1.计算高斯矩阵 \[gaussMatri ...
- Java—接口
接口概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”. 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成.这样将功能的定义与实 ...
- java 封装与this关键字
一 封装 1.封装的概述 封装,它也是面向对象思想的特征之一.面向对象共有三个特征:封装,继承,多态. 封装表现: 1.方法就是一个最基本封装体. 2.类其实也是一个封装体. 从以上两点得出结论,封装 ...
- git日常使用的常用命令总结
git日常使用的常用命令总结 git 是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常 ...
- Git操作之码云代码clone
安装Git https://git-scm.com/book/zh/v2/起步-安装-Git Git的网站上有详细的分各种系统的安装教程. 配置Git 1. 打开你要放置项目的本地路径,右键选择$ G ...
- 网络基础之IP地址
一.IP地址 1.IP地址就是给互联网上每一台主机 (或路由器)每一个接口分配一个在全世界范围内是唯一的32位二进制的地址标识符.现在由互联网名字和数字分配机构ICANN进行分配. 2.转换成十进制 ...
- FIRST集合、FOLLOW集合及LL(1)文法求法
FIRST集合 定义 可从α推导得到的串的首符号的集合,其中α是任意的文法符号串. 规则 计算文法符号 X 的 FIRST(X),不断运用以下规则直到没有新终结符号或 ε可以被加入为止 : (1)如果 ...