The SDL forums have moved to discourse.libsdl.org.
This is just a read-only archive of the previous forums, to keep old links working.


SDL Forum Index
SDL
Simple Directmedia Layer Forums
Best Method Dealing With Multiple Android Screens?
JeZ-l-Lee


Joined: 20 Sep 2009
Posts: 572
Location: Long Island, New York, United States, Earth
Hi,

We are working on a new Android O.S. 2D video game called: "TetriAttack Armageddon".

We are really stuck on how to best support all the different Android screen resolutions and aspect ratios.
Our current project creates a standard desktop 640x480 display window which does not look so good on our devices.

It's a puzzle game with a set size playfield.
We would not want to change the playfield size.
We currently scale the display to the size of the device's resolution but it looks pretty awful.

Can someone please make a great suggestion or point us to some website that describes the best method?
Thanks!
Best Method Dealing With Multiple Android Screens?
David Olofson
Guest

Most displays these days, on PCs, consoles (TVs), phones and whatnot,
have a 16:9 aspect ratio. 640x480 (which is 4:3) is pretty much an
obsolete resolution, and will cause problems almost everywhere at this
point.

I'd recommend designing for 16:9 for all platforms. If you're doing
pixel art or similar, 320x180, 480x270, and 640x360 are nice and handy
resolutions that can be scaled by integer factors to fit most screens
on current devices.

For crisp "HD" graphics, you should basically use the highest
resolution you can afford in terms of space - but rest assured that
someone will always have a display that will get blur due to
upscaling. Wink (Mine is 3840x2160, BTW. And no, it's not HiDPI; just a
very large screen.)

If you're doing structured graphics, you can any random units, but
it's definitely an advantage if things end up pixel aligned when
rendered, on way or another. (Either pick a "pixel art" resolution and
scale by integer factors, or nudge relevant objects to integer
positions after scaling.) Just make sure you design for an 16:9 aspect
ratio, or make the design fully adaptive.

On Tue, Mar 29, 2016 at 2:59 AM, JeZ-l-Lee
wrote:
Quote:
Hi,

We are working on a new Android O.S. 2D video game called: "TetriAttack
Armageddon".

We are really stuck on how to best support all the different Android screen
resolutions and aspect ratios.
Our current project creates a standard desktop 640x480 display window which
does not look so good on our devices.

It's a puzzle game with a set size playfield.
We would not want to change the playfield size.
We currently scale the display to the size of the device's resolution but it
looks pretty awful.

Can someone please make a great suggestion or point us to some website that
describes the best method?
Thanks!


________________________________

JeZxLee
JessePalser <AT> GMail <DOT> com
16BitSoft Inc.
Video Game Design Studio
www.16BitSoft.com

_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org




--
//David Olofson - Consultant, Developer, Artist, Open Source Advocate

.--- Games, examples, libraries, scripting, sound, music, graphics ---.
| http://consulting.olofson.net http://olofsonarcade.com |
'---------------------------------------------------------------------'
_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org
Best Method Dealing With Multiple Android Screens?
Owen Hogarth II
Guest

here's a good article on the topic: http://v-play.net/doc/vplay-different-screen-sizes/

but speaking from experience 4x3 is kinda crap to work with on mobile. Typically you can take two routes.


Design for an aspect ratio like in the article above and handle the viewport/ aspect ratio thing.


If you are targeting android only ever plan on targeting android 16x9 aspect ratio is fine, if you have plans to support other hardware i'd say design your game around 3x2 aspect ratio. That means add all your logic to a virtual resolution of 3x2, but allow the view port to scale up to 4x3, 16x9 or 16x10.


Keep in mind that means people with wider aspect ratio will see more of your game world so you can just make a background and some art that's outside the 3x2 area so that other devices don't see black bars but also don't get an unfair advantage.


Best,
Owen


On Tue, Mar 29, 2016 at 4:52 PM, David Olofson wrote:
Quote:
Most displays these days, on PCs, consoles (TVs), phones and whatnot,
have a 16:9 aspect ratio. 640x480 (which is 4:3) is pretty much an
obsolete resolution, and will cause problems almost everywhere at this
point.

I'd recommend designing for 16:9 for all platforms. If you're doing
pixel art or similar, 320x180, 480x270, and 640x360 are nice and handy
resolutions that can be scaled by integer factors to fit most screens
on current devices.

For crisp "HD" graphics, you should basically use the highest
resolution you can afford in terms of space - but rest assured that
someone will always have a display that will get blur due to
upscaling. Wink (Mine is 3840x2160, BTW. And no, it's not HiDPI; just a
very large screen.)

If you're doing structured graphics, you can any random units, but
it's definitely an advantage if things end up pixel aligned when
rendered, on way or another. (Either pick a "pixel art" resolution and
scale by integer factors, or nudge relevant objects to integer
positions after scaling.) Just make sure you design for an 16:9 aspect
ratio, or make the design fully adaptive.

On Tue, Mar 29, 2016 at 2:59 AM, JeZ-l-Lee
wrote:
Quote:
Hi,

We are working on a new Android O.S. 2D video game called: "TetriAttack
Armageddon".

We are really stuck on how to best support all the different Android screen
resolutions and aspect ratios.
Our current project creates a standard desktop 640x480 display window which
does not look so good on our devices.

It's a puzzle game with a set size playfield.
We would not want to change the playfield size.
We currently scale the display to the size of the device's resolution but it
looks pretty awful.

Can someone please make a great suggestion or point us to some website that
describes the best method?
Thanks!


________________________________

JeZxLee
JessePalser <AT> GMail <DOT> com
16BitSoft Inc.
Video Game Design Studio
www.16BitSoft.com



Quote:
_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org




--
//David Olofson - Consultant, Developer, Artist, Open Source Advocate

.--- Games, examples, libraries, scripting, sound, music, graphics ---.
|   http://consulting.olofson.net          http://olofsonarcade.com   |
'---------------------------------------------------------------------'
_______________________________________________
SDL mailing list

http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org
rtrussell


Joined: 10 Feb 2016
Posts: 88
In addition to the other suggestions, consider allowing the user to zoom and/or pan the display. If it's not essential that the entire 'canvas' be displayed at once, letting the user choose how much he sees, and at what scale, may be a solution. In that case supporting the usual touch gestures for zooming and panning will give the user a familiar experience. The code I recently posted in the 'black screen on resume' thread shows how I chose to implement this functionality, but YMMV.

Richard.
JeZ-l-Lee


Joined: 20 Sep 2009
Posts: 572
Location: Long Island, New York, United States, Earth
Hi,

Thanks for all the info...

We decided the best method would be to utilize landscape mode on Android
so other platforms could be supported including Windows Store, HTML5, and maybe XBox One.

You can check out an early alpha of our project by visiting the following URL link:
http://16bitsoft.com/files/TAA/HTML5/index.html
(no installation - runs on any desktop or notebook Internet browser)

Thank you!