Эфект от выстрела
Ну знач попала пуля в стену , декали я добился а эфект пыли разлетающийся не получается. А может быть у кого-то исходник есть? Поделитесь пожалуйста если не жалко.
|
Ответ: Эфект от выстрела
Партиклы.
По сути всё просто: направление пыли - перпендикуляр к поверхности попадания. Плюс гравитация воздействующая на них. Ничего сложного. |
Ответ: Эфект от выстрела
Цитата:
|
Ответ: Эфект от выстрела
Terminator , я пошёл хитрым путём. Хочу тебя спросить , а у тебя есть функция пули??? Так вот я спрайт пули просто заменил на спрайт декали.))
Добавил такие параметры EntityRadius( в даном случае он = 0.009), коллизию поставил так: Collisions typeshot,typelevel,2,1 . Ну вот как-то так. А теперь долгожданный код: Global vs#=45; скорость нашей пули Global shot=LoadSprite ("data/Sprites/bullet_hole.bmp"); пуля как дырка HideEntity shot Type shot Field entity Field dist# End Type ;Это код самой пули Function create_Shot(x#,y#,z#,pitch#,yaw#,roll#) s.shot=New shot s\entity=CopyEntity(shot) PositionEntity s\entity,x#,y#,z#,1 EntityType s\entity,typeshot RotateEntity s\entity,pitch#,yaw#,roll#,1 ScaleSprite s\entity,0.04,0.04 EntityRadius s\entity,0.006 RotateSprite s\entity,Rnd(360) SpriteViewMode s\entity,2 Return True End Function Function update_shot() max_dist#=3000 For a.shot=Each shot MoveEntity a\entity,Rnd(0.2,0.3),0,vs# a\dist#=a\dist#+vs# bot_h = EntityCollided(a\entity,typelevel)<>0 If a\dist#>max_dist# FreeEntity a\entity Delete a Exit EndIf Next End Function ;ну и после репит if mousedown(1) create_shot(EntityX(player)-0.5,EntityY(player)+0.7,EntityZ(player),EntityPitc h(player)-2,EntityYaw(player),0) endif ;До рендерворлд update_shot() Вот и всё . А сколько я времени убил что бы этого добиться!!! Ну всё же и это меня не устраивает! Буду думать , работать. |
Ответ: Эфект от выстрела
А на си плюс плюсе, или на чем ты там работаешь, это наверное делается гораздо красивее, проще и круче?
|
Ответ: Эфект от выстрела
гы гы деколь вместо пули... интересно)))
а если делать буллет тайм)) |
Ответ: Эфект от выстрела
Код:
|
Ответ: Эфект от выстрела
Цитата:
Function updatesparks(sparks) Local i,life For i=1 To CountChildren(sparks) spark=GetChild(sparks,i) life=EntityName(spark) : life=life+1 : NameEntity spark,life MoveEntity spark,0,0,-1 : TranslateEntity spark,0,-life/5.0,0,True EntityColor spark,512/life,512/life,512/life If life>20 Then FreeEntity spark : i=i-1 Next End Function Ведь я так понял что создаётся всего лишь одна частица от выстрела? |
Ответ: Эфект от выстрела
Понятия не имею, да мне и плевать. Игроку будет всё равно, как там эти координаты находятся, ему важен результат
|
Ответ: Re: Ответ: Эфект от выстрела
Цитата:
|
Ответ: Re: Ответ: Эфект от выстрела
Цитата:
Ты продлил мне жизнь :-D Расскажи еще что-нить из серии "этот тупой блитц и умный йа" в жизни так мало юмора...:super: |
Ответ: Эфект от выстрела
Код:
Код:
Function makespark(spark,sparks,count) |
Часовой пояс GMT +4, время: 18:58. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot