魔塔那样的方格游戏,人物移动的连续动作是怎样实现的
- 游戏信息
- 发布时间:2025-05-12 01:24:36

正常方法的思路基本差不多,但是假如地图10*10格,每个格子64px(或是其他的单位),那么坐标系可以是640*640的。不用double,不单是坐标,任何时间能用int的都是int,表示小数大不了扩大化,反正int的上限基本都用不到。比如某个系数0.15,内部参加运算可以设15,最后再除以100就行。原因,double除了精确度问题,所有牵涉到浮点的运算都比整型慢很多。坐标系再和地图系互相换算即可。即内部坐标xxx的是在地图第xx格,绘图同样,反过来就行。
又坐标系如按640*640的话,那么每Frame走1px,后面要调整速度麻烦,因为坐标只有px大,如果要调整下行走速度,加到2px一下子行走速度就加倍了,微调困难。可以放大内部坐标比如1000倍,调速容易。由此内部坐标就是640000*640000,像素坐标640*640,格子坐标10*10,三者互相转换。自动转换功能塞到类内去比较合适。