Macha Posted April 1, 2011 Share Posted April 1, 2011 (edited) I have a kind of energy-aura effect done with volumes. I'd like this volume to be a source of light as well. I thought that I could use a point-cloud generated from the volume but there is too much internal shader-generated structure in the volume for this to work accurately (I would only get the volume as a big blob of light source). I have a little part of the image attached. I have used the default pyro shader for my volume. Is there a way to get brightness data out of the shader somehow and send it to another shader, or otherwise turn it into a source of light or brightness modifier? Shall I ditch the default shader and make my own? Edited April 1, 2011 by Macha Quote Link to comment Share on other sites More sharing options...
Macha Posted April 1, 2011 Author Share Posted April 1, 2011 Just thought I should share this image to give you a better idea. Another happy Houdini accident (while I build a custom volume shader)! Looks wicked, writing volume shaders is clearly fun! Quote Link to comment Share on other sites More sharing options...
Hazoc Posted April 1, 2011 Share Posted April 1, 2011 (edited) Is there a way to get brightness data out of the shader somehow and send it to another shader, or otherwise turn it into a source of light or brightness modifier? Shall I ditch the default shader and make my own? How about using volume SOP to extract some intensive areas of the volume, then buildig an iso surface from it and use that as an object area light ? Getting intensities produced by the shader, I've no idea:) Edited April 1, 2011 by Hazoc Quote Link to comment Share on other sites More sharing options...
Matt_K Posted April 1, 2011 Share Posted April 1, 2011 (edited) Hey Macha! Just a quick idea: what about creating points from volume, attribute transfer the density to the points and use that to drive the lighting? Copy spheres/metaballs to the points with emission driven by fitted density? Or use as geometry light with density driving light intensity? Did something vaguely similar a while back - will try and find the file and see if it will help at all. Matt. Edited April 1, 2011 by Matt_K Quote Link to comment Share on other sites More sharing options...
hopbin9 Posted April 1, 2011 Share Posted April 1, 2011 Try stamping small spheres at each point in the cloud, and then use that as a geometry light source. Quote Link to comment Share on other sites More sharing options...
Macha Posted April 1, 2011 Author Share Posted April 1, 2011 The problem is that all structure is generated at rendertime, it is not present on the sop level, so there is nothing to scatter points or spheres to. Perhaps I should rewrite the shader on cvex and use procedural shaders (that volume shader-in-viewport-trick). But isn't there also a way to export variables from a shader? I read something like that somwhere. Quote Link to comment Share on other sites More sharing options...
symek Posted April 2, 2011 Share Posted April 2, 2011 Maybe I miss something, but why don't you use Ce variable in a smoke shader? This way volume will emit light to your scene, that is, only in PBR mode... But isn't there also a way to export variables from a shader? I read something like that somwhere. yes, there is, depending on from which shader to what place I suppose... Generally surface shaders can freely communicate thanks to sending rays. There is a whole gather() / rayimport() /simport() factory for that purpose. I'm not sure how this works with volume though, but it should as usual. Keeping volumes on a disk would greatly simplify the process though since, as you know, you can always open it from a shader. Quote Link to comment Share on other sites More sharing options...
Matt_K Posted April 2, 2011 Share Posted April 2, 2011 (edited) Hey guys, If you can use the billowysmoke shader, then it's as simple as using the Emission parameter with PBR - which can be driven by temperature / density / heat etc. Though getting your noise to acceptable levels may be an issue. Edited April 2, 2011 by Matt_K 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.