我想知道如何制作跟随玩家的视口,例如在侧面游戏中。我有一个半工作版本,但它要求我移动除播放器之外的所有内容。
ctx.translate(canvX,canvY);
drawBlocks();
ctx.restore()
这暂时有用,但我必须画出敌人和其他物品,而我不想经常重做这个过程。我正在寻找一个简单的解决方案,基本上涉及跟随玩家的相机。这可能吗?
答案 0 :(得分:0)
使用类似three.js的游戏。因为你必须每秒画出尽可能多的帧,而画布并不是那么好(如果你现在不相信我,等到你必须在屏幕上绘制更多东西)。
但是,对于您当前的代码,我注意到的一件事是您错过了ArrayList<String> ListeFamilles = new ArrayList<>(15);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.selectionneracteactivity);
HttpURLConnection urlConnection = null;
StringBuilder result = new StringBuilder();
try {
URL url = new URL("http://192.168.1.26:8888/GetNomFamille.php");
urlConnection = (HttpURLConnection) url.openConnection();
InputStream in = new BufferedInputStream(urlConnection.getInputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String line;
while ((line = reader.readLine()) != null) {
result.append(line);
ListeFamille.add(line);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
urlConnection.disconnect();
}
。
如果这不是我不认为的问题,根据你的问题,你不想重新绘制所有内容,只有背景?实际上你可以使用多个图层,这样每个敌人都是一个HTML元素,你只能在动画帧改变时重绘敌人。然后你只需移动它们的元素(比在性能方面重新绘制便宜一点)。
THREE.JS是你应该学习的......它真的会帮助你。