Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Библиотеки

Ответ
 
Опции темы
Старый 22.03.2011, 05:22   #1
YellowAfterlife
ПроЭктировщик
 
Аватар для YellowAfterlife
 
Регистрация: 19.02.2011
Сообщений: 134
Написано 81 полезных сообщений
(для 219 пользователей)
Lib_Scri - Манипуляции над экраном

Вы когда-то задумывались над тем, как будет выглядеть ваша игра если ее запустить на разрешении большем чем то для которого вы ее планировали? ... Обычно не очень хорошо. Если вы оказались предусмотрительным разработчиком и использовали SetClip, то игрока ждет большая пустая одноцветная область окружающая игру. Если же нет... то игрок будет созерцать бесконечный мусор, остающийся от прорисовок обьектов вне области игры, и прочие остатки графики, попадающие туда. Не лучшее зрелище, правда?

Но для игр с небольшим начальным размером экрана есть другое решение. Почему бы просто не "растянуть" игровую область до нужного размера? "Но ведь J2ME не поддерживает быстрое масштабирование изображений" - возможно подумали вы, если вам приходилсось работать непосредственно с J2ME. Но, к счастью, поддерживается такая полезная функция как прорисовка массива "пикселей". Поэтому, вооружившись небольшим количеством здорой логики и примитивных формул, я написал эту библиотеку.

Она позволяет вам не мучатся над сборкой множества "конфигураций" для разных размеров экранов, а просто сконцентироватся на создании хорошей игры. Библиотека (при правильном исползьовании) обеспечит лучший вид на любом устройстве.

Возьмем для примера игру Mine Mechanic. Разрешение игры состовляет всего лишь 96х96 пикселей.
Для примера, я собрал небольшой проэкт, имитирующий часть этой игры и использующий упомянутую библиотеку.

Как можно увидеть на скриншоте ниже, игра будет менять масштабирование, чтобы занимать как можно большую часть экрана на любом устройстве. При этом, нет никаких потерь качества изображения.
Нажмите на изображение для увеличения
Название: temp3.png
Просмотров: 1438
Размер:	15.3 Кб
ID:	13055

Еще одна полезная вещь, которую реализует эта библиотека - поворот масштабируемой части экрана. то есть, если пользователю удобней использовать программу, повернув устройство на бок, или же повернутый вариант программы лучше влезает на экран устройство, то почему бы и нет?

90 градусов, 180 градусов, зеркальное отражение, вертикальное зеркальное отражение, вертикальное зеркальное отражение повернутое на 90 градусов против часовой стрелки? (не уверен что этот вариант будет часто использоватся) - один вызов функции это все что нужно сделать.
Нажмите на изображение для увеличения
Название: temp4.png
Просмотров: 1349
Размер:	9.0 Кб
ID:	13056

Для прощения жизни разработчика в библиотеке так же есть набор "дополнительных" функций, возращающих установленные параметры.

Конечно, использование данной библиотеки не ограничивается играми. Так же она может пригодится, если вы разрабатываете программу, нуждающуюся в "альбомном" режиме, или же если вам нужен дополнительный "экран" для прорисовки графики.

Библиотека, пример-игра, и ее скомпилированный вариант во вложении. Документацию можно найти в начале исходного кода примера. Пример должным образом откоментирован.

Хорошего дня.
Вложения
Тип файла: zip ScriTest.zip (19.4 Кб, 922 просмотров)
__________________

Мой сайт-блог. Игры, обновления, примеры для Haxe, JavaScript(+HTML5), GameMaker, Love2d...

Последний раз редактировалось YellowAfterlife, 22.03.2011 в 18:19. Причина: Загрузил скриншоты на форум, вместо внешнего сайта.
(Offline)
 
Ответить с цитированием
Эти 8 пользователя(ей) сказали Спасибо YellowAfterlife за это полезное сообщение:
Amigo888 (11.01.2012), cherepets (22.03.2011), DIMMON4IK (25.03.2011), Igor (22.03.2011), nil0q (10.01.2012), odd (22.03.2011), RegIon (22.03.2011), scimitar (22.03.2011)
Старый 22.03.2011, 15:26   #2
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Lib_Scri - Манипуляции над экраном

Классно, только скриншоты не отображаются.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
YellowAfterlife (22.03.2011)
Старый 10.01.2012, 11:53   #3
bormotan
Оператор ЭВМ
 
Регистрация: 12.10.2011
Адрес: Воронеж
Сообщений: 46
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: Lib_Scri - Манипуляции над экраном

в примере есть функция , которая видимо не описана в либе - ScriGetSWidth. Прошу исправить , а то либа правда интересная

а насчет отрисовок за пределами экрана - setclip рулит . Хотя я всегда все через getwidth getheigth делаю

Последний раз редактировалось bormotan, 12.01.2012 в 00:13.
(Offline)
 
Ответить с цитированием
Старый 26.01.2014, 12:10   #4
Elastic
AnyKey`щик
 
Аватар для Elastic
 
Регистрация: 30.01.2012
Сообщений: 14
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Lib_Scri - Манипуляции над экраном

а что бы самому либу написать, что для этого надо?
__________________
(Offline)
 
Ответить с цитированием
Старый 27.01.2014, 13:12   #5
Vasiliy_LiGHT
Оператор ЭВМ
 
Регистрация: 05.08.2013
Сообщений: 26
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: Lib_Scri - Манипуляции над экраном

Java ME надо знать
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:35.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com