• 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.

 [Opinion/Feat Req] GMS2 needs more 3D


"It's not a 3D game Making Tool!"
"Learn 2 Code!"

Ok, but hear me out? I'm not suggesting that GameMaker become more of a 3D game-making tool at the present. This is something different, and wrapped into stuff YYG is doing right now in the editor.

There's so many successful mobile apps out there right now that have no business being 3D as far as the mechanics go (isometrics, card collecting games, and such). But, in order to get that modern flashy graphics look, they all have about a zillion "little" 3D things in them. Hard to describe without specifics, but basically, I'm talking games where the entire point of the 3D is to just "look better."

A shiny bonus item that "spins" in 3D, for example. A card that flips and spins onto the play area. A loot box with a cool rotating piece and a lid that rotates open...

"But you can make all that in a 3D modelling and animating tool, export the animations as image sequences, and bring it all into GameMaker!"

I know. It's what I've been doing, when needed. But when we imagine doing cool things in 2D games, wouldn't it be neat if we didn't immediately think of using a program that's not GameMaker? What if GameMaker had some kind of...sprite editor...that was capable of allowing for "basic" 3D graphics? I could create and manipulate 3D sequences right inside the software!

GameMaker should not become a 3D modelling package. But, then again, Photoshop definitely isn't either. And it's tremendously handy for setting up 3D-looking images by loading model formats, and by generating simple primatives. In other words, when your 2D sets of images have to look like 3D, it's a whole lot easier to be working with 3D.

Here, sample images:
Made entirely in Photoshop using a circle, a small extrusion, a surface texture, and a bump map.
coins.png ace.png
Again, Photoshop, same method.
peek.png cBall.png
Again, Photoshop, same method plus sphere and pyramid primative.

There's a ridiculous number of possible things to be made using the most absolutely basic 3D tools:
1) Draw something in 2D, then extrude. Rotate / scale / position the model.
2) Set the diffuse image, opacity map image, bump map image, and reflectivity map image for the front face, back face, and "extrusion face" material.
3) Permit a light source to be rotated around the object and a ground plane to catch shadows.

Everything shown above is done within those basic operations, in a matter of minutes.

1) Load a model format. Rotate / scale / position the model.
2) Permit a light source to be rotated around the object and a ground plane to catch shadows.

Of course, Photshop steps it up from there, with live-painting on textures, merging primatives, and so on, but that's getting too far into using the tools for other stuff (like creating assets for a 3D tool). Not needed.

But I'd argue that GMS2 could benefit very, very greatly from being able to load something simple in 3D, or to generate something from a 2D image into 3D, and to then be able to store basic keyframes.

In this way, it would be trivial for the game designer to load up "realistic," nice-looking, modern graphical assets (3D), and to set them up with basic animations from the sprite editor. It's essentially still a 2D game-making process, but we'd see tons more people using slick-looking assets into GameMaker.

We lose tons of 2D games to U***y simply because modern mobile app players expect a "3D look" while playing a 2D game. It's not like GameMaker can't do it--in fact it'd probably be faster to get the 2D mechanics working in GMS and devs need to see this--but the workload for exporting every frame of every asset doing every "flourish" and then importing all of that into sprites seems absurd when you can just drop native 3D assets into something else and be done.

GameMaker needs to be able to create that look--and to animate it! (Look at those gfx above--think about how hard it would be to make those do a 3D rotation in GMS versus Photoshop or U*i*y). We've got a sprite editor, and an animation timeline--I believe GameMaker would benefit immensely from the ability to add "3D" layer(s) to a sprite with a keyframeable timeline per layer.

The gfx don't even need to be rendered in true 3D during runtime, since the purpose here is to use 3D as a tool for creating better-looking, animated assets rather than to make a 3D game. (But you can see how this would double up as ground work in case yyg ever wants to do additional 3D runtime things, too).

If you've got Photoshop and are familiar with the 3D, think about that style of interface, with just this subset of features:
- 2D extrusion, generating an "extrusion face" and a "back face" in addition to the "front face"
- Primative sphere, rectangle, pyramid, cylinder
- One material per "face", with diffuse, opacity, bump, and reflectivity maps for generated objects
- One or two model formats supported for loading
- Settable lighting and ground plane

If you're not familiar with Photoshop, just imagine GMS generating cool image sequences based on 3D graphics.


GMS 2 doesn't need to waste any more time attempting to do what other programs can already do better. Instead it should expedite the UI plugin system so that it's easier to leverage their strengths. If Photoshop is so good at making the effects you described, then that's what GMS 2 should cater to.


