Indigo Renderer 2.4.3 Released

General News and accouncements regarding the Indigo render engine
Post Reply
154 posts
User avatar
OnoSendai
Developer
Posts: 6243
Joined: Sat May 20, 2006 6:16 pm
Location: Wellington, NZ
Contact:

Indigo Renderer 2.4.3 Released

Post by OnoSendai » Thu Apr 15, 2010 11:08 pm

This is a Beta release.
If you spot any bugs or problems, please make a post about them in this thread.
Thanks!

Indigo for Windows 32-bit:
IndigoRenderer_2.4.3_Setup.exe

Indigo for Windows 64-bit:
IndigoRenderer_x64_2.4.3_Setup.exe


See the 2.4.2 post at http://www.indigorenderer.com/forum/vie ... f=1&t=9619 for a description of the network manager.

Some more new features:

UV affine transformations

Code: Select all

<material>
    <name>mat1</name>
    <diffuse>
      <texture>
        <uv_set>albedo</uv_set>
        <path>__55_Chevy_by_marpo3.jpg</path>
        <exponent>2.2</exponent>
        <tex_coord_generation>
          <uv>
            <matrix>1 0 0 1</matrix>
            <translation>0.5 0.5</translation>
          </uv>
        </tex_coord_generation>
      </texture>

      <albedo>
        <texture>
          <texture_index>0</texture_index>
        </texture>
      </albedo>
    </diffuse>
  </material>
Access to elevation angles in BRDF shaders



This allows users to create fancy colour changing paints, that vary colour based on viewing angle.

There are two new functions added to the shading language, minCosTheta and maxCosTheta.

minCosTheta returns the minimum of the cosines of the zenith angles of the incident and exitant vectors of a ray scattering off a surface.

Likewise, maxCosTheta returns the maximum of the two.

You can use the return values of these functions to blend between different colours, like in the example below.

E.g.
colour_changing.jpg

Code: Select all

<material>
		<name>default</name>

		<phong>
			<diffuse_albedo>
        <shader>
          <shader>
            <![CDATA[	
						def eval(vec3 pos) vec3 :
                  lerp(
                    vec3(1.0, 0.0, 0.0),
                    vec3(0.0, 1.0, 0.0),
                    maxCosTheta()
                   )
						]]>
          </shader>
        </shader>
      </diffuse_albedo>

      <exponent>
        <constant>
          10000.0
        </constant>
      </exponent>
		</phong>
  </material>
More shader lang functions
normalWS() Returns the shading normal for the current surface point in world space.

posOS() Returns the current surface point in object space coordinates.

Heterogeneous participating media
Participating media is stuff that scatters light - smoke, dust, snow, wax etc..
Heterogeneous means that the medium's properites can vary with position, meaning the medium can be denser in some places and less dense in others. Or it can vary in absorption colour etc..

This feature is pretty much still experimental, especially for non-uniform scattering coefficients.
Some parameters of Indigo media can now be controlled with shaders - absoprtion coefficient and scattering coefficient.

This is a pretty powerful feature, and should be able to create some pretty awesome effects.

Example:
heterogeneous_media_test.jpg

Code: Select all

  <medium>
    <name>medium</name>
    <precedence>20</precedence>

    <basic>
      <ior>1.0</ior>
      <cauchy_b_coeff>0.0</cauchy_b_coeff>

      <absorption_coefficient>
		  <shader>
        <shader>
          <![CDATA[	
						def eval(vec3 pos) vec3 :
							vec3(fbm(pos, 3) * 10.0)
						]]>
        </shader>
          <wavelength_dependent>false</wavelength_dependent>
        </shader>
      </absorption_coefficient>
    </basic>
  </medium>

User avatar
Zom-B
1st Place 100
Posts: 4701
Joined: Tue Jul 04, 2006 4:18 pm
Location: ´'`\_(ò_Ó)_/´'`
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by Zom-B » Fri Apr 16, 2010 12:13 am

cool!

here the missing changelog:

Code: Select all

2.4.3
* Removed dependency of indigo_console on nvcuda.dll
* Made network manager stuff a bit less verbose.

User avatar
Pibuz
1st Place 100
Posts: 2646
Joined: Tue Dec 11, 2007 7:58 am
Location: Padua, Italy
3D Software: SketchUp

Re: Indigo Renderer 2.4.3 Released

Post by Pibuz » Fri Apr 16, 2010 12:31 am

Thank you guys!
I'll test this boy in minutes!

User avatar
suvakas
3rd Place Winner
Posts: 2613
Joined: Mon Sep 04, 2006 11:08 pm
Location: Estonia
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by suvakas » Fri Apr 16, 2010 5:44 am

Thanks!
Console and network rendering is working Ok now.

User avatar
pixie
Indigo 100
Posts: 2345
Joined: Sat Dec 29, 2007 4:54 am
Location: Away from paradise
3D Software: Cinema 4D
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by pixie » Fri Apr 16, 2010 7:49 am

Working fine! :D

User avatar
OnoSendai
Developer
Posts: 6243
Joined: Sat May 20, 2006 6:16 pm
Location: Wellington, NZ
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by OnoSendai » Fri Apr 16, 2010 2:17 pm

Added some more feature descriptions! :twisted: :twisted: :twisted:

User avatar
Zom-B
1st Place 100
Posts: 4701
Joined: Tue Jul 04, 2006 4:18 pm
Location: ´'`\_(ò_Ó)_/´'`
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by Zom-B » Fri Apr 16, 2010 3:16 pm

