Digital Art Zone

 
   
44 of 47
44
3Delight Surface and Lighting Thread
Posted: 18 August 2014 11:51 AM   [ Ignore ]   [ # 646 ]
Active Member
Avatar
RankRank
Total Posts:  430
Joined  2008-06-25
Takeo.Kensei - 18 August 2014 10:38 AM

I’m not a big fan of backscattering. Should be handled by the shader calculation, but you need correct light calculation for that
Eventually just to give some artistic control

Artistic, exactly. The new raytraced algo looks good enough for me, but other people have different eyes. So I’ll try to add it.

Okay, now volumes. They weren’t supported in 2013, that’s for sure (I saw folks complaining on the 3Delight forums). Good they fixed it quicker than I could hope for.

Now, I’ve managed to get RiFog working with the “progressive” switch (albeit there’s still something weird going on with the eyes - see attached), but not in the scripted mode. On looking at the RIBs, the example render script won’t see atmospheres.

This is the function to get it, from the DS3 script docs:

void DzScriptedRenderer::riAtmosphere String  name,
Array  
tokens,
Array  
params  
)   
DAZ Script implementation of the RiAtmosphereV() function

Parameters:
name  The name of the volume shader
tokens  An 
Array of String token names passed to the shader
params  An 
Array of corresponding values for tokens 

But how to get the atmosphere name automatically?

Image Attachments
rifog_test_prog.jpgreyesrifog.png
 Signature 

do your research before blaming 3Delight for shortcomings of your renders

dA gallery link in profile along with anything else you may need to know about me

my thread with freebies

