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


Автор: 604 16.8.2006, 11:02
Приветствую всех!
Появился такой вопрос! Как в игре реализовать движение объектов по экрану с разнй скоростью?

Я вижу всего 2 пу для решения этой задачи.
1. Запуск движения объектов в разных потоках с разным слипТаймом.
2. Разный шаг движения объектов(но в этом случае на мой взгляд можно получить проблемы с колижен детектором).

А можно ли кк то запустить в одном потоке 2 объекта с разнйо скоростью и с одинаковым шагом? Или возможно есть еще какой нибуть прием?

Автор: 02077461 16.8.2006, 12:25
можно запустить и в одном. тогда делать так:
Код

public void run(){
var c=0;  
while (TRUE){
     object1.run();
     if (c%2==0) object2.run();
  }
}

Но сам понимаешь, это даже костылями не назвать.
Приемлим, на мой взгляд, второй вариант.
Расскажи пожалуйста, что такое колижн детектор, и какие могут быть проблемы.

Добавлено @ 12:26 
Посуди сам: как раз таки шаг и определяет скорость.

Автор: W0LF 16.8.2006, 12:44
Много потоков - это не хорошо!

Автор: redrick 16.8.2006, 12:44
604, имхо в разных потоках это точно порнография получица, никто ведь не знает как их планировщик распланирует, вот и получица что они у тебя с рандомными скоростями летают

а вот по поводу проблем с коллижен детектом - ну первое что приходит в глову - не долно быть проблем если у тебя размер объектов много больше шага по экрану за квант времени.

Автор: W0LF 16.8.2006, 12:46
поэтому - 2)

Автор: DimLord 16.8.2006, 12:59
Много потоков в игре - это однозначно плохо и лишние проблемы. Мы используем второй метод, других альтернативных вариантов пока не видили.

Автор: Vladimir35 17.8.2006, 13:35
Понятие время и скорость, и пройденный путь вам знакомо? Уже пора отказываться от тиков... Расчитывайте позицию исходя из времени и текущей скорости...


Автор: redrick 22.8.2006, 12:26
Vladimir35, тики останутся палюбому - рисовать то надо

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