Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+1)

I'm on GMS2, however, the way I have it set up is as follows;

  • Room - 64 x 64 px
  • Camera 64 x 64 px
  • Viewport 512 x 512 px

This way your room is physically 64x64 px, the view of that room matches the size directly, then it's scaled up to 8 times the size.

Hopefully that helps.

Do you happen to know what the GMS 1.4 equivalent for Camera would be? 

Unfortunately I don't. I jumped onto Gamemaker in GMS2 so I'm not familiar with the 1.4 build.

I know the camera works by 'viewing' a set area. The viewport itself in GMS2 is the window you actually see. So perhaps there's a way to program in a view of a set area and get that sent to the viewport? Sorry I can't be more help.

Alrighty, thanks though for the thoughts.

Hey, just checking how this setup looks for you with images in motion, because I originally did exactly the same setup with the room and camera at 64x64, but with the viewport at 512x512 and it actually didn't result in a true 64x64 effect.

For example, at the start of my game I have an image scaled x2, and I "Zoom out" by reducing the scale to 1. The zoom out was completely smooth, without the visual distortion you get when you're working with such a small number of pixels. It was as though the image was much higher quality but drawn to look pixelated.

Then I changed the viewport to 64x64 and used "window_set_size()" to set it at 512 x 512 and it resulted in a larger window with a true 64 x 64 screen. Not sure whether this is some strange quirk from how I've done other things in the game, but that ended up making it look a bit more authentic!

To be honest I haven't done any movement based work by using that method yet. I've been mocking up menus etc. with it.

I'll report back tomorrow when I start doing with the artwork and start building he project. I'll definitely keep your method in mind though if it seems to work better!

Interesting thing is I can't seem to see any difference between setting the viewport or using the 'window_set_size()' function as you described. That being said I'm only doing 2D side scrolling with a sprite walk animation. I'm not doing any scaling etc.

I have however used the round() function on the pointer location. That was I get a pixel by pixel grid for the pointer which really adds a lot to the feel.