Windows Warp3D - Beta Version Out Now!

Joe Ellis

Member
Warp3D is a game engine for gamemaker, written entirely in gml, that gives you all the things you need to make a 3d game.

It's features include:
  • A level editor (sandbox\drag & drop style)
  • A model editor with a hands-on approach and a wide variety of functions.
  • A rendering system, including batching and support for any shader compatible with gm.
  • A full working example game, with code & objects for enemies, items, projectiles, moving platforms..
  • Intelligent resource handling system which loads & unloads resources when needed.
  • Supports obj model import (And more coming soon...)
  • Material handling (part of the batching system which groups sets of shader uniforms)
  • Realtime editing of entities, with the ability to activate them during editing a level. (Which gives you instant results when tweaking variables) (The level editor gives access\editing to all variables for each instance\entity)
You can also see my youtube channel which shows a ton of footage of the development of Warp3D and it's features :D
https://www.youtube.com/channel/UCCQmqCiIoL4t4mo8o1dqOeQ

Warp3D is currently still in Beta, so buying it now should just be thought of as testing it out and learning how to use it, although the majority of the program is set in stone at this point. But I just want to add this note as a warning that it's not completely finished yet, so you'll have to stay in the loop with updates :)

You can buy it here:
https://joemotion.itch.io/warp3d

Also this is the link to download the manual:
https://drive.google.com/file/d/1uyJjisEQMRaMPjdI-LFsh9NplhHvI_jF/view?usp=shari...
The manual is only partly written so far, but I'm going to keep re uploading every few days whenever I add stuff.. I hope it can give you at least some important info for now..
 
Last edited:

TheSnidr

Heavy metal viking dentist
GMC Elder
Not much to go off of here. Got any more info about your program? What does it do?

Edit:
Ahh, there's more info in the first post now! This looks incredibly useful! Can't wait to play around with it!
 
Last edited:
M

Misu

Guest
Ok before someone very specific in this community comes back and mentions octree and show off share his work in here, Im gonna provide my advice.

Since you doing collision using basic primitive forms like collision_sphere_mesh and collision_bbox_mesh, which is very neat and easy on the performance, it is also important to know that many people would also want to make a 3D game as an open world genre. Open world games can be highly heavy on collision checking. In this case, octree collision is required to better improve the performance on either open world games, or games with accurate physics collision. HOWEVER, if someone is making a very simple game that involves a tiny space of the world, it is not really bright to use octree (even though it will work) but its mostly because octree works heavier on processing than a simple primitive collision system. Now my suggestion is to have BOTH techniques as optional choice for better flexibility on editing and building the 3D game. Octree is quite simple but can be tricky to program it right. You should look it up on google to understand better what it is before making it. Hope everything goes well on this project :)
 
This looks pretty sweet man, could you post some videos of it in action? If you don't have it already an idea would be to include the ability to do vertex morph animation, since it is preferable for certain 3D effects.

I'm a 3D person myself, been working with it in game maker for ages, so it's nice to see more people come along who like to challange themselves with 3D in Game Maker.
 

Joe Ellis

Member
@Misu Cheers, I didnt mention each collision mesh is split into a grid, each cell containing triangles that intersect it, so each instance will only check a few triangles at a time.
I will probably implement octrees at some point though.

@RichHopelessComposer & @thestolenbattenberg Unfortunateley I havent got any videos, and I've only got a very few recent screenshots that I'm happy to show, as the model editor only really came into action last week, but I will upload any new stuff that happens from now on.
 

Joe Ellis

Member
@thestolenbattenberg Yes, it does support vertex morphing, each vertex keyframe animation can be compiled into a strip of vertex buffers, each containing 2 frames to morph between, it can contain 2 sets of every attribute if required but by default just morphs positions & normals.
 

CMAllen

Member
If you can get direct support for importing from major 3d software packages (like Blender, Max, or Maya) and all their major features (UVs, textures, morphs, bones, rigging), you'll be in an interesting position.
 

Joe Ellis

