blackberry / SDL

Simple DirectMedia Layer is an open-source, cross-platform multimedia library designed to provide a low level API.
GNU Lesser General Public License v2.1
86 stars 46 forks source link

Fullscreen Renders Improperly in Portrait #19

Closed jgranick closed 12 years ago

jgranick commented 12 years ago

There is a chance this could be caused by my code, but I think this is being handled by either the OS or SDL.

Basically, when you want to initialize at fullscreen, it uses 1024 x 600, even if the device is in portrait orientation. As a result, you end up with a squished/stretched view of your application, which remains consistent even when you rotate the device to landscape.

Is there a solution to this? The workarounds I saw online consisted of how EGL is initialized, which is handled by SDL.

Thanks!

jnicholl commented 12 years ago

The current implementation of rendering in SDL only supports landscape, I'm afraid.

----- Original Message ----- From: Joshua Granick [mailto:reply@reply.github.com] Sent: Sunday, April 29, 2012 02:03 PM To: Jeremy Nicholl Subject: [SDL] Fullscreen Renders Improperly in Portrait (#19)

There is a chance this could be caused by my code, but I think this is being handled by either the OS or SDL.

Basically, when you want to initialize at fullscreen, it uses 1024 x 600, even if the device is in portrait orientation. As a result, you end up with a squished/stretched view of your application, which remains consistent even when you rotate the device to landscape.

Is there a solution to this? The workarounds I saw online consisted of how EGL is initialized, which is handled by SDL.

Thanks!


Reply to this email directly or view it on GitHub: https://github.com/blackberry/SDL/issues/19


This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.

jgranick commented 12 years ago

If I hold the device in landscape orientation, and begin an application, it runs just fine.

Unfortunately, if I begin the application while I am holding the PlayBook in portrait, the screen initializes in a squished view. It looks horrible. I think I read online that it had to do with a rotated screen buffer?

When I set my "bar-descriptor.xml" to disable auto-orientation and to force landscape, it appears to create a race condition, where sometimes the application will begin rendering in landscape and work properly, but other times it will begin in portrait and will lead to the squished/unusable graphics condition.

jnicholl commented 12 years ago

I've noticed this as well. I believe even Frogatto has this problem. I haven't found a solution yet, I don't know what the cause is. It seems like a bug in how the PlayBook interprets force as landscape...

----- Original Message ----- From: Joshua Granick [mailto:reply@reply.github.com] Sent: Monday, April 30, 2012 10:24 PM To: Jeremy Nicholl Subject: Re: [SDL] Fullscreen Renders Improperly in Portrait (#19)

If I hold the device in landscape orientation, and begin an application, it runs just fine.

Unfortunately, if I begin the application while I am holding the PlayBook in portrait, the screen initializes in a squished view. It looks horrible. I think I read online that it had to do with a rotated screen buffer?

When I set my "bar-descriptor.xml" to disable auto-orientation and to force landscape, it appears to create a race condition, where sometimes the application will begin rendering in landscape and work properly, but other times it will begin in portrait and will lead to the squished/unusable graphics condition.


Reply to this email directly or view it on GitHub: https://github.com/blackberry/SDL/issues/19#issuecomment-5432511


This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.

asimonov-im commented 12 years ago

Does this problem occur with the latest version of SDL? I haven't been able to get Frogatto to do this in a while.

jgranick commented 12 years ago

The last time I compiled SDL for BlackBerry was likely five to eight weeks ago. Do you think there was a patch or an improvement since then that may have made a difference, or do you think they applied a workaround in Frogatto to prevent this behavior?

jgranick commented 12 years ago

Oh, perfect! I just noticed your commit. I will update tomorrow and give it a spin. I may have compiled right before you implemented your screen rotation improvement. By the sound and look of it, it is just what we are missing :)

jgranick commented 12 years ago

I just gave it a try, and its fixed. I apologize that I did not realize this was fixed since I last updated.

Thank you!

jgranick commented 12 years ago

http://www.haxenme.org/blog/2012/05/01/nme-3-3-2-released/