Obeida Zakzak

ObeidaZakzak

About Me

Houdini Pipeline Supervisor @ TAT Studio
専門知識
Technical Director
INDUSTRY
Film/TV

Connect

LOCATION
Toulouse, France
ウェブサイト

Houdini Skills

ADVANCED
Digital Assets  | Hair & Fur  | VEX  | Python
INTERMEDIATE
Cloth  | Solaris  | PDG

Availability

I am currently employed at TAT Studio

Recent Forum Posts

read an attribute name 2024年4月20日17:43

Gerardo Castellanos
Thanks, but I would like to access to the values of that attribute with a @`chs("../attrMask")`, and I get the same error message when it is empty.

If you are willing to only use @-syntaxe, you would likely need to use bindings :

1. On attribute wrangle > Bindings tab > add one in Number of Bindings > link Attribute Name to your parameter and set the VEX Parameter name


2. In your VEX code, whenever you write @maskAttribute you will be reading/writing the attribute entered by user on the "attrMask" parameter



If it's ok to use other functions like point() and prim() to read attrib value, then it's already covered in previous answers.

Copy 1st value of vertex array attribute to a point float 2024年4月5日15:30

When the return type of the called function is vector (for example minpos), then you can use this syntaxe to extract the desired component without having to store a new variable :

f@x = minpos(1, v@P).x;
f@y = minpos(1, v@P)[1];

But when the function has more possibilities of return type, like the vertex/prim/point functions, then you have to cast the return type to a vector to be able to use this kind of syntaxe :

f@u = vector(vertex(0, "uv", @vtxnum))[0];
f@v = vector(vertex(0, "uv", @vtxnum)).y;

Copy 1st value of vertex array attribute to a point float 2024年4月4日16:00

In a point wrangle you can extract the uv attribute from the corresponding vertex in this way :

vector uv = vertex(0, "uv", @vtxnum);
f@u = uv.x;

vertex() function reads attribute data from a given vertex number of the geometry, and @vtxnum evaluates to a vertex number thats wires to the point being looped over in the wrangle