我在游戏/图形编程中使用此功能 lot 。
float slide(float from, float to, float by) {
float difference = to - from;
if(difference > by) {
return from + by;
} else if(difference < -by) {
return from - by;
} else {
return to;
}
}
基本思想是“通过这么多的方式走向某某”。
我称之为slide
,因为如果你在某个位置的每个帧上调用它,它就会以恒定速度滑向目标位置。
有关命名的其他建议吗?
答案 0 :(得分:0)
我认为幻灯片是可以的,也许moveTo或者float也可以。
还有一个想法。当你像这样使用这个函数时:
Slide(0, 5, 10);
(表示“by”比可能的步骤更大)
并且你会多次调用它,该对象将围绕“到”位置进行振荡。
你应该为它添加一些处理。像:
float slide(float from, float to, float by) {
float difference = to - from;
if(difference > by && from + by < to) {
return from + by;
} else if(difference < -by && from - by > to) {
return from - by;
} else {
return to;
}
}
希望这会有所帮助。