Вниз  Java-программирование (1-ые посты)
- 28.11.2013 / 13:50
GreeNLine
  Пользователь

GreeNLine 
Сейчас: Offline
хм...я вот к чему спросил.. я скачал игру lastlimit. она скачивает спрайты, графику, анимацию в фоновомрежиме.. а куда сохраняет.. хз(
- 28.11.2013 / 21:42
mrEDitor
  Пользователь

mrEDitor 
Сейчас: Offline
GreeNLine, открой блокнотом и поищи слова PNG и GIF8. Найдешь - значит там есть твоя графика.
- 29.11.2013 / 01:16
Nevesel
  Пользователь

Nevesel 
Сейчас: Offline
Всем привет!!! Подскажите, пжалста, какие координаты по У принимает объект на карте, когда экран уходит вниз? (Ну, в смысле- карта поднимается вверх :-) ) Изначально объект выставлен на координаты (0,0). У меня такое ощущение, что остаётся "0" Хм, вроде понятно объяснил... Да- объект никуда не двигается, остаётся на месте.

Изменено Nevesel (29.11 / 01:27) (всего 2 раза)
- 29.11.2013 / 06:20
samodelkin
  Пользователь

samodelkin 
Сейчас: Offline
Nevesel, если все обьекты находятся в LayerManager и окно перемещается с помощью метода setViewWindow, то все обьекты остаются на своих координатах, просто меняются координаты окна.
А вот если ты не используешь LayerManager и хочешь сделать иллюзию движения героя по карте, тогда надо поставить спрайт посередине экрана, а карту двигать соответственно так:
если нужна иллюзия перемещения героя вверх,то карта должна двигаться вниз, а если нужна иллюзия перемещения героя вниз,то карта соответственно должна двигаться вверх.
Игры- это всего лишь программы, в которых создается иллюзия подобия реального мира.

Изменено samodelkin (29.11 / 06:31) (всего 3 раза)
- 29.11.2013 / 14:43
Dimon638
  Пользователь

Dimon638 
Сейчас: Offline
samodelkin, вот это толканул речь :hack:
Фигня этот LayerManager не надо его использовать, он только лишний хип жрёт и на кемуляторе не работает нормально :gg: .
Ну и про иллюзию бред какой-то написан. :gy:
 
Я делаю так, создаю переменные camx и camy - координаты левого верхнего угла карты.
И когда твой герой дошёл до правого края экрана, то надо делать так:
camx--;
Получается, что вся карта сместилась влево. А чтобы каждый объект на карте также сместился влево, надо каждому объекту устанавливать такие координаты
Obj.setPosition(x+camx,y+camy);
- 29.11.2013 / 15:16
Magatino
  Администратор

Magatino 
Сейчас: Offline
Dimon638, Ты тоже ляпнул не знай что , интересно , а что не жрёт хип? :hack:

LayerManager - это хорошая вещь , когда у тебя спрайтов сто , потому что своя реализация будет медленнее :)

P.S
Самоделкин уже достал своей бредопомощью , при чём тут отрисовка слоёв , когда юзер спрашивал про координату "y" ? :dum:
- 30.11.2013 / 00:13
Nevesel
  Пользователь

Nevesel 
Сейчас: Offline
Всем спасибо, всё понял! :-) Я отчего-то думал что если методом move() двигать замощёный слой (карту), то все объекты будут двигаться вместе с ней как приклеенные :-) И в этом была моя ошибка :-) Придётся двигать все объекты вместе с картой (танки там, снаряды... Хз, вообщем всё) либо действительно другой метод пользовать...
- 30.11.2013 / 01:06
Dimon638
  Пользователь

Dimon638 
Сейчас: Offline
Nevesel, вот чтобы они двигались вместе со слоем "как приклеенные", надо делать так, как я описал здесь Пост #303773 :gg:
Ява сама за тебя не будет всё делать, тут нужно всё самому реализовывать)). Метод move(...) просто двигает слой и больше ничего.

Magatino (29.11.2013/15:16)Dimon638, Ты тоже ляпнул не знай что , интересно , а что не жрёт хип? :hack: LayerManager - это хорошая вещь , когда у тебя спрайтов сто , потому что своя реализация будет медленнее :)...
  Я ляпнул нормальную вещь, LayerManager есть достаточно хипа, для, казалось бы, такой простой фичи (на самом деле простой, её приходится юзать в каждой игре, где игровая карта больше экрана и её надо скроллить; реализовав её один раз, запомнишь как её делать на всю жизнь :gg: ).
  По идее, если делать свою реализацию, то можно выиграть в памяти, а в скорости проигрыш будет настолько ничтожно мал, что на него вообще не стоит обращать внимания.

Magatino LayerManager - это хорошая вещь , когда у тебя спрайтов сто... Да какая разница сколько спрайтов? Если они одинаковым способом рисуются - через цикл, и вообще пофиг сколько их, хоть 1, хоть 1 000 000.
  Не знаю чем он хорош... Что там надо делать, каждый спрайт/слой добавлять методом append(...)? Не кажется ли эта затея странной?
Мне кажется, вот я его и не использую. Да и не только по этой причине.

  Я когда-то давным давно юзал LayerManager, но сейчас он для меня кажется ужасным, уж лучше по-своему реализовывать скроллинг карты) Так движок получится гибче :gg:
- 30.11.2013 / 09:13
Magatino
  Администратор

Magatino 
Сейчас: Offline
Dimon638, Большая разница сколько спрайтов , ограничивать прорисовку своим способом гораздо медленее и да , TiledLayer больше всех жрёт хипа , 4 байта на каждую ячейку :gg:
- 1.12.2013 / 00:00
Nevesel
  Пользователь

Nevesel 
Сейчас: Offline
:-) да, я вижу тема достаточно интересная! :-) И есть место для экспериментов! :-) Пацаны, всех благодарю, я пошёл пробовать, если что- напишу! Пока!
Наверх  Всего сообщений: 16875
Фильтровать сообщения
Поиск по теме
Файлы топика (794)