For me, the interest in engine-making is to give myself a toolkit that is suited for the kinds of games I want to make, rather than an engine that is trying to be everything to everyone. Also to avoid the Unreal Engine monoculture.
kyzcdev
I believe the instinct to develop a game engine or framework comes down from loving programming and being passionate about mastering a tool. We humans love mastering something and we love masters, when we build something from scratch we own it, we are master of it and we lead the decision. That's so comforting and pleasurable, and the reward we see at the end of the path motivates us. But on the process it's too hard.
Nowadays I have the urge to combine a physics engine, rendering engine, ecs engine to develop my own game which I guess I'll quit in the middle.
As developers I believe we should limit ourselves from doomcoding.
show comments
damienmeur
I cannot recommend more to try the Ray Tracer challenge and if possible without AI.
It helps you build a full ray tracer / 3D engine only guided with tests, really powerful to learn test driven development.
What s cool is that just being driven with tests still allows you to do it in any language you want.
Plus you ll learn a quintillion of stuff about mathematics. This is really the kind of project that makes you go to a real senior SWE
badsectoracula
(Considering the linked section) that is more or less how Petra Engine[0] came to be - making a gamejam game[1] for MSDOS over a few weeks. Though while i did make it for that specific game, i always had in mind that i may want to use it for other games in the future too so i tried to make it more "generic" and keep the engine and game bits separate while avoiding too many game-specific stuff (didn't fully manage it though - in the end i've been removing PAP-specific things and a bunch of hardcoded stuff over the years whenever i feel like using it).
That said, despite making a bunch of demos[2][3][4][5] since 2021 when i made the game, i never made any game using it after that as i always lose interest - perhaps i do need to be making an engine from scratch to keep myself interested :-P.
[0] http://runtimeterror.com/tech/petra/ (note the version is very old and i've made a lot of improvements since then - this includes the Codeberg repository which i'll move somewhere else at some point)
For me, the interest in engine-making is to give myself a toolkit that is suited for the kinds of games I want to make, rather than an engine that is trying to be everything to everyone. Also to avoid the Unreal Engine monoculture.
I believe the instinct to develop a game engine or framework comes down from loving programming and being passionate about mastering a tool. We humans love mastering something and we love masters, when we build something from scratch we own it, we are master of it and we lead the decision. That's so comforting and pleasurable, and the reward we see at the end of the path motivates us. But on the process it's too hard.
Nowadays I have the urge to combine a physics engine, rendering engine, ecs engine to develop my own game which I guess I'll quit in the middle.
As developers I believe we should limit ourselves from doomcoding.
I cannot recommend more to try the Ray Tracer challenge and if possible without AI.
It helps you build a full ray tracer / 3D engine only guided with tests, really powerful to learn test driven development.
What s cool is that just being driven with tests still allows you to do it in any language you want.
Plus you ll learn a quintillion of stuff about mathematics. This is really the kind of project that makes you go to a real senior SWE
(Considering the linked section) that is more or less how Petra Engine[0] came to be - making a gamejam game[1] for MSDOS over a few weeks. Though while i did make it for that specific game, i always had in mind that i may want to use it for other games in the future too so i tried to make it more "generic" and keep the engine and game bits separate while avoiding too many game-specific stuff (didn't fully manage it though - in the end i've been removing PAP-specific things and a bunch of hardcoded stuff over the years whenever i feel like using it).
That said, despite making a bunch of demos[2][3][4][5] since 2021 when i made the game, i never made any game using it after that as i always lose interest - perhaps i do need to be making an engine from scratch to keep myself interested :-P.
[0] http://runtimeterror.com/tech/petra/ (note the version is very old and i've made a lot of improvements since then - this includes the Codeberg repository which i'll move somewhere else at some point)
[1] https://bad-sector.itch.io/post-apocalyptic-petra
[2] http://runtimeterror.com/pages/iv/images/44d7537fb719e00fdcd...
[3] http://runtimeterror.com/pages/iv/images/d22ff83dd5e5109e02e...
[4] http://runtimeterror.com/pages/iv/images/1da6a4bce430a8d8507...
[5] https://www.youtube.com/watch?v=zx9KmkTLcB0
Making game engine is the fun part, making actual game with it is the boring part.
Claude, build me a game engine. Make no mistakes.