![]() |
ПИК ПИК ПИК
Тут такая дрянь. Создаю бота - АнимМеш. Чтобы его пикать и на нём была декаль нужно перебирать все его чилды. Мне это не охото делать . Создаю сферу (родитель АнимМеш) растягиваю её по размеру бота. Ставлю альфа для сферы=0. Пикмод= 2.
В неподвижном состоянии декаль лепится на ура к боту. Когда привожу его в движение , пикаю на него , а св*лочи декали пикаются в том месте куда я пикнул , но не движутся!!! Что делать ??? Вот часть кода---- levelrun=CreatePivot() lpiv=CreatePivot(levelrun) ;HOLES AND SPARKS hole=LoadSprite("data/Sprites/bullet_hole.bmp") ScaleSprite hole,0.02,0.02 SpriteViewMode hole,2 EntityBlend hole,3 HideEntity hole spark=LoadSprite("data/Sprites/blood.png") ScaleSprite spark,0.025,0.025 EntityBlend spark,3 HideEntity spark ;END HOLES AND SPARKS Function makehole(hole,holes) hole=CopyEntity(hole,holes) PositionEntity hole,PickedX(),PickedY(),PickedZ(),True AlignToVector hole,-PickedNX(),-PickedNY(),-PickedNZ(),3 MoveEntity hole,0,0,-0.05 If CountChildren(holes)>200 Then FreeEntity GetChild(holes,1) End Function Function makespark(spark,sparks,count) For i=2 To count Local rv#=Rnd(-0.5,0.5) spark=CopyEntity(spark,sparks) PositionEntity spark,PickedX(),PickedY(),PickedZ(),True AlignToVector spark,-PickedNX()+Rv,-PickedNY(),-PickedNZ()+Rv,3 TurnEntity spark,Rnd (20),0,Rnd (10) Next End Function 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,-0.8 : TranslateEntity spark,0,-life/5.0,0,True ;EntityColor spark,512/life,512/life,512/life If life>1 Then FreeEntity spark : i=i-1 Next End Function holes = CreatePivot(levelrun) ; bullet hole list sparks = CreatePivot(levelrun) ; sparks list |
Ответ: ПИК ПИК ПИК
наверно нужно парентить твой декаль в момент пика к сфере бота
|
Ответ: ПИК ПИК ПИК
Хм как же я сразу не подумал (попробую) ! А я когда загружаю декаль парентю к боту ) ИМХО
|
Ответ: ПИК ПИК ПИК
Чушь какая-то
создай пивот, позиционируй его относительно модели в нужную точку, припареньть и поставь пикмоде на радиус. Задай соответствующий радиус по вертикали и горизонтали. Будет работать на 2 порядка быстрее варианта со сферой |
Часовой пояс GMT +4, время: 12:21. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot