Fbx importer/preview with python script

   2471   5   0
User Avatar
Member
11 posts
Joined: 1月 2009
Offline
Hello, guys, I have a problem here im sure you can help me.
i want to execute the python one time, so i can use rop fetch for preview, but i only want one fbx each time, Now the python script import, bring everything at once.

i want to process the fbx's one at a time.

In the houdini support sugest a partitioner, but i can figure out how to use.

dropbox link with the scene and 2 fbx files for test

https://www.dropbox.com/sh/a5wwzwz3kqu71di/AAB0T0HJCo9fNM-WP2Smda74a?dl=0 [www.dropbox.com]


thanks for your time
Edited by buho1983 - 2020年7月6日 16:30:28
User Avatar
スタッフ
586 posts
Joined: 5月 2014
Offline
The work items in a Python Script node cook in-process by default. In order to configure how many work items run at the same time you'll need to add an In Process Scheduler to your graph, which exposes configuration options for in process work items. Set the In Process Scheduler as the scheduler override on the Python Script node, and enabled the “Single” option on the scheduler. Alternatively, after setting the scheduler override you can add the Single scheduler parameter to the Python Script node using the steps described here: https://www.sidefx.com/docs/houdini/tops/schedulers.html#jobparms [www.sidefx.com]

The in-process scheduler was added in H18.0.385, so you'll need to use that version or newer.
Edited by tpetrick - 2020年7月6日 16:34:19
User Avatar
Member
11 posts
Joined: 1月 2009
Offline
tpetrick
The work items in a Python Script node cook in-process by default. In order to configure how many work items run at the same time you'll need to add an In Process Scheduler to your graph, which exposes configuration options for in process work items. Set the In Process Scheduler as the scheduler override on the Python Script node, and enabled the “Single” option on the scheduler. Alternatively, after setting the scheduler override you can add the Single scheduler parameter to the Python Script node using the steps described here: https://www.sidefx.com/docs/houdini/tops/schedulers.html#jobparms [www.sidefx.com]

The in-process scheduler was added in H18.0.385, so you'll need to use that version or newer.


tpetrick thanks for your help, i tried your suggestion but still have the same problem, the python script import all the fbx first.

https://www.dropbox.com/s/m6zq61176vceyhb/Mocap_opengl_tasks_v07.hiplc?dl=0 [www.dropbox.com]
User Avatar
スタッフ
586 posts
Joined: 5月 2014
Offline
Do you mean that you want them to cook one at a time, all the way to the bottom of the graph? In that case you should use a Feedback Loop, which cooks each loop iteration sequentially.
User Avatar
Member
11 posts
Joined: 1月 2009
Offline
tpetrick
Do you mean that you want them to cook one at a time, all the way to the bottom of the graph? In that case you should use a Feedback Loop, which cooks each loop iteration sequentially.

sorry for the delay in answering, i think is working now, sometimes Houdini crashes.

To use ffmpeg how i can do, wait for all sends me an error inside feedback loop. And something weird is happening when i try to convert to vídeo, ffmpeg corrupts input files.
User Avatar
スタッフ
586 posts
Joined: 5月 2014
Offline
Looking at your file again, the problem with your FFMPEG node is that it has the Frame List file set to @pdg_input. The FFMPEG node will write out a text file containing the list of images to conver into a movie – that parameter determines the path to the file. That means your FFMPEG node is overwriting the contents of the first input file with the frame list text data.

Unless you need to use a custom frame list file for a specific reason, you should leave it as the default value. By default the FFMPEG node will automatically create a movie from all of the images on the input work item, you don't need to try to tell it to use @pdg_input anywhere.

It's not possible to use a wait for all inside of a loop as that would create a cycle. Loop iteration 1 must complete before loop iteration 2 can begin, but if you put a wait for all node then your graph would need all iterations to finish before any iteration can finish, which of course can't happen.

It depends what you're trying to do. If you want one movie per loop, then just wire the FFMPEG node after the loop end block, so it can produce a movie from the output images of that iteration. If you want one movie for the whole graph, put a wait for all after the loop end block and then the FFMPEG node.
Edited by tpetrick - 2020年7月7日 20:52:10
  • Quick Links