dyei nightmare Posted March 12, 2010 Share Posted March 12, 2010 (edited) i wonder because, everytime that im face to face with a vex network, vop-sop, vop-*anything*, etc, a big question mark apears in my mind. i can not determine if the vex network is computing in a per vertex context, or primitive or what, or if in a volume vop is working by each voxel context or what. and when that happens, i start to try to think as it were an ice compound, but obviously is not the same. so i wonder how to start to analyse a vop network, something that prints or shows the values being computed, the context, ect... something like the xsi-ice feature where you can see the result value of each node, some technique that tells you the result step by step. .........or ultimatelly.... how can i to start to learn vex networks? Edited March 12, 2010 by dyei nightmare Quote Link to comment Share on other sites More sharing options...
lukeiamyourfather Posted March 12, 2010 Share Posted March 12, 2010 i wonder because, everytime that im face to face with a vex network, vop-sop, vop-*anything*, etc, a big question mark apears in my mind. i can not determine if the vex network is computing in a per vertex context, or primitive or what, or if in a volume vop is working by each voxel context or what. and when that happens, i start to try to think as it were an ice compound, but obviously is not the same. so i wonder how to start to analyse a vop network, something that prints or shows the values being computed, the context, ect... something like the xsi-ice feature where you can see the result value of each node, some technique that tells you the result step by step. .........or ultimatelly.... how can i to start to learn vex networks? In the case of a VOP SOP its applied to each point of the input geometry. Start with the basics and you'll get the feel for how it works. There are exceptions to this but the basic idea is you take information from the global input VOP, do stuff to it with whatever other VOP you want, then apply it by sending the data to the output VOP. For example you take the position of the point (P on the global VOP), use a vector to float VOP to break it into the components of the vector, use a add constant VOP to add value of one on Y axis to each point, then go back to a vector with float to vector VOP, and send the vector from that to the P on the output VOP. All of your points in the input geometry should move by one unit. So rather than seeing what happens to a single point you see what happens to all of the points. If seeing what happens to a single point would help you learn, use a delete SOP in front of the VOP SOP to delete all but one point. Cheers! Quote Link to comment Share on other sites More sharing options...
Guest Swann Posted March 12, 2010 Share Posted March 12, 2010 If seeing what happens to a single point would help you learn, use a delete SOP in front of the VOP SOP to delete all but one point. Cheers! I think he is looking for something like printVOP rather then delete. Quote Link to comment Share on other sites More sharing options...
dyei nightmare Posted March 12, 2010 Author Share Posted March 12, 2010 I think he is looking for something like printVOP rather then delete. yeah thanks, exactly im looking for something that prints. this: http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&p=86766&sid=afcb6846121b93b89e6ee9ac71689df0 and yes, thanks, luke, i will start with simple exercises, it doesnt need to be so basic, i just need to know what values are resulting in each step. with that print vop Quote Link to comment Share on other sites More sharing options...
sibarrick Posted March 13, 2010 Share Posted March 13, 2010 Another good tip is to use the addAttribute vop (for vop sops) to output values for various parts of your algorithm. Or for shaders add extra planes to your renders and output values to those to see what is going on. Quote Link to comment Share on other sites More sharing options...
pclaes Posted March 14, 2010 Share Posted March 14, 2010 Another good tip is to use the addAttribute vop (for vop sops) to output values for various parts of your algorithm. Or for shaders add extra planes to your renders and output values to those to see what is going on. Definitely! I have a custom display variable added called "magnitude" under the Display settings of the viewport. I tend to just addAttribute or export parameters into magnitude as a kind of print/details/display option. I also tend to pipe vectors in N for quick display or I have my own v and up vectors defined in the viewport settings that I can use for a quick visualization if N is being used. Regarding the different vex contexts... A lot of the functionality is similar between contexts. I started by learning & using expressions, then started learning the vop_sops context (and replacing most of my expressions with vops), then moved on to vops in shops, then to vop_pops, then to volume_vops, then to writing pure vex (sop) code in custom vex operators as this is a lot easier when dealing with loops and if statements (ie: pointcloud loops). Do get started with it as after a while it will speed up your scenes and the amount of expressions you use will reduce. Vops are multi threaded so should give you speed gains. I only had some problems with vop_pops and multi threading. Now finally I'm just starting to explore cvex and trying to link that with the hdk. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.