Graphics Making HD Art at a smaller size?

Hey everyone. I'm in a little bit of a pickle. So the thing is my Game runs at a base resolution of 400x225. However i'd like for the Artwork aka cutscenes and such to be in HD. My game allows changeable resolutions and fullscreen accommodates all screen sizes/types and never loses quality and such on pixel art. What I am trying to achieve is to make HD art appear HD no matter the size. The thing is i'd have to resize all my artwork but it becomes pixelated. I'm wondering if there is a method i can do to keep the HD artwork but not have to make it super big to save Texture page memory.
 

JackTurbo

Member
I'm not sure you understand what HD means...

HD art by definition is high resolution. If you lower the number of pixels it will get pixelated, that is just the nature of raster based art. Either up your resolution or settle for a somewhat pixelated look.

If you were to go with say 960x540 that would give you a nice hi-bit pixel style on most (16:9) screens. Which might be the sort of compromise that you're looking for?

Or you could consider vector art, but that brings a whole other set of headaches into the equation.
 
Last edited:

RangerX

Member
The resolution of your image IS the number of pixels used to represent it on screen. And so is your game resolution. So you can't have both buddy. You can't magically make an HD image stay HD while there's less pixels to draw it. It therefore become "pixelated" as you put it.

Now your question is, how does games like Shantae are pulling it off? Well, the game is actually as much high res as the cut scene characters but the "in-game" graphics are made to LOOK low res.
 
I'm not sure you understand what HD means...

HD art by definition is high resolution. If you lower the number of pixels it will get pixelated, that is just the nature of raster based art. Either up your resolution or settle for a somewhat pixelated look.

If you were to go with say 960x540 that would give you a nice hi-bit pixel style on most (16:9) screens. Which might be the sort of compromise that you're looking for?

Or you could consider vector art, but that brings a whole other set of headaches into the equation.
The resolution of your image IS the number of pixels used to represent it on screen. And so is your game resolution. So you can't have both buddy. You can't magically make an HD image stay HD while there's less pixels to draw it. It therefore become "pixelated" as you put it.

Now your question is, how does games like Shantae are pulling it off? Well, the game is actually as much high res as the cut scene characters but the "in-game" graphics are made to LOOK low res.

Thanks for both your replies. What i am trying to get at is this.

https://imgur.com/a/BlfM8

notice how the game even though in pixels the mugshots and dialog is HD? But this game was recorded on the Switch, and even when switching between the Switch Screen to the TV it stays in HD artwork. I dont care to much for the pixel art, i'm just trying to display artwork and such in HD, if it accommodates for HD on the switch and HD on the TV that must mean that its being scaled, but its still being maintained in HD.
 
Last edited:

RangerX

Member
This means exactly what I explained. The resolution of this game is high. High res enough so that text below appears as smooth as a babie's butt.
And why is the main character pixel style? Because is drawn in low res but scaled up in high res when its an asset in the game.
 

Khao

Member
You can actually draw things on the screen at a different resolution than the rest of the game by using the Draw GUI events. You don't need to rescale the entire game to accomplish this. I've personally done this before, with a game that ran at a resolution of 640x360, but had a GUI displayed in 1920x1080. I didn't have to rescale anything. In fact, I did it by complete accident.

You're gonna want to look into functions such as display_set_gui_size, but if you want something like that screenshot you posted, the Draw GUI event is absolutely your friend.
 
This means exactly what I explained. The resolution of this game is high. High res enough so that text below appears as smooth as a babie's butt.
And why is the main character pixel style? Because is drawn in low res but scaled up in high res when its an asset in the game.
No offense but this sounds very vague... here is the thing, this game WAS MADE for the 3DS screen size, all they did was upscale it and changed the Mugshots and nothing else. Which in the 3DS they used a lower res mugshot, but due to the capabilities of the switch they made it in HD. My question now is how big do i realistically need to make my mugshots without taking a toll on the Texture memory.

You can actually draw things on the screen at a different resolution than the rest of the game by using the Draw GUI events. You don't need to rescale the entire game to accomplish this. I've personally done this before, with a game that ran at a resolution of 640x360, but had a GUI displayed in 1920x1080. I didn't have to rescale anything. In fact, I did it by complete accident.

You're gonna want to look into functions such as display_set_gui_size, but if you want something like that screenshot you posted, the Draw GUI event is absolutely your friend.
See this seems more like a logical choice, i had already assumed this, but the issue with that is again realistically how big do i have to make the mugshots and cutscene artwork crisp. You're telling me to draw it at a 1920x1080 but do the artwork have to be that big, and if so doesn't that just put more of a stress on the Texture Page memory? This is the current problem i am trying to figure out, i want to make sure they aren't to big, there's going to be tons of mugshots and i fear that it may screw with the Texture swapping.
 

RangerX

