517 karma · joined April 2, 2019
so not only is it a ton of code to write but it's a lot to debug and test. that said, it's a lot of fun writing your own engine from scratch if you are into that kind of fun. but if you want to make a game, why write the engine also?
More of my size code demos... https://github.com/KilledByAPixel/TinyCode
An endless race in the sky inspired by 90's 3D games like sky roads, marble madness, and sonic 3d. My goal was to create a dreamlike experience with full resolution full speed graphics that would be easy to pick up and play.
Having worked on much more complex stuff, it's a lot of fun to start a new project from scratch and make an tiny 3D rendering system. There are a lot of fun challenges trying to fit something in this small of a space that looks cool and runs well. The contest goes until July 19, plenty of time to make something, and there's even a WebGL category.
Features - 3D level rendering system - 3D player sphere with shadow - colorful sky gradient with stars - procedurally generated levels - level increases in difficulty - mouse controls
The jam was focused on AI-assisted browser game development: make a free HTML5 game, use AI heavily somewhere in the process, and submit something playable. Any tools were allowed for code, art, music, design, sound, or other parts of development.
Everything was written from scratch this time including a custom Webgl2 rendering pipeline. The graphics are all created procedurally when the game starts including trees, rocks, signs, and even the track itself!
The code is up on GitHub for people to learn from, I may clean up the source and release with an open source license if enough people are interested. I hope you like it.
It is possible to save a little more space by putting it in the canvas onclick event.
More info: https://lovebyte.party/ Youtube: https://www.youtube.com/@Lovebytedemoparty
With this engine, and most modern 3d engines you apply a transform to 3d world space points to get a screen space point. You also need to sort objects by distance or use a z buffer.
As a dev, one problem I saw often is UE4 is massive, well over a hundred meg for just the base engine.