2014-02-26 46 views
2

因此,我正在与我的小组一起制作一个关于项目处理的游戏,并且我们都有不同的计算机。问题是我们在一台计算机上构建了游戏,但是现在我们已经意识到我们使用的(1200,800)大小在我们的教授计算机上不起作用。不幸的是,我们已经硬编码了数千个值来适应这个分辨率。有什么办法可以让它适合所有电脑?在处理任何屏幕尺寸时调整难度值

从我自己的研究中,我发现你可以使用screen.widthscreen.height为了获得屏幕的大小,我将游戏窗口设置为大约一半的屏幕大小。然而,我为背景和东西加载的所有图像都是1200x800因此,我不确定如何去修改所有图片(背景)和硬性值。

有没有办法解决这个问题,而不必手动改变1000的硬值? (是的,我完全意识到我的硬编码数字有多糟糕)。

任何帮助将不胜感激。正如标题所述,该语言正在处理中。

回答

1

正如我敢肯定你已经学到教训关于硬编码数字,我就不说了吧:)什么

你可能已经听说嵌入传统的Java JFrame的或类似的内部处理PApplet的。如果您可以缩放PApplet绘制的图像(即,以您编码的分辨率绘制该图像,然后将结果图像放大或缩小以匹配屏幕),则可以将您的papplet嵌入到帧,将papplet的输出捕捉到图像,缩放图像,然后将其绘制到屏幕上。快速搜索结果为this SO question。如果分辨率太差,它可能会让你的游戏看起来很有趣,但这是一种快速而肮脏的方式。您可能希望在单独的线程中完成此操作,如建议here

说了这么多,我不推荐它。 Processing(IMO)最好的一件事就是不必直接与AWT/Swing混淆。这也是一个混乱的混乱,“正确的做法”只是返回并将硬编码的数字改为变量。对于您的图片,您可以使用PImage's resize()。你说你的代码长达数百行,但实际上这并不是一个巨大的数字 - 最好的办法就是把它吸了起来,并在几个小时内不高兴。祝你好运!