A downloadable asset pack for Windows, macOS, Linux, and Android

Buy Now$4.99 USD or more

A 3D platform game engine (Game Maker Studio 1.4 source file) that can be used to quickly get a game project up and running. Available in a grid-only version that is highly optimized, and a grid+slope version that has more expensive physics but allows more varied level design!

  • Very fast grid-based collision checking with support for terrain objects when necessary (moving platforms, breakable blocks, etc).
  • Automatically creates a 3D model based of the room objects, further speeding up processing.
  • Uses texture atlases with multiple textures in a single image, letting you completely change a level's feel with a single line of code!
  • Very simple to design levels: simply place placeholder objects in Game Maker's room editor and they get converted to 3D with no additional effort!
  • Example code for fog, HUD display and 3D lighting!
  • Slope version: Use arbitrary collision checking scripts for terrain objects! You can use any script that computes a z value given the x and y position relative to the object's origin, letting you do arbitrarily complex terrain objects such as pyramids and half-spheres.
  • Slope version: Walk up and down slopes smoothly, including jumping from them and landing on them!
  • Slope version: Example slope objects automatically attach to the grid terrain at their start and end points. Make slopes effortlessly!

More information

Published 1 year ago
Tags3D, 3D Platformer, Game engine


Buy Now$4.99 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $4.99 USD. You will get access to the following files:

Source code 61 kB
Source code (with slopes) 64 kB

Download demo

Demo (2 MB)
Demo (with slopes) (2 MB)


Log in with your itch.io account to leave a comment.

Very cool! One thing though: When I place slopes they seem to only randomly work? Like I can place one vertical slope next to a normal terrain that goes to an "up 1" terrain, then another vertical slope from that to an "up 2" terrain, and only the first slope appears?

(Edited 1 time)

I dug into this a bit and I believe I've found what causes it... Z-coordinates are stored in a grid based around 32x32 blocks, so if you accidentally place a slope or a block off this grid, the slopes will get the wrong Z value because the correct cell might not be set (or the slopes access the next cell rather than the appropriate cell). Either make sure your room grid is set to 32x32 when placing terrain, or change the value of the GRIDSIZE_PX macro to 16.


Oh wow, thanks for the super quick reply! Good stuff!

Wouldn't really be good customer support if I let someone wait several weeks for a mistake this simple, now would it? :P

Glad you got it working~