Profile
 
 
Posted: 18 August 2014 02:44 PM   [ Ignore ]   [ # 647 ]
Active Member
Avatar
RankRank
Total Posts:  761
Joined  2012-02-12

For what I know volumes are supported since before 3delight 8.5 which means DS3.x

I don’t really know why you have white eyes. Hard to guess but that is a cool effect

And I am not sure to understand your last question : you should know the name of the shader you want to use, so unless your computer does read mind that will be difficult to have an automatic naming ???  (cool idea though smile )

 

 Signature 

My Deviant Art

Profile
 
 
Posted: 19 August 2014 09:19 AM   [ Ignore ]   [ # 648 ]
Active Member
Avatar
RankRank
Total Posts:  430
Joined  2008-06-25
Takeo.Kensei - 18 August 2014 02:44 PM

For what I know volumes are supported since before 3delight 8.5 which means DS3.x

I don’t really know why you have white eyes. Hard to guess but that is a cool effect

And I am not sure to understand your last question : you should know the name of the shader you want to use, so unless your computer does read mind that will be difficult to have an automatic naming ???  (cool idea though smile )

There was something wrong with volumes in the raytrace hider (only there, not in the default one) in 2013, when they were transitioning to path tracing - Berto Durante said there was no proper support yet: http://www.3delight.com/en/modules/PunBB/viewtopic.php?id=3878

The question is, how do I make the render script to read the name from the scene atmosphere shader automatically.
In DS, we attach these to cameras. It looks like I have to query the active camera whether it’s a normal camera or a dzShaderCamera, and if it’s a dzShaderCamera, I get its dzRSLShader.
But how do I then get its name and tokens to pass to Renderer.riAtmosphere()? I can see no straightforward methods for this listed in the docs.

 

 Signature 

do your research before blaming 3Delight for shortcomings of your renders

dA gallery link in profile along with anything else you may need to know about me

my thread with freebies

Profile
 
 
Posted: 19 August 2014 06:30 PM   [ Ignore ]   [ # 649 ]
Addict
Avatar
RankRankRankRank
Total Posts:  11246
Joined  2007-11-06

...been directed here from the Renderman thread. Crikey there’s so much to go through, more than I can handle in one session as I no longer have Net access from home.

On the other thread I brought up AoA’s atmospheric cameras relating to volumetrics and scripted rendering.

One of the responses included an example of a render using UberVolume as it was mentioned the pure ray tracer had issues with AoA’s shader and not with the ability to interpret volumeetrics

Takeo.Kensei - 18 August 2014 10:19 AM

Everything works. Atmosphere, interior, and whatever. See the attached testscene

My question is long did the render process take?  I know with the regular 3Delight, UberVolume brings the process to an excruciatingly slow crawl.

My other concern (as I mentioned in the other thread) is the whole business of scripting.  I am no longer a programmer, have not been for decades, and am way out of step with any of today’s languages.  Therefore I am totally dependent on pre-written scripts that are made available which I can download and install into the 4.6 scripts folder.

Another question, does scripted rendering not support of AoA’s Advanced lights as well?  Two of their features I really like and find very useful are surface flagging and the spotlight having a squared (natural) falloff setting, neither of which are available with the normal Daz lights or with any of the UberLight options.  I also do not have any of the other Omnifreaker shaders lights than those which were built into 4.6 (budget reasons).

 Signature 

...it’s five minutes to midnight…

I’d rather have a blue sky above me than a blue screen in front of me.

Profile
 
 
Posted: 20 August 2014 08:02 AM   [ Ignore ]   [ # 650 ]
Active Member
Avatar
RankRank
Total Posts:  761
Joined  2012-02-12
Mustakettu85 - 19 August 2014 09:19 AM
Takeo.Kensei - 18 August 2014 02:44 PM

For what I know volumes are supported since before 3delight 8.5 which means DS3.x

I don’t really know why you have white eyes. Hard to guess but that is a cool effect

And I am not sure to understand your last question : you should know the name of the shader you want to use, so unless your computer does read mind that will be difficult to have an automatic naming ???  (cool idea though smile )

There was something wrong with volumes in the raytrace hider (only there, not in the default one) in 2013, when they were transitioning to path tracing - Berto Durante said there was no proper support yet: http://www.3delight.com/en/modules/PunBB/viewtopic.php?id=3878

The question is, how do I make the render script to read the name from the scene atmosphere shader automatically.
In DS, we attach these to cameras. It looks like I have to query the active camera whether it’s a normal camera or a dzShaderCamera, and if it’s a dzShaderCamera, I get its dzRSLShader.
But how do I then get its name and tokens to pass to Renderer.riAtmosphere()? I can see no straightforward methods for this listed in the docs.

 

Like any program, you could have bugs at some time of the dev. I’m sure I never saw it. And in case of I always keep old 3delight and DS versions. And it also takes time to make everything correct. I suppose the problem was at a particular version

For the other question, I am not sure as I didn’t try but there is a getparameter in DZshaderdescription of the SDK

Kyoto Kid - 19 August 2014 06:30 PM

...been directed here from the Renderman thread. Crikey there’s so much to go through, more than I can handle in one session as I no longer have Net access from home.

On the other thread I brought up AoA’s atmospheric cameras relating to volumetrics and scripted rendering.

One of the responses included an example of a render using UberVolume as it was mentioned the pure ray tracer had issues with AoA’s shader and not with the ability to interpret volumeetrics

Takeo.Kensei - 18 August 2014 10:19 AM

Everything works. Atmosphere, interior, and whatever. See the attached testscene

My question is long did the render process take?  I know with the regular 3Delight, UberVolume brings the process to an excruciatingly slow crawl.

Some other testscene attached :
First scene : Ubervolume cone with Depthcue camera, one spotlight for creating the Godray and one Distant light in the back. Reyes Rendertime = 2min18. Progressive Rendering (aka raytrace) = +10 min
I wouldn’t advice to use Raytrace with volumes. It seems that Reyes is way more efficient for that
Second render is the same as first scene but with a sphere as Dome to make a closed environment. Reyes = 4 min. Your computer should render the same scene a bit quicker than mine.

Kyoto Kid - 19 August 2014 06:30 PM

My other concern (as I mentioned in the other thread) is the whole business of scripting.  I am no longer a programmer, have not been for decades, and am way out of step with any of today’s languages.  Therefore I am totally dependent on pre-written scripts that are made available which I can download and install into the 4.6 scripts folder.

I am no programmer and Kettu isn’t either. I’m a mechanical engineer but I work as a production IT so I do script and program. But what is done here is not really difficult if you follow Kettu’s tutorial. It’s rather copy/paste. I can understand some people are afraid but once you get the trick, I guess you can customize things to your way, like Kettu does. She’s doing good considering she has no IT background. Just read her post http://www.daz3d.com/forums/viewthread/21611/P495/#642793

Kyoto Kid - 19 August 2014 06:30 PM

Another question, does scripted rendering not support of AoA’s Advanced lights as well?  Two of their features I really like and find very useful are surface flagging and the spotlight having a squared (natural) falloff setting, neither of which are available with the normal Daz lights or with any of the UberLight options.  I also do not have any of the other Omnifreaker shaders lights than those which were built into 4.6 (budget reasons).

I don’t have AOA’s product. Only the standard SSS shader that I don’t use either. So I can only guess :  Scripting should be supported but I remember reading somewhere AOA’s product don’t support Pointcloud. Don’t know if it is still the case. No clue either for the Raytrace Hider. Now to guess why it doesn’t work in some specific case is something AOA should answer. Hard to guess when you don’t have the source code

But you don’t really need scripting in my view. Just eventually use progressive raytrace in your render settings to see if you have some speed up with progressive rendering (so anyway not with volumes)

Last note : Uberarealight has a control for the falloff : it is called Falloff Decay and has a default value of 2 which means square root falloff.

 

Image Attachments
Volumetest01.jpgvolumetest02.jpg
 Signature 

My Deviant Art

Profile
 
 
Posted: 20 August 2014 08:55 AM   [ Ignore ]   [ # 651 ]
Active Member
Avatar
RankRank
Total Posts:  430
Joined  2008-06-25
Kyoto Kid - 19 August 2014 06:30 PM

Crikey there’s so much to go through, more than I can handle in one session as I no longer have Net access from home.

Well, here’s a post of mine with links to:
a) a “benchmark” type of scene;
b) main post with copy & paste instructions;
c) further small edits.

http://www.daz3d.com/forums/viewthread/21611/P570/#650631

Kyoto Kid - 19 August 2014 06:30 PM

Another question, does scripted rendering not support of AoA’s Advanced lights as well?  Two of their features I really like and find very useful are surface flagging and the spotlight having a squared (natural) falloff setting

Actually “scripted rendering” is simply a rather unwieldy interface for passing specific parameters to the render engine (allowing the user to use more calls than DS does “by default”). The example script DAZ devs have been so kind to provide for us, which is used as the basis for most other scripts, has no issues handling lights. What the example script does not provide is a ready-made construct for parsing shaders attached to cameras (like atmosphere shaders are in DS).

TL;DR: feel free to use AoA’s lights.  (see attached - AoA’s distant light illuminates only the sphere, AoA’s ambient - only the cone).

// But AoA’s ambient will not do bounce light GI. Use UE2 bounce mode for this //

PS Actually, falloff controls (and some other useful things) _are_ included with the so-called “shader” lights found in the “DS Defaults” folder in either “Lights” or “Light Presets” folder in “Your Library”. They won’t do fancy “surface flagging” or cookies/gobos/whatever is the term for slide projecting these days, but they can use DSM, so if you ever find you need one… But you always have to CTRL-click and “Add” them, so as not to overwrite all your other lights.

———

Takeo.Kensei - 20 August 2014 08:02 AM

For the other question, I am not sure as I didn’t try but there is a getparameter in DZshaderdescription of the SDK

Okay thanks, I’ll see what this method can return.

Takeo.Kensei - 20 August 2014 08:02 AM

But what is done here is not really difficult if you follow Kettu’s tutorial. It’s rather copy/paste. I can understand some people are afraid but once you get the trick, I guess you can customize things to your way, like Kettu does. She’s doing good considering she has no IT background.

Yup, it’s all copy&paste; when you have the constructs. Technically, as part of my local mech eng/applied physics degree, I did have a semester of basic programming and a semester of numerical modeling, but you don’t want to know what glorious bugs I was able to conjure XD

 

Image Attachments
AmbientCone_DistantSphere_NonePlane.png
 Signature 

do your research before blaming 3Delight for shortcomings of your renders

dA gallery link in profile along with anything else you may need to know about me

my thread with freebies

Profile
 
 
Posted: 20 August 2014 05:50 PM   [ Ignore ]   [ # 652 ]
Active Member
Avatar
RankRank
Total Posts:  430
Joined  2008-06-25
Takeo.Kensei - 20 August 2014 08:02 AM

For the other question, I am not sure as I didn’t try but there is a getparameter in DZshaderdescription of the SDK

 

Tried, and this method along with its getNumParameters() friend seems to only be defined for DzShader, not DzRSLShader.

On the bright side, getShaderFile() gives me the path like “ShaderBuilder/Volume/RiSpec/RI_Fog” - which I think will work for the RiAtmosphere call as “name”.

There is a findTokenByProperty() method which may or may not be useful… if I find a way to extract properties from definition file, a path to which I can get from getDefinitionFile()  - but then how to fill the tokens with user-defined values from the scene interface??

Convoluted much.

I’m thinking about making a render script that will be tuned for a specific atmosphere (we don’t have many right now for DS, do we?) - say, RI_Fog. Then its name will be passed automatically, but the tokens will be filled in by the user in the render settings (not in the camera settings). The downside is that I’m not sure these values will get saved per-scene.

I hope to see if this idea works in the next few days.

PS About UberVolumes, I noticed the omSimpleSurface enclosing the volume is always visible to diffuse (GI/AO) rays! When rendering with either on, it makes the volume render slow, but does not seem to change its appearance much as compared to non-GI renders. I wish the UberVolume scripts were non-encrypted! Then it would be possible to kill the diffuse ray visibility…

 Signature 

do your research before blaming 3Delight for shortcomings of your renders

dA gallery link in profile along with anything else you may need to know about me

my thread with freebies

Profile
 
 
Posted: 20 August 2014 06:48 PM   [ Ignore ]   [ # 653 ]
Active Member
Avatar
RankRank
Total Posts:  506
Joined  2003-10-09

Kettu’s script works magic! I bailed on a 60% done render after 14 minutes using GI and Progressive Render. Kettu’s script which allows tweaks comes in around 6 minutes 30 seconds.

Profile
 
 
Posted: 21 August 2014 07:20 AM   [ Ignore ]   [ # 654 ]
Active Member
Avatar
RankRank
Total Posts:  430
Joined  2008-06-25
Kevin Sanderson - 20 August 2014 06:48 PM

Kettu’s script works magic! I bailed on a 60% done render after 14 minutes using GI and Progressive Render. Kettu’s script which allows tweaks comes in around 6 minutes 30 seconds.

Thank you, but the real magic is done by 3Delight (which was just waiting for us to “unlock” it, haha)

 Signature 

do your research before blaming 3Delight for shortcomings of your renders

dA gallery link in profile along with anything else you may need to know about me

my thread with freebies

Profile
 
 
Posted: 22 August 2014 04:50 PM   [ Ignore ]   [ # 655 ]
Active Member
Avatar
RankRank
Total Posts:  430
Joined  2008-06-25

Hi again everyone,

I may disappear for some time, maybe a few weeks - real life an’stuff. I may be popping in once in a while for a quick check, but not much more. But I will be working on the shaders, scripts etc.

So here’s what I managed so far to get re:backscattering:

- “noback” - just the default shader mode, no adjustments to the subsurface() shadeop result;
- “back_falloff 1” - backscatter multiplier of 5, no falloff correction;
- “back_falloff 0.15” - same backscatter mutiplier, but a 0.15 parameter passed to falloff calculation.

Image Attachments
noback_.pngback_falloff1.pngback_falloff0-15.png
 Signature 

do your research before blaming 3Delight for shortcomings of your renders

dA gallery link in profile along with anything else you may need to know about me

my thread with freebies

Profile
 
 
Posted: 23 August 2014 04:04 PM   [ Ignore ]   [ # 656 ]
Active Member
Avatar
RankRank
Total Posts:  506
Joined  2003-10-09

The .15 image looks more correct to me.

Profile
 
 
Posted: 23 August 2014 06:32 PM   [ Ignore ]   [ # 657 ]
Active Member
RankRank
Total Posts:  480
Joined  2007-12-20

I suggest also adding a sharpness value for the falloff.

Profile
 
 
Posted: 25 August 2014 08:08 AM   [ Ignore ]   [ # 658 ]
Active Member
Avatar
RankRank
Total Posts:  430
Joined  2008-06-25
wowie - 23 August 2014 06:32 PM

I suggest also adding a sharpness value for the falloff.

I’m not sure how to do it. I will try, if I find an RSL resource with explanation.

 Signature 

do your research before blaming 3Delight for shortcomings of your renders

dA gallery link in profile along with anything else you may need to know about me

my thread with freebies

Profile
 
 
Posted: 26 August 2014 02:39 AM   [ Ignore ]   [ # 659 ]
Active Member
RankRank
Total Posts:  480
Joined  2007-12-20

Haven’t actually read this, but maybe it will give you ideas about volumetric lights/shadows:
http://www.sfb716.uni-stuttgart.de/uploads/tx_vispublications/espmss10.pdf

Some nice insight - do’s and don’ts - on skin rendering:
http://c0de517e.blogspot.jp/2011/12/three-skin-rendering-horrors-you-want.html

Btw, anybody read this yet?
http://www.fxguide.com/featured/manuka-weta-digitals-new-renderer/
http://www.fxguide.com/featured/rendermanris-and-the-start-of-next-25-years/

 

Profile
 
 
Posted: 26 August 2014 11:57 AM   [ Ignore ]   [ # 660 ]
Active Member
Avatar
RankRank
Total Posts:  506
Joined  2003-10-09

Wowie, I read the one on WETA’s render engine. Interesting how they have found it better to match full spectrum light rendering to real scenes shot. I have felt that way for a while, but there must be a way to fake it or come really close.

I used your Photo Studio Kit Lights and SSS to test a render battle between Progressive Render and Kettu’s script. Maybe Progressive adds time. I have the Kettu script set to Progressive off. Kettu’s is faster. And consistently so. 21 seconds a frame faster can save time for animation… almost like buying a new processor.

Progressive Render 2 minutes 58.7 seconds

Bucket Order Horizontal
Bucket Size 16
Max Ray Trace Depth 2
Pixel Samples X 4
Pixel Sample Y 4
Shadow Samples 8
Gain 1
Gamma Correction On
Gamma 2.2
Shading Rate 1.0
Pixel Filter Sin (but goes to Box)
Pixel Width X 6
Pixel Width Y 6

Kettu’s script (no GI source in scene but GI Pass still enabled)  2 minutes 37.6 seconds

Max Diffuse Bounce 2
Max Specular Bounce Depth 2
Bucket Order Horizontal
Bucket size 16
Max Ray Depth 2
Pixel Samples X 4
Pixel Samples Y 4
Shadow Samples 8
Gain 1
Gamma 2.2
Shading Rate 1
Pixel Filter Sinc
Pixel Filter Width X 6
Pixel Filter Width Y 6


AMD 8350 8-core CPU and 16GB RAM

Image Attachments
WowiePhotoStudioKit_KettuScript_No_GI_On_In_Scene_Though_GI_Pass_On.jpgWowiePhotoStudioKit_ProgressiveRender.jpg
Profile
 
 
   
44 of 47
44