Whoohoo... this is quite awesome!

Now please, please with sugar on top, let fused work on Cindigo to include some of the new controls ^^

User avatar
ENSLAVER
Posts: 399
Joined: Tue Feb 20, 2007 1:49 am

Re: Indigo Renderer 2.4.3 Released

Post by ENSLAVER » Fri Apr 16, 2010 8:16 pm

The Heterogeneous participating media looks awesome.

User avatar
Zom-B
1st Place 100
Posts: 4701
Joined: Tue Jul 04, 2006 4:18 pm
Location: ´'`\_(ò_Ó)_/´'`
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by Zom-B » Fri Apr 16, 2010 11:26 pm

OnoSendai wrote:minCosTheta returns the minimum of the cosines of the zenith angles of the incident and exitant vectors of a ray scattering off a surface.
So using this I can generate a ISL based "fresnel gradient"!? This will become very awesome for carpaints and complex blendmaterials!!
fresnel.jpg


I tried using this shader for blending too, but get following error:

Code: Select all

SceneLoaderExcep: Couldn't find function eval()
btw: would it be possible to include the line in the igs where the Error appeared into this kind of messages?


Also existentially found out that a "empty function like this let Indigo crash & Burn:

Code: Select all

def eval() real :
(
)

User avatar
Zom-B
1st Place 100
Posts: 4701
Joined: Tue Jul 04, 2006 4:18 pm
Location: ´'`\_(ò_Ó)_/´'`
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by Zom-B » Sat Apr 17, 2010 1:56 am

I had some problems with the Heterogeneous participating media.
The following code let Indigo Crash & Burn:

Code: Select all

            <absorption_coefficient>
				<shader>
                    <shader>
                        <![CDATA[def Vec3ToReal(vec3 v) real : ((doti(v) + dotj(v) + dotk(v)) / 3.0)
					   def noise01(vec3 v) real : ((noise(v) + 1.0) * 0.5)
					   def noise01(vec2 v) real : ((noise(v) + 1.0) * 0.5)
					   def noise01(real r) real : ((noise(r) + 1.0) * 0.5)
					   def fbm01(vec3 v, int oc) real : ((fbm(v,oc) + 1.0) * 0.5)
					   def fbm01(vec2 v, int oc) real : ((fbm(v,oc) + 1.0) * 0.5)
					   def fbm01(real r, int oc) real : ((fbm(r,oc) + 1.0) * 0.5)
					   def mulCompVec2(vec2 a, vec2 b) vec2 : vec2(doti(a) * doti(b), dotj(a) * dotj(b))
					   def mulCompVec3(vec3 a, vec3 b) vec3 : vec3(doti(a) * doti(b), dotj(a) * dotj(b), dotk(a) * dotk(b))
def eval(vec3 pos) vec3: (lerp(vec3(1.00000, 1.00000, 1.00000), vec3(0.00000, 0.00000, 0.00000), noise01(mulCompVec2(getTexCoords(0) * 10.0, vec2(1000.00000, 1000.00000)))) * 1.00000)]]>
					</shader>
						<wavelength_dependent>false</wavelength_dependent>
				</shader>
            </absorption_coefficient>

User avatar
fused
Developer
Posts: 3648
Joined: Fri Sep 22, 2006 7:19 am
Location: Berlin, Germany
3D Software: Cinema 4D

Re: Indigo Renderer 2.4.3 Released

Post by fused » Sat Apr 17, 2010 3:33 am

a point inside a volume probably doesnt have a texture coordinate :)

better use 3d noise :)

User avatar
fused
Developer
Posts: 3648
Joined: Fri Sep 22, 2006 7:19 am
Location: Berlin, Germany
3D Software: Cinema 4D

Re: Indigo Renderer 2.4.3 Released

Post by fused » Sat Apr 17, 2010 3:36 am

Zom-B wrote:Also existentially found out that a "empty function like this let Indigo crash & Burn:

Code: Select all

def eval() real :
(
)
a function should return a value. but indigo should also give an error :)

User avatar
Zom-B
1st Place 100
Posts: 4701
Joined: Tue Jul 04, 2006 4:18 pm
Location: ´'`\_(ò_Ó)_/´'`
Contact:

Re: Indigo Renderer 2.4.3 Released

Post by Zom-B » Sat Apr 17, 2010 4:53 am

fused wrote:better use 3d noise :)
well yes, totally forgot about this -.-

Now I played around a little with my first result of some 3D noise inside a few spheres:
studio setup.jpg
Can you guys see the spooky face in the big sphere to O_o' ???


Here another quick render with IOR = 1:
studio setup.2jpg.jpg

User avatar
fused
Developer
Posts: 3648
Joined: Fri Sep 22, 2006 7:19 am
Location: Berlin, Germany
3D Software: Cinema 4D

Re: Indigo Renderer 2.4.3 Released

Post by fused » Sat Apr 17, 2010 5:38 am

uhhhhhhh nice tests :)

you should try scattering to make some clouds :)

edit: that normal test is pretty cool too :)

User avatar
CTZn
Posts: 7240
Joined: Thu Nov 16, 2006 4:34 pm
Location: Paris, France

Re: Indigo Renderer 2.4.3 Released

Post by CTZn » Sat Apr 17, 2010 6:27 am

Oh great Ono, thanks for the tests Zom-B !

Post Reply
154 posts

Who is online

Users browsing this forum: No registered users and 36 guests