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

Graphics 2.5D 'Outrun' style racing in Game Maker - possible?

K

Karl Burnett

Guest
Hi guys and gals,

I'm new here and I'm about to start working on my first ever Game Maker project. I really love pseudo 3D racers like Outrun and Chase HQ and I'd like to do something like this for my next game.

I have no idea where to start with Game Maker - is it possible to warp the screen at all? Or draw line by line? Here are a couple of demos I made that show what I'm after. One was made in Unity, shifting quads as the lines of roads in the game (I've also done it by bending a plane but it's too smooth to look retro), and the other one was written in C for the Sega Mega Drive/Genesis.



As I said, I'm totally unfamiliar with Game Maker and couldn't find anything on this subject so any help appreciated :)
 

YellowAfterlife

ᴏɴʟɪɴᴇ ᴍᴜʟᴛɪᴘʟᴀʏᴇʀ
Forum Staff
Moderator
I just wasn't sure how to go about it in Game Maker
Strips from images can be drawn via draw_sprite_part_ext or draw_background_part_ext. Scaled images themselves can be draw via draw_sprite_ext\draw_background_ext.
Can use primitives (draw_primitive_) or vertex buffers to create triangulated terrain, but drawing strips shouldn't be an issue unless running fairly high resolution on fairly poor hardware.
 

Yal

🐧 *penguin noises*
GMC Elder
If you're not afraid to dig into actual 3D, you might be interested in my racing game engine. You literally draw two paths in the path editor (one for XY coordinates and one for the Z coordinate) and that's a racetrack. The latest version even lets you design hovercar models by using a bunch of paths that depict sections of the cars, so you don't need to learn a lot about 3D modelling.
https://yaru.itch.io/simple-racing-engine

Here's a screenie:
 
K

Karl Burnett

Guest
Strips from images can be drawn via draw_sprite_part_ext or draw_background_part_ext. Scaled images themselves can be draw via draw_sprite_ext\draw_background_ext.
Can use primitives (draw_primitive_) or vertex buffers to create triangulated terrain, but drawing strips shouldn't be an issue unless running fairly high resolution on fairly poor hardware.
Awesome! Exactly what I need. Thanks heaps :)

If you're not afraid to dig into actual 3D, you might be interested in my racing game engine. You literally draw two paths in the path editor (one for XY coordinates and one for the Z coordinate) and that's a racetrack. The latest version even lets you design hovercar models by using a bunch of paths that depict sections of the cars, so you don't need to learn a lot about 3D modelling.
https://yaru.itch.io/simple-racing-engine

Here's a screenie:
Very cool. I didn't know 3D was possible with Game Maker!
I'm leaving 3D behind though. I've been designing games in Unity for the last 5-6 years (both professionally and as a hobby, mainly the latter) and I want to get back into 2D stuff, which is why I'm crossing to Game Maker. I'm really liking it so far and all I've done is watch a few tutorials. lol. I love how scripting is implemented - keeps it all nice and organised :)

EDIT: I just discovered the manual. lol. WAY more powerful that I thought. This is gonna be fun :)
 
Last edited by a moderator:

Yal

🐧 *penguin noises*
GMC Elder
EDIT: I just discovered the manual. lol. WAY more powerful that I thought. This is gonna be fun :)
More or less anyone you ask will reply "yes, it's possible to do in GM" about anything :p
Or, well, you're limited by your own imagination, skill, and the laws of physics, but that's still a pretty big possibility space to explore.

It's not the most optimized power-wise (at least not GMS1 which is mainly interpreted, the YYC compiler is a bit unreliable but turns stuff into C++ bytecode that runs considerably faster) but as long as you keep the heavy computations to a reasonable level it shouldn't be too limiting. The debugger has a profiler, and when running the game in debug mode there's also this visual representation of how CPU time is spent with different colors for texture batches, step event code, draw event processing and so on, so there's a bunch of ways to spot bottlenecks in time. GMS2 is still in beta as far as I know, and I've stopped programming in it for the moment because of lots of slightly annoying interface quirks, but it definitely looks promising with things like proper tilemap support and whatnot, especially for 2D games both retro and modern. Keep an eye out for it if you're using GMS1. (There's going to be backwards compability with GMS1 projects, and the deprecated functions and things to think about has already been made public)
 
K

Karl Burnett

Guest
More or less anyone you ask will reply "yes, it's possible to do in GM" about anything :p
Or, well, you're limited by your own imagination, skill, and the laws of physics, but that's still a pretty big possibility space to explore.

It's not the most optimized power-wise (at least not GMS1 which is mainly interpreted, the YYC compiler is a bit unreliable but turns stuff into C++ bytecode that runs considerably faster) but as long as you keep the heavy computations to a reasonable level it shouldn't be too limiting. The debugger has a profiler, and when running the game in debug mode there's also this visual representation of how CPU time is spent with different colors for texture batches, step event code, draw event processing and so on, so there's a bunch of ways to spot bottlenecks in time. GMS2 is still in beta as far as I know, and I've stopped programming in it for the moment because of lots of slightly annoying interface quirks, but it definitely looks promising with things like proper tilemap support and whatnot, especially for 2D games both retro and modern. Keep an eye out for it if you're using GMS1. (There's going to be backwards compability with GMS1 projects, and the deprecated functions and things to think about has already been made public)
Thanks for all the info. Yeah, I'm using 1.4 at the mo. Just working my way through tutorials. I'm preferring it to Unity already :)
 
Top