?

Log in

Previous Entry | Next Entry

algodoo_130513_0019

Вот такой нехитрый приборчик удалось создать с помощью скрипта.

Это лазер, который раскручивает объекты и делает их жидкими. Раскручивает для того, чтобы центробежная сила разбросала полученные капли в разные стороны. (Из-за этого большие объекты разлетаются сильнее, чем маленькие).

Свойство maxRays лазера установлено в 1 - это не допускает отражений луча от поражаемых объектов (которое иначе быстро выводило лазер из строя).  Декоративная оболочка лазера находится в слое J, а сам лазер - во всех остальных слоях. Также мы сняли для лазера галочку  с Collides with water, ибо иначе тучи брызг сразу заслоняли объект.

algodoo_130513_0021

Выглядит это довольно впечатляюще! Сцена с излучателем и различными мишенями находится тут.

Сам скрипт таков:

(e)=>{

  e.geom.materialName != "LLID" ? {   ## если материал не называется "LLID", то:
      App.waterRefractiveIndex = 1;       ##     сделать всю воду в программе прозрачной
      App.waterColor = [0.8, 0.7, 1, 1];   ##     сделать всю воду в программе светло-фиолетовой
      e.geom.angvel = 120;                    ##     раскрутить
      e.geom.liquify                                 ##     расплавить
  } : {}                                                    ## иначе ничего
}

"LLID" мы назвали материал самого лазера - чтобы он случайно сам себя не попалил, если луч все-таки окажется в его слое.

Если заменить [0.8, 0.7, 1, 1] на e.geom.color, то результирующая вода будет принимать цвет того, что мы плавили.

algodoo_130513_0004

Если нарисовать объект, закрепить и мелко порезать ножиком, а затем убрать галочку с Appearence > Draw borders то получится очень реалистичное прорезание объекта по ходу луча:

algodoo_1