TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

GPU synchronization in Godot 4.3 is getting a major upgrade

159 pointsby __natty__over 1 year ago

8 comments

vunderbaover 1 year ago
I really really really want to use Godot, but sadly, the support for web exports just isn&#x27;t there in Godot 4:<p>- Can&#x27;t use C# at all<p>- Has issues running on MacOS &#x2F; iOS<p>Meanwhile as much as Unity irritates me, they&#x27;re working on even better web platform support in Unity 6 and smaller runtime bundled deployments.<p><a href="https:&#x2F;&#x2F;unity.com&#x2F;solutions&#x2F;web" rel="nofollow">https:&#x2F;&#x2F;unity.com&#x2F;solutions&#x2F;web</a><p>I think if I was predominantly focused on traditional console&#x2F;platform gaming it would be a different story.
评论 #39406777 未加载
评论 #39404508 未加载
评论 #39412760 未加载
评论 #39402972 未加载
cyber_kinetistover 1 year ago
This adds more to the evidence that Vulkan &#x2F; DX12 seems like a failed API design, when too many graphics engineers are reinventing the wheel by building their render-graph API on top of these (propietary triple-A game engines, Unreal Engine, and now Godot...) Instead of real-time graphics APIs providing all these low-level manual synchronization primitives and cumbersome PSOs, maybe they should just provide an official Render Graph API instead? Provide all of the operations and its dependencies in an acyclic graph up-front, and the driver handles synchronization automatically in the most performant manner tailored to the hardware.<p>I guess there needed some trial-and-error in the gamedev world for about a decade to really nail down a nice to use but also performant graphics API design. Vulkan being originated from the Mantle API from AMD didn&#x27;t help - since it was a low-level console API mainly accustomed to AMD&#x27;s GPUs and really didn&#x27;t seem like it would fit for a more &quot;general-purpose&quot; API spanning a huge range of hardware and can stand the test of time. And with Microsoft&#x27;s DX12 hastely copying from AMD&#x27;s initial design it also has all the same issues (The irony is that DX11 is still the best graphics API you can use in gamedev in Windows in terms of ergonomics and even performance - seeing many trying to dauntingly build a DX12 backend and end up performing worse than DX11...)<p>Nowadays I&#x27;m obversing that the industry has known these issues for a while and are experimenting with alternative API designs... there are some experiental render-graph extensions available in both DX12 &#x2F; Vulkan (albeit in a limited fashion):<p>- DX12&#x27;s Work Graph API as preview (<a href="https:&#x2F;&#x2F;devblogs.microsoft.com&#x2F;directx&#x2F;d3d12-work-graphs-pre" rel="nofollow">https:&#x2F;&#x2F;devblogs.microsoft.com&#x2F;directx&#x2F;d3d12-work-graphs-pre</a>...)<p>- Vulkan&#x27;s VK_AMDX_shader_enqueue extension (<a href="https:&#x2F;&#x2F;gpuopen.com&#x2F;gpu-work-graphs-in-vulkan&#x2F;" rel="nofollow">https:&#x2F;&#x2F;gpuopen.com&#x2F;gpu-work-graphs-in-vulkan&#x2F;</a>)
评论 #39412583 未加载
评论 #39409709 未加载
snoutieover 1 year ago
I like the dedication behind godot. Since unity can be a hassle to get to work on linux i might try out their solution.<p>On a tangential note: I am also excited to see whether Embark Studios will open source their engine once it&#x27;s ready.
评论 #39406316 未加载
Vt71fcAqt7over 1 year ago
It&#x27;s great that Godot keeps improving. AFAIK it is still mostly for indie devs though. I don&#x27;t know why valve isn&#x27;t open sourcing Source 2. They barely even make games anymore and it would make them money in the long term if it means games could be made cheaper and better. UE5 on the other hand is leaps and bounds greater than both Source 2 and Godot judging from the few games that have released with it so far. There&#x27;s also O3DE which last I checked isn&#x27;t ready.
评论 #39401782 未加载
评论 #39401639 未加载
评论 #39407887 未加载
评论 #39403229 未加载
评论 #39403375 未加载
Animatsover 1 year ago
Good to hear that Godot is addressing this. The Rust graphics crates are bottlenecking on buffer management. I&#x27;m seeing the render thread become compute-bound on a static scene, with the GPU under 25% busy. Stack is Rend3&#x2F;WGPU&#x2F;Vulkan&#x2F;X11&#x2F;Linux.<p>The latest round of WGPU improvements now has copying content into the GPU memory concurrent with rendering. That level of synchronization has been fixed. But it&#x27;s still too slow.<p>I dread having to learn how things work down at that level.<p>By the way, what&#x27;s the thread situation in WASM now? Previously, it was multiprocess with some shared memory, not real threads. Various real threading proposals were floating around. Did that happen yet?
dogprezover 1 year ago
&gt; The order of execution of the recorded commands inside a command buffer is NOT guaranteed to complete in the order they were submitted: the GPU can reorder these commands in whatever order it thinks is best to complete the job as quickly as possible.<p>It&#x27;s my understanding that commands inside of a command buffer are guaranteed to complete in order. The synchronization must happen when you are `vkQueueSubmit`ing multiple command buffers, no? I think that&#x27;s what they meant to say?
评论 #39404064 未加载
zx8080over 1 year ago
I&#x27;m out of games context, so what is &quot;web export&quot;? Is it something which Flash has been before?
评论 #39404512 未加载
andrewmcwattersover 1 year ago
I&#x27;ve only done a rough minimal implementation of Vulkan in the past. I thought Direct3D 12 was basically Vulkan.
评论 #39408384 未加载