Конверсия Instancer’а в геометрию #2


Type: Maya Python Script (py)
Name: ark_instToGeo
Version: 2.0
Released: 2016.12.17
Download (Save as...)

Доработал свою старую утилиту для конвертации instancer‘а в геометрию – теперь значительно быстрее, стабильнее, понимает все возможные типы вращения инстансов (rotation и aim) и показывает прогресс и пишет финальную статистику в script editor.

ark_instToGeo GUI

Использование:

  1. файл ark_instToGeo.py надо положить в любую папку, откуда Maya читает скрипты (список можно получить MEL-командой “getenv PYTHONPATH;”);
  2. запустить python-команду:
  3. from ark_instToGeo import *; ark_instToGeo()
  4. выделить instancer‘ы, которые нужно сконвертировать и нажать Convert – будет произведена конвертация, удалены static channels и применен euler filter.

Опции:

Тип конверсии:

Start from Current Frameесли включено, вне зависимости от таймлайна или выставленного вручную диапазона фреймов, начнет конвертацию с текущего фрейма;

Playback/Custom Rangeв первом случае диапазон фреймов будет взят из таймлайна, во втором – можно ввести значения начального и конечного фрейма;

Convertзапуск конвертации;

Helpлинк на эту страницу.

Posted on December 18, 2016 at 17:22 by Ark · Permalink
In: FX · Tagged with: , , , , , , , ,

25 Responses

