Live data from Hacker News

Godot 4.0 gets SDF based real-time global illumination

godotengine.org

71–80 of 150 posts

Re: Godot 4.0 gets SDF based real-time global illumination

#71

Re-upping this blog post (sadly overlooked when first posted to HN) which asks the reasonable question 'why not just use Godot for general-purpose applications?' https://medium.com/swlh/what-makes-godot-engine-great-for-ad...

Yes please I have always wondered why is this not a thing

I can't read the linked article without logging in but in my experience its not ideal for several reasons.

Game engines are designed around game loops executing code every frame and not around power efficient layout caching.

Orthrographic hierarchies are how UIs are usually laid out and its a mild pain to move to a system that's depth sorted, with custom shaders etc. You can do more but you need to think about more and its harder for the UI system to know what parts of the screen can be redrawn. Games usually just draw it all every frame.

Specifically for a game engines, they usually don't do things like OS integration for accessibility, subpixel font rendering, that sort of thing. In theory they could but usually game engines seem to roll their own system for this.

Re: Godot 4.0 gets SDF based real-time global illumination

#72

Re-upping this blog post (sadly overlooked when first posted to HN) which asks the reasonable question 'why not just use Godot for general-purpose applications?' https://medium.com/swlh/what-makes-godot-engine-great-for-ad...

It's interesting. Can you easily deploy a Godot ui to the web?

It supports web as an export target, although there are some limitations:

"""

Unimplemented functionality

The following functionality is currently unavailable on the HTML5 platform:

- Threads

- GDNative

- C#

- Clipboard synchronization between engine and operating system

- Networking other than HTTPClient and WebSocketClient

"""

https://docs.godotengine.org/en/stable/getting_started/workf...

Re: Godot 4.0 gets SDF based real-time global illumination

#73
post #18

This looks really cool and impressive of course, but I still feel the easiest way for most indies (which Godot is aimed at) to stand out is to get away from photo-realism.

Global illumination is orthogonal to photo realism. In fact, GI and lighting in general can help indies get away with untextured and/or low-poly models and still achieve a pleasant look (check out The Witness or Superhot for some examples.

Superhot is the most innovative shooter I've played in years!

Re: Godot 4.0 gets SDF based real-time global illumination

#74
post #29

This is super interesting. The first video on the page sheds some light on how this actually works. It seems like they convert the scene into shapes that can be represented via SDF's and smooth min ( https://www.iquilezles.org/www/articles/smin/smin.htm ) them to blend into an approximation of the actual scene. While also capturing some general texture color data to apply and blend into the shapes. I assume the shade…

SDFs are computed on the GPU using a jump flood algorithm ( https://www.comp.nus.edu.sg/~tants/jfa/i3d06.pdf ) from a series of voxels, storing color at each point. From this, a regular grid of probes are placed and integrated using the data from the SDF, using ray-marching. Material shading reads from the probes.

[deleted]

Re: Godot 4.0 gets SDF based real-time global illumination

#76

So if I wanted to make a simple 2d game, should I go with godot, pygame, or a JavaScript game engine?

If it's really simple and you want a community of like-minded individuals, PICO-8 and similar are super fun: https://www.lexaloffle.com/pico-8.php

Definitely more for hobbyist projects, it shares lots of the features that got me into programming in general.

Features:

- the .png image aka "cartridge" also contains all the code to run the game.

- built-in tools for editing code, music, sound, sprites, maps

- community of shared games where all the assets of the game are immediately editable by the players. A game hacker's platform.

That last point can't be overstated. Hear some music you like in a game? You can modify the score and add it to your game. Playing a game but somethings not quite right? You might be able to do the necessary edits with your game controller. Want to "cheat" your way past that last boss? Edit the boss.

It's the sweet spot between playing games and making.

The more serious answer is that it heavily depends on your skills, the goals of your game, and your constraints. Knowing nothing about any of those, Godot seems like the clear winner.

Re: Godot 4.0 gets SDF based real-time global illumination

#77

Earlier quoted context omitted.

I'm someone who isn't at all knowledgeable about game development nor its industry, so forgive my ignorance, but what are you waiting for specifically?

One thing many of the big players do that Godot doesn’t is require telling the user they used that engine. If you use Unity, you need to show the Unity splash screen unless you pay the big bucks; Godot requires none of that.

So why would someone wait for that feature before changing to Godot if that's already a feature?

Re: Godot 4.0 gets SDF based real-time global illumination

#78
post #72

Earlier quoted context omitted.

It's interesting. Can you easily deploy a Godot ui to the web?

It supports web as an export target, although there are some limitations: """ Unimplemented functionality The following functionality is currently unavailable on the HTML5 platform: - Threads - GDNative - C# - Clipboard synchronization between engine and operating system - Networking other than HTTPClient and WebSocketClient """ https://docs.godotengine.org/en/stable/getting_started/workf...

Much of these are not limitations of the export but of the platform. Web workers don't rise to the functionality of threads (wasm will surely grow decent thread support one day)

GDNative by definition is for native.

My game using C# exports to web fine, So that's working. Still a fairly huge download for a web game though, not really any worse than the Unity ones though.

Re: Godot 4.0 gets SDF based real-time global illumination

#79
post #7
post #2

> Tim Sweeney and Epic Games for their confidence in helping us finance our research via Epic Megagrant. That’s interesting. Since this is all open source I guess Epic could potentially benefit from this... It’s nice to see they funded another engine.

Why would Epic put money into an open source competitor? I could see funding open source that is complementary or, perhaps better, something your competitor makes money on. But this? I was looking into Unreal for my next project, but Godot looks amazing. And they won't take a cut of my profits. It might do everything I need.

Unless you are selling millions of copies I don't think Epic Games would care what engine you are using for your indie game.

Re: Godot 4.0 gets SDF based real-time global illumination

#80

Earlier quoted context omitted.

I'm someone who isn't at all knowledgeable about game development nor its industry, so forgive my ignorance, but what are you waiting for specifically?

One thing many of the big players do that Godot doesn’t is require telling the user they used that engine. If you use Unity, you need to show the Unity splash screen unless you pay the big bucks; Godot requires none of that.

For Unity, the "big bucks" is $35/seat/month -- that gets you the ability to make a build without a splash screen & without showing any Unity logos, etc.

For small shops (ie low or no revenue), you only need to pay that when you're ready to actually ship/make a build.

Note that the costs are higher if you're revenue is huge, it goes up to like >$100/seat/month or similar IIRC, I think that kicks in if you're in the 7-figures of annual revenue.

It's not free, and it can get expensive -- but you have to do the math on what you get, how much each will cost you monetarily & in time / opportunity cost, etc. IMO Unreal looks pretty compelling, and if they had C# support we'd jump to it in a heartbeat; I really don't want to write C++ on a day-to-day basis. If Godot keeps it up, then it may be the answer, in another 18 months or so -- but probably not wholly a commercially viable option quite yet, especially for mid-to-small shops.

Post reply on HN