Advertisement

Fast Cheap shadows for DOOM games?

Started by March 17, 2024 07:42 PM
34 comments, last by JoeJ 9 months, 1 week ago

ReignOnU said:
But does it run in real time?

Training part or processing?

Training naturally doesn't run in real time (re-training the network is a task for few minutes with full data set). It is not progressively re-trained as due to what it does, data in training set require some processing.

Processing is in interactive mode (request-response based service).

The service is supposed to run as server-side job, you upload data to it (images to be precise), these get processed, producing some output - which is then interpreted and returned to the user. The actual processing is very fast - it is the image upload which takes some time (therefore ‘interactive’ instead of ‘real time’ processing).

When executed locally (for testing purposes) - the result is basically instant.

ReignOnU said:
Where are all the solo devs making successful PC and console games without an engine?

They were never gone.

Most of the market uses some 3rd party engine, but that hardly means all of it.

ReignOnU said:
Is unity stealing people's game code and concepts without their knowledge?

Can you surely say it isn't?

My current blog on programming, linux and stuff - http://gameprogrammerdiary.blogspot.com

@Vilem Otte Can you surely say it isn't?

No, another reason I don't use unity. Always online IDEs automatically feel sus to me

None

Advertisement

ReignOnU said:
How can games even use ML? It takes $700K to run ChatGPT per day

How many clients can it serve for that? I guess lots of.

However, the dev of Newton engine is working on ML driven characters. He does it all on CPU. Training can take a day, but running the model afterwards is real time.
Acaict, he's not yet happy with results, but we can use ML locally. NV released a chatbot for RTX users for example, and you can train it yourself with bunch of text, then chat with it about the topic.
Surely not as smart as ChatGPT, but probably good enough to have dynamic talking and story with NPCs in games.

Locomotion controllers surely need less resources. Train them with Bruce Lee videos and make a game out of it. Think of it - we will be able to do exact those things we could not do before in games. Exactly what we need to make it interesting again. I have little doubt ML will revolutionize games.

Personally i'm not so excited about this. But i make a difference between ML used fur such purposes, and ‘generative AI’ trained by mega corps from data not asking its creators for permission or paying them.

ReignOnU said:
This goes back to my Box2D thread of how most physics engines suck.

It doesn't suck imo. It's a masterpiece of human engineering, made by a genius out of passion, shared with us. And i'm grateful for that.
If you think you can do better, then do it. Make your own physics engine. If it's better indeed, then you can rant and talk others down. However, even then most people will notice your bad attitude much more than your good work.

ReignOnU said:
Coding from scratch is tedious, why reinvent the wheel?

It's the only way to do what you want, instead doing what others allow you to do, in a way others think is easy, optimal, or good enough.

ReignOnU said:
Well one of the big shadow techniques I invented on my own, before researching and finding out somebody else invented it first.

Hehe, so you do reinvent wheels. ; )

ReignOnU said:
I figured maybe somebody better at math that me could invent it but maybe not

Math helps with implementation but not with invention. If there is no invention, then a lack of math skills can't be used to claim that missing invention.

But i know what you talk about. I also often have this feeling about potential improvements, especially about ray tracing reflections. I want to rasterize the reflections. There must be a way…
But no. I'm wrong about that feeling. My ideas are just subconscious wishful thinking and noise. It sticks with me, but i do not really take it serious.

JoeJ said:
However, the dev of Newton engine is working on ML driven characters. He does it all on CPU. Training can take a day, but running the model afterwards is real time.

Whether you use CPU or GPU is irrelevant. I use CPU for whatever I need also. The test set learns in under minute on CPU - would using GPU significantly increase my productivity there? No, because any changes I do in between take significantly longer than that.

I don't care how long the runtime set takes - whether it is 1 hour or 5 minutes makes no sense to me. The (re)training happens rarely because adding more items to set is time consuming.

