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

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.10.2010, 19:56
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 1  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Question У кого-нибудь есть опыт создания top-down гоночных игр на box2d?

Собственно сабж

Заинтересовался этим движком. Пока, к сожалению, нет времени серьезно сидеть с ним днями, изучать оф форум и т.п., так как работа + занят написанием довольно серьезной стратегии, но любопытство все-таки берет свое

И так, ближе к делу. Как создать мир бокс2д с гравитацией понятно, как создавать тела и их описания тоже (в общем ничего сложного), интересует другое. А именно:

При создании игры с видом сверху гравитация естественно отключается, но ей насмену приходит linearDamping. Собственно это помогает останавливать "автомобиль" после разгона, но как применять angularDamping? Или, если я что-то неправильно понял, то как заставить этот прямоугольник (машину), реалистично поворачивать? То есть, если я при движении нажму клавишу поворота, чтобы машину слегка заносило, но это не было похоже на движение по льду (пока у меня получалось сделать только подобное)

Если есть те, кто мог бы набросать простенький пример, буду признателен

з.ы. Пример искал, и даже находил, но все сайты типа emanueleferonato и.п. полная лажа, во-первых в основном все примеры с видом сбоку, во-вторых все сделано дочтаточно коряво, как например это http://www.emanueleferonato.com/2009...ke-box2d-cars/

Такого движения мне не нужно


Последний раз редактировалось goodguy; 16.10.2010 в 19:59.
Старый 16.10.2010, 20:10
NikolyA вне форума Посмотреть профиль Отправить личное сообщение для NikolyA Найти все сообщения от NikolyA
  № 2  
Ответить с цитированием
NikolyA
 
Аватар для NikolyA

Регистрация: Dec 2006
Сообщений: 1,764
ну обычно берут движок и далее его наворачивают

Старый 16.10.2010, 20:37
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 3  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Это больше походит на офтоп.

Движок взят, box2d. Вопрос, по-моему задан конкретный, а не о том, что обычно делают с движком

Если имелось в виду, доработка того примера Эмануэле, то это я делать пробовал, не получилось. Но он, видимо сам сделать ничего не смог, по-этому выложил такое "роботоподобное движение", так сказать, чем богаты, тому и рады.


Последний раз редактировалось goodguy; 16.10.2010 в 20:39.
Старый 17.10.2010, 00:10
Александр вне форума Посмотреть профиль Отправить личное сообщение для Александр Найти все сообщения от Александр
  № 4  
Ответить с цитированием
Александр
 
Аватар для Александр

Регистрация: Oct 2009
Сообщений: 148
Отправить сообщение для Александр с помощью ICQ
Раз просто поворт тела не катит)
и кол-во машин не много
предлогаю такие варианы:



по мне той проблемы которой у тебя не будет.
попробуй расскажешь тоже гонки думаю сделать
__________________
Я люблю Ubuntu, а она меня любит меня..


Последний раз редактировалось Александр; 17.10.2010 в 00:13.
Старый 18.01.2011, 23:45
Ralph_DiMarko вне форума Посмотреть профиль Отправить личное сообщение для Ralph_DiMarko Найти все сообщения от Ralph_DiMarko
  № 5  
Ответить с цитированием
Ralph_DiMarko
 
Аватар для Ralph_DiMarko

Регистрация: Dec 2008
Адрес: Одесса
Сообщений: 129
Код AS3:
		private function moveCar():void
		{
			if (bleft) {
				carAng ++;
			}else if (bright) {
				carAng --;
			}
			if (bup) {
				speed += accel;
			}else if (bdown) {
				speed -= accel;
			}
			var angle:Number = carAng * Math.PI / 180;
			var speedX:Number = speed * Math.cos(angle);
			var speedY:Number = speed * Math.sin(angle);
			boxBody.SetAngle(angle);
			boxBody.ApplyForce(new b2Vec2(speedX, speedY), boxBody.GetPosition());
		}
Вроде что-то получается, но ее просто нимеренно заносит, как будто по льду катаюсь...

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

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Так а чем пример Эмануэля не нравится? вполне реалистично. Разгон, занос.

Добавлено через 56 секунд
Это не оффтоп, просто сам в свое время с него передирал, может если подробнее скажешь что именно надо - смогу помочь.
__________________
Кто к нам с чем для чего - тот у нас того от того.

Старый 19.01.2011, 00:58
Ralph_DiMarko вне форума Посмотреть профиль Отправить личное сообщение для Ralph_DiMarko Найти все сообщения от Ralph_DiMarko
  № 7  
Ответить с цитированием
Ralph_DiMarko
 
Аватар для Ralph_DiMarko

Регистрация: Dec 2008
Адрес: Одесса
Сообщений: 129
Эмануэля вариант слишком большой и пока что немного не понятный для меня, хочется понимать что делаю, и тем более в моем случае колеса как бы не нужны. Плюс уже три раза пытался обрезать вариант Эмануэля, там все между собой связано и одно без другого не работает.

Я пытаюсь сделать top-down машинку, все работает кроме поворотов.
Объект начинает двигаться, начинаю поворачивать, сам объект меняет свой угол куда нужно, но инерция неправильно отрабатывает, как будто на машине заехал на каток, начинаешь набирать скорость и поворачиваешь, машину несет боком, потом она по чуток уже двигается в правильном направлении. Надеюсь смог выразится

swf прикрепил
Вложения
Тип файла: rar Box2Test.rar (140.4 Кб, 83 просмотров)


Последний раз редактировалось Ralph_DiMarko; 19.01.2011 в 01:01.
Старый 19.01.2011, 13:12
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 8  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Цитата:
Так а чем пример Эмануэля не нравится? вполне реалистично. Разгон, занос.
Фуфло его пример. Движется не реалистично, доработке практически не полежит. У эмануэле вообще все примеры конченые.
Самый лучший пример гонок на бокс 2д, что я видел, была игра Lil Racerz http://www.playground.ru/flash/racing/3733/ автор которой рашьше зависал на флешките. Но автору я писал, он куда-то бесследно исчез

Я на сколько мог его игру растребушил, но так и не понял как машины собраны, точнее как они управляются.


Последний раз редактировалось goodguy; 19.01.2011 в 13:17.
Старый 19.01.2011, 15:27
Division вне форума Посмотреть профиль Отправить личное сообщение для Division Найти все сообщения от Division
  № 9  
Ответить с цитированием
Division
 
Аватар для Division

Регистрация: Jul 2008
Адрес: Украина, Херсон
Сообщений: 635
Отправить сообщение для Division с помощью ICQ
Я в свое время делал гонки. Не на флеше правда. Физику свою юзал, некое подобие верлетовой.
На бокс 2д я бы делал примерно как эмануэле. только вместо 4 колес сделал бы 2. Одно спереди одно сзади.
Ключевая идея в том чтоб гасить боковую скорость у колес.
Есть вектор направления колеса. Есть вектор скорости колеса (колесо двигается по этому вектору). Нужно спроецировать вектор скорости на вектор направления колеса. Тогда машинка будет вести себя реалистично, ехать только вдоль направления колес.
Повороты машины осуществляются путем поворота вектора колеса.
В бокс2д колеса можно сделать просто кругами, которые "прибиты" к корпусу машины. Одно спереди, одно сзади.
Если нужны заносы, проецирование вектора скорости осуществляется не сразу, а за несколько итераций.
__________________
while(1) {}

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

Регистрация: Dec 2008
Адрес: Одесса
Сообщений: 129
вау! Как бы это все перевести на as3 да еще и под box2d )
спасибо!
Буду колдовать и попробую еще с Nape поиграться..

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

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

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


 


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


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