A downloadable asset pack for Windows

Buy Now$14.99 USD or more

MariaEngine 64 is a platformer engine perfect for that N64 / PS1 look! Modern shaders put a little extra flair in the graphics while the low-poly models are easy to work with even without 3D art skills. Whether you want to make the next smash-hit '90s throwback collectathon or just fiddle around learning how 3D works, it's the perfect way to finally get some 3D functionality into Game Maker!

Built-in Level Editor

Make levels from simple building blocks right in the game while developing the project, with access to all the object data and all the effects you'll see when loading the levels in the actual game!

The editor is handled by normal Game Maker objects and can easily be extended if you need custom features for your project.

The editor is included in the demo! Try it out and get a feel for it, you can make as many levels as you want! (Remember to place a player actor in the level or you'll just see a black screen when test-playing them)

Procedurally Generated 3D Models

The skeletal animation system from my SoulsVania engine returns, this time retrofitted for 3D! Instead of flat sprites, the new system strings together a number of 3D models using basic trigonometry. Easily make customizable characters, add enemy variety, and reuse animations between characters!

But that's not all! You don't even need to bother making 3D models in Blender or Maya - the game can generate them for you! A system using Game Maker paths to define shapes of objects lets you generate a new body part (or other model) with one line of code! Just give the script a list of angles and a list of paths describing the shape for those angles, and you're golden!

There's even dynamically rendered liquids using a separate GL ES shader! Just draw a flat plane and it will be turned into animated waves with four layers of mixed textures to simulate depth and light reflections! Works for water, lava, anything you want as long as it's a liquid!

Dynamic Volumetric 3D Lightning

Always scrambling to find ways to squeeze the most out of Game Maker's built-in measly 8 lights? The Maria64 lightning system allows an infinite number of lights in theory! (The engine is set to 32 lights by default for a balance between speed and flashiness, but the only limitation for this number is your players' GPU power)

Lighting uses a hybrid approach with volumetric light polygons, approximated 2D shadow casting in world space, and per-voxel trigonometry checks in a GL ES shader to combine buttery smooth illumination with crisp pixel shadows and soft dusty light volumes. GL ES' data throughput limitations are circumvented by using data encoded as colors on a texture.

Intelligent 3D Camera

The camera tries to avoid obstacles ahead of time using collision raycasts, align itself with sloped terrain to help you judge distance, gradually turn around to face the direction you're moving in, and more! Many best-practices are implemented in the camera behavior.

Lightning-Fast 3D Collision Checking

Collision checking based around simple geometry checks and a pre-buffered hash map for maximal speed ensures you can squeeze as much action into the game as possible! The main level geometry is all combined into a single 3D model, letting you have only a very small zone active at any time while still having  practically infinite draw distance with no slowdown!

Highly Compatible

Available both as a GMS1.4 source and a GMS2 source! Even if you haven't moved on to GMS2 yet, you'll be able to benefit from the new shaders and vertex buffer system!

Shaders are written in GL ES 1.0 for maximal compatibility - the 3D effects might even work on mobile devices! (Lower-end mobile devices might not support enough texture uniforms for some of the effects. Use with caution.)

StatusReleased
CategoryAssets
Rating
(1)
AuthorYal

Purchase

Buy Now$14.99 USD or more

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

Source code (GMS 2.2) 8 MB
Source code (GMS 1.4) 7 MB
Animation pose sources 3 kB

Download demo

Download
Demo (GMS2.2) 5 MB
Download
Demo (GMS1.4) 6 MB
Download
EULA 22 kB

Comments

Log in with itch.io to leave a comment.

(+1)

This is incredible, and will take a bit for me to decipher but hats off to you!


What's been your experience with FPS? I'm getting 15-20 FPS on the demo level.

Everything runs in stable 60fps on my end, I wouldn't ship something that I know is broken. But it's definitely demanding a lot of resources.

One of the biggest CPU and GPU bottlenecks is the custom skeletal animation system (re-computing the coordinates for every limb is pretty expensive and then there's dozens of draw calls that each require rebuilding the world matrix), so I'd recommend getting something like Sndir's Model Format instead if you can (which is free!). My skeletal animation system is a bit of a disappointment because of the performance issues and inherent limitations, so I mostly intend it to be a placeholder so the asset can have characters at all... GM's built-in 3D modelling support is very limited to begin with, and I have no experience with 3D modelling tools, but I know how to use paths and trigonometry so I stick to my guns :P

The second biggest resource hog is me using a sort-of-pillbox-style hitbox for the player, doing a lot of collision checks to make sure they work smoothly with all sorts of terrain... but the collision amount gets increased a lot because I essentially do one raycast along every axis to handle movement, so this balloons exponentially in performance requirements. Depending on level architecture, you could get away with a much simpler hitbox which would improve this.

If you're interested in the gritty details, here's the results of the profiling I did of the game's performance:


(The control draw event isn't expanded, but essentially the bulk of it is drawing character models)

Another fine asset from Yal! I just wanted to let you know I am also getting 15-20 FPS on the provided demo level in the GM:S 1.4 version. The GM:S 2 version ran around 25-30 FPS. I have a GTX 1070 gpu and a great processor so my rig shouldn't be an issue.  Probably just the limitations of Game Maker in 3d I would assume.  Keep up the amazing work!

Interesting... I'm on a GTX 1060 / i5-8300 rig these days so I would've expected your performance to be better than mine. (Bigger numbers means better hardware, right...?)

At least the "GMS2 has better performance than GMS1" result is congruent with my testing - it's not as noticeable when both run relatively stable 60fps but the difference is gigantic - something like 500 fps_real for GMS1 vs 800 fps_real for GMS2.

Hoping for jiggly Z-Buffer!

(+1)

The hits keep coming!

I'll see if I can integrate a few features here into the FPS Engine.
That should be an interesting experiment. :)

(+2)

WOW Yal.

(+3)

Oh my gawd. Instant buy just to support awesome works like this.