如何在 GameMaker:Studio 1 中实现 3D 低分辨率效果
Posted
技术标签:
【中文标题】如何在 GameMaker:Studio 1 中实现 3D 低分辨率效果【英文标题】:How to achieve 3D low-res effect in GameMaker:Studio 1 【发布时间】:2019-08-01 07:09:15 【问题描述】:我正在一个名为 GameMaker:Studio 1.99.44 的流行游戏引擎中编写一个 3D FPS 类型的游戏。我正在尝试实现低分辨率“像素化”效果,例如这样:
Example of this effect in a game called "Legend of Xenia"
我尝试过尝试使用视图,从而使它们的分辨率更小,然后在代码中放大游戏窗口以希望达到这种效果。然而,即使在我使用“texture_set_interpolation(false)”之后,像素也会与窗口分辨率成比例缩放。
目前我的游戏是这样的:
Current look of the game
但是,当我强制游戏进入全屏模式时,似乎会出现所需的效果(所以,这就是我希望看到的,但在窗口模式下也是如此):
Desired effect after forcing the game to go fullscreen
我非常感谢任何可能的帮助。 谢谢你,祝你有美好的一天!
【问题讨论】:
【参考方案1】:我对 GMS1 的熟悉程度不如对 GMS2 的熟悉(我从 GM8 直接跳到 GMS2),所以请耐心等待。
Game Maker 中缩放的一个重要概念一直是“房间像素”和“计算机/屏幕/窗口像素”之间的区别。似乎您在很大程度上理解了这种差异。
您需要实现的是 VIEW 大小(以“房间像素”为单位的房间大小:view_wview
和 view_hview
)和视图端口大小(以“屏幕像素”为单位的屏幕大小: view_wport
和 view_hport
)。您希望房间内视图的大小非常小,然后端口要大几倍(我猜至少是 4 倍)。
您可以使用 GML 代码或在房间编辑器中进行设置(参见下面的截图,取自 GMS1 手册):
可能使情况复杂化的是,窗口大小通常是从房间大小中提取的,这在您处理视图时可能难以处理。一个可以帮助您解决此问题的命令是window_set_size(w,h)
。如果您希望您的游戏可以在各种屏幕分辨率上运行(在此处输入“在游戏菜单中添加分辨率选择器的强制性建议”),请谨慎操作。
【讨论】:
以上是关于如何在 GameMaker:Studio 1 中实现 3D 低分辨率效果的主要内容,如果未能解决你的问题,请参考以下文章
GameMaker Studio:处理虚拟键时如何忽略全局左键?