Does anyone have an export to AE workflow that functions with H21.0.440? I tried dom__AEexport__2.1 but it doesn't seem to load.
Thanks! T
Found 14638 posts.
Search results Show results as topic list.
Houdini Lounge » H21 Exporting to After Effects?
-
- Terence Ziegler
- 68 posts
- オフライン
News » SideFX website maintenance this Sunday Nov.9th 10am ET
-
- chrism
- 2601 posts
- オフライン
This Sunday at 10am we are doing maintenance on our SideFX servers (for 6 hours). During this time no one will be able to purchase a new Houdini license or move any Houdini licenses. Our site will be in read-only mode.
Houdini Indie and Apprentice » Breaking Geometry Into Rectangles
-
- Faraz94
- 1 posts
- オフライン
Hey everyone! Houdini newbie here. can anyone help me figure out how to automatically create only rectangular segments from a mesh?
Thanks
Thanks
Solaris and Karma » OTLs breaking on import from 20.5 to 21.0
-
- dale.voges
- 3 posts
- オフライン
I have a bit of a weird bug that I stumbled onto.
The studio that I work at would like to jump to Houdini 21. I've set up all our envs to read all of our olts same as always.
Everything reads in fine. I've I have the verbosity switched on I can see no errors.
In houdini obj level I can drop down nodes as usual. But when i switch to solaris any of our previously created hdas wont read in at all.
Traceback (most recent call last):
File "Tool::TF::lop_tf_env_lightrig::0.0.2", line 2, in <module>
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1492, in new_func
return function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\objecttoolutils.py", line 492, in genericTool
node = toolutils.genericTool(scriptargs, nodetypename, nodename,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1492, in new_func
return function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1614, in genericTool
(child, newnode) = createNodeInContainer(container, nodetypecategory,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1464, in createNodeInContainer
parent = container.createNode(subnettypename, container_name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\houpythonportion\ui.py", line 1158, in decorator
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\hou.py", line 16668, in createNode
return _hou.Node_createNode(self, node_type_name, node_name, run_init_scripts, load_contents, exact_type_name, force_valid_node_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hou.OperationFailed: The attempted operation failed.
Invalid node name
The weird thing is that i can still drop the node with python, without any issue
hou.node('/stage').createNode('tf_env_lightrig')
The only thing that i can vaguely see in the error message is that its got an extra lop_ in the name in the error
Tool::TF::lop_tf_env_lightrig::0.0.2
Does anyone have anything that could point me in a direction?
The studio that I work at would like to jump to Houdini 21. I've set up all our envs to read all of our olts same as always.
Everything reads in fine. I've I have the verbosity switched on I can see no errors.
In houdini obj level I can drop down nodes as usual. But when i switch to solaris any of our previously created hdas wont read in at all.
Traceback (most recent call last):
File "Tool::TF::lop_tf_env_lightrig::0.0.2", line 2, in <module>
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1492, in new_func
return function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\objecttoolutils.py", line 492, in genericTool
node = toolutils.genericTool(scriptargs, nodetypename, nodename,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1492, in new_func
return function(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1614, in genericTool
(child, newnode) = createNodeInContainer(container, nodetypecategory,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\toolutils.py", line 1464, in createNodeInContainer
parent = container.createNode(subnettypename, container_name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\houpythonportion\ui.py", line 1158, in decorator
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.440/houdini/python3.11libs\hou.py", line 16668, in createNode
return _hou.Node_createNode(self, node_type_name, node_name, run_init_scripts, load_contents, exact_type_name, force_valid_node_name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hou.OperationFailed: The attempted operation failed.
Invalid node name
The weird thing is that i can still drop the node with python, without any issue
hou.node('/stage').createNode('tf_env_lightrig')
The only thing that i can vaguely see in the error message is that its got an extra lop_ in the name in the error
Tool::TF::lop_tf_env_lightrig::0.0.2
Does anyone have anything that could point me in a direction?
Technical Discussion » Houdini 21.0.440 / Pop Axis Force Guide not showing.
-
- Synthetic_Distractions
- 1 posts
- オフライン
As the title suggests, when diving into the vellum solver and adjusting the Pop Axis Force type / parameters I can't seem to find a way to get the proper guide(s) to display.
Unsure if I may have disabled something that may be hiding the guide so I'm hoping some Houdini experts out there may have some insight!
Thanks

Unsure if I may have disabled something that may be hiding the guide so I'm hoping some Houdini experts out there may have some insight!
Thanks

Solaris and Karma » change sceneGraph prim icons
-
- martinkindl83
- 287 posts
- オフライン
Is there some way how to change default sceneGraph icons to some other icons or revert back to the old ones?
Copernicus » Compositing an HDRI image in Copernicus
-
- HUGHSPEERS
- 86 posts
- オフライン
It would be great to explore HDRI image manipulation in copernicus as animated reflection and light maps for motion graphics.
I've started with trying to distort an image and checking its projection back on a sphere.
Not as simple as I expected - weighting distortion with a horizontal ramp to spread the pixels out for the poles at the top and bottom of the image. weighted distortion graphics [graphicdesign.stackexchange.com]
Any ideas/suggestions/recommendations much appreciated thanks!
I've started with trying to distort an image and checking its projection back on a sphere.
Not as simple as I expected - weighting distortion with a horizontal ramp to spread the pixels out for the poles at the top and bottom of the image. weighted distortion graphics [graphicdesign.stackexchange.com]
Any ideas/suggestions/recommendations much appreciated thanks!
Edited by HUGHSPEERS - 2025年11月4日 08:18:38
Solaris and Karma » Mplay Karma - Render Stats open by default
-
- tomwcutler
- 28 posts
- オフライン
Is it possible to have Mplay open with Render Stats already visible and set to a specific zoom? Having to manually do this every time seems tragic
Technical Discussion » Help with Custom Plugin to Store Arbitrary Data in Bytes
-
- CarterDD
- 1 posts
- オフライン
Hello everyone,
I am looking for some assistance with creating a custom plugin through the HDK that stores data in the Houdini scene that is able to be modified and is persistent to the file.
The data will be brought into the node as a byte-stream (std::byte*) and then held in a buffer of a known size which I will want to read and modify if needed.
Methods I have tried so far:
1. Following the SOP_BlindData.C example:
I was not able to get this example to build in H19.5.605 and get a few errors:
/src/houdini/plugin/SOP_BlindData.h:17:25: error: expected ‘;’ at end of member declaration
17 | const char *inputLabel(OP_InputIdx idx) const override;
| ^~~~~~~~~~
| ;
/src/houdini/plugin/SOP_BlindData.h:17:47: error: expected ‘)’ before ‘idx’
17 | const char *inputLabel(OP_InputIdx idx) const override;
| ~ ^~~~
| )
/src/houdini/plugin/SOP_BlindData.h:19:25: error: ‘OP_ERROR HDK_Sample::SOP_BlindData::save(std::ostream&, const OP_SaveFlags&, const char*, const UT_StringHolder&)’ marked ‘override’, but does not override
19 | OP_ERROR save(std::ostream &os,
| ^~~~
/src/houdini/plugin/SOP_BlindData.C:57:1: error: ‘const char* HDK_Sample::SOP_BlindData::inputLabel’ is not a static data member of ‘class HDK_Sample::SOP_BlindData’
57 | SOP_BlindData::inputLabel(OP_InputIdx) const
| ^~~~~~~~~~~~~
/src/houdini/plugin/SOP_BlindData.C:57:27: error: ‘OP_InputIdx’ was not declared in this scope; did you mean ‘OP_Input’?
57 | SOP_BlindData::inputLabel(OP_InputIdx) const
| ^~~~~~~~~~~
| OP_Input
/src/houdini/plugin/SOP_BlindData.C: In member function ‘OP_ERROR HDK_Sample::SOP_BlindData::save(std::ostream&, const OP_SaveFlags&, const char*, const UT_StringHolder&)’:
/src/houdini/plugin/SOP_BlindData.C:69:61: error: ‘UT_String::UT_String(const UT_StringRef&)’ is private within this context
69 | if (SOP_Node::save(os, flags, path_prefix, name_override) >= UT_ERROR_ABORT)
| ^
In file included from
.../src/houdini/plugin/SOP_BlindData.C:1:
/dd/tools/stores/commercial/houdini/19.5.605/cent7_64/toolkit/include/UT/UT_String.h:129:5: note: declared private here
129 | UT_String(const UT_StringRef &);
| ^~~~~~~~~
gmake: *** Error 1
gmake: *** Error 2
gmake: *** Error 2
error: failed with status 2
I remember reading some UT_String related changes in the HDK changelog so I'm not sure if it's an issue with the example not being updated for the latest version of the HDK.
2. Saving as a Node Variable:
UsingOPgetDirector()->getCommandManager()->setVariable(varName, varValue, 0); to save to the base Houdini node / and OPgetDirector()->getCommandManager()->getVariable(varName, buffer); to load from it, works as long as the value is a const char* but does not work for bytes and casting the bytes to const char* causes issues because a value {0} byte seems to be interpreted as a string terminator.
3. Saving as to the UserDataDict:
Similarly I tried using the UserData with:
OPgetDirector()->setUserData(key, value, 0);
bool error = OPgetDirector()->getUserData(key, buffer);
but again, it only works with UT_StringHolder values, and when the bytes are used directly in the constructor, we run into a byte 0 issue which causes the string to be empty. To get around this, I tried to do a memcpy to the location of the UT_StringHolder in memory, but this would cause either the string to get terminated early or it would cause larger issues where the string would contain other information that was nearby in memory.
If the byte array did not contain a {0} everything would work as expected but the implementation needs to be able to handle all possible values.
4. Serializing the data into integers:
This was more of a last ditch effort as the byte could be quite large (30-300MB) and so converting the bytes to their integer representation and then saving this as a string "works" in that it doesn't immediately break, but it requires 3x the storage footprint and takes minutes to convert between the data types and so is not a reasonable solution.
5. Modify the input to be a JSON string instead of a byte-stream:
This is a solution we are open to exploring, since getting the data as JSON may be a feature in the future, but initial investigation has not lead anywhere as it seems that the HDK mostly assumes that you are receiving JSON data from a file through an IStream instead of allowing the input to be a JSON formatted string.
In the end, a solution that does not make use of an external file is required for our purposes as well as one that allows for a simple way to store an arbitrarily sized byte buffer to a node in the scene that can be read and written to, with resizing and reallocs if necessary.
This has already been accomplished in Maya with a plugin and custom node (MPxNode https://help.autodesk.com/view/MAYADEV/2025/ENU/?guid=MAYA_API_REF_cpp_ref_class_m_px_node_html) utilizing a custom attribute (MPxData https://help.autodesk.com/view/MAYADEV/2025/ENU/?guid=MAYA_API_REF_cpp_ref_class_m_px_data_html) by implementing both the readBinary and writeBinary attributes along with storing the data to a simple std::byte*, and so hopefully something can be accomplished in Houdini that is similar.
Thank you for any help or insight you can provide.
I am looking for some assistance with creating a custom plugin through the HDK that stores data in the Houdini scene that is able to be modified and is persistent to the file.
The data will be brought into the node as a byte-stream (std::byte*) and then held in a buffer of a known size which I will want to read and modify if needed.
Methods I have tried so far:
1. Following the SOP_BlindData.C example:
I was not able to get this example to build in H19.5.605 and get a few errors:
/src/houdini/plugin/SOP_BlindData.h:17:25: error: expected ‘;’ at end of member declaration
17 | const char *inputLabel(OP_InputIdx idx) const override;
| ^~~~~~~~~~
| ;
/src/houdini/plugin/SOP_BlindData.h:17:47: error: expected ‘)’ before ‘idx’
17 | const char *inputLabel(OP_InputIdx idx) const override;
| ~ ^~~~
| )
/src/houdini/plugin/SOP_BlindData.h:19:25: error: ‘OP_ERROR HDK_Sample::SOP_BlindData::save(std::ostream&, const OP_SaveFlags&, const char*, const UT_StringHolder&)’ marked ‘override’, but does not override
19 | OP_ERROR save(std::ostream &os,
| ^~~~
/src/houdini/plugin/SOP_BlindData.C:57:1: error: ‘const char* HDK_Sample::SOP_BlindData::inputLabel’ is not a static data member of ‘class HDK_Sample::SOP_BlindData’
57 | SOP_BlindData::inputLabel(OP_InputIdx) const
| ^~~~~~~~~~~~~
/src/houdini/plugin/SOP_BlindData.C:57:27: error: ‘OP_InputIdx’ was not declared in this scope; did you mean ‘OP_Input’?
57 | SOP_BlindData::inputLabel(OP_InputIdx) const
| ^~~~~~~~~~~
| OP_Input
/src/houdini/plugin/SOP_BlindData.C: In member function ‘OP_ERROR HDK_Sample::SOP_BlindData::save(std::ostream&, const OP_SaveFlags&, const char*, const UT_StringHolder&)’:
/src/houdini/plugin/SOP_BlindData.C:69:61: error: ‘UT_String::UT_String(const UT_StringRef&)’ is private within this context
69 | if (SOP_Node::save(os, flags, path_prefix, name_override) >= UT_ERROR_ABORT)
| ^
In file included from
.../src/houdini/plugin/SOP_BlindData.C:1:
/dd/tools/stores/commercial/houdini/19.5.605/cent7_64/toolkit/include/UT/UT_String.h:129:5: note: declared private here
129 | UT_String(const UT_StringRef &);
| ^~~~~~~~~
gmake: *** Error 1
gmake: *** Error 2
gmake: *** Error 2
error: failed with status 2
I remember reading some UT_String related changes in the HDK changelog so I'm not sure if it's an issue with the example not being updated for the latest version of the HDK.
2. Saving as a Node Variable:
UsingOPgetDirector()->getCommandManager()->setVariable(varName, varValue, 0); to save to the base Houdini node / and OPgetDirector()->getCommandManager()->getVariable(varName, buffer); to load from it, works as long as the value is a const char* but does not work for bytes and casting the bytes to const char* causes issues because a value {0} byte seems to be interpreted as a string terminator.
3. Saving as to the UserDataDict:
Similarly I tried using the UserData with:
OPgetDirector()->setUserData(key, value, 0);
bool error = OPgetDirector()->getUserData(key, buffer);
but again, it only works with UT_StringHolder values, and when the bytes are used directly in the constructor, we run into a byte 0 issue which causes the string to be empty. To get around this, I tried to do a memcpy to the location of the UT_StringHolder in memory, but this would cause either the string to get terminated early or it would cause larger issues where the string would contain other information that was nearby in memory.
If the byte array did not contain a {0} everything would work as expected but the implementation needs to be able to handle all possible values.
4. Serializing the data into integers:
This was more of a last ditch effort as the byte could be quite large (30-300MB) and so converting the bytes to their integer representation and then saving this as a string "works" in that it doesn't immediately break, but it requires 3x the storage footprint and takes minutes to convert between the data types and so is not a reasonable solution.
5. Modify the input to be a JSON string instead of a byte-stream:
This is a solution we are open to exploring, since getting the data as JSON may be a feature in the future, but initial investigation has not lead anywhere as it seems that the HDK mostly assumes that you are receiving JSON data from a file through an IStream instead of allowing the input to be a JSON formatted string.
In the end, a solution that does not make use of an external file is required for our purposes as well as one that allows for a simple way to store an arbitrarily sized byte buffer to a node in the scene that can be read and written to, with resizing and reallocs if necessary.
This has already been accomplished in Maya with a plugin and custom node (MPxNode https://help.autodesk.com/view/MAYADEV/2025/ENU/?guid=MAYA_API_REF_cpp_ref_class_m_px_node_html) utilizing a custom attribute (MPxData https://help.autodesk.com/view/MAYADEV/2025/ENU/?guid=MAYA_API_REF_cpp_ref_class_m_px_data_html) by implementing both the readBinary and writeBinary attributes along with storing the data to a simple std::byte*, and so hopefully something can be accomplished in Houdini that is similar.
Thank you for any help or insight you can provide.
Edited by CarterDD - 2025年11月3日 20:14:54
Technical Discussion » Create Reference Copy but in another geo node?
-
- olivierth
- 1171 posts
- オフライン
Hi!
I often use the Right-click -> Action -> Create Reference Copy in sops so one node "drives" the other one. What if I whant that node be in another geo node?
Lets say I have a Color sop in geo1 and I want a reference in geo2? Any easy way of doing this?
-Olivier
I often use the Right-click -> Action -> Create Reference Copy in sops so one node "drives" the other one. What if I whant that node be in another geo node?
Lets say I have a Color sop in geo1 and I want a reference in geo2? Any easy way of doing this?
-Olivier
Technical Discussion » RenderVar support for H21 ShotBuilder
-
- Mark Wallman
- 741 posts
- オフライン
Hi.
Is renderVar support on the horizon for Shot Builder (inside the Shot Layer Edit). AdditionalRenderVars but ideally KaramStandardRenderVars?
Not sure if I should log an RFE or it is already something that is happening.
Thanks. Mark
Is renderVar support on the horizon for Shot Builder (inside the Shot Layer Edit). AdditionalRenderVars but ideally KaramStandardRenderVars?
Not sure if I should log an RFE or it is already something that is happening.
Thanks. Mark
Houdini Indie and Apprentice » how to load Otto Muscle and Tissue Simulation racipes
-
- jimejime.shadow
- 1 posts
- オフライン
Hello, I'm using Houdini on steam.
As the title says, I can't find this recipe.
It works in the FX I use for work.
Is it not included in the Steam version, or do I need to install the recipe
As the title says, I can't find this recipe.
It works in the FX I use for work.
Is it not included in the Steam version, or do I need to install the recipe
Solaris and Karma » feather shading
-
- Rouhollah
- 1 posts
- オンライン
Hi all,
I'm lookdeving a bird. can render feathers as procedurals as advised in documentation, all good. the part I'm having a road block with is trying to assign separate shaders to feather barbs and their shafts. atm they're treated as one. so need some sort of masking so I can isolate shafts.
cheers,
R
I'm lookdeving a bird. can render feathers as procedurals as advised in documentation, all good. the part I'm having a road block with is trying to assign separate shaders to feather barbs and their shafts. atm they're treated as one. so need some sort of masking so I can isolate shafts.
cheers,
R
Houdini Indie and Apprentice » Preview textures
-
- toonafish
- 550 posts
- オフライン
Does someone know how one can view the textures that are used in materials in Houdini ? I don’t mean in the viewport, but just a preview somehow somewhere in Houdini.
I’m currently working on a scene where a lot of textures are changing a lot, and I constantly have to check with windows file manager what the textures that are used look like since there’s no visual feedback whatsoever, like maybe a preview in the texture VOP as in most 3d apps, or anywhere else, only a path with the texture name.
I’m currently working on a scene where a lot of textures are changing a lot, and I constantly have to check with windows file manager what the textures that are used look like since there’s no visual feedback whatsoever, like maybe a preview in the texture VOP as in most 3d apps, or anywhere else, only a path with the texture name.
Houdini for Realtime » "Checksum did not match" for SideFXLabs21.0
-
- molin
- 1 posts
- オフライン
Hello, I've just installed Houdini 21.0.512 and I tried installing SideFX Labs 20.0 Production Build (version 21.0.512)
I'm getting "Checksum did not match" every time.
Attached image shows the error.
What do I do?
Thanks in advance.
I'm getting "Checksum did not match" every time.
Attached image shows the error.
What do I do?
Thanks in advance.
Rigging » metahuman for houdini on linux
-
- Mirko Jankovic
- 273 posts
- オフライン
Is there a way to have metahuman working on linux as well?
Maybe I missed something.. metahuman tools there is windows installer but still maybe some other way to have them working on linux as well?
Maybe I missed something.. metahuman tools there is windows installer but still maybe some other way to have them working on linux as well?
Houdini Lounge » ML Liquid Simulation
-
- ZoeEdwards
- 4 posts
- オフライン
Hey Everybody,
I've recently finished my experiments with the new ML tools from the 21 update. While figuring out the new nodes I struggled to find resources on setting up a basic network so I've made a quick tutorial on my Artstation blog: Link to blog post here [zoeedwards.artstation.com]
I hope you enjoy
I've recently finished my experiments with the new ML tools from the 21 update. While figuring out the new nodes I struggled to find resources on setting up a basic network so I've made a quick tutorial on my Artstation blog: Link to blog post here [zoeedwards.artstation.com]
I hope you enjoy
Edited by ZoeEdwards - 2025年10月30日 09:14:06
Technical Discussion » can the copernicus block feed back iteration num?
-
- luoqiulin
- 323 posts
- オフライン
Hi
in copnet, i want sopimport many geometry. so maybe block loop is the best way. but with out iteration feed back, i don't know how to loop the geometries. am i miss something or it's imporissable ?
in copnet, i want sopimport many geometry. so maybe block loop is the best way. but with out iteration feed back, i don't know how to loop the geometries. am i miss something or it's imporissable ?
Houdini Lounge » Two minute papers Weta under water bubbles
-
- Hip-Freak
- 20 posts
- オフライン
Hi,
It could be great to get this new tech in Houdini..
https://www.youtube.com/watch?v=OZz5PonQKu8 [www.youtube.com]
It could be great to get this new tech in Houdini..
https://www.youtube.com/watch?v=OZz5PonQKu8 [www.youtube.com]
Houdini Engine API » How GAS_ProjectNonDivergent node works?
-
- mois23
- 19 posts
- オフライン
Hi There,
I'm just getting started with HDK and wanted to understand a couple of things. Specifically, I'm studying the methods Houdini uses to make a field (vel) divergent-free. Basically, I'd like to rebuild a very simple ProjectNonDivergent node with some basic operations (matrix construction, application of the Conjugate Gradient Method with precondition, etc.), but first I wanted to try reading the source code to understand its structure and the calculations it performs. All for educational purposes only.
Among the installation files, I can only see the header
\toolkit\include\GAS\GAS_ProjectNonDivergent.h
but nothing about any C code.
Would someone be kind enough to tell me if I can find pseudocode or basic code online to understand how it works in Houdini?
Any help would be great
Many thanks!
I'm just getting started with HDK and wanted to understand a couple of things. Specifically, I'm studying the methods Houdini uses to make a field (vel) divergent-free. Basically, I'd like to rebuild a very simple ProjectNonDivergent node with some basic operations (matrix construction, application of the Conjugate Gradient Method with precondition, etc.), but first I wanted to try reading the source code to understand its structure and the calculations it performs. All for educational purposes only.
Among the installation files, I can only see the header
\toolkit\include\GAS\GAS_ProjectNonDivergent.h
but nothing about any C code.
Would someone be kind enough to tell me if I can find pseudocode or basic code online to understand how it works in Houdini?
Any help would be great
Many thanks!
-
- Quick Links








