By supporting Direct3D 12, Godot gains support for multiple new platforms, such as:

  • Windows Store (UWP).
  • Windows on ARM.
  • GDK.
  • XBox —which can’t be supported officially by Godot, but for which Direct3D 12 support is essential—.

Depending on the complexity of the scene, effects used, etc., this first version of the renderer performs generally worse than the Vulkan one. In some tests, D3D12 has not been able to deliver more than 75% of the Vulkan frames per second. In some other, D3D12 has been able to outperform Vulkan by a small margin. Performance improvements will be ironed out over time.

Expect it to come in Godot 4.3

You are viewing a single thread.
View all comments
3 points

What’s with the xbox comment? Why can’t it be officially supported?

permalink
report
reply
13 points

I’m not keen on the specifics but part of the reason W4 exists is because the Godot Foundation can’t just pass around console SDKs. Only publishers and larger companies can use them and they’re usually under NDA.

So your options are going to a publisher like W4 Games (which is an entity by Godot’s founders) to handle that for you, or you can try porting it yourself and going through all the legal shenanigans.

permalink
report
parent
reply
1 point

What about homebrew games? I thought xbox had something like that.

permalink
report
parent
reply
8 points

You can turn on “dev mode” in your xbox console to be able to mess around with it and run homebrew, but that still doesn’t mean you’re allowed to publish your game to Xbox I don’t think.

permalink
report
parent
reply
3 points

Xbox dev mode lets you run UWP apps but you don’t get the Xbox SDK or the lower-level APIs, nor can you publish it without getting access to the SDKs first.

permalink
report
parent
reply
3 points

You can’t get access to the SDK without a license. A license takes moments to get but makes it so you can’t just pass it around. Unreal is the same way but they have plugins to add the SDK support for unreal

permalink
report
parent
reply
9 points

I think it’s because you can’t build for Xbox without Microsoft signing the binary. This is one of the reasons the Godot team founded W4 Games.

permalink
report
parent
reply
3 points

They claim that they cannot support any consoles for legal reasons: https://godotengine.org/article/godot-consoles-all-you-need-know/

it is impossible for Godot to include first-party console support out of the box. Even if someone would contribute it, we simply could not host this code legally in our Git repository for anyone to use.

Maybe that’s true, I’m not a lawyer. But Godot’s founders own one of the companies that provide console support: https://lonewolftechnology.com/

It could be a conflict of interest or an honest way to provide console support in Godot while also being compensated for their work on Godot. After all, food on the table is not open source.

The full list of Godot companies providing console support is here: https://docs.godotengine.org/en/stable/tutorials/platform/consoles.html

permalink
report
parent
reply
8 points
*

Everything is locked down and filled with NDAs when it comes to console development. To access the xbox game development documentation - you need to sign an NDA (https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/getstarted/gc-getstarted-toc). To access the SDK (https://www.microsoft.com/en-us/software-download/gdk) you need to be a “Registered Dev Center Partner” which requires a publisher, fee payment, and agreement (https://learn.microsoft.com/en-us/windows/apps/publish/partner-center/open-a-developer-account). BUT even more specifically section 3 of the public GDK license agreement (https://github.com/microsoft/GDK/blob/Main/LICENSE-EN-US.MD) gives an idea of what you are allowed to do with that SDK code once given access and you can only use the code for “internal” use and only make one copy for backup use. This isnt even getting into how using the GDK makes your app subject to the usage agreement (https://support.microsoft.com/en-us/windows/usage-rules-for-digital-goods-rules-83812b1f-1ecd-9a46-d3a7-ad1eadce49d1).

permalink
report
parent
reply

Godot

!godot@programming.dev

Create post

Welcome to the programming.dev Godot community!

This is a place where you can discuss about anything relating to the Godot game engine. Feel free to ask questions, post tutorials, show off your godot game, etc.

Make sure to follow the Godot CoC while chatting

We have a matrix room that can be used for chatting with other members of the community here

Links

Other Communities

Rules

  • Posts need to be in english
  • Posts with explicit content must be tagged with nsfw
  • We do not condone harassment inside the community as well as trolling or equivalent behaviour
  • Do not post illegal materials or post things encouraging actions such as pirating games

We have a four strike system in this community where you get warned the first time you break a rule, then given a week ban, then given a year ban, then a permanent ban. Certain actions may bypass this and go straight to permanent ban if severe enough and done with malicious intent

Wormhole

!roguelikedev@programming.dev

Credits

  • The icon is a modified version of the official godot engine logo (changing the colors to a gradient and black background)
  • The banner is from Godot Design

Community stats

  • 1K

    Monthly active users

  • 669

    Posts

  • 2.5K

    Comments