【发布时间】:2016-01-18 06:19:42
【问题描述】:
过去几天我一直在查找教程和资料。我已经做了很多年的程序员,但直到现在我从来没有搞砸过制作游戏。
我正在使用 Java 画布制作一个小型 2D 游戏,但我正在尝试选择正确的方法来绘制瓷砖地图。
就目前而言,我的画布是 640x512,目前它会以每帧速率将所有可见图块绘制到视口上。对我来说,这似乎有点过头了,但我读过的所有内容都以这种方式表明了这一点。
我只是好奇是否有一种方法可以在视口后面绘制整个地图并移动,因此只需绘制一次,然后以每帧速率渲染地图上方的对象。
任何意见将不胜感激。谢谢大家!
【问题讨论】:
-
我不确定我是否理解您的问题。是不是游戏的视图比游戏世界小,出于性能原因,您只想绘制可见的内容?
-
对不起,这有点令人困惑,但是游戏的视图比游戏世界小,所以我目前只绘制出于性能原因可见的内容,但我很好奇是否可以将整个区域绘制一次,然后在画布上移动它。这样,每个帧速率唯一被渲染的是实体而不是每个图块。这可能是不可能的..但我不知道,我找不到答案。
-
我只是注意到在具有缩放功能的游戏中,您可以在放大和缩小时看到地图的整个区域,但不能看到所有实体。一旦您靠近实体,它们就会进入渲染距离并变得可见。所以我试图了解这是如何完成的。也许当你缩小它会增加地图渲染距离,而实体的渲染距离完全不同?我可以试试看。
-
IMO,这个问题太宽泛,无法在 StackOverflow 上得到合理的回答。一些可能(或可能没有)帮助的相关信息是:View of the application javafx、How do you load a tmx/xml file in javafx?、Writing a Tile Engine in JavaFX(最后一个链接上的烦人广告)。
-
谢谢Jewelsea,AlmasB 很好地指出了我的目标,但我将阅读这些链接以获得更多理解。我很感激你的时间。 :)