JoeJ said:
Personally i'm not so excited about this. But i make a difference between ML used fur such purposes, and ‘generative AI’ trained by mega corps from data not asking its creators for permission or paying them.

ML is not a magical tool mega corps try to sell it as (why … well it's obvious, they need to make revenue and income for share holders - so far they are heavily in negative numbers, and their growth is only on hopes and dreams - i.e. venture capital and all time new share holders).

I've tried to use Github's Copilot integrated into Visual Studio. First impressions which are capable of auto-writing some boring parts of the code (various constructors, etc.) are quickly downed by any attempt to do functional code (i.e. where something happens).

At the end of day - it is about cost of the tool. Which seems to be somewhat on the higher end for such tool.

My current blog on programming, linux and stuff - http://gameprogrammerdiary.blogspot.com

Vilem Otte said:
Whether you use CPU or GPU is irrelevant.

Btw, seeing all CPUs get AI acceleration it seems, what can those accelerators do?

I guess something like matrix multiplies / dot products on lower precision numbers.
But this does not tell me much about execution model and programming.

I ask because i wonder if we could use the acceleration for other things beside ML.
I'm too old and stubborn for ML, but i hate to pay for cooling pads in chips. : )

@JoeJ I actually was thinking of going deep into AI in the next few months to explore such possibilities, if AI can make use of GPU to train data, there is no way we can not make use of AI to render Data.

Though, I am no expert in how those chips work.

None

Advertisement

JoeJ said:
Btw, seeing all CPUs get AI acceleration it seems, what can those accelerators do?

Apple Neural Engine is just a machine learning accelerator with limited area of application. The AppleNeuralEngine.framework is private to Apple and you can't use it.

There is a repo coremltools from Apple, which interfaces with PyTorch and Tensorflow (and therefore uses ANE in those).

It operates with layer connectivity map and net weights - from posts I've read it can do mainly convolution acceleration. Some references state that veclip, BLAS and other on Apple use ANE - they don't.

My current blog on programming, linux and stuff - http://gameprogrammerdiary.blogspot.com

Hmm, i read AMDs AI also can only run TensorFlow and PyTorch ML models.
Let's sum up awesome new HW features of recent time:

Tensor cores: I can't use CUDA in games, so can't use them.
RT cores: Can't do LOD, so i can't use them.
AI PC that everybody wants: Can't use it, since i don't use ML.

I do detect a pattern here.

@JoeJ I think its a good attitude…

You could say that about just anything. Oh look how long it took this guy to make a game, he's a genius, he put 5 years of work into this game, how dare we criticize it. Or including any invention in existence, can't be criticized because somebody put work into it. Yet the physics engine you used fails you and makes it difficult for you to do animations. And that is one good reason to criticize stuff, plus its just fun

None

JoeJ said:
So i do not really fully understand what's the problem. But there is a problem, and it's huge.

Well, I don't know if it is me growing older or games have changed, but I rarely enjoyed any modern game, with very few exceptions, I tried playing games from early 2000s recently and I liked them, a lot! I figured one of the biggest killers that most modern games don't have: Challenge I enjoy the challenges presented by games, the intriguing puzzles, the fact that a game expect me to develop a skill, master it and use it. A quick example is hand-eye coordination, as even as early Super Mario Bros, you really don't expect yourself to finish that game without improving the sync between what your eyes see and what your hands press.
I talked about this with a former Ubisoft employee, who simply said to me: “well you might be right, but you don't consider that some people get home late and just wanna play a couple of hours, if we don't provide them with an easy route they gonna rage quit our game.”
I really liked when I finished a game, I feel like I conquered something, considering modern games micro transaction, money systems, over time buffs, this pretty much kills every sort of skill/challenge that could presented. If you feel this might be relatable, I can share some of the famous games in early 2000s or so that you might like (there are many other reasons I prefer older games, but as far as I see, this one is the biggest)

None

This topic is closed to new replies.

Advertisement