Java 我的精灵动画系统高度重新计算有一些问题

Java 我的精灵动画系统高度重新计算有一些问题,java,animation,gravity,Java,Animation,Gravity,基本上,它的工作方式是,它更新帧以显示每一个,比如说24个刻度,并且每次帧更新时,它都会重新计算要渲染的新精灵的高度和宽度,这样我的重力逻辑和东西就可以很好地工作。但是我现在遇到的问题有点难以用语言来解释,因此我将用这张图片来帮助我 所以我基本上需要的是,如果说我在第一帧冻结了精灵,然后在第二帧解冻并冻结,让第二帧的精灵(假设它是俯卧动作)简单地站在立足点上,而不启动重力,然后切换回来,让第一个精灵像平常一样回到立足点上,而不在立足点下 我有两个这样做的想法,但我不确定这是最有效的方法,所以我

基本上,它的工作方式是,它更新帧以显示每一个,比如说24个刻度,并且每次帧更新时,它都会重新计算要渲染的新精灵的高度和宽度,这样我的重力逻辑和东西就可以很好地工作。但是我现在遇到的问题有点难以用语言来解释,因此我将用这张图片来帮助我

所以我基本上需要的是,如果说我在第一帧冻结了精灵,然后在第二帧解冻并冻结,让第二帧的精灵(假设它是俯卧动作)简单地站在立足点上,而不启动重力,然后切换回来,让第一个精灵像平常一样回到立足点上,而不在立足点下


我有两个这样做的想法,但我不确定这是最有效的方法,所以我想听听你的意见。

修复了我的问题,不确定它在将来是否仍然有效,但对我来说这似乎是一个很好的方法

(我为实体添加了一个currentFoothold Defension作为对象的落脚点,当该实体为圆形时,自然地将该落脚点对象设置为他当前站立的落脚点。重新计算高度时,如果该实体为圆形&&Foothold!=null,则将该实体的Y坐标设置为地图中落脚点的Y坐标)

我投票支持“离题”,因为这可能更适合于