Jump to content
borisb2

krakatoa shader

Recommended Posts

I'd like to pickup that ink-shading topic based one the krakatoa-workflow (particles advected by fluids and rendered with volume-shader)

http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&t=11822

As Miguel Salek stated there, not only the advecting particles but especially the custom RenderMan-shader did the diffusion-trick to get that streaklike-effect without having to render millions of particles. I'd like to know if there are maybe any similar VEX-shader already written for Houdini?

At least Miguel was mentioning in that thread that this diffusion-trick should be possible in VEX...

Does anyone has used something like this in Houdini?

Thanks

Share this post


Link to post
Share on other sites

emm... hey hello!

it can be totally done and redone in mantra.

is just straight point rendering. deep shadows will add to it! and not just rendering time ;)

also krakatoa used to be a point renderer before blah blah but not anymore. latest release of (krakatoa 1.5) release can render not just dots but voxels too!. ( and yes you can do all this and more with houdini).

more info here:

http://software.primefocusworld.com/software/support/krakatoa/voxel_rendering_mode.php

http://software.primefocusworld.com/software/support/krakatoa/shading.php

http://software.primefocusworld.com/software/support/krakatoa/environment_reflection_maps.php

http://software.primefocusworld.com/software/support/krakatoa/particle_channels_editor.php

hope all this links and shit somehow help :)

laters'

msalek

PS: i am still a peon.

Edited by msalek

Share this post


Link to post
Share on other sites

well .. I'm still a Peon too ;-)

Thanks for the links..

So I guess in your reel you used the voxel-approach for that side by side animation (particles vs. rendering) instead of millions of points ?

I'm curious though how that could be done with Houdini.. I mean "conversion of particle data into voxels" doesn't sound trivial to me at least.

Do you have any hints to point me in the right direction?

Thanks and all the best,

Boris

Edited by borisb2

Share this post


Link to post
Share on other sites

Thanks for this post :) I'm going to follow through all your links in a sec.

PS. And I'm sorry about the Peon thing. ;) Marc has an obscure sense of humor. Perhaps its time to revisit those rankings? Heh heh

Share this post


Link to post
Share on other sites

My opinion on this is this:

I totally believe that much of Krakatoa is possible in Houdini. BUT! Houdini has a more generic Volume representation and is missing good support for particle replication (a la clusterThis). It also doesn't have any tools for good, fast stamping of [replicated] motion-blurred particles into Volumes.

You can jury-rig some of this by trying i3d filling using the Image3D or Volume VOP SOP, but it'll be too slow to be usable for high resolutions or high point-counts. You could also attempt to "pre-render" motion-blurred to Deep Camera Maps (in uncomposited, uncompressed mode) and then try to convert to a Volume for re-rendering, but the effort far outruns the benefit at the moment, as the technologies are not quite suited in 10.0.

I believe that these tools (replication and particle-stamping and/or rendering directly to Volumes from Mantra) are no great shakes in terms of complexity but can be very enabling. I would love for Side Effects to provide these with Houdini.

Share this post


Link to post
Share on other sites

Thanks Msalek, you work, rnd are great

That is old stuff this is something new

http://www.vimeo.com/user1342200/videos

Hey Igor, what are your sim and render times for some of these tests looking like?

That's more on the gist of why Krakatoa is so good, it renders very fast, and is pretty much resolution independent.

Share this post


Link to post
Share on other sites

I forgot rende time, nad i just try some new render

3mil particles, Deep Shadow 512*512 pixel 3*3, res 960*540 , no mblur

bgeo cache was 20ses/frame, render time was 15-20sec/frame

frame1.jpg

frame10.jpg

frame20.jpg

Edited by CeeGee

Share this post


Link to post
Share on other sites

I found some test 1 year ago, this was my first render with Houdini, i try some setup with 1mil particles.

It was some Dragon with scatter set on 1mil , and put into POP, birth 1mil at frame 1 and do some noise.