Member
@CMAllen it will have full fbx importing \ exporting with all the major features and also material settings, it uses a dll containing all the required functions, which is complete and working but the gui\editor itself only has the basics sorted so far (normals, uvs, textures & bones) but all the other features will be added before release.

I do have a few pictures of an imported Spyro level, but I'm not sure I'm allowed to post it here as its from a copyrighted game.
 
Last edited:
@CMAllen it will have full fbx importing \ exporting with all the major features and also material settings, it uses a dll containing all the required functions, which is complete and working but the gui\editor itself only has the basics sorted so far (normals, uvs, textures & bones) but all the other features will be added before release.

I do have a few pictures of an imported Spyro level, but I'm not sure I'm allowed to post it here as its from a copyrighted game.
Post it! People post material like that all the time for test engines/games. It's no big deal. If you go through the WIP forum here, you'll see stuff like that everywhere. =)
 
G

Gabe the Dead Fish

Guest
Nice! Will you have any tutorials on how to use this?

Also, is this only for Game Maker 2 or does it work for the original GM?
 

CMAllen

Member
@CMAllen it will have full fbx importing \ exporting with all the major features and also material settings, it uses a dll containing all the required functions, which is complete and working but the gui\editor itself only has the basics sorted so far (normals, uvs, textures & bones) but all the other features will be added before release.

I do have a few pictures of an imported Spyro level, but I'm not sure I'm allowed to post it here as its from a copyrighted game.
Well, what about animations? Do those need to be created inside your tool, or are they imported as part of 3d model's rig?
 

Joe Ellis

Member
Nice! Will you have any tutorials on how to use this?

Also, is this only for Game Maker 2 or does it work for the original GM?
I'm making it in 1.4 cus 2 wasnt out when I started, I'm gonna port it into 2 once its finished and both will be available.

And yeah, I'm gonna make a youtube channel with tutorials for as much stuff as I can, plus a manual.
 
O

orSQUADstra

Guest
Some realtime shadow mapping:




These pics are just from the test project while i was developing them, I'm hoping to implement them into the editor pretty soon.
That looks great! May I ask how much FPS you're getting with it though?
 

Joe Ellis

Member
That looks great! May I ask how much FPS you're getting with it though?
Thanks, strangely 3 - 4 thousand fps_real, earlier attempts were alot slower but I kept improving it.
I do need to test it in a busy game though...

My computer is pretty average I think, I bought it about 3 years ago for £400,

Graphics card is AMD Radeon R7 with 4gb video ram
 
G

george_a3iristos

Guest
It's interesting! It's amazing watching people develop additional stuff for gm. I'm gonna test it today
 
M

Misu

Guest
Its cool. Was gonna recommend a technique on smoothing normals but I believe my technique is too heavy on processing. Im still searching for better alternatives on performing smooth normal factors.
 
M

Misu

Guest
Warp 3D sounds nice.

Also try not to double post. If you need to add something you forgot and your post is happen to be the last post made, just edit your previous post instead.
 

Joe Ellis

Member
I've made a shader that creates realtime mesh based shadows with softening \ anti-aliasing :)



Its very fast & efficient, but here is one problem with it, the max number triangles casting shadow is
only 73,
this is due to them being passed into the shader as a uniform array and directx9 only allowing a certain amount of uniforms at a time,
so it cant be used for precise silohette shadows from characters, they'd have to use a lowpoly shape instead (which might look good in a cell shaded or cartoony game)

while 73 might sound a small number, it actually means 73 per model rendered, and you'd never need this many if the shadows were from big objects like buildings,
so I'm planning on splitting the "shadow meshes" into smaller groups where objects only check the triangles that are going to cast shadow on them in that area,
which will allow a whole level to use them.

This technique can also be mixed with shadow mapping, which would allow entities to cast precise shadows.

But.. it looks great though right?
 
Last edited:

lolslayer

Member
Are you sure that those are stencil shadows? Because the stencil buffer is impossible to access in gamemaker without extensions
 

Joe Ellis

Member
Oh sorry I didn't realize they have to use the stencil buffer, I just call them stencil if they're hard and don't use shadow mapping, I'll change the description so its not misleading.
 
Top