Размери на екрана на играта за Android

Преди да започна да разработвам игри за android, дълго време правех базирани на браузър флаш игри. Там всичко е лесно, зададох размера на 700 * 525 и това е. Когато се сблъсках с андроиди, от време на време се натъквах на думите: „Размерът на екрана на андроид е цяла наука.“ Да, това е наука. Но днес ще анализираме един пример от практиката. Не бих казал, че е перфектно, но практиката показва, че работи, макар и не постоянно. Но аз го използвам.

Като начало, грубо вземаме: - най-малкият размер на екрана 480 * 800 - най-големият размер на екрана 1300 * 1920 ... и създаваме среден размер, имам го 720 * 1280:

размери

Сега имаме 3 размера на екрана: x1, x2, x3.

След това трябва да разберем какъв е размерът на екрана, на който се изпълнява играта (правим всичко това в самото начало на играта)? В as3 flash това е: var m_stageW:int = flash.system.Capabilities.screenResolutionX; var m_stageH:int = flash.system.Capabilities.screenResolutionY;

След като намерим размера на екрана в x: var m_sizeStageX:int;

ако (m_stageH 1280) m_sizeStageX = 3; > друго m_sizeStageX = 2; >

Имам таблет 7 инча. Размер на екрана 600*1024. (Имам променлива m_stageH = 1024). Така че за мен m_sizeStageX = 2; Играта ще използва графики с размер x2 за моя таблет.

Какво е работна зона?

Работната зона е само в x2, x3. Отбелязва се в зелено:

android

Всичко, което е в работната зелена зона x3, трябва да влезе в работната зелена зона x2:

екрана

Всичко, което е в работната зелена зона x2, трябва да влезе в екрана x1:

размери

Използвах 3 графични размера, за да няма загуба на качество.Всички графики бяха нарисувани под най-многоголям размер на екрана x3. След това ръчно намалих за всички останали екрани със съотношението: x2 = 70% x1 = 50%

Например бутонът за изход в менюто. На най-големия екран е с размер 100*100 пиксела. Така че за екрана x2 намаляваме изображението до 70% и получаваме 70 * 70 пиксела. За екран x1 получавате 50 * 50 пиксела. И накрая ще получите три бутона. По един за всеки екран.

размери

Грубо казано, правите не една игра, а три наведнъж. В края на краищата, всеки обект на играта трябва да бъде направен три пъти. Но това е рационално за обекти, които трябва да бъдат избрани. Които са на преден план, с които играчът взаимодейства.

Нека да разгледаме менюто на играта. Маркирах с червени стрелки тези обекти, които направих за всички размери на екрана: е името на играта; - човек с момиче; —бутони на менюто;

Тези артикули са супер високо качество. И всичко останало: небето, къщата, земята, сенките ще бъдат замъглени. Защото ще ги преоразмерявам за всеки екран, като ги разтягам. И при разтягане качеството на изображението се губи:

играта

Всички обекти на сцената се задават програмно, за предпочитане от центъра на екрана. Или вземете съотношението на страните. Например, как изложих бутоните на менюто в предишната фигура? Сложих бутона Play в центъра. Бутонът за отиване на сайта (този вляво) е лявата половина на екрана, разделен на 2. Десният бутон (изчистване на прогреса) е подобен на левия.

В началото е неудобно, но с времето свикваш. Сега разработвам втората част на играта Building cubes2, но вече върху единството. Светкавица в дъската ме разболя със спирачките.

Благодаря на всички, които прочетоха до края. Опитах се да опиша накратко, а не да разтягам със скучни букви. До новата кожа.