GMS 2 doesn't need to waste any more time attempting to do what other programs can already do better
I hate to prove you utterly and completely wrong, but..... are you aware that there are better code editors than GMS2? And better compilers? And better sprite editors? Why should YYG waste more time creating any part of Game Maker Studio, when other programs do each individual component better?

I don't expect it to be instantly obvious--when Photoshop first rolled out 3D, the traditionalist had a field day insulting Adobe for wasting time adding something that other purpose-built tools did far better. The Adobe guys saw it as an opportunity, and now it's a regularly used and commonly accepted feature. "How else would you add 3D text to an image?" and so on.

An interesting suggestion of your own you've made there, and wholly inappropriate. Rather than discuss the merits of my suggestion, it seems you'd prefer to use this topic to advocate for a suggestion of your own. "it should expedite the UI plugin system"? Not a very agreeable practice, hijacking a thread, dismissing the lenghty proposal as a waste of time, then tossing out your own half-formed criticism of an entirely different system in the software.

Samuel Venable

Time Killer
You know, GameMaker actually isn't so bad at making 3D games, the problem is most people who use GameMaker have no experience in 3D so when they try it they almost always suck at it. Look at some of the realtime 3D lighting shaders and whatnot. GameMaker is capable of great 3D. It's the untalented users of the tool who are at fault. You have my vote on this thread. :)


3 libs I would love to see:
1) 3D Collision
2) 3D Model Support (+ import of Vertex Groups and Bone Weights directly assignable to a GMS2 Armature)
3) neatly summarized 3D transformation, rotation, translation handles (local and global)

...that would be incredible.


Heavy metal viking dentist
GMC Elder
The sprite editor could use a major upgrade in general! Your suggestions are very interesting - but also very specialized for a particular kind of game! I believe yyg have decided to leave the sprite editor with too few features since they're not trying to compete with PS or even most free image editors anyway. Why would they add specialized functions for a certain game style when the editor barely has any functions at all? A complete overhaul would be necessary!

That said, GM has everything you need to do stuff like this in real time at decent speeds. I work mostly in 3D with gamemaker.


The sprite editor could use a major upgrade in general!
Yes, definitely! One of the reasons I've come in and proposed this method for generating image assets is because there's indications that YYG is actively willing to add to the sprite editor--might as well try to get in the ideas for modern gfx while they're working on it! I've seen posts from Mike explaining that more filters, features, effects are going to be added, and they've got that survey up, and Russell recently mentioned wanting to see more GMS games with modern gfx instead of mostly pixel games...so I'm hoping that they are examining ways to bring the sprite editor into the future (or present, at least)!

And yes, GMS can do 3D real-time rather decently! (Though I haven't touched it in a few months). But I think that would actually dovetail nicely with basic 3D asset creation in the sprite editor. For any 2D game requiring 3D-looking graphics or 3D pre-set animated movement in a graphic, it could all be baked into a set of sprites of course....or rendered real-time in a game. GMS would have the information required to pull that off, and it would create a powerful way to lean into the 3D capabilities that they've worked so hard to introduce. Devs who are already familiar with using 2D animations "the sprite way" could directly transfer that knowledge into looping animations for 3D "sprites."

At the present, complex lighting, texturing, keyframing ik animations and such are beyond the scope of what makes "sense" in a sprite editor workflow, but even that stuff could be a "maybe down the road" if YYG could get 3D assets into the sprite editor. What I'm suggesting would leave any complex model making and rigging out in the 3D software packages that do it best, but would add the ability to transform those products into an existing GM workflow.

(Maybe I can convince you to write it as a plugin! ;D)


(Maybe I can convince you to write it as a plugin! ;D)
Maybe now you'd understand why I'm so insistent about the UI plugin API? Built-in, user-made or third-party, your suggestion is completely predicated on the ability for people outside YoYo to write UI plugins. Right now only YoYo has that power, and they're overloaded and generally uninterested in 3D.

For 3D to happen in GMS 2, there has to be a way for people who do care to integrate their tools independent of YoYo. And that's what's missing.


Well, not completely. I'd greatly prefer YYG to do it, since they are so insistent upon spending time developing the sprite editor. I know that you feel it's been a waste of their time to develop it, but they did and they are continuing to, so if they are spending the time improving their gaming graphics product, I'd like to see them develop in a direction that more easily produces modern-looking graphics, and in a way that leaves room for data-driven kinds of graphic design and display.

Difference of opinion about time best spent, I suppose, but the way I see it, a third party dev could just as easily write a 3rd party tool--like Photoshop, but with somewhat closer-to-GM-ready-export. If YYG is spending the time on a sprite editor, then I'd like the editor to make the kind of graphics that GMS is lacking (vector and 3D, but I kept it to one in this thread in order to focus on the specific tool set that's needed).