Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 拉斐尔RPG/侧滚游戏动作_Javascript_Raphael - Fatal编程技术网

Javascript 拉斐尔RPG/侧滚游戏动作

Javascript 拉斐尔RPG/侧滚游戏动作,javascript,raphael,Javascript,Raphael,据我所知,当我想在屏幕上移动一个对象时,我可以使用.animate函数将其移动到我想要的位置,例如 R = Raphael( ... ); c = R.circle( ... ); c.animate( ... ); 将按照我的参数中的指定将圆移动到c.animate(..) 但是,如果我想翻译几乎所有的对象(想想Gameboy上的口袋妖怪或经典的Mario platformer,当玩家移动时,玩家精灵实际上保持不变,而世界其他地方移动),该怎么做?要做到这一点,唯一的方法是移动每个对象,或者

据我所知,当我想在屏幕上移动一个对象时,我可以使用.animate函数将其移动到我想要的位置,例如

R = Raphael( ... );
c = R.circle( ... );
c.animate( ... );
将按照我的参数中的指定将圆移动到c.animate(..)

但是,如果我想翻译几乎所有的对象(想想Gameboy上的口袋妖怪或经典的Mario platformer,当玩家移动时,玩家精灵实际上保持不变,而世界其他地方移动),该怎么做?要做到这一点,唯一的方法是移动每个对象,或者调用.clear()并从头开始绘制所有内容?必须有更好的方法,对吗?

从技术上讲,当你在《马里奥》中按“右键”时,除了《马里奥》以外的所有东西都会移动,对吗?这听起来是一个可行的解决方案。您可以为
世界中的每个对象创建
R.set()
,并变换该对象集。对于3D API(如OpenGL),您可以使用视点转换,但我认为Raphael不支持任何此类库。