Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 2D-программирование

2D-программирование Вопросы, касающиеся двумерного программирования

Ответ
 
Опции темы
Старый 24.08.2007, 01:43   #1
LD
ПроЭктировщик
 
Регистрация: 18.11.2006
Сообщений: 179
Написано 7 полезных сообщений
(для 16 пользователей)
Проблема логики

Помогите плз. Я делаю рейсинг с помощью ньютона. Проблема вот в чем:
при нажатии клавиши газа у меня в зависимости от передачи увеличиваються vel# и ассеl#. Потом колесо вращаеться по формуле (ассеl*(vеl-скорость вращения колеса)*(vel-скорость вр. Колеса)
надо придумать формулу зависимости vеl и ассеl от скор вр кол, а то если врезаться и держать газ можно разогнаться до прежней скор за секунду
(Offline)
 
Ответить с цитированием
Старый 24.08.2007, 01:51   #2
LD
ПроЭктировщик
 
Регистрация: 18.11.2006
Сообщений: 179
Написано 7 полезных сообщений
(для 16 пользователей)
Re: Проблема логики

Пример кода:
if gaz
vel = vel + 1
accel=accel+1
omegabr = phjointvehiclegettireomega (veh, tirebr)
pnjointvehicleaddtiretorque(veh,tirebr,(accel*(vel- omegabr)*(vel-omegabr))
endif
у меня все сложнее но по этим же формулам. Ссори за краткость - 9 пишу с мобилы. Надеюсь на вашу помощь.
(Offline)
 
Ответить с цитированием
Старый 24.08.2007, 15:55   #3
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Re: Проблема логики

не все понял из поста, но чтоб заставить колесо крутится относительно скорости перемещения используют формулу: 360.0*(pl_speed/circumference), где circumference - это диаметр колеса помноженный на число Pi.
Помуди с этим...
(Offline)
 
Ответить с цитированием
Старый 24.08.2007, 18:43   #4
LD
ПроЭктировщик
 
Регистрация: 18.11.2006
Сообщений: 179
Написано 7 полезных сообщений
(для 16 пользователей)
Re: Проблема логики

Енто не совсем то мне нужно придумать зависимость мощности от скорости вращения колес, а не просто прибавление + 1
(Offline)
 
Ответить с цитированием
Старый 24.08.2007, 22:13   #5
Jet
ПроЭктировщик
 
Регистрация: 04.09.2005
Сообщений: 139
Написано одно полезное сообщение
Re: Проблема логики

мне нужно придумать зависимость мощности от скорости вращения колес
разве в жизни мощность зависит от скорости вращения колёс? мне всегда думалось, что наоборот..
(Offline)
 
Ответить с цитированием
Старый 24.08.2007, 22:22   #6
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Проблема логики

Крч. тебе нада чем мощнее тем быстрее тачка?
(Offline)
 
Ответить с цитированием
Старый 24.08.2007, 22:50   #7
LD
ПроЭктировщик
 
Регистрация: 18.11.2006
Сообщений: 179
Написано 7 полезных сообщений
(для 16 пользователей)
Re: Проблема логики

Ето есть, но при замедлении машины мощность должна падать... А у меня пока держишь кнопку-растет...
(Offline)
 
Ответить с цитированием
Старый 25.08.2007, 10:49   #8
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Re: Проблема логики

Так проверяй на столкновение, если да, то отнимай мощность...
(Offline)
 
Ответить с цитированием
Старый 25.08.2007, 11:43   #9
LD
ПроЭктировщик
 
Регистрация: 18.11.2006
Сообщений: 179
Написано 7 полезных сообщений
(для 16 пользователей)
Re: Проблема логики

Я так пробовал, но столкновения бывают разные, по моему лучше завязать на скорости, вот только как... Вообще с физикок все норм, только достает ентот глюк
(Offline)
 
Ответить с цитированием
Старый 25.08.2007, 14:29   #10
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Re: Проблема логики

проверяй расстояние пройденное за один такт и если оно меньше определенного, то убавлять мощность...
типо так:
repeat
oldX# = entityx(player)
oldY# = entityy(player)
oldZ# = entityz(player)
....
diffX# = newX - oldX
diffY# = newY - oldY
diffZ# = newZ - oldZ
....
newX# = entityx(player)
newY# = entityy(player)
newZ# = entityz(player)
forever
(Offline)
 
Ответить с цитированием
Старый 25.08.2007, 14:47   #11
LD
ПроЭктировщик
 
Регистрация: 18.11.2006
Сообщений: 179
Написано 7 полезных сообщений
(для 16 пользователей)
Re: Проблема логики

А если машина в воздухе? ладно, сам разберусь
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема с С++ HAMANN C++ 10 24.12.2009 09:31
Проблема rr333 3D Моделирование 10 07.06.2009 17:08
Проблема в MP Nautilus MidletPascal 4 26.10.2008 05:30
Проблема с MP3 и EAX Maxim1441 2D-программирование 3 29.07.2008 18:29
Вынор игровой логики в длл LD 2D-программирование 3 11.09.2007 00:19


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com