1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

Интервалы рождения частиц

Тема в разделе "MAXScript", создана пользователем -VZ-, 28 мар 2007.

Модераторы: Savin Denis
  1. -VZ-

    -VZ- Активный участник

    С нами с:
    24.01.2006
    Сообщения:
    47
    Симпатии:
    0
    Баллы:
    5
    Добрый день уважаемые!
    У меня вот такой вопрос:
    Как сделать, чтобы частицы в ParticleFllow рождались через некоторый интервал с помощю BirthScript?
    Для рожения я использую addParticle().
    Код:
    t2 = pCont.getTimeEnd() as float
    В цыкле у меня такой код:
    Код:
    pCont.AddParticle()
    pCont.particleIndex =pCont.NumParticles()
    pCont.particleTime = t2/160
    pCont.particleAge = 0
    
    В даном случае частицы будут рождатся каждый кадр. Если я начну менять
    Код:
    pCont.particleTime = t2/160
    например на
    Код:
    pCont.particleTime = t2/32
    то тогда у меня частицы вилетают с нужным интервалом, но когда цыкл закончился - цастицы продолжают рождатся до какогото времени. Выходит, что они рождаються каждый кадр, а двигаться начинают через t2/32 кадра. А мне нужно чтобы они рождались, например через t2/32 кадра и начинали движение, или чтобы в нужний момент не начинали движение.

    Заранее благодарю за помощь!

    Если чтото не понятно - пишите что и я попробую исправить.
     
  2. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    Просто не создавай частицу в это время
    Например:
    Код:
    		if sin(0.5*curTime) > .5 do 
    			(			
    			pCont.AddParticle()
    			pCont.particleIndex = pCont.NumParticles() -- last particle that was added
    			pCont.particleTime = curTime/160
    			pCont.particleAge = 0
    			pCont.particlePosition =  [sh*sin(ang), sh*cos(ang), 0]
    			pCont.particleSpeed = [0.01*sin(ang), 0.01*cos(ang), -0.005]
    			)
     
Модераторы: Savin Denis

Поделиться этой страницей