render points like particle

   19439   8   2
User Avatar
Member
303 posts
Joined: May 2007
Offline
in popnet there is a node render,it can render particles as spheres disks and so on.
but i can't find it's variable attribute, how can i render points like this,wish not with copy!
https://vimeo.com/user3971456/videos [vimeo.com]
User Avatar
Member
229 posts
Joined: May 2006
Offline
you could turn points into particles, using the add-sop with the “Add Particle System” toggle on the particles tab.
use pscale - attribute to set the size of particles when rendering

Seb
User Avatar
Member
303 posts
Joined: May 2007
Offline
oh thank you very much
but the problem is the render shape
my purpose is to render it as disks
maybe i must use instance
https://vimeo.com/user3971456/videos [vimeo.com]
User Avatar
Member
201 posts
Joined: July 2005
Offline
luoqiulin
oh thank you very much
but the problem is the render shape
my purpose is to render it as disks
maybe i must use instance

Not sure what you're looking for. Are you wanting to control the size of the disks? On the render node inside a popnet there is the prsize parameter to do this. Does this help?
Cheers,
Rob
Digital Supervisor | Stargate Studios Toronto
User Avatar
Member
201 posts
Joined: July 2005
Offline
luoqiulin
oh thank you very much
but the problem is the render shape
my purpose is to render it as disks
maybe i must use instance

Not sure what you're looking for. Are you wanting to control the size of the disks? On the render node inside a popnet there is the prsize parameter to do this. Does this help?
Cheers,
Rob
Digital Supervisor | Stargate Studios Toronto
User Avatar
Staff
2540 posts
Joined: July 2005
Offline
You have two options and Rob hit one of them.

1) Render as disks
2) Render as points in Mantra

1) Rendering as Disks. It comes down to using the Render POP to set the attribute to render as disks then the pscale attribute controls the size or you first use an Add SOP to turn the points in to a particle primitive and then use the Primitive SOP's Particle tab and set the render type to render as disks. Since the disks are real geoemtry in Mantra, they will need to be shaded like real geometry.

2) Render the geometry as points in Mantra. On the object, in the Render > Geometry tab, enable the option “Render As Points (Mantra)”. This will again use the pscale attribute to determine the size of the particles. Only a single shader call is made for each point making it a very efficient way to render.

Both options use pscale.
Both options use the vector oreint attribute to orient them along the vector instead of facing the camera by default.

Choose your poison.
There's at least one school like the old school!
User Avatar
Member
137 posts
Joined:
Offline
I'm trying to find a way to get the uv on each disk to mimic a sprite procedural. Is it possible?

I've baked a huge set of animated points representing a snow animation. I'd like to place it many times as a delayed load but each shot have a need for a different point size. I was thinking about using the uv of the disk type to vary the size at render time.

Basically it would be a way to cheat the fact we cannot use Delayed Load AND Procedural Sprite at the same time.

Does it make sense?
User Avatar
Member
861 posts
Joined: Oct. 2008
Offline
If you don't like copy sop, how about you instance it?
--
Jobless
User Avatar
Member
137 posts
Joined:
Offline
The main reason why I don't want to use instance is efficiency but also I want the disk (my fake sprites) to always face the camera. Since the camera I will use will be different for each shot, that's not an option.

Regarding efficiency, the last time I did tests with instances it took forever because it writes “evaluating python” … My understanding is that for each point it has to write into the ifd a whole block of info containing the transformation matrix, the shader, custom attributes with their names in a string.

Whereas the procedural approach will always be faster because it's writing a big array of coordinate, then a big array of custom attributes etc.

In the end I will have around 5 millions of points.
  • Quick Links