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

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

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

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

Ответ
 
Опции темы
Старый 08.01.2010, 14:20   #1
Fatalix3d
Разработчик
 
Аватар для Fatalix3d
 
Регистрация: 28.12.2008
Адрес: Алматы
Сообщений: 486
Написано 252 полезных сообщений
(для 1,160 пользователей)
Muzle Flash! Огонь из оружия!

Парни поделитесь мыслями как реализовать вспышку от оружия при стрельбе! Вид не от первого лица а от 3-го, то есть как его правильно подстроит под ствол дула, я хочу поставить метку в виде маленького куба, а потом отыскать его через findChild. Но я сомневаюсь в этом подходе, вот хотелось бы узнать кто как делает.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Fatalix3d за это полезное сообщение:
im_zorg (08.01.2010), Nex (08.01.2010)
Старый 08.01.2010, 14:27   #2
IgorOK
Мастер
 
Аватар для IgorOK
 
Регистрация: 26.10.2009
Сообщений: 1,194
Написано 615 полезных сообщений
(для 2,209 пользователей)
Ответ: Muzle Flash! Огонь из оружия!

Лучше не куб ставь, а Helpers -> Point
Лишняя геометрия в файле ни к чему. А вообще можно сделать вспышку как часть модели оружия.
(Offline)
 
Ответить с цитированием
Старый 08.01.2010, 14:34   #3
Fatalix3d
Разработчик
 
Аватар для Fatalix3d
 
Регистрация: 28.12.2008
Адрес: Алматы
Сообщений: 486
Написано 252 полезных сообщений
(для 1,160 пользователей)
Ответ: Muzle Flash! Огонь из оружия!

Хм а как узнать ее координаты, ведь надо прилепить туда партикл.?
(Offline)
 
Ответить с цитированием
Старый 08.01.2010, 14:40   #4
EvilChaotic
Мастер
 
Аватар для EvilChaotic
 
Регистрация: 05.04.2008
Сообщений: 910
Написано 530 полезных сообщений
(для 3,006 пользователей)
Ответ: Muzle Flash! Огонь из оружия!

Сообщение от Fatalix3d Посмотреть сообщение
Парни поделитесь мыслями как реализовать вспышку от оружия при стрельбе! Вид не от первого лица а от 3-го, то есть как его правильно подстроит под ствол дула, я хочу поставить метку в виде маленького куба, а потом отыскать его через findChild. Но я сомневаюсь в этом подходе, вот хотелось бы узнать кто как делает.
Все нормально. Только действительно вместо куба нужно ставить пивот в максе (Helpers/Point). Называешь его в максе FirePoin01 если больше одного FirePoin02....FirePoin03... Создается массив в типе объекта
Field FirePoints%[10] ; 10 или максимальное число точек
При выполнение функции создания этого объекта будем проходится по геометрии
For i=1 To 10
If i < 10 then local add$ = "0"
local f_p% = xFindChild(obj\mesh%."FirePoint"+add$+i)
If f_p% <> 0
   obj/FirePoints[i] = f_p% ; Сохраняем сылку
   f_p% = 0 : add$ = ""
Else
   Exit ; Выходим из цикла если не находим следующий FirePoint
End If
Next
Далее при стрельбе мы будем определять из какого оруия мы стреляем (Их например тоже максимум 10)
Создавать мы будем эффект взрыва на obj\FirePoints[obj\SctWeapon]
obj\SctWeapon - твое текущее оружие.

Например так . Писал код прямо в сообщении так что если буду ошибки исправь

Сообщение от Fatalix3d Посмотреть сообщение
Хм а как узнать ее координаты, ведь надо прилепить туда партикл.?
Не волнуйся в б3д файле все координаты чилдов сохранятся при экспорте, не забудь все FirePoint линковать с оружиями. Узнать координаты можно так

