Justin Keil

jkeil

About Me

Connect

LOCATION
Not Specified
WEBSITE

Houdini Skills

Availability

Not Specified

Recent Forum Posts

Point function Jan. 23, 2017, 8:16 p.m.

Hello All, I am currently working through the tutorial by Ben Watts “Quick tip 04- Custom forces in Houdini”.

There is a point in the video https://vimeo.com/189873077 [vimeo.com] —- 7:45

Where he uses the point function within a wrangle to set up a vector attribute equivalent to the normal attribute in the second input.

vector normal = point(1, ‘N’, @ptnum);

How is it that this line of code is actually calling input 2s normals in the first place? //

Looking at the help docs, the way I understand this is you are generating a vector variable, called normal, which is sourcing two pieces of information from input 1–the normal attribute “N”, as well as the point number. How exactly is this function as is giving you this vector equivalent to the N value from input 2?
If my code is written to include the following as well:
vector normal = point(1, ‘N’, @ptnum);
@N = normal;


then it is easier to see this visually, as the “N” attribute now equals the normal attribute, but based on the definition of what the point function is doing, I just dont see how the point function, as written, gets you this value at all–my interpretation is merely that now you have a vector called normal identical to “N”…..I have attached the scene file and a pick. The wrangle in question has a red backdrop. Thank You!!

Group Management Dec. 22, 2016, 12:20 p.m.

That is what I needed. Thank you

Group Management Dec. 22, 2016, 11:05 a.m.

Hello all,

I am having trouble setting up primitive groups for an object according to a specific pattern. I recently posted my issue to the odforce forums, but unfortunately I did not explain my issue very well.
Hopefully I can explain it better here.

I have a tube, with 8 vertical rows and 13 columns.

I want to create a set of groups, with each group containing the polygons within every other horizontal loop (prims 0-12—> group1, prims 26-39 —> group2, etc, etc—-see pic). I want to do this procedurally because I plan on generating a digital asset later down the pipeline, and I want the group logic to remain consistent even if the number of columns and rows changes.


The way I see it, the number of polygons per loop is identical to the set number of columns:if there are 12 columns, there are 12 (numbered 0-11) primitives in the first loop, if there are 24 columns, there are 24 primitives). I feel like this relationship in and of itself should be enough for a startup logic of group creation?
I was able to get the first group easily enough using a group by range, with the rangeend value referencing the column value (ch(“../revolve1/divs”)-1". Can I then formulize this data to work iteratively until all loops have been accounted for? Even if the first time around I can only get a group per consecutive loop, I can (I think) get every other group out of this using some sort of ‘every other’ function.


I hope this is clear. I new to Houdini and am trying to get into the habit of using procedural methods for model creation.
I have attached two files and a pic, the first is just a base example. The second file is the work in progress file–containing some things I've been experimenting with–the group sop in question is colored blue.)

Thank you for your help. I am fairly new to coding by the way, so if it would make more sense for me to get a better handle on C++ fundamentals first, let me know. If you could point me to any resources for learning vex for the context at hand here as well, that too would be greatly appreciated.
All the best,
JK