2012-05-05 4 views
1

При рисовании графики в 2D, как я могу обрабатывать глубину изображения в кадре? Например, земля будет глубина -1 и глубина игрока 0?Обработка глубины изометрической графики Java

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

The picture is a link because I don't have enough reputation http://desmond.imageshack.us/Himg268/scaled.php?server=268&filename=92772230.jpg&res=landing.

В моей игре уже есть плитка, и она готова к рисованию изометрической. У меня есть координаты x y и z в части двигателя. Я прочитал, что вам нужно перевести его только на x и y для рисования изометрическим, но я не уверен, как и почему я должен это делать.

Here is a picture моей игры прямо сейчас. Монета - это игрок, а квадраты - Плитки.

Последнее, что мои плитки хранятся в массиве, то есть Tile[] tileList. Это эффективный способ его хранения? Потому что я хочу получить лучшую производительность, я могу выйти из своей игры.

спасибо.

+1

См [* Как использовать Слоистые Panes *] (http://docs.oracle.com/javase/tutorial/uiswing/components/layeredpane.html). – trashgod

+0

Спасибо, но я не хочу создавать панель для каждой картинки ... есть ли другой способ – Gopgop

+0

Может кто-нибудь помочь? – Gopgop

ответ

1

Вам нужно посмотреть на выполнение пользовательского чертежа. Чтобы получить простую изометрическую игру, все, что вам нужно сделать, это нарисовать элементы на каждой плитке в правильном порядке. В приведенном выше примере верхний квадрат будет плитки в вашем массиве в [0] [0], содержимое этой плитки должно быть нарисовано первыми. После этого вам нужно сделать [0] [1] и [1] [0], и так далее ..

Смотрите здесь для более подробной информации: Drawing Isometric game worlds

Смежные вопросы