godot4游戏启动时如何设置屏幕分辨率

Cod*_*Guy 2 fullscreen screen-resolution godot4

因为我的全屏godot 游戏可以在许多平台上使用(例如 Mac、Windows),所以我必须确保每次我的游戏第一次启动时,它都会检查其所在的操作系统和设备,并为设备设置正确的分辨率。我该怎么做呢?我想要这样的东西:

func _ready():
    device = project.get_device()
    project_settings.set_setting("window_width", device.width)
    project_settings.set_setting("window_height", device.height)
    project_settings.save()
Run Code Online (Sandbox Code Playgroud)

请注意,我编写的代码不是实际的 GDscript,它只是我想要的示例。

The*_*aot 6

您可以像这样设置项目设置:

ProjectSettings.set("display/window/size/viewport_width", 320)
ProjectSettings.set("display/window/size/viewport_height", 240)
Run Code Online (Sandbox Code Playgroud)

但对于你的代码运行的时间来说,已经太晚了。您可以获取窗口并设置大小,如下所示:

get_window().size = Vector2(320, 240)
Run Code Online (Sandbox Code Playgroud)

或者视口:

get_viewport().size = Vector2(320, 240)
Run Code Online (Sandbox Code Playgroud)

要确定您可以使用的平台OS.get_name()

prints(OS.get_name())
Run Code Online (Sandbox Code Playgroud)

或者与OS.has_feature()


但更好的是,不要通过代码来执行此操作。相反,请转到“项目设置”并定义所需平台的覆盖。

例如,如果我想覆盖 Android 的宽度,我选择“视口宽度”:

已选择视口宽度

然后从顶部的下拉列表中选择功能“android”:

选择“安卓”

然后点击添加:

将鼠标悬停在添加上

这添加了一个新的“Viewport Width.android”属性,该属性对具有“android”功能的目标(即在 Android 平台上)有效:

选择“视口宽度.android”

您可以将其设置为您想要的任何内容。