Made this in Godot 3. Majority of the game is written in c++ as a custom module, ie: compiled directly into the engine. We have a fork of godot that has slight tweaks to it. I profile the game using advanced tools and have rewritten several parts of it several times to be optimal. There is basically 0 gdscript running at runtime. The c++ is far more performant than GDExtension/GDNative/C#. The trees are streamed in and out of the viewport as they become visible. All the tree types and snow render from the same spritesheet. The tree types are pooled instead of created & destroyed. The thing that streams the stuff in and out is optimized. The skiers are rendered using a technique called 'SpriteStacking' where 3d voxel art is rendered into a 2d sheet and 'fanned out' to make a pseudo 3d effect. I even cahc spritestacks are optimized, etc. I even go as far as caching the rotation operations to fan those skier sprites out. The .wasm has been stripped down to ~2.7mb. I want to strip it further and get it smaller. Download size is king. Planning on releasing this on a web platform like crazy games or poki and hoping to build ad revenue.
Next steps are to make it so when you past the boundary fence you enter 'back country mode' that just goes forever and a popup tells you how far youve gone, but if you fall, its game over and ski patrol takes you back. I also want to iterate on the chairlift and make the bots 'queue up'. Not sure about if the chairlift is 'fun' or not. I want the mountain to feel like a real ski resort, but nobody wants to wait.
Anyways, this game is still in development, let me know what you think.
replies(2):