Member
No offense but this sounds very vague... here is the thing, this game WAS MADE for the 3DS screen size, all they did was upscale it and changed the Mugshots and nothing else. Which in the 3DS they used a lower res mugshot, but due to the capabilities of the switch they made it in HD. My question now is how big do i realistically need to make my mugshots without taking a toll on the Texture memory.
Exactly, that's what I am trying to explain to you. The smaller graphics (created small for the NDS screen originally) are scaled up and rendered in high res. New stuff is rendered directly in high res. I don't know how to explain it more. At least the other poster gave you a technical way of doing it while I was trying to make you understand.
 
Exactly, that's what I am trying to explain to you. The smaller graphics (created small for the NDS screen originally) are scaled up and rendered in high res. New stuff is rendered directly in high res. I don't know how to explain it more. At least the other poster gave you a technical way of doing it while I was trying to make you understand.
Hmm i think i know what you mean, so basically.
1. Create My sprites based on the 400x225
2. Scale it up to lets say the new size aka NSwitch screen (Assuming GM ever has it) aka the New default.
3. Create new HD Mugshots that accommodates for the size onward from the new default.

the issue is really the large Texture pages... so im assuming that i'd have to get it near/close HD as I can then?
 

JackTurbo

Member
What's your target platform? If it's pc, then you're probably being a bit alarmist in regards to texture pages.

Anyway I'd also suggest going low res for your game layer and hires for your gui layer and using relevantly sized sprites for each. As for how big do assets need to be? - well thats pretty simple really.

If you're going for a 1080 gui layer, then looking at the character portrait in your example I'd say that mug shot would be around 300x400px or there about. If you're using 2048 texture pages then you'd fit plenty of these onto a single texture page (although if you're targeting PC you could certainly go bigger still if necessary) . Also because of how the drawing pipeline works, everything drawn to the gui layer is done last, so this already will help prevent too many swaps, as the game wont be switching back and forth between game and gui focused texture pages.
 
What's your target platform? If it's pc, then you're probably being a bit alarmist in regards to texture pages.

Anyway I'd also suggest going low res for your game layer and hires for your gui layer and using relevantly sized sprites for each. As for how big do assets need to be? - well thats pretty simple really.

If you're going for a 1080 gui layer, then looking at the character portrait in your example I'd say that mug shot would be around 300x400px or there about. If you're using 2048 texture pages then you'd fit plenty of these onto a single texture page (although if you're targeting PC you could certainly go bigger still if necessary) . Also because of how the drawing pipeline works, everything drawn to the gui layer is done last, so this already will help prevent too many swaps, as the game wont be switching back and forth between game and gui focused texture pages.
Currently PC yes, but i guess i want to prepare and plan for the future as well, then again HD art looks much better and cleaner than pixelated scenes, it just adds onto the experience. Also i haven't really separated my texture pages into groups, i heard that it's not really always necessary and that it may do more harm than good in the long run. I think I understand how i should go about it. Although yes i am a bit afraid of the texture page swaps, probably due to a bad experience in the past GMS edition. Granted the MugShots only happen through dialog and not really when the gameplay is happening anyways
 

The-any-Key

Member
Thanks for both your replies. What i am trying to get at is this.

https://imgur.com/a/BlfM8
Nintendo switch use 1280 x 720 to 1920x1080 pixels on the TV and 1280 x 720 on the hand unit.

Switch Screen to the TV it stays in HD artwork
Depends on the size of the TV. Ex if you got a 32" it will look ok when you sit a 1.5 meter away and see it as HD. But if you got a 75" it will look bad if you sit a 1.5 meter away. Because you will see the pixels and experience bad quality and don't experience it as HD.
But if you sit 3.3 meter from the 100" TV the image will be just as fine as the 32" and be in HD. This is because you view the 75" screen as large as the 32" in your eye view.

You can try this at home. Take a low resolution image on your phone. Ex 800x600. And send it to your PC (hopefully you got a 21" screen at home else you need a 640x480 picture). Display it in full screen on the PC (picture will look really bad) and at the same time on your phone (picture may look somewhat bad). Now hold your phone in one arm and look at the phone and the PC screen at the same time and move your phone back or forth so you see the image as nice as possible like you experience "HD" (so no pixels) on the picture on your phone. Now while holding your phone in the same distance to your eyes. Move yourself back or forth until the PC screen is as large as your phone screen (phone screen and PC screen take up the same degrees of your visual view). Now the PC is also in "HD".

Conclusion. So size of screen, distance to screen, resolution on the screen need to match up. HD is a relative definition.

How do Nintendo do it then. You now understand that Nintendo use a resolution at 1280 x 720. So they draw the cut-scenes in hd art on this at a scale of 1:1 to make it appear hd on certain distances and screensizes. Then they have some pixel art as game play. If you draw pixel art on a 1280 x 720 in a scale of 1:1 they will appear as hd and not as pixelart and be very small. So you need to move the pixelart towards you, scale it up to ex 4:1. Just like you moved closer to the pc screen. You need to disable interpolate between pixels and make it scale using nearest neighbour. Now you have hd and pixelart on the same screen.

 
Last edited:
Top