• Hey Guest! Ever feel like entering a Game Jam, but the time limit is always too much pressure? We get it... You lead a hectic life and dedicating 3 whole days to make a game just doesn't work for you! So, why not enter the GMC SLOW JAM? Take your time! Kick back and make your game over 4 months! Interested? Then just click here!
  • Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Discussion Improved 3D support (animation blending/bones/rigging)

M

Majatek

Guest
While I don't expect GameMaker to ever reach parity with Unity3D (it's just not feasible, and should be avoided as the two products have difference consumer bases/target demographics), the 3D aspect of GameMaker Studio is extremely lacking to the point of actively making it more difficult for developers to make their desired projects.

The basic fundamentals for game logic and rendering can be developed by (and sold to) the users, but without a framework (ie: animation trees), the required development skill curve ramps far too quickly and enormously for an independent developer to really be able to make anything.

I apologise if this is a feature that is often requested, but I feel that it's a needed subject to bring up lest more and more developers either end up over-reaching with trying to work around the limitations, or outright abandoning projects due to the impossibility of the scope that requires features that really should be a standard by now. GameMaker Studio supports pixel shaders & compiling binaries for different platforms, so why stop there?

tl;dr: Animation trees and/or animation blending is a simple needed feature that would add a lot of flexibility.
 

mMcFab

Member
I seriously doubt there's going to be any decent built-in 3D animation support.
I think Russel mention potentially supporting FBX, but then I don't know if he has seen the nightmare that is the FBX SDK. So maybe there will be at least some kind of standard format support.
Anyway, yeah

Morph targets are definitely an option, so check that first link @Blingdom posted.

At the moment, I'm working on an extension/tool that uses Assimp to convert models to a nice buffer format for cross platform 3D models with bones and smooth animation + multi-animation blending. I was originally going to make it for 1.X, but I've figured I'll update it and make it GMS2 exclusive. It works completely right now, I just need to update/optimise it a little more and maybe shift some of the CPU load to a DLL. I reckon I could release it side by side with the full release of GMS2 (assuming the desktop beta isn't actually the same thing as the beta and allows extensions)
 
Last edited:

Jobo

Member
GMC Elder
GameMaker Studio is a 2D game engine. That is why 3D integration is "extremely lacking". If you want to make a 3D project, use a 3D game engine. While it is entirely possible to make a 3D game in GameMaker Studio, it's not very enticing to do so - as you've said.

Please note that this is not an official response, and nothing I say anywhere ever will be an official response...
 
M

Majatek

Guest
Primarily, Game Maker is a 2D game engine, but it does support 3D (albeit, in a limited format) so I don't think it needs something like whole 3D world editors, for example. That'd be going too far for what it's aiming to do.

It's more of a creature comfort sorta thing, but it looks like what I said about functionality made by (and sold to) the users is already a work in progress with MaddeMichael in particular! I just hope it's not an OS-specific thing.
 

mMcFab

Member
I just hope it's not an OS-specific thing.
Well, the coverter/tweaker tool I'm working on will be Windows-only (until I get a Mac maybe), but after that, it should work on all platforms - I export to a custom buffer format that GM should be able to load on all platforms, then all the functionality is GML, hence, it shouldn't end up OS-specific. All the GML stuff works and it's technically minimum-feature complete, I just need to adjust some things to make it easier for the end-user.
Though I am thinking of making platform-specific extensions/DLLs as well to boost performance (over 60 animated bones drops real FPS below 300 on my machine which normally sits around 3000, pretty sure I'm as optimised as possilbe on the GML side).
 
Top