Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java ME (J2ME) > Как создать анимацию


Автор: Orex 3.5.2006, 20:40
Люди,вот такой вопрос.существует графика к игре,так все нормально,но:анимация размещена не в одном png-файле из тайлов,а в некотором количестве рисунков, т.е. в 1 изображении-герой находится в покое, во 2-движется,в 3-прыгает и т.д.Вопрос:как инициализировать рисунки, чтобы можно было создавать анимацию,вообщем работать как с изображением из тайлов? 

Автор: Zamuta 6.5.2006, 02:49
1. Все рисунки храни в одном файле попорядку.
2. Используй TiledLayer.
3. Пользуйся поиском.
4. Читай книги. 

Автор: W0LF 6.5.2006, 09:36
Еще есть телефоны, которые не держат MIDP2, так что TiledLayer не везде прокатит.
Цитата

1. Все рисунки храни в одном файле попорядку.

Потом создаешь свой Image(или массив Image),
Например:
Код

Image myImage = Image.createImage(x, y);
Graphics g = myImage.getGraphics();
g.drawImage("myImage.png", x2, y2, TOP|LEFT);

x2, y2 - координаты смещения.
Пусть у тя в файле будут хранится маленькие картинки(8х8) в один ряд, их 5 штук.
Тогда x = 8, y = 8. 
Если тебе нужна третья картинка, то
x2 = -16, y2 = 0;
и тогда в твоем myImage будет нужная тебе картинка.
Если же картинки расположены в несколько рядов, то еще и смещение по y нужно учитывать.
Я вот только щас не помню насчет прозрачности:будет ли она сохраняться в таком случае?
Если не будет, тогда без MIDP2 не обойтись smile

 

Автор: Nemesis 6.5.2006, 19:22
Цитата

Если не будет, тогда без MIDP2 не обойтись 

хорош пугать человека ;)) setClip/clipRect нам в помощь.. 

Автор: W0LF 8.5.2006, 00:17
Да, Nemesis, забыл...
Тогда нужно устанавливать с помощью setClip область экрана, на которую будем отображать картинку, и так же рисовать со смещением, ток уже сразу на экран.
 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)