Alessandro Pepe


About Me

Technical Director
United States


Recent Forum Posts

AMD Radeon ProRender Solaris plugin 2022年9月27日10:59

Installed yesterday, huge fun for us unhappy Mac users w/o NVidia gpus, please kindly accept my gratitude for making it available for Solaris 😊

However just can't figure out the way to pass point/prim/vertex color properties. Could please someone point me to the right direction?
Thanks 😊

I'd be really interested on this.
Did you find out by any chance ?

Python/Hscript Select Visible Geometry only 2019年4月23日19:11

hi Ant,
first off you need to choose a point of view (say, your camera position).
Then you need to cast rays from the cam position to every face on your geometry.
If the ray intersects the face you're casting the ray to it means that face is visible.

This is the code (drop it in a Primitive Wrangle):
Note that this works with poly objects only.

vector cam_pos = chv("point_of_view");
vector dir = 10000.0*normalize(v@P - cam_pos);
vector intP,intUV;
int pr = intersect(0, origin, dir, intP, intUV);
int visible = (pr==@primnum);
i@visible = visible;
v@Cd = set(i@visible,0,1-i@visible); // just a color feedback

the number 10000.0 is just a number large enough to cover the distance from the camera to your object , this is because the VEX command intersect uses the lenght of the vector ‘dir’ as max intersection distance.

I just realized you wanted a python/hscript version. Uhpss .. Well this is the faster version of that

question about generating new Work Items with a Python Processor TOP 2019年4月18日19:03

I've a Python Processor Top node that has to process partitions coming from the input node.
This is what I'm doing :

for partition in upstream_items:

items = partition.partitionItems
for item in items:
<do stuff for each item>

out_filename = <some filename different per 'partition'>

options = pdg.WorkItemOptions() = <blabla different per partition>
options.parent = partition
new_item = item_holder.addWorkItem (options)
new_item.addResultData(out_filename, "file/image",0)

Now, this all works, the only problem I have is that the node shows all the work items already cooked only when the node has done processing all the incoming partitions, opposed to …
1 - create the work items when it's processing it
2 - mark the newly created work item as ‘processing’ in bright green
3 - … marking the new work item ‘Finished’ when the result data has been written on disk

My question is : how do I show the node processing the new Work Items *while* it's processing them, like for any other TOP node ?