我有一个用java制作的简单游戏。从本质上讲,我的编程能力是相对基础的,我希望能够调整游戏窗口的大小,而不是让图像保持原样,只是在更大的区域显示白度。 Here's a Screenshot.有没有简单的方法吗?
答案 0 :(得分:5)
现有的两个答案似乎都假设你希望游戏空间能够调整大小。
一个射击游戏的空间并不一定很好。例如。当游戏的宽度是原来的两倍时,左/右箭头按下的速度应该是船速的两倍吗?垂直拉伸窗户会增加重力或拍摄速度吗?
我阅读问题的方式,您只是希望将游戏空间置于窗口中心。可以在this answer中看到E.G.s。
许多游戏都会修复大小以避免第一种方法产生的问题类型,并避免第二种方法的“大空白区域”。这就像调用setResizable(false)
一样简单。
要使这项技术发挥最佳效果:
frame.pack()
以确保框架的大小适合显示内容。frame.setResizable(false)
。答案 1 :(得分:2)
要拉伸游戏,首先将其渲染为Image
。然后立即拉伸图像。
Image dbImage; // The backbuffer
graphics.drawImage(dbImage, 0, 0, getWidth(), getHeight());
大多数游戏都喜欢禁用与我的引擎一起调整大小的窗口。
答案 2 :(得分:0)
根据我对您的问题的理解,您希望将游戏“拉伸”超出界限并将其扩展到窗口的其余部分。 (如果那是错的,哎呀:s)
为了实现这一目标,你必须做出一些决定。您可以将整个游戏缩放到框架,也可以只扩展背景。但是,根据你想要进入的方向,你必须做不同的事情。
最终,这个决定完全取决于你。
还有什么用来创建窗口?