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

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

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

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

Ответ
 
Опции темы
Старый 29.10.2005, 13:17   #1
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
Лампочка

Очень стыдно, но есть вопрос (я уверен, что ответ прост, но НИКАК не могу допереть до исины)

Graphics3D 800,600,32,2
SetBuffer BackBuffer()

Const typecube1=1
Const typecube2=2


camera=CreateCamera()
PositionEntity camera,0,0,-20

cube1=CreateCube()
PositionEntity cube1,10,0,0
EntityType cube1,typecube1
EntityColor cube1,0,200,60

cube2=CreateCube()
PositionEntity cube2,0,0,0
EntityType cube2,typecube2
EntityColor cube2,250,00,0


Collisions typecube1,typecube2,2,3


Repeat
MoveEntity cube1,-.1,0,0

If KeyHit (57) Then End 

UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
End
Ну как сделать так, что бы по нажатию пробела они НЕ коллиделись????

то есть если нет события - коллизия.
если событие произошло, то коллизии быть не может случиться

и...как код втыкать в текст

(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 13:31   #2
jimon
 
Сообщений: n/a
хе

предлагаю по нажатию пробела присваивать обектам тип 0 (entitytype mazaf**a,0)

а код ты практически правильно втыкнул , просто надо не [\code] а [/code]!
 
Ответить с цитированием
Старый 29.10.2005, 13:58   #3
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
спасибо. работает. Тему не закрываем. Возможно писать сюда продолжу еще я про коллизии!
(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 14:19   #4
ZanoZa
Элита
 
Регистрация: 02.10.2005
Сообщений: 1,789
Написано 132 полезных сообщений
(для 252 пользователей)
Как колизить animmesh
(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 14:25   #5
axel186
Знающий
 
Регистрация: 07.09.2005
Сообщений: 238
Написано 2 полезных сообщений
(для 2 пользователей)
Как колизить animmesh
меня тоже интересует этот вопрос
(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 14:59   #6
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Создаешь Пивот для своего анимированного объекта - сферу!
piv = CreateSphere()

a модель перентишь к пивоту
EntityParent animMesh,piv

еще не помешает сделать при помощи масштабирования из сферы эллипсоид
ScaleMesh piv,1,3,1 - например так

Потом устанавливаешь радиус коллизии и тип
EntityRadius piv,1,3
EntityType piv,col_type

Все, остальное знаете.
(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 16:20   #7
KRIK
Бывалый
 
Регистрация: 19.09.2005
Сообщений: 649
Написано 3 полезных сообщений
(для 3 пользователей)
А ПО МОЕМУ МОЖНО И БЕЗ СФЕРЫ ОБОЙТИСЬ, ВЕДЬ У МЕНЯ ГЕРОЙ И ТАК БЕГАЕТ.
(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 16:37   #8
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
Так...приплыли сюда

Кнопка пробел - убирает все коллизии
Enter - двигает куб в противоположную сторону
1 на клаве - ставит коллизии.

Итак пример. Игрок берет приз и проходит сквозь "пробиваемые" стены. ЧЕРЕЗ непробиваемые пройти не может. То есть как сделать так, что бы при нажатии пробел ИГРОК проходил сквозь КРАСНЫЙ кубик, а сквозь ФИОЛЕТОВЫЙ пройти не смог.

ПС. шутка: успеть нажать 1 на клаве не принимается. Я серьезно!

вот код:
Graphics3D 800,600,32,2
SetBuffer BackBuffer()

Const typecube1=1
Const typecube2=2
Const typecube3=3

camera=CreateCamera()
PositionEntity camera,0,0,-20

cube1=CreateCube()
PositionEntity cube1,10,0,0
EntityType cube1,typecube1
EntityColor cube1,0,200,60

cube2=CreateCube()
PositionEntity cube2,0,0,0
EntityType cube2,typecube2
EntityColor cube2,250,00,0

cube3=CreateCube()
PositionEntity cube3,-15,0,0
EntityType cube3,typecube3
EntityColor cube3,250,100,600


Collisions typecube1,typecube2,2,3
Collisions typecube1,typecube3,2,3


Repeat
MoveEntity cube1,-.1,0,0
If KeyDown (28) Then MoveEntity cube1,.2,0,0

If KeyHit (57) Then ClearCollisions 

If KeyHit (2) 
Collisions typecube1,typecube2,2,3 
Collisions typecube1,typecube3,2,3
End If 

UpdateWorld
RenderWorld
Flip
Until KeyHit(1)
End
(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 16:49   #9
jimon
 
Сообщений: n/a
а я в будущем планирую добавить потдержку anim обектов в jode
 
Ответить с цитированием
Старый 29.10.2005, 17:00   #10
jimon
 
Сообщений: n/a
** *** ****** ***, ***** ***** *** ***** *** !

If KeyHit (57) Then
ClearCollisions
Collisions typecube1,typecube3,2,3
End If
говорилже - ВОСОЗДАВАТЬ КОЛОЗИИ НАДО!
 
Ответить с цитированием
Старый 29.10.2005, 19:21   #11
ZanoZa
Элита
 
Регистрация: 02.10.2005
Сообщений: 1,789
Написано 132 полезных сообщений
(для 252 пользователей)
Originally posted by Жека@Oct 29 2005, 12:59 PM
Создаешь Пивот для своего анимированного объекта - сферу!
piv = CreateSphere()

a модель перентишь к пивоту
EntityParent animMesh,piv

еще не помешает сделать при помощи масштабирования из сферы эллипсоид
ScaleMesh piv,1,3,1 - например так

Потом устанавливаешь радиус коллизии и тип
EntityRadius piv,1,3
EntityType piv,col_type

Все, остальное знаете.
Как всё запущенно неужели не могли сделать как с обычным meshem?
p.s.кто знает подскажите, я сделал анимацию в максе для модели через biped,
а в blitze видно biped и не идёт анимации.Тоже самое с костями.
(Offline)
 
Ответить с цитированием
Старый 29.10.2005, 20:40   #12
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Для этого надо экспортровать правильно и в правильный формат... если ты натягивал кости модификатором Skin, то можеш экспортировать Pipeline'ом в b3d формат, если меш сборный, то в 3ds формат экспортируется анимация только с TCB контроллером.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 31.10.2005, 08:25   #13
Akima
Бывалый
 
Регистрация: 22.10.2005
Сообщений: 701
Написано 7 полезных сообщений
(для 5 пользователей)
а можно сделать облости коллизий (EntityRadius, EntityBox), видимыми.
(Offline)
 
Ответить с цитированием
Старый 31.10.2005, 09:15   #14
НУБ
Бывалый
 
Регистрация: 22.09.2005
Сообщений: 634
Написано 36 полезных сообщений
(для 102 пользователей)
Originally posted by Akima@Oct 31 2005, 07:25 AM
а можно сделать облости коллизий (EntityRadius, EntityBox), видимыми.
Да, CreateSphere(), CreateCube()
(Offline)
 
Ответить с цитированием
Старый 31.10.2005, 09:18   #15
Akima
Бывалый
 
Регистрация: 22.10.2005
Сообщений: 701
Написано 7 полезных сообщений
(для 5 пользователей)
я так делал но у меня вакое впечатление что коллизии гдето в другом месте (смещенно) появляются
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
коллизии в 2.5D cheaters-hater 2D-программирование 11 07.07.2009 00:33
Вопрос про наболевшее - коллизии. DEGABB 3D-программирование 47 10.02.2008 02:37
Вопрос про коллизии TG 3D-программирование 6 09.11.2007 01:39
Коллизии Crystal 3D-программирование 58 12.10.2007 17:16
Коллизии Stalnoy_Gvozd' 3D-программирование 6 30.08.2007 15:56


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


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