Subscribe to comments via RSS

  1. Written by grobbio
    on 9 January 2017 at 2:08
    Permalink

    Hi! Thank you very much for your utility. But it does seem to work only with the first (the 0) item on the instancer’ list. Is this limitation normal, by design, it’s a bug, it’s me?

    Here’s the example file that does this (maya 2016 sp2):
    https://www.dropbox.com/s/rbpq3oeybrzuj5h/instancer_example.mb?dl=0

  2. Written by Ark
    on 9 January 2017 at 14:41
    Permalink

    Hi. You’re using ‘cycle’ option to randomize objects – I’ve never used it this way and haven’t accounted for that, so, yep, that’s a limitation and I will add it in the next version. But you can always use the ‘usual’ method – set ‘cycle’ to ‘none’ in instancer, create per-particle attribute with random number and plug it into ‘Object Index’. Check this scene: http://www.sigillarium.com/blog/wp-content/uploads/FILES/instToGeo_example01.zip

  3. Written by grobbio
    on 9 January 2017 at 14:51
    Permalink

    Thank you very much for your great, fast answer and suggestion!

  4. Written by James Bond
    on 10 January 2017 at 17:44
    Permalink

    Awesome! Thanks 🙂

    Might help if it was possible to stop the conversion with ESC

  5. Written by Ark
    on 13 January 2017 at 1:56
    Permalink

    Yep, I’m looking into that 🙂

  6. Written by Daniel
    on 9 May 2017 at 6:04
    Permalink

    Hello Ark! just a quick question, does this works with maya 2017? Im trying to use it and my viewport freeze when I click on convert

  7. Written by Ark
    on 12 May 2017 at 13:17
    Permalink

    Hi Daniel. It works in 2017. In this version I’ve disabled viewport update, since it’s much-much faster this way – you should see progress bars moving though, that means everything is working. If not – send me your scene and I’ll check what is going on.

  8. Written by JC
    on 15 May 2017 at 1:47
    Permalink

    Hi Ark, I created a lot of meshes using the duplicate option and it works great but all the objects are hidden within its own group, is this working correctly?…I mean, do I have to unhide them all manuallly?
    Whats the purpose of the groups and the meshes to be hidden by default?
    I´m using Maya 2017 Update 3.
    Thank You very much 🙂

  9. Written by JC
    on 15 May 2017 at 1:51
    Permalink

    Don´t worry, I ungrouped everything, my fault…thank you so much for your good work 🙂

  10. Written by Aydar
    on 5 June 2017 at 14:11
    Permalink

    Arkady, thank you, works better than on the Sawa.

  11. Written by VP
    on 8 June 2017 at 14:49
    Permalink

    This script is amazing! Thank you!

  12. Written by hengki setiawan
    on 13 June 2017 at 5:26
    Permalink

    thanks for this script, the script its so cool 😀

  13. Written by NNN
    on 14 July 2017 at 8:12
    Permalink

    I can’tt convert instancer to geometry by using the rotate expression.
    it said the problem is from line 397. (list index out of range)
    Other thing else is fine.
    Please help!

  14. Written by Ark
    on 14 July 2017 at 13:50
    Permalink

    Rotation expressions should work. Please, drop me a simplified scene with this problem and I’ll take a look.

  15. Written by Elaine
    on 14 July 2017 at 18:28
    Permalink

    Getting an error on convert, is there something I am missing or need to try?

    C:/Users/name/Documents/maya/2016/scripts\ark_instToGeo.py line 198: No object matches name: Dressing01ModelGeoPublish_v004:forest_2:rotation.instanceAttributeMapping #

  16. Written by Ark
    on 14 July 2017 at 19:09
    Permalink

    Please, check if the sample scene works for you:
    http://www.sigillarium.com/blog/wp-content/uploads/FILES/instToGeo_example01.zip

    And email me your scene with the problem.

  17. Written by Elaine
    on 14 July 2017 at 20:25
    Permalink

    Ark, example scene works great!

    Emailing scene in the next 10 mins.

  18. Written by Elaine
    on 14 July 2017 at 20:39
    Permalink

    Email sent, subject line

    “No object matches name: Dressing01ModelGeoPublish_v004:forest_2:rotation.instanceAttributeMapping #”

  19. Written by Chris Leathers
    on 27 July 2017 at 3:49
    Permalink

    this is awesome, just what I needed great script.

  20. Written by Srinivas Tentu
    on 8 August 2017 at 5:08
    Permalink

    Hi Ark, Congrats for developing a wonderful script.

    I created a lot of meshes using the instance option and it works great but all the objects are hidden within its own group. Do I have to unhide them all manuallly? Whats the purpose of the groups and the meshes to be hidden by default?

    How to unhide all the meshes without manually unhiding one by one? Is there any possibility to do that. It’s urgent requirement for me.

    Ungrouping all the meshes looses animation keys as keys are applied to group nodes. How to solve this?

    Any help would be highly appreciated.
    Thanks a lot for a great script.

  21. Written by Srinivas Tentu
    on 8 August 2017 at 5:47
    Permalink

    Got the solution unhiding all the meshes in groups.
    Used Select > Hierarchy option to select all the meshes inside the group nodes and visibility turned on for all the meshes in a single click.

    Wonderful script & working great.
    Thanks a lot again.

  22. Written by Ark
    on 8 August 2017 at 10:23
    Permalink

    Hi Srinivas. Yes, the script just takes whatever settings you have on your original objects, including animations and so on. So, to make duplicates/instances visible, you need to have original objects visible.

  23. Written by Andy Howell
    on 18 August 2017 at 14:17
    Permalink

    Just used your script, worked a treat.
    Thank you very much

    Brilliant Stuff !!!

  24. Written by tamanegi
    on 16 September 2017 at 7:28
    Permalink

    Started a conversion on a scene with about 500,000 particles instanced by a small 4 poly pyramid, set the range to be one frame – its been running for the past 2 hours – pretty fast system. Think that’s normal to take so long? I can’t see the status bar as I opened a window over Maya and if I try to bring Maya back to the front it never refreshes the window to see if its processing.

  25. Written by Ark
    on 16 September 2017 at 9:01
    Permalink

    The problem is in the task you’re trying to accomplish – 500,000 separate objects in maya scene is a heavy thing, 4-poly or even empty groups. Instances are even slower. I haven’t done more than 100,000 (duplicates), it took about 10min to convert. Working with such a scene was very problematic though. So, try smaller particle count and duplicates mode, if it’s fast enough for you, switch to instances (if you need them, of course), then increase particle count.

Subscribe to comments via RSS

Leave a Reply