CreateMuzzleStreak(sprite%,obj\FirePoints[obj\SctWeapon]) ; Твоя функция создания вспышки
x#,y#,z# - позиции создания
rx#,ry#,rz# - ротации создания

Тип вспышки:
Type Muzzle
   field entity%
   field tml%
End Type
Создание вспышки:
Function CreateMuzzleStreak(Sprite%,ent%)
If Sprite% <> 0 And ent% <> 0
  local ent% = obj/FirePoints[obj\SctWeapon]
  local x# = xEntityX(ent% ,1) : local y# = xEntityY(ent% ,1) : local z# = xEntityZ(ent% ,1)
  local rx# = xEntityPitch(ent% ,1) : local ry# = xEntityYaw(ent% ,1) : local rz# = xEntityRoll(ent% ,1)
  mz.Muzzle = New Muzzle
  mz\entity = xCopyEntity(sprite)
  mz\tml = 10
  xPositionEntity mz\entity,x#,y#,z#
  xRotateEntity mz\entity,rx#,ry#,rz#
End Function
Апдейт вспышки:
Function UpdateMuzzles()
  for mz.Muzzle = Each Muzzle
  If mz\tml> 0 then 
      mz\tml= mz\tml- 1
  Else
     If mz\entity <> 0
        xFreeEntity mz\entity
        Delete mz
     End If
  End If
End Funсtion
А вообще, последние это говнокод, копировать это тупо и медленно. Но это самый простой способ.
__________________

EvilChaotic About
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо EvilChaotic за это полезное сообщение:
Arles (08.04.2010), Fatalix3d (08.01.2010), Nex (08.01.2010)
Старый 08.01.2010, 15:58   #5
Fatalix3d
Разработчик
 
Аватар для Fatalix3d
 
Регистрация: 28.12.2008
Адрес: Алматы
Сообщений: 486
Написано 252 полезных сообщений
(для 1,160 пользователей)
Ответ: Muzle Flash! Огонь из оружия!

EvilChaotic! Огромное спасибо что не поленился и все расписал!
(Offline)
 
Ответить с цитированием
Старый 14.01.2010, 12:12   #6
Colossus
Разработчик
 
Аватар для Colossus
 
Регистрация: 12.10.2008
Адрес: Самара
Сообщений: 437
Написано 55 полезных сообщений
(для 92 пользователей)
Ответ: Muzle Flash! Огонь из оружия!

а как можна замутить вспышку от выстрела как в макс пейн 2??? там она красивая ИМХО
__________________
Пекарня: Intel Core i3 - 3240(3.40Ghz), ram 8 gb, video Gigabyte Nvidia GeForce GTX 650 1gb

Лэптоп : Intel Core i3 - 2365(1.40Ghz), ram 4gb, video Int Intel HD3000(512mb)

Мой набор: 3ds Max 9 + Xors3d(Blitz3d) + Photoshop
(Offline)
 
Ответить с цитированием
Старый 14.01.2010, 22:03   #7
Reizel
Задрот
 
Аватар для Reizel
 
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений
(для 863 пользователей)
Ответ: Muzle Flash! Огонь из оружия!

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


когда был нубом делал вспышку МОДЕЛЬЮ, вы прикидываете, загрузил модель оружия, и когда стрелял делал FreeEntity для пушки, загружал (прямо в цикле ) пушку со вспышкой, давал полюбоваться ею 1 кадр и опять FreeEntityЮ загружаем модель пушки и радуемся лагам
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Harter (16.01.2010)
Старый 16.01.2010, 07:19   #8
RegIon
Элита
 
Аватар для RegIon
 
Регистрация: 16.01.2010
Адрес: Новосибирск
Сообщений: 2,157
Написано 502 полезных сообщений
(для 1,012 пользователей)
Ответ: Muzle Flash! Огонь из оружия!

А как прикрутить нормальный прицел к 3 личному шутеру( навёл прицел - попал, а не промазал)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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


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


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