我实际上是在XNA中创建一个RPG恐怖游戏,但有些事情困扰着我,我不知道该怎么称呼它。当我的玩家移动时,实际上是地图移动,玩家停留在屏幕中间。但是当我必须移动时,整个tileMap被重新绘制。我的问题是,当它移动很多时,屏幕会有点扭曲,就好像底部不能跟随位移的速度一样,所以屏幕就像是水平切割。这不是一个大问题,但它仍然让我很烦,因为我想尽可能完美地做到这一点。
有人告诉我,它是垂直同步的东西,我必须禁用FixedTimeStep或其他东西,并为我的更新添加一个计时器,但我不明白
这是一个link,如果你们中的一些人想要尝试理解我想要解释的内容(在第二层,当灯光亮起时你可以看到它很好)< / p>
如果有人有想法......那会很棒
谢谢
答案 0 :(得分:1)
您是否考虑过使用视图矩阵?这将简单地取代绘制地图的位置,而不是物理位置。然后你所要做的就是移动你的玩家角色并翻译视图矩阵。
XNA中已有一些关于矩阵的好资源,like this one。 This answer很好地解释了整个想法 - 它指的是转换矩阵3D,但相同的概念适用于2D。
答案 1 :(得分:0)
我使用AS3制作游戏以导出到Flash和RPG Maker VX ACE,通常如果场景很大,游戏可能会变慢。关键是禁用元素的所有效果或行为,而不是在屏幕中看不到。
当元素(npc或其他实体)可见时,激活行为效果,换句话说,当在屏幕窗口中时,我会激活。
尝试使用触发器
祝你好运