transform.Find不会查找子节点的子节点,可获得非激活GameObject.Find整个场景挨个查找,只获得激活
代码写的按键监听面板上看不到
transform.Find不会查找子节点的子节点,可获得非激活GameObject.Find整个场景挨个查找,只获得激活
代码写的按键监听面板上看不到
unity新版自带适配的jdk/sdk/ndk
androidstudio勾选项目不要轻易调整,可能会导致运行出问题,后面做有需要再调整
make project要求增加sdk build tool版本
androidclass只能调用静态方法
androidobject可通用
1:40处报异常这边,如果写了特性还报错的话,可以在unity菜单那边找到xlua,先clear generate code,再重新generate code,让xlua重新生成一下代码把接口注册进去
我是来学程序技术的,不应该是看着你视频再配一遍表的……还有,前面部分的动画混合这些也要照着做一遍太难绷了,老师不能给个成品嘛,如果看你视频每一部照着做就浪费好多时间,还学不到东西,纯折磨精神,不如赶紧进到代码的正题。
这里不需要写代码动态控制高度,直接挂一个Content Size Fitter组件就行。
堆排序思路(使用大顶堆)
1.把全部的子树变成大顶堆,完成后最大的数就被换到了根部。
2.把最大的数换到堆的末尾
3.重新上面两个步骤,但每次换到末尾的结点不参与新的堆排序。
4.最终,得到一个有序的数列。根部最小
191——unityWebRequest 安卓端读取jsonwen'j
Tile Palette :不点击 Edit 去编辑Palette 。当保存时Palette会复原。
transformDirection();
局部坐标换算成空间zuo'b
刚体会休眠、把rigd放在移动的物体上
//1.明确存储地址
//2.代码转换成Json文本
string filePath =
Application.streamingAssetsPath + "/WeaponProperties.json";
string saveJsonStr = JsonMapper.ToJson(weaponPropertiesList);
//3.接上"水管"(流)到地址
//4."喷水"到地址(写入Json文件)
StreamWriter sw = new StreamWriter(filePath);
sw.Write(saveJsonStr);
//5.把水管收起来(释放)
sw.Close();
子类可以放在父类的列表中
享元模式:共有的对象可以被多个对象使用;
对象池:一个对象只供一个对象使用
对象池是享元模式的一种
void HideBlade()
{
bladeBody.SetActive(!isEquip);
bladeHand.SetActive(isEquip);
}
直接用一个搞定
在GetKeyDown里面修改是否装备状态isEquip=!isEquip
然后用装备状态来控制手部和背部武器的显示状态
4:04 卡哇伊内
pos坐标的转换将以世界坐标系和黑色方块的物体坐标系为基础进行转换,所以第一次转换的结果是相等的
用反射代替switch语句,解决需求变更问题
Type t = receiver.GetType();
//反射
MethodInfo methodInfo = t.GetMethod("CreateCharacter");
//将特定类型分配给泛型方法定义的类型参数
methodInfo = methodInfo.MakeGenericMethod(soldierType);
//参数数组
object[] parameters = new object[] { weaponType, pos, lv };
methodInfo.Invoke(receiver, parameters);
如果遇到Enable在Awake前面,可以进入script execution order 更改script执行顺序