UVをレイアウトする際に、メッシュ間の距離が近いUV島同士を、ある程度固まらせてレイアウトさせたいです。
手元では、以下の方法でトライしてみました。
1.距離が近いもの同士をグループ化して、個別にレイアウトを実行する。
2.「UVLayout」の「Connectivity」を利用して、1のレイアウトを維持したまま全体をレイアウトする。
しかし、この方法では、以下2つの問題が出ます。
・パディング間隔が均一ではない。
・無駄なUV領域が多い。
こちら解決策などありますでしょうか。
よろしくお願いいたします。
Found 14519 posts.
Search results Show results as topic list.
日本語フォーラム » メッシュ間の距離を考慮してUVをレイアウトする方法
-
- tealike
- 2 posts
- Offline
Technical Discussion » I want to put a noise texture on a circle.
-
- yu_fsns
- 17 posts
- Offline
I have a question about a texture expression in Houdini that I don't understand.
The image is of a similar object created in 3dsmax and Houdini.
The image is of a circle shape that is created by assigning a noise texture to a flat surface, bending it, and moving it toward the center.
However, the number of polygons is quite different between the two, and Houdini uses Point Color, which results in a huge polygon count.
Therefore, I wanted to express this in Houdini with textures,
I tried to do this in Houdini, but it didn't work.
The second image is a Houdini setting, but the UV should be expanded to be a circle in relation to the bent circle. However, I could not figure out the cause of the parallel projection.
I was wondering if it is possible to use material settings instead of Point Color to express this in the same way as in 3dsmax?
Thanks for taking a look.
The image is of a similar object created in 3dsmax and Houdini.
The image is of a circle shape that is created by assigning a noise texture to a flat surface, bending it, and moving it toward the center.
However, the number of polygons is quite different between the two, and Houdini uses Point Color, which results in a huge polygon count.
Therefore, I wanted to express this in Houdini with textures,
I tried to do this in Houdini, but it didn't work.
The second image is a Houdini setting, but the UV should be expanded to be a circle in relation to the bent circle. However, I could not figure out the cause of the parallel projection.
I was wondering if it is possible to use material settings instead of Point Color to express this in the same way as in 3dsmax?
Thanks for taking a look.
Technical Discussion » Regarding the error reported by inlinecpp inline function
-
- nihilisticking
- 1 posts
- Offline
I can't find the reason for the error when using inlinecpp custom function. It doesn't work with 19.0 or 19.5.752. How can I solve it? The current version is 19.5.716
Technical Discussion » How to hold the bounding box in Pyro Sparse solver
-
- Dsharp K
- 20 posts
- Offline
I was working with pyro in houdini, converting it to vdb and importing it into ue after exporting. But as you can see in the gif, this volume was moving on its own, it looked like it was moving every time the bounding box got bigger.
After hours of trying to figure out why, I realized that this behavior coincided with the timing of the transform matrix value of intrinsic on a volume created in houdini.
When I forced this value to identity matrix in houdini, I was able to see the same behavior I was seeing in UE5.3.
So far, my theory is that the vdb I exported from houdini doesn’t recognize or ignores the transform matrix in UE5.3 for some reason.


Here is a vdb with the same pyro solver, but the difference between them is the use of
'gas resize fluid dynamic dop'.
The first gif is a bounding box that has not been re-dynamic resized but is fixed in sufficient size, and the second gif is re-dynamic resized.
When I checked these two vdb in the geometry spreadsheet, this issue was occurring at the UE depending on whether the transform attribute of the intrinsic was fixed or not.

Just in case, I forcibly changed the transform attribute into a unit matrix, but it was meaningless, and even if I newly configured the bounding box through the vdb combination, the transform attribute was still moving in flux.
In the end, Houdini needs a way to determine whether pyrovdb cannot be sent to UE using a sparse solver, or how to modify the transform intrinsic to come out as intended.
(This issue is the same question that was posted on UE dev forum)
https://forums.unrealengine.com/t/openvdb-is-moving-around-on-its-own-on-ue5-3-transform-forcibly-recognized-as-a-identity-matrix/1322031?u=dsharp_k [forums.unrealengine.com]
After hours of trying to figure out why, I realized that this behavior coincided with the timing of the transform matrix value of intrinsic on a volume created in houdini.
When I forced this value to identity matrix in houdini, I was able to see the same behavior I was seeing in UE5.3.
So far, my theory is that the vdb I exported from houdini doesn’t recognize or ignores the transform matrix in UE5.3 for some reason.


Here is a vdb with the same pyro solver, but the difference between them is the use of
'gas resize fluid dynamic dop'.
The first gif is a bounding box that has not been re-dynamic resized but is fixed in sufficient size, and the second gif is re-dynamic resized.
When I checked these two vdb in the geometry spreadsheet, this issue was occurring at the UE depending on whether the transform attribute of the intrinsic was fixed or not.

Just in case, I forcibly changed the transform attribute into a unit matrix, but it was meaningless, and even if I newly configured the bounding box through the vdb combination, the transform attribute was still moving in flux.
In the end, Houdini needs a way to determine whether pyrovdb cannot be sent to UE using a sparse solver, or how to modify the transform intrinsic to come out as intended.
(This issue is the same question that was posted on UE dev forum)
https://forums.unrealengine.com/t/openvdb-is-moving-around-on-its-own-on-ue5-3-transform-forcibly-recognized-as-a-identity-matrix/1322031?u=dsharp_k [forums.unrealengine.com]
Edited by Dsharp K - Oct. 5, 2023 01:07:24
Houdini Lounge » KineFX: How to create seamless loop with secondary motion?
-
- kodra
- 373 posts
- Offline
I noticed that even if the first and last keyframes are the same, the extra motion generated by Secondary Motion doesn't necessary loop seamlessly. Is there a way to tell Houdini that the secondary motion needs to form a seamlessly loop (e.g. for game assets)?
PDG/TOPs » PDG error when clicking workitem
-
- papsphilip
- 387 posts
- Offline
whenever i try to click on a workitem to view the results i get this message:
"Traceback (most recent call last):
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.743/houdini/python3.9libs\taskgraphtable\taskgraphtable.py", line 408, in _setSelectedItem
index = self.table_model.getItemRow(wi_id)
AttributeError: 'NoneType' object has no attribute 'getItemRow'"
no idea how to troubleshoot this
Any ideas as to why this is happening?
"Traceback (most recent call last):
File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.743/houdini/python3.9libs\taskgraphtable\taskgraphtable.py", line 408, in _setSelectedItem
index = self.table_model.getItemRow(wi_id)
AttributeError: 'NoneType' object has no attribute 'getItemRow'"
no idea how to troubleshoot this
Any ideas as to why this is happening?
Technical Discussion » #1. An Alembic to dopnet workflow issue, specifically involv
-
- Huang_Yi
- 1 posts
- Offline
Hi everyone, I'm a rookie in Houdini. I apologize for asking this basic question, but I couldn't find a solution online. I'm trying to use Alembic files in DOPnet, which were animated in Maya. The goal is to control when to activate and when to use the original animation, for that, I added a Point Wrangle: i@active = 0; i@animated = 1;.In DOPnet, there are only three nodes that exist :RBDPackedObject , Rigid Body Solver , output. RBDPackObject only changes the SOP Path to "/obj/Frac/Pieces"; everything else remains at its default setting. The result I expect is to have animation only on the geometry. However, the final result I get includes both animation and action.Which part did I do wrong? Can anybody point it out?
Technical Discussion » pausing mplay with arrow keys skips to another frame
-
- evanrudefx
- 266 posts
- Offline
Hello,
I have this weird issue with mplay. I opened mplay outside of houdini. when ever I play a sequence with the up arrow key then pause (with the up arrow key) instead of just pausing it skips back to some previous frame. For example, if I hit pause (using the hotkey) at frame 50, it will pause but also skip back to frame 12 or some random previous frame. If I just use the UI button I don't have this issue. What is going on? is there some setting?
Thanks
I have this weird issue with mplay. I opened mplay outside of houdini. when ever I play a sequence with the up arrow key then pause (with the up arrow key) instead of just pausing it skips back to some previous frame. For example, if I hit pause (using the hotkey) at frame 50, it will pause but also skip back to frame 12 or some random previous frame. If I just use the UI button I don't have this issue. What is going on? is there some setting?
Thanks
Edited by evanrudefx - Oct. 4, 2023 10:44:49
Technical Discussion » No alpha in EXR renders
-
- gingnoxus
- 1 posts
- Offline
someone that knows about karma, i'm getting renders without alpha channel, I would like to know how to activate it, I think I'm missing something also how can I do to get premultiplied mattes or unpremult in other cases, also my beauty matte doesn't look like " beauty " just the other passes like diffuse combined, gloss combined, etc. I would appreciate the help.
Technical Discussion » Vellum Fluid Collision object issues
-
- Andrew Furlong
- 11 posts
- Offline
Hello all!
Using vellum fluids to sim some blood (super amazing solver), however, I've noticed that vellum uses surface based collision detection vs. volume based. If I birth fluid on a moving object, after it's initial velocity inheritance, it doesn't seem to inherit the velocity of the collision object. I end up having to create a popwrangle that transfers velocity from the closest surface, which doesn't seem as intuitive as say, flip, where it'll automatically grab the collision object's velocity. Is this the case? Or is there a phantom function somewhere I'm not seeing?
Using vellum fluids to sim some blood (super amazing solver), however, I've noticed that vellum uses surface based collision detection vs. volume based. If I birth fluid on a moving object, after it's initial velocity inheritance, it doesn't seem to inherit the velocity of the collision object. I end up having to create a popwrangle that transfers velocity from the closest surface, which doesn't seem as intuitive as say, flip, where it'll automatically grab the collision object's velocity. Is this the case? Or is there a phantom function somewhere I'm not seeing?
Houdini Indie and Apprentice » Fire and Water Sim Interaction Inside Houdini
-
- nculver
- 5 posts
- Offline
Hey all, I am wondering if anyone has seen any good reference for a stream of water and fire interacting?
I've found some real life footage online but I'm more interested in seeing if there has been any VFX work done in this realm? Maybe the first live action Avatar or something of the like?
Here are some tests that we're working on where a stream of fluid is hitting a stream of fire and emitting steam based off of temperature. This is only a rough outline.
Thanks for your time!
I've found some real life footage online but I'm more interested in seeing if there has been any VFX work done in this realm? Maybe the first live action Avatar or something of the like?
Here are some tests that we're working on where a stream of fluid is hitting a stream of fire and emitting steam based off of temperature. This is only a rough outline.
Thanks for your time!
Technical Discussion » Please help :(, Treadripper 3790x only 50% cpu power
-
- nickfr
- 26 posts
- Offline
I have 2 machines, one is a ryzen 5950 with 2x 3090 and the other one is a 3790x with a 1060 gpu.
I'm working on a grain sim wihout opencl. But the treadripper is much slower compared to the ryzen. It's only using max 50% of its cpu power. While the ryzen is using 70& of its cpu power. the 32x tr should me faster compared to the ryzen. But how come it's slower?
I'm working on a grain sim wihout opencl. But the treadripper is much slower compared to the ryzen. It's only using max 50% of its cpu power. While the ryzen is using 70& of its cpu power. the 32x tr should me faster compared to the ryzen. But how come it's slower?
Edited by nickfr - Oct. 4, 2023 06:23:46
Houdini Learning Materials » [FREE Download]: 'The Abandoned Japanese Fishing Village'
-
- cgcircuit
- 1 posts
- Offline
🔥 Why Dive Into This Demo? 🔥
⚓ Navigate a lush, atmospheric environment that beautifully encapsulates the unique aura of a desolate Japanese fishing village.
⚓ Acquire knowledge on the best practices for crafting optimized, scalable assets that are paramount for vast-scale projects.
⚓ A sterling resource for 3D artists, developers, and students, offering a sneak peek into the development of compelling environments.
💻 Discover the remarkable technical achievements made possible by using Houdini, UE5 and Megascan together. This demo showcases the vast potential and effective utilization of Unreal Engine 5, alongside Houdini's procedural tools and Megascan's assets. It offers a visually stunning experience and a treasure trove of technical expertise for design and development. 🛠
Highlighted Procedural Assets (Baked):
Japanese Houses: Craft intricate, traditional houses with a depth of customization.
Wooden Platform Generator: Enrich scenes with versatile wooden platforms.
Dynamic Flock of Birds: Bring scenes to life with realistically animated bird flocks.
Vegetation Growth: Enhance the abandoned look with diverse vegetation creeping on structures.
Stairs Generator: Craft staircases effortlessly, fitting right into the aesthetic.
Features & Advantages of Procedural Assets:
Customization: Tailor Houdini's open nodes to fit unique project requirements.
Efficiency & Versatility: Create a UE5 library of ready modules for swift and varied scene crafting.
Detailed Control: Adjust numerous parameters to shape your ideal environment.
Preview & Final Modes: Simplify scene assembly and yield a top-quality mesh for UE5 with Nanite.
Optimization: Choose the poly reduction parameter for lighter meshes in projects not utilizing Nanite.
Time-saver: Cut down on modeling time with tools generating multiple scene variations.
The demo is completely FREE to download. We believe this tool is an invaluable asset for anyone passionate about creating immersive and vast environments.
Technical Discussion » Per Bone Attribs from Houdini to Unreal?
-
- peternicolai
- 37 posts
- Offline
Hey all,
Unreal can accept per bone attribs on skel mesh bones.
https://docs.unrealengine.com/5.3/en-US/fbx-attributes-in-unreal-engine/ [docs.unrealengine.com]
Their example (and my desired use case) is around the timecode attribs that are enabled by default. I've be trying to accomplish the same thing but I can't seem to get anything to show up. My tests have been to pass user generated attribs on the points, as detail, or via the fbx_custom_attributes dictionary (so... file/asset level?).
I haven't seen anything online or in forums (so far) speaking to a Houdini use case so I thought I throw a question out to the group at large to see if anyone has had any experience or success with passing data this way.
Let me know, thanks!
Pete
Unreal can accept per bone attribs on skel mesh bones.
https://docs.unrealengine.com/5.3/en-US/fbx-attributes-in-unreal-engine/ [docs.unrealengine.com]
Their example (and my desired use case) is around the timecode attribs that are enabled by default. I've be trying to accomplish the same thing but I can't seem to get anything to show up. My tests have been to pass user generated attribs on the points, as detail, or via the fbx_custom_attributes dictionary (so... file/asset level?).
I haven't seen anything online or in forums (so far) speaking to a Houdini use case so I thought I throw a question out to the group at large to see if anyone has had any experience or success with passing data this way.
Let me know, thanks!
Pete
Technical Discussion » Use ANSI Colors in Python Shell/Houdini Console?
-
- JohnDoe777
- 46 posts
- Offline
Hello,
Is there anyway to get ANSI escape code colours to to work in both the Python Shell and Houdini Console?
Is there anyway to get ANSI escape code colours to to work in both the Python Shell and Houdini Console?
Edited by JohnDoe777 - Oct. 2, 2023 12:29:24
News » Canadian Thanksgiving Monday Oct.9th
-
- chrism
- 2596 posts
- Offline
Hidey ho! We just wanted to give you a heads up that Canadian SideFX employees will be celebrating Canadian Thanksgiving on Monday Oct.9th but we'll be back on Tuesday.
The Americans don't do their Thanksgiving 'til November....so weird.
The Americans don't do their Thanksgiving 'til November....so weird.

Technical Discussion » [closed] Get Index of Current MultiParm from Callback Script
-
- SWest
- 313 posts
- Offline
Hi Houdini experts!
The case is that some Python is used to handle the UI in the Parameters Editor.
This is then used to set some parameters that can be read by related VEX code.

Among the parameters are a couple of multiparm folders.
From the Callback Script in the Edit Parameter Interface this works.

In this case the problem is that to populate the right multiparm parms from the Python code, the button with the callback script has to send an argument with the index of the multiparm.
Something like this does not work:
Get Index of Current MultiParm [www.sidefx.com]is a similar topic, but for an unknown reason it did not seem to work for this situation.
How can you get the index (integer) of a parent multiparm folder when using a button with a callback script?
Edit: Never mind. After a good night's sleep I think a lead was found: "kwargs dict would be useful, but it's only provided with callback scripts afaik." (from the linked reference) Yup, that's it.
The case is that some Python is used to handle the UI in the Parameters Editor.
This is then used to set some parameters that can be read by related VEX code.
Among the parameters are a couple of multiparm folders.
From the Callback Script in the Edit Parameter Interface this works.
exec(kwargs['node'].parm('./code/code_py').eval());searchGroups()
In this case the problem is that to populate the right multiparm parms from the Python code, the button with the callback script has to send an argument with the index of the multiparm.
exec(kwargs['node'].parm('./code/code_py').eval());searchGroups(index)
Something like this does not work:
exec(kwargs['node'].parm('./code/code_py').eval());name=exec(kwargs['node'].parm(".").parentMultiParm());searchGroups(name)
Get Index of Current MultiParm [www.sidefx.com]is a similar topic, but for an unknown reason it did not seem to work for this situation.
How can you get the index (integer) of a parent multiparm folder when using a button with a callback script?
Edit: Never mind. After a good night's sleep I think a lead was found: "kwargs dict would be useful, but it's only provided with callback scripts afaik." (from the linked reference) Yup, that's it.
Edited by SWest - Oct. 2, 2023 11:24:35
Technical Discussion » Randomize rotation within a RBD Bullet Solver
-
- art3mis
- 351 posts
- Offline
I have falling debris that I also need to randomly rotate (animate) using VEX in a POP wrangle inside my RBD Bullet Solver.
It seems there are at least 3 steps
1) Determine a random rotation or axis per ptnum
2) Determine a random rotation magnitude per ptnum (increase the angle over time?)
3) Apply this rotation (convert to a quaternion or matrix3 then use to define p@orient or 3@transform ?)
Can any VEXperts help?
It seems there are at least 3 steps
1) Determine a random rotation or axis per ptnum
2) Determine a random rotation magnitude per ptnum (increase the angle over time?)
3) Apply this rotation (convert to a quaternion or matrix3 then use to define p@orient or 3@transform ?)
Can any VEXperts help?
Edited by art3mis - Oct. 1, 2023 18:32:12
Technical Discussion » How to get viewport DPI in Python?
-
- Andr
- 899 posts
- Offline
I need to know the DPI of the monitor where the current viewport is displayed.
Currently I'm using this snippet to know the DPI of each screen in the system, but I don't know how to tell which one is hosting the viewport.
Currently I'm using this snippet to know the DPI of each screen in the system, but I don't know how to tell which one is hosting the viewport.
from PySide2.QtWidgets import QApplication app = QApplication.instance() screens = app.screens() for s in screens: dpi = s.physicalDotsPerInch() print(dpi)
Edited by Andr - Oct. 1, 2023 10:40:27
日本語フォーラム » 多重のForeach Block(End)のReset Cached Passが上手く動作しない
-
- trsnium
- 42 posts
- Offline
状況
1. Gather MethodがFeedback loopなforreach blockで、間違えたパラメーターでCookされてジオメトリがCacheされている。
2. Foreach endのReset Cached Passを押しても、再評価されず間違えた結果が残り続ける。
3. ループ内のジオメトリのReset Cached Passを押すと、その部分は再評価されるが、ループ後に元の結果に戻ってしまう。
Foreach BlockのReset Cached Passが上手く動作せず、原因がわからないため何かご存じであればご教授をお願いしたいです。
-
- Quick Links