1.Update和FixedUpdate
照着一本16年的书做了个入门横版,这几天发现代码里面按键响应操作丢在FixedUpdate可能导致操作时体现为响应键盘不正常(跑动中按跳跃概率不跳或者跳起来的轨迹很低像被压住了一样)
参考了一下官方文档,应该是帧率过高时候帧与帧之间可能会不执行FixedUpdate的原因
也就是说帧率比较高的时候某些帧内按下按键可能其实连input判断都没运行到(估计是当时自己没研究把Update的键盘响应跟FixedUpdate的物理操作写到一起去了)
把input判断丢回Update()问题解决
2.卡 墙
这个解决方案比较清楚了,加了rb2d或者各种collider 的,在inspector里面设置一个摩擦力0的材质就行
还看到一个方案是把box collider加上圆角,不过加上之后我这边触地判定乱了,可能要好好调节下范围才行(改材质的方法不需要重新调范围所以最后加的是材质)
3.oncolliderenter2d和ontriggerenter2d貌似没办法用在静止+collider位置重叠+先后实例化的静止gameobject上(样例:cxb里的纵连note串),需要用overlap系列:
physics2d.overlapxxx/overlapxxxAll()
前面一个返回的单个collider是所有符合条件中最后实例化(在最上面)的那个;
后面ALL的返回数组从小到大也是按实例化顺序倒序排列
4.input.getTouch返回的touch不是指向对象的指针,Touch x=Input.getTouch(i);取完之后后面帧里再去查x的所有内容都不会再变了,想取当前帧最新数据只能反复取= =;
5.2021.2.7的touch.rawposition可能有问题,值和描述完全不一样
6.用了time.timescale=0的方式 暂停、同时显示restart或者quit的菜单的情况下,点击之后重新加载新场景之前要重新设置为1,不然会影响所有后面加载的场景



