Instead of recreating this type of texture map using VEX/Cops, I ended creating a texture baker setup using Python, Labs Quick Material, and Labs Maps Baker. That takes the original maps and transfers them to new UVs.
Glen
Found 118 posts.
Search results Show results as topic list.
Technical Discussion » What is this Bake Map? Matrix Demo
- GlenD
- 118 posts
- Offline
Technical Discussion » How to create a multi-select menu with check to HDA?
- GlenD
- 118 posts
- Offline
You could use an import block to bring in the Group node and then set what you don't want to Invisible. https://www.sidefx.com/forum/topic/76409 [www.sidefx.com]
Glen
Glen
Edited by GlenD - 2023年4月18日 04:35:47
Technical Discussion » Import multiple fbx files in a for loop
- GlenD
- 118 posts
- Offline
tamteThanks! We ended up using the File Merge SOP, since we were having an issue of Unreal picking up the Files using TOP Geometry.
use TOP Geometry SOP to load all your fbx files and pass through its output
https://www.sidefx.com/forum/topic/87322/#post-376990 [www.sidefx.com]
you can alternatively use File Merge SOP if the file names only differ with some number in name or alter it to fit your needs, but TOPs should allow you to do this out of the box
Glen
Technical Discussion » What is this Bake Map? Matrix Demo
- GlenD
- 118 posts
- Offline
I was looking at some of the assets for the Matrix demo and they have an interesting Dirt Map on their assets. It is part of the Red channel in the texture. It looks like a procedural map since all the assets have something similar.
I have tried 'Grouping' the primitives, 'Keep By Normals' with a -1 in the Y Direction, Spread Angle of 45. Add a Color, Blur the Cd Attribute. In the end it doesn't seem right. This post helped a bit with using Edge Angle. Select primitives or edges by angle [www.sidefx.com]
I tried an approach of using particle emission based on an Occlusion Map as a Wet map. Not the best results.
I have tried 'Grouping' the primitives, 'Keep By Normals' with a -1 in the Y Direction, Spread Angle of 45. Add a Color, Blur the Cd Attribute. In the end it doesn't seem right. This post helped a bit with using Edge Angle. Select primitives or edges by angle [www.sidefx.com]
I tried an approach of using particle emission based on an Occlusion Map as a Wet map. Not the best results.
Technical Discussion » Import multiple fbx files in a for loop
- GlenD
- 118 posts
- Offline
I was able to look at the File Pattern node in the Top Network and it works as expected. The only issue is loading multiple files using an array. This video, 'Tech Talk | Process and Render Geometry and Textures with TOPS | Michael Buckley' goes over the process, just getting the array part to work is my current blocker. https://www.youtube.com/watch?v=L51DUKjrkIo [www.youtube.com]
Has anyone referenced an array in a file node using the File Pattern Top Network?
Has anyone referenced an array in a file node using the File Pattern Top Network?
Edited by GlenD - 2023年4月11日 10:09:27
Technical Discussion » Import multiple fbx files in a for loop
- GlenD
- 118 posts
- Offline
bentrajeThanks, I will check it out.
Have you tried the PDG/Top Network using the File Pattern node?
Glen
Technical Discussion » Import multiple fbx files in a for loop
- GlenD
- 118 posts
- Offline
Currently I am bringing in multiple fbx files based on an input folder using 'Python' node. This setup is working as intended.
Is it possible to create the same workflow using a 'file' node inside a for loop?
import os import hou objects_path = hou.node(".").parm("import").eval() folder = os.listdir(objects_path) merge = hou.node("../").createNode("merge") file_input = hou.node("../FILE_INPUT") ## Create loop that goes over the files in the folder i = 0 for file in folder: if file.endswith(".fbx"): path = objects_path + file file_node = hou.node("../").createNode("file") file_node.parm("file").set(path) ## Connect files to Merge node merge.setInput(i, file_node) i += 1 file_input.setInput(0, merge)
Is it possible to create the same workflow using a 'file' node inside a for loop?
Edited by GlenD - 2023年3月31日 09:07:40
Houdini Engine for Unreal » Primitive groups in Unreal from an HDA
- GlenD
- 118 posts
- Offline
It seems using a uasset within an hda, you cannot set primitive groups. I have to reference the Source File asset of the uasset, manipulate the geometry as needed, export the fbx and reimport the uasset as uasset.
Besides the reimporting of the uasset in Unreal, everything else can be handled in the HDA.
Besides the reimporting of the uasset in Unreal, everything else can be handled in the HDA.
Edited by GlenD - 2023年3月30日 10:11:13
Houdini Indie and Apprentice » multiple uv sets from maya to houdini
- GlenD
- 118 posts
- Offline
When you view the UVs, does it show multiple uv channels? Similar to the image? This should give the names of the uv sets.
Edited by GlenD - 2023年3月29日 03:10:23
Technical Discussion » How to create unevenly distributed points along a curve?
- GlenD
- 118 posts
- Offline
Thank you everyone for the assistance. The resample section is part of a larger tool that uses existing geometry and places it along a spline. The art department creates the pipes that will be eventually used for this tool. In the image below, it goes through the various steps of creating the resample section. We tried using the 'Curve Solver' and it didn't translate well to Unreal. It could also be a step we are missing too.
The orange box copies various geometry on the points using this setup. https://www.sidefx.com/docs/houdini/copy/copytopoints.html [www.sidefx.com]
The green box network takes each pipe that is created and calculates the length of the pipe. This is only 1 or 3 since our pipes are a set length. The pink colored nodes is a Sort node that sorts the point order 'Along Vector' using the curve direction 'N'. the only points that are left is a start point of each pipe length.
The purple box creates a 'point array' from the pipe lengths and then a sum of those lengths. This is used to create the distance between the points.
The blue box recalculates the primitives that the points will be applied. All this data is calculated in the 'create_points_based_on_geometry_length'.
Since the length of the original primitive is either shorter or longer than the pipes that are recopied onto the points. A 'bend' node using 'Length Scale' and setting a 'Capture Origin' and 'Capture Direction' at the beginning of each primitive spline. This happens at another point in the tool and is not shown in the image below.
Overall, it is fast, responsive and it enables the Level Artists to dress scenes quickly. On and off it took a little over a month to finish the tool. Requirements were to create a tool that takes existing geometry and place it along a spline.
The 'Corner Pipes' also use existing geometry and the bend is calculated with a Bend deformer, which is calculated in a different branch. The 'Capture Direction' is calculated based on an angle between the current point, previous point, and next point. Which is then calculated by Projecting the V on U. https://gamedev.stackexchange.com/questions/70252/how-can-i-project-a-vector-on-another-vector [gamedev.stackexchange.com]
Procedural geometry doesn't optimise well in Unreal, this is why we went with this approach. Once I clean up the network, and get approval I will post up the hip file.
The orange box copies various geometry on the points using this setup. https://www.sidefx.com/docs/houdini/copy/copytopoints.html [www.sidefx.com]
The green box network takes each pipe that is created and calculates the length of the pipe. This is only 1 or 3 since our pipes are a set length. The pink colored nodes is a Sort node that sorts the point order 'Along Vector' using the curve direction 'N'. the only points that are left is a start point of each pipe length.
The purple box creates a 'point array' from the pipe lengths and then a sum of those lengths. This is used to create the distance between the points.
The blue box recalculates the primitives that the points will be applied. All this data is calculated in the 'create_points_based_on_geometry_length'.
Since the length of the original primitive is either shorter or longer than the pipes that are recopied onto the points. A 'bend' node using 'Length Scale' and setting a 'Capture Origin' and 'Capture Direction' at the beginning of each primitive spline. This happens at another point in the tool and is not shown in the image below.
Overall, it is fast, responsive and it enables the Level Artists to dress scenes quickly. On and off it took a little over a month to finish the tool. Requirements were to create a tool that takes existing geometry and place it along a spline.
The 'Corner Pipes' also use existing geometry and the bend is calculated with a Bend deformer, which is calculated in a different branch. The 'Capture Direction' is calculated based on an angle between the current point, previous point, and next point. Which is then calculated by Projecting the V on U. https://gamedev.stackexchange.com/questions/70252/how-can-i-project-a-vector-on-another-vector [gamedev.stackexchange.com]
Procedural geometry doesn't optimise well in Unreal, this is why we went with this approach. Once I clean up the network, and get approval I will post up the hip file.
Edited by GlenD - 2023年3月28日 03:50:36
Houdini Engine for Unreal » Primitive groups in Unreal from an HDA
- GlenD
- 118 posts
- Offline
In an HDA I am creating a primitive group based on a material. The HDA gets the asset in Unreal, and then I would like to manipulate the UVs. In the group drop down of the UV node, I cannot see the created groups in Unreal. Is it possible to create new groups within an HDA and see them in Unreal?
Basically, how can I assign a Primitive group within an HDA and pick it up in Unreal?
Basically, how can I assign a Primitive group within an HDA and pick it up in Unreal?
Houdini Engine for Unreal » Extract Vertex Painting informations from UE into my HDA
- GlenD
- 118 posts
- Offline
julien costard
Hey folks !
I try to deal with some stuff since yesterday at my work, i'm really stuck and need help.
To resume :
Actually i have an HDA running in UE4.
I give him some objects inputs.
I need to extract the Vertex Color of theses objects.
But i can't figure out how to deal with that.
-I have paint vertex color inside UE, on the original mesh.
-I have also paint vertex color directly on my HDA.
The two won't work, i can't extract vertex color from it.
I have the sensation that it's ok from houdini to ue, but not the inverse.
Maybe this is not possible.Maybe some of you have the anwser.
It's someone can help me, it'll be very very cool and you probably going to save my day.
Could you promote the Vertex Color information from Unreal to Point? 'Attribute Promote' Vertex (Unreal) to Point for Houdini to read? Then promote it back to Vertex for Unreal to read again? This would have to be in the HDA.
Edited by GlenD - 2023年3月16日 05:07:53
Technical Discussion » How to create unevenly distributed points along a curve?
- GlenD
- 118 posts
- Offline
mestelaHi Matt, thanks for the information on those nodes, I didn't know they existed. I tried them both out, and they get me close to what I need just not close enough. I am currently testing it with a tube that is 1 unit, 3 units and 5 units in length.
There's also the labs progressive resample and labs resample by density sops, handy.
When I input the resolution scale to either 1, 3 or 5 it will always match 2 of 3 unit lengths. One of them is always off in length. I may be missing something at the moment or it may just a limitation. I may just have to only have two different unit lengths of geometry.
Glen
Technical Discussion » How to create unevenly distributed points along a curve?
- GlenD
- 118 posts
- Offline
AlanZ
I had the time to implement one of my ideas today. I'm not entirely sure if I understand you correctly, but if exact segment length is what you want (for copying rigid modular geometries), I believe my answers were necessary. As Digipiction pointed out, simply usingprimuv
measures the curve by arc, not chord, giving you incorrect lengths. Among my three answers I chose option c because it seems to be the simplest to implement, but still it's ~15 nodes. I'd be happy to elaborate on it if I haven't misunderstood you and this is indeed what you meant. Please check my screenshots.
Hi AlanZ, This seems to be the closest setup that I am looking for. Could you elaborate a bit more on the setup or post a hip if possible? I would need exact segment lengths due to the rigid length of the geometry. Also, thanks for the assistance.
Glen
Edited by GlenD - 2023年3月16日 04:28:43
Technical Discussion » How to create unevenly distributed points along a curve?
- GlenD
- 118 posts
- Offline
Thanks @Digipiction, @AlanZ, @animatrix_, and @mestela for the input, I will check out it today and let you know the results.
Glen
Glen
Technical Discussion » How to create unevenly distributed points along a curve?
- GlenD
- 118 posts
- Offline
Working on a different part of this tool, with the unevenly distributed points along a curve. I have a pipes tool that I am creating and I would like to place different geometry with varying lengths along the spline. Similar to how a Spline Mesh tool places geometry in Unreal. The different pipes should be placed along the spline until the corner and then scale to appropriate length. I have solved the scale along spline using a Bend node -> Length and Scale. The corners have been solved as well. This is a tool that uses existing geometry and not procedural geometry.
The issue is the curve resample. The 'copy to points' node only copies on to the points based on a resample distance. I have rebuilt the curve points based on the length of the different geometry to little success.
It is the rebuilding of the curve that is the biggest block. Has anyone created a tool like this before?
The issue is the curve resample. The 'copy to points' node only copies on to the points based on a resample distance. I have rebuilt the curve points based on the length of the different geometry to little success.
It is the rebuilding of the curve that is the biggest block. Has anyone created a tool like this before?
Houdini Engine for Unreal » Lightning contact to Floor HDA execute in runtime
- GlenD
- 118 posts
- Offline
HDA's don't run in real-time using HEngine for Unreal. You could convert the ending of the lightning effect as a mesh and then use a material to control when it appears. The mesh would have to be the complete lightning effect from top to bottom.
Depending on the look you are going for, you could also do it in Unreal. https://www.youtube.com/watch?v=rT1BHPeL6E4&t=1s [www.youtube.com]
Depending on the look you are going for, you could also do it in Unreal. https://www.youtube.com/watch?v=rT1BHPeL6E4&t=1s [www.youtube.com]
Edited by GlenD - 2023年3月2日 03:49:26
Houdini Engine for Unreal » Assign Temp Name using Attribute Create
- GlenD
- 118 posts
- Offline
Currently I can set up an Attribute Create pointing to a temp folder in my project directory. I also have another Attribute Create that renames the bake name using 'unreal_output_name'. Is it possible to use the same workflow and assign a temp name using the 'unreal_output_name' attribute?
Our current validation process goes through and only allows a certain naming prefix to be submitted. Having to rename different static meshes is not productive.
Can we change the temp name of the static mesh using an Attribute Create?
Our current validation process goes through and only allows a certain naming prefix to be submitted. Having to rename different static meshes is not productive.
Can we change the temp name of the static mesh using an Attribute Create?
Technical Discussion » How to create unevenly distributed points along a curve?
- GlenD
- 118 posts
- Offline
Thanks, I'll check it out!
I basically have 3 different pieces of geometry that are pipes with varying length. They are copied to the points and overlap each other due to the different lengths. The end goal is to copy the different pipes, which are being copied using the @piecenum attribute and then have them fit together.
I have accomplished this in Unreal using Blueprints, this time it has to be completed in Houdini due to other limitations of Unreal.
*Edit - This gave me a good starting point on the issue that I am having. https://www.sidefx.com/forum/topic/77812/ [www.sidefx.com]
I basically have 3 different pieces of geometry that are pipes with varying length. They are copied to the points and overlap each other due to the different lengths. The end goal is to copy the different pipes, which are being copied using the @piecenum attribute and then have them fit together.
I have accomplished this in Unreal using Blueprints, this time it has to be completed in Houdini due to other limitations of Unreal.
*Edit - This gave me a good starting point on the issue that I am having. https://www.sidefx.com/forum/topic/77812/ [www.sidefx.com]
Edited by GlenD - 2023年2月15日 08:40:19
Technical Discussion » How to create unevenly distributed points along a curve?
- GlenD
- 118 posts
- Offline
Hello everyone, I have an issue with creating a line that has non uniform distribution of points. I created an initial Line 1 and then resampled the line based on a set length. I have been trying to find a solution that would allow me to resample each line segment based on a different length each time and match Line 2.
At the moment I have tried recreating the line using a point wrangle that creates a point from the last point based on the new length and then create line based on the new points. This keeps going until all the points from the original have been calculated. It works some of the time.
Has anyone solved something similar to this that would be easier than the previous mentioned solution?
Thanks!
At the moment I have tried recreating the line using a point wrangle that creates a point from the last point based on the new length and then create line based on the new points. This keeps going until all the points from the original have been calculated. It works some of the time.
Has anyone solved something similar to this that would be easier than the previous mentioned solution?
Thanks!
Edited by GlenD - 2023年2月14日 05:23:14
-
- Quick Links