我观看了一个我认为非常擅长游戏开发的人的视频,ForeignGuyMike,在他的教程中,他使用了虚拟宽度和高度,并将其缩放为 2。这是代码的屏幕截图。
我正在开始一款全新的游戏,想知道这是否有某种目的。我想知道这样做的利弊,因为我似乎找不到他在哪里解释为什么以及在互联网上哪里有人这样做。然后,他将虚拟宽度和高度乘以窗口大小的比例。非常感谢任何帮助。
最佳答案
首先浏览this article by Xoppa ,它应该清楚你的基础知识。但只是通过一个例子来理解。
假设您的屏幕宽度为 1980x1020px。
现在,在您的游戏中,您将字符大小硬编码为 100px
,这看起来不错。但如果在 1280x720px
的屏幕上启动同一个游戏,则 100px
高度的角色会太大。
一种方法是始终使用相对值。例如,每次游戏运行时获取屏幕高度并将角色高度设置为 SCREEN_HEIGHT/10
。现在你必须到处遵循这一点,将字符尾部高度设置为 SCREEN_HEIGHT/11.5
等等。一旦你的游戏开始发展,这可能很难处理。
但是,如果您创建一个20x11
(虚拟屏幕尺寸)的屏幕摄像头并将字符高度设置为1.2f
,那么无论屏幕尺寸是多少,您的角色尺寸总是与高度的比例相关。因为你的工作独立于像素。一切都在上面的文章中顺便解释了。
关于java - libgdx java 中虚拟宽度/高度的用途,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33857063/