Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.05.2013, 09:49
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 1  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
По умолчанию движение в сторону наклону

Добрый день коллеги. Требуется непосильная помощь!
У меня есть объект самолетик двигается только вперед и имеет возможность поворачиваться направо и налево.
не могу рассчитанность формулу таким образом, что-бы объект двигался именно в ту сторону в которую повернут. То есть повернут он на 45 градусов я нажимаю стрелку в вех и объект двигается под углом 45 градусов.

Старый 22.05.2013, 10:10
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 2  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Код AS3:
spaceShip.x += speed * Math.cos(spaceShip.rotation * Math.PI / 180);
spaceShip.y += speed * Math.sin(spaceShip.rotation * Math.PI / 180);
__________________
Дети не должны знать о своих родителях

Старый 22.05.2013, 10:18
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 3  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
значит высчитаваем угол в радианах а потом узнаем синус и косинус угла, угу. Щас попробуем. Шпасибо

Старый 22.05.2013, 10:21
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 4  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
да, speed - скорость вашего самолёта. Раскладываете её по осям в зависимости от угла поворота и двигаете. Функций класса Math работают с радианами.
__________________
Дети не должны знать о своих родителях

Старый 22.05.2013, 15:52
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 5  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
Здорово получилось двигается строго туда куда и поворачивает. Но попутно возник и другой вопрос)
Как например сделать так что бы после того как я развернул самолетик и направил его в другую сторону, он продолжал двигаться по инерции ране направленную сторону ?)

Старый 22.05.2013, 16:15
vitamin4er вне форума Посмотреть профиль Отправить личное сообщение для vitamin4er Найти все сообщения от vitamin4er
  № 6  
Ответить с цитированием
vitamin4er

Регистрация: Oct 2012
Сообщений: 191
Попробуйте прибавлять/отнимать градусы по-чуть до нужного значения, а не жестко указывать их, тогда думаю, получится что-то напоминающее плавное движения. И лучше, как мне кажется, направлять самолетик по вектору, а не плюсуя/минусуя координаты - потом проще будет делать всякие фичи.

Старый 22.05.2013, 16:33
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 7  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
у меня например он вот так вот двигается с импульсом.
Код AS3:
			    if (Math.abs(_mov) >= Math.abs(_accel)) 
		        {
		            if (_mov > 0) 
		        {
			        _mov -= _accel;
 
		        } else if (_mov < 0) 
		        {
			        _mov += _accel;
		        }
	            } else {
		            _mov = 0;
					_speed = 0;
	            }
 
 
				this.x += _mov * Math.cos(_rotatation * Math.PI / 180);
				this.y += _mov * Math.sin(_rotatation * Math.PI / 180);

Старый 22.05.2013, 17:41
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 8  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Для инерций необходимо использовать другую стратегию.

Управление: WASD
Space_Ship.swf   (83.5 Кб)
Вложения
Тип файла: rar Space ship.rar (661.1 Кб, 48 просмотров)
Тип файла: swf Space_Ship.swf (83.5 Кб, 74 просмотров)
__________________
Дети не должны знать о своих родителях

Старый 22.05.2013, 17:59
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 9  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
Tails ты как всегда меня выручил! Огромное спасибо.!

Старый 22.05.2013, 18:19
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 10  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Только клавиши поворота местами перепутал
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:20.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.