2x Graphics for HD Devices?

Get help using Construct 2

Post » Thu Dec 26, 2013 4:07 am

Hi guys

I'm considering using Construct 2 to start porting some of my games to devices.

However, there is one missing feature that is very important to me.

- The automatic loading of HD images on devices

if a device is of a certain resolution (e.g. 2x the size of 480x320) it all load images with the @2x suffix etc.

Corona / Gideros SDK both support this and I was wondering whether there was a way to handle this in Construct or one of the wrappers used to take it to mobiles?

Thank you for your help!Ninjadoodle2013-12-26 04:08:08
B
43
S
21
G
9
Posts: 142
Reputation: 8,928

Post » Thu Dec 26, 2013 5:38 pm

I don't think that it's quite possible to do in Construct 2, however if you're looking at Android you can upload different APKs for each device configuration. This means you would have to maintain two versions of your game, but its something to look at

http://developer.android.com/google/play/publishing/multiple-apks.htmlBiznessMan2013-12-26 17:39:27
B
4
S
1
G
3
Posts: 36
Reputation: 1,147

Post » Thu Dec 26, 2013 5:41 pm

Basically, you can store the sprites in the pool layout, each one sprite has 2 different sizes such as SD and HD.

Then, compare width and height of device, if is less than HD resolution, you do actions to create sprites with SD resolution, otherwise using else you may create sprites with HD resolution.
B
97
S
35
G
29
Posts: 3,139
Reputation: 28,361

Post » Thu Dec 26, 2013 9:15 pm

Android devices cover all manner of pixel ratios. Just a handful of devices in our office cover 1.0, 1.3, 1.5, 2.0, 2.24, and 3.0. Surely you're not going to create different artwork for every possible value? I'd recommend just designing for the highest resolution you want and let C2 scale it.
Scirra Founder
B
387
S
230
G
88
Posts: 24,251
Reputation: 192,454

Post » Fri Dec 27, 2013 3:05 am

Hi Ashley

That's actually the standard way of dealing with different ratios and pixel densities. Don't get me wrong, I absolutely love construct, but I really think this is a very important missing feature.

Most of the top SDK's handle loading assets this way - Corona/Gideros/Stencyl, even Gamesalad as a resolution independence feature that allows you to load HD assets.

You wouldn't necessarily worry about creating 1.2, 1.5, 1.7x assets etc, but you should definitely worry about loading low res graphics on low powered/lo-res devices and loading hi-res assets on high powered/hi-res devices.

So, having at least 2 sets of assets - one SD and one HD would definitely be the way to go.

Trying to run a game designed for 1920x1080 on a 480x320 Android device might not be optimal as far as speed goes and neither would the opposite, as the graphics would look very blurry/pixelated.

The other bonus is that if you decide to update your apps in the future ( as resolutions get higher ) you can just upload higher resolution graphics with a (for example) @8x suffix and the engine will take care of the rest ( only use those graphics if the device is a very high definition TV or tablet ).

If you design your graphics as vectors, then exporting different sets of assets is no issue at all :)

I really think that this would a really good feature for Construct 2 to add as it is currently the best/only way to make sure you graphics look good across a range of devices (short of using vector graphics).Ninjadoodle2013-12-27 03:18:56
B
43
S
21
G
9
Posts: 142
Reputation: 8,928

Post » Fri Dec 27, 2013 3:29 am

So you mean some sort of automatic storage in the image editor that lets you store different quality variants for each frame?
Visual Novel 'Engine' in 100 Events
if you ever have to choose between buying Construct 2 on scirra.com or on Steam, read this: Review
B
22
S
9
G
1
Posts: 787
Reputation: 3,786

Post » Fri Dec 27, 2013 3:41 am

Basically, let's say you have an image of a cat at 128x128 pixels.

This will be the standard lowest version of your asset.

In your images fodder you also include - @2x version (256x256 pixels)

If the device is over a certain resolution ratio, the @2x graphics gets loaded instead of the standard one

(The base device resolution is considered to be 320x480 or 480x320)
B
43
S
21
G
9
Posts: 142
Reputation: 8,928

Post » Fri Dec 27, 2013 3:50 am

Joannesalfa's solution above works well for this.
B
60
S
20
G
56
Posts: 1,077
Reputation: 35,941

Post » Fri Dec 27, 2013 3:56 am

Hi Thank you guys for that!

I was just reading through the topic and trying to understand it :)

Would you guys be able to possibly take a simple screenshot or guide on how I would load a single graphic - SD and HD?

I'm still new to Construct and experimenting, so no really sure how to do the above.

Thank you heaps in advance!
B
43
S
21
G
9
Posts: 142
Reputation: 8,928


Return to How do I....?

Who is online

Users browsing this forum: alextro, Google [Bot], stevenode, Yahoo [Bot] and 3 guests