Then i was overjoyed with my first Houdini sim and render and then i try something - put in scatter node one 0 .. :)

This is 10mil particle sim and render. 2048*1556 resolution

highparticle122xd9.jpg

Edited by CeeGee

Share this post


Link to post
Share on other sites

I try same scene, export one frame as bgeo file import in delayed load shader, make geo node and reposition the and applay shader for every GEO node

72mil particles, every geo node has bgeo with 3mil in delayed load shader render time 1min 47sec

72mil.jpg

Share this post


Link to post
Share on other sites

very awesome :)

I'm doing a simple test, and i read the delayed load help...

in the efficiency section it states:

"Instead of using a file SOP to load the full geometry for the disk files, use proxy geometry instead. This keeps Houdini’s memory footprint lower."

Could someone explain this to me? I thought the purpose of the delayed load was to not have the geometry in the scene anyways?

Second... I rendered 30 mil particles last night but it took 1 hour! How are you getting such fast times?

I might be doing something wrong? Here is my process. File in some geometry... wire it to a pop net. Generate 3 mil particles on one frame. wire that to a file node and set it to "write"... so it writes out my 3 mil particles to disk.

Open new scene. open up shop, create mantra: delayed load... point to the "3 mil particle" file. go back to obj level. lay down geo node. delete everything inside of it. on the render tab --> geometry sub tab of the geo node, set the procedural shader to the delayed load shader. duplicate and translate this geo node for a total of 10 x 3 mil particles = 30 mil particles at this point.

lay down a camera. lay down a mantra node. render!

Edited by itriix

Share this post


Link to post
Share on other sites

Hmmm, did you check on GeoNode - in Geomatry sub - Render as Points

Share this post


Link to post
Share on other sites

This is test with animation, i have small empty space for caching and only cache 13mil particles.

Each palace has 1mil particles, each palace was simulate and write bgeo cache then load with delayload shader

This is render. Need more substep but this is oly a test.

palace_v02_low.mov

Edited by CeeGee

Share this post


Link to post
Share on other sites

This is test with animation, i have small empty space for caching and only cache 13mil particles.

Each palace has 1mil particles, each palace was simulate and write bgeo cache then load with delayload shader

This is render. Need more substep but this is oly a test.

palace_v02_low.mov

:) AWESOME!

Curious about your workflow on that. Did you originally have all of the palaces loaded into a scene? then set up a popnet for each palace? drive the "particle noise" by some growing bounding object in SOPS? that fed into ALL of the popnets? And then in order to sim out each, turn off visibility of all but one. Then sim out, ONE at a time? Then make a geo node for each palace with a delayed load that points to each individual sim?

Thanks for the help there

I love this stuff so much,

Jonathan

Share this post


Link to post
Share on other sites

One more test same scene, setup, just more palace

90 palace * 3mil per palace = ??? :)

270mil.jpg

Edited by CeeGee

Share this post


Link to post
Share on other sites

This is the scene for palace_v02_low.mov, and other test that i try.

If someone whant to test or improve render...

Palace.rar

  • Like 1

Share this post


Link to post
Share on other sites

Wow thanks CeeGee! This will help me a lot :) I can't wait to take a look at it after my render has finished up.

Share this post


Link to post
Share on other sites

I am looking at the file now and learning a lot from just seeing your layout! thanks so much for the files. Your popnet is using an otl... aanoise? it's giving a warning that it's using an incomplete asset definition and will not work properly. *i can just whip up my own noise*... but thought i'd ask you first though. (i'm assuming it's essentially just a voppop but done in VEX with P plugged into anti aliased noise, then adding the result to the original p, then plugged into the output p?

SERIOUSLY thanks again man,

Jonathan

*EDIT*

Question: just to make sure i'm understanding this correctly, i need to "save out each of the GEOMETRY rops" before rendering right? HOW many gigs did this thing take up? B)

And how long did it take to save out all 13? :ph34r:

then render time? ;)

Edited by itriix

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×