Volume Texture Mapping

   Views 9003   Replies 5   Subscribers 0
User Avatar
Member
691 posts
Joined: 6月 2006
Offline
Hi

Is possible to texture map a volume with a 2d texture?

How i can do that?


Thanks
Feel The Knowledge, Kiss The Goat!!!
http://www.linkedin.com/in/alejandroecheverry [linkedin.com]
http://vimeo.com/lordpazuzu/videos [vimeo.com]
User Avatar
Member
192 posts
Joined: 11月 2008
Offline
Hi alejandro, you absolutely can. You can get texture coordinates from a field (like temperature or rest) or by looking up the micro-voxel position and flattening it to 2d. I attached an example of the latter, which uses a modified version of the basic smoke shader.

Attachments:
volumetexture.hip (214.7 KB)

User Avatar
Member
12682 posts
Joined: 7月 2005
Offline
You might be interested in this: http://forums.odforce.net/index.php?showtopic=8954&pid=59282&st=12&#entry59282 [forums.odforce.net]
Jason Iversen, Technology Supervisor & FX Pipeline/R+D Lead @ Weta FX
also, http://www.odforce.net [www.odforce.net]
User Avatar
Member
691 posts
Joined: 6月 2006
Offline
Thank you very much guys, you are the best.

Jason And Brian, Thank you.

What about “Du(), Dv(), and Dw()” variables from a volume, how we can use them? (only for curiosity).

Thanks.
Feel The Knowledge, Kiss The Goat!!!
http://www.linkedin.com/in/alejandroecheverry [linkedin.com]
http://vimeo.com/lordpazuzu/videos [vimeo.com]
User Avatar
Member
12682 posts
Joined: 7月 2005
Offline
No problem…

Du(), Dv(), Dw() are almost always just used for technical purposes: for antialiasing your shading mostly.

These values return the change in any of a shader value between adjacent samples in the u, v, or w directions. This allows a shader-writer to know how to make sure that his shader doesn't twinkle, and other things.

Du(P) gives the change in position (so useful it also comes in the dPdu/v/z “derivative” flavours), which is most useful for thing like noise where you want to limit your feature sizes so that features don't wink in and out of existence as your object gets diced more or less as you change your range to your surface. The AntiAliased Noise VOP already listens to this, as does texture(), for it to select the most appropriate (prefiltered) mip-map of a texture.

Dw(density) for instance, in a shader applied to volumes, will return the change in density between samples in depth - which can be useful for… I don't know… STUFF!

I hope this helps a bit.

PS. Many of the shaders and VOPs in Houdini already use this where appropriate, hopefully freeing most people from worrying about this stuff.
Jason Iversen, Technology Supervisor & FX Pipeline/R+D Lead @ Weta FX
also, http://www.odforce.net [www.odforce.net]
User Avatar
Member
691 posts
Joined: 6月 2006
Offline
Thanks Jason for your Time and Help.

I have to study these topics more deeply.

Thank You!!!.
Feel The Knowledge, Kiss The Goat!!!
http://www.linkedin.com/in/alejandroecheverry [linkedin.com]
http://vimeo.com/lordpazuzu/videos [vimeo.com]
  • Quick Links