A mere 85 days ago I decided I was going to try and write my own custom game engine from scratch.
Might not look like much, but just got the first pass of point lights working and I'm loving how its all starting to come together.
#gamedev#indiedev
@cybereality Im not expecting to financially benefit from doing it. Doing this outside of work. But im enjoying it and learning a lot so its worth it to me.
I love the control and power you can get writing your own custom game engine. I was able to write a script for blender to prep assets for the precise expectations of the engine, creating a seamless, custom animation pipeline.
No bones in-engine, just texture-driven animations
The position texture is RGBA32F. RGB is fully used for XYZ vertex position, but the A channel is currently unused and availabe. Multiple animation layers are supported via additional textures (the normal animation data already uses a second texture slot this way). So layered animation data works, just across textures rather than channels within the same texture. The unused A channel is actually interesting as a per-vertex weight...maybe I could bake upper/lower body masks or something into it to drive how much each vertex responds to a procedural effect layered on top.๐ค
Was able to write a script for blender to export out the mesh + anim data in the exr format my engine uses. So now I have the start of an animation pipeline, all texture driven, not a single bone being analyzed in-engine. Excited to start bringing the world to life!
@_brenn0n Yeah the first vertex animation i supported was wind, procedurally driven. Now exploring the textures. Thats a good direction to build on next.
@sir4K_zen Thanks! Yeah my ability to support skeletal meshes and rigs in-engine just wasnt there so tried to find a creative solution to still let me have animations in-game.
@MjTheHunter Keep learning, adapting, and moving forward. Just force yourself to keep growing. Even failure serves to make you a better dev. Im not the same dev I was a year ago. And a year from now I'll be different still. So I tune out the noise and just keep incrementally improving.
Spent the weekend expanding the vertex anim texture system in my custom game engine. Meshes can now share the same exr file and define different clips (start/end frame), fps, set looping, etc. The last main hurdle was getting shadows updating right, its finally coming together!
@3rdWorldGameDev Sorry! Vertex animation texture. Essentially a texture (exr format) stores all the vertex animation in it. Its sampled and used to modify the mesh to animate it.
For the past ~200 days I've been learning how to build my very own game engine. From the first pixel on screen to now, its been the most exciting ride of my game dev career so far.
Thank you for following, for giving feedback and ideas. I hope you are ready for an adventure!
@Holianum Good luck! I personally decided to pas on it, and just do art-directed time of day/weather as I think it would be really hard to tackle. Curious to see what you come up!
I'd like to expand my engine to have a full CRT bezel effect, so my first step is sampling the raw scene around the edge and extending it with reinhard compression and exponential falloff. Its a work in progress, but should help make it feel more physical and have a nice glow.
Its a rough WIP but I'm thinking it will hopefully give me the effect I want as I start adding more to it. Took a lot of time to actually wrap my head around how to do this properly.