so i was on youtube, searching game engine tutorials to take inspiration from and came across this short by Pirate Software
i was like "shit he's so right." and started questioning myself.
at this point i have been doing graphics programming related (and game hacking) projects for about 2 years now. and i must say i've learned a lot about how programmers send triangles to GPUs and how AAA games use little C programs to change every little pixel's color on the screen to make it look better.
my experience begins with a C++ "engine" that is just an overly-abstracted object-oriented OpenGL wrapper. (if only i could tell myself to just go use OpenTK + C#) i mean to be fair it does build and run if you follow my readme. unlike most of Cherno's code reviews (no hard feelings)
(EXCEPT that you need to change that one cast from void*
to ImTextureID
because the build script clones the master branch
of ImGui, which at some point had a breaking change to ImGui::Image
) (and the git
history is just...) (maybe i shouldn't have made fun of Cherno's code review reviewees)
maybe i never passed the 3rd section on LearnOpenGL.com
also i don't know where the texture went, but i can't find it in the git history anywhere lol
the next projects on my journey are just unfinished attempts of games or game engines (just like this one) mixed with other webdev projects.
at one point i tried Rust no not the game lol but that experience deserves it's own blog post, conclusion is that i didn't really like the crates, but it's a nice language. (i'll give it another try some time)
throughout that period i actually learnt how 3D projections work, models, instancing and that's about it.
in present time, i tried zig and really liked it (another topic deserving it's blog post). now i'm trying to write clones of my favorite games (cs & mc) in an attempt to learn something new. so far stuck on the physics part of it. (lol, note: i have been taught very little about it, just like linear algebra, but i manage)
ok back on topic, none of my projects require anything special that any of the engines can't do. so there is only one option left: EGO.
i can't entirely deny that and i know i'm stupid, (lol) but my main reason is because:
i just don't like enginesnot that there is anything wrong with them, but ECS-es, the patterns they use, their scripting languages are not for me.
so then what do i like?i like having control of everything, for example i make my own blog, (even tho i use github pages but that's fine for me)
i use Arch Linux. (some times lol) and NeoVim (if i was bothered to fix my config, im on cursor at the moment with tab disabled lol, though that's another blog post idea)
and i like keeping things simple, minimalistic and clean/modern.
while no code can be clean after 6 months, the best we can do is follow the trends and whatever our hearts say is good.
that's it from me. - ivan (hopefully i sign this commit with GPG, so you can confirm it's me)