ISL shader nodes

Announcements, requests and support regarding the Cinema 4D exporter
User avatar
fused
Developer
Posts: 3600
Joined: Fri Sep 22, 2006 7:19 am
Location: Berlin, Germany
3D Software: Cinema 4D

ISL shader nodes

Post by fused » Fri Nov 27, 2009 1:21 pm

hey, ive been working two Indigo Shader Language nodes(namely ISL nosie, for perlin and fbm, and ISL blend, for blending multiple ISL shaders) for c4d so you can use ISL without actually having to write a single line of code.

Here are a few shots:
im1259234744.png
displacement with ISL fbm
im1259234744.png (705.46 KiB) Viewed 5098 times
im1259282952.png
blend of fbm and perlin
im1259282952.png (986.02 KiB) Viewed 5099 times
noise.jpg
the noise shader looks like this in c4d, not too many options currently :)
noise.jpg (58.92 KiB) Viewed 5096 times

User avatar
psor
1st Place Winner
Posts: 1295
Joined: Sun Jun 25, 2006 1:25 am
Location: Berlin
Contact:

Re: ISL shader nodes

Post by psor » Fri Nov 27, 2009 1:37 pm

I love the displacement stuff. Good work fused! :D




take care
psor
"The sleeper must awaken"

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

Re: ISL shader nodes

Post by fused » Fri Nov 27, 2009 3:10 pm

gradient shader node :)
Attachments
1710146017101461.jpg
1710146017101461.jpg (23.33 KiB) Viewed 5079 times

Stromberg
Posts: 693
Joined: Mon Mar 02, 2009 5:01 am
Location: Norway
Contact:

Re: ISL shader nodes

Post by Stromberg » Fri Nov 27, 2009 5:01 pm

Realy nice :D

User avatar
zeitmeister
2nd Place 100
Posts: 1997
Joined: Tue Apr 22, 2008 4:11 am
Location: Limburg/Lahn, Germany
Contact:

Re: ISL shader nodes

Post by zeitmeister » Fri Nov 27, 2009 8:48 pm

Geilgeilgeil... wie ich mich darauf freu!
Cheers, David



DAVIDGUDELIUS // 3D.PORTFOLIO
·
Indigo 4.2.23 | Indigo for C4D 4.2.22 | C4D R14.042 | Mac OS X 10.13.6 | Windows 10 Professional x64

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

Re: ISL shader nodes

Post by fused » Fri Nov 27, 2009 8:56 pm

well... dont get too excited.... currently you can only do 2 color gradients with linear interpolation, because multi colored with non linear (c4ds gradients can be non linear) are a bit tricky (espacialy if the number of color varies).

User avatar
zeitmeister
2nd Place 100
Posts: 1997
Joined: Tue Apr 22, 2008 4:11 am
Location: Limburg/Lahn, Germany
Contact:

Re: ISL shader nodes

Post by zeitmeister » Fri Nov 27, 2009 9:01 pm

Naja dann: MaGucknMaGucknMaGuckn. :mrgreen:
Cheers, David



DAVIDGUDELIUS // 3D.PORTFOLIO
·
Indigo 4.2.23 | Indigo for C4D 4.2.22 | C4D R14.042 | Mac OS X 10.13.6 | Windows 10 Professional x64

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

Re: ISL shader nodes

Post by pixie » Fri Nov 27, 2009 9:59 pm

One step close to perfection! Thanks fused!

User avatar
iacx
Indigo 100
Posts: 51
Joined: Tue Nov 20, 2007 8:03 am
Location: Italy
Contact:

Re: ISL shader nodes

Post by iacx » Fri Nov 27, 2009 10:40 pm

Thanks Fused :D !

User avatar
juan_irender
Indigo 100
Posts: 235
Joined: Tue Jun 23, 2009 12:37 pm
Location: Spain

Re: ISL shader nodes

Post by juan_irender » Fri Nov 27, 2009 10:59 pm

Very promising, Fused! Well, for doing proper multi-color interpolation, an spline data-type added to ISL (a la Renderman) would be very useful.
C4D R17 Studio User - Modo 902 user
iMac Core i7, 16 Gb RAM, OSX 10.11
Intel Core 2 Quad Q9550, 8 Gb RAM, Windows 10 64 bits

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

Re: ISL shader nodes

Post by Zom-B » Sat Nov 28, 2009 4:04 am

First try to get a ISL generated Mountain done. Controle via direct Shader is 10000 times more comfy then tweaking the ISL code ;-)

I hope for more advanced tests over the Weekend... now its time for "Weihnachtsmarkt" *prost*
ISL Mountain v01.jpg
ISL Mountain v01.jpg (105.3 KiB) Viewed 4989 times
polygonmanufaktur.de

User avatar
zeitmeister
2nd Place 100
Posts: 1997
Joined: Tue Apr 22, 2008 4:11 am
Location: Limburg/Lahn, Germany
Contact:

Re: ISL shader nodes

Post by zeitmeister » Sat Nov 28, 2009 4:12 am

Oh, da sachste was... gleich wirds ja ernst. *hicks*
Cheers, David



DAVIDGUDELIUS // 3D.PORTFOLIO
·
Indigo 4.2.23 | Indigo for C4D 4.2.22 | C4D R14.042 | Mac OS X 10.13.6 | Windows 10 Professional x64

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

Re: ISL shader nodes

Post by fused » Sat Nov 28, 2009 5:45 pm

hey ZomB, you will be able to create MUCH better mountains with the next version :)

circular gradient and fbm. note that ALL the shader code is generated by Cindigo and you dont have to write a single line :D
better mountains.jpg
better mountains!!!!!!!!!!!!!!!!
better mountains.jpg (88.27 KiB) Viewed 4940 times
the shader code:

Code: Select all

    <material>
        <name>Indigo Material_mid0</name>
        <diffuse>
            <albedo>
                <constant>
                    <rgb>
                        <rgb>0.800000 0.800000 0.800000</rgb>
                        <gamma>2.200000</gamma>
                    </rgb>
                </constant>
            </albedo>
            <displacement>
                <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() real: (Vec3ToReal(lerp(vec3(1.00000, 1.00000, 1.00000), vec3(0.00000, 0.00000, 0.00000), length(vec2(0.5,0.5) - getTexCoords(0)) * 2.0 )) * 1.00000 + 0.25000 * fbm01(mulCompVec2(getTexCoords(0) * 10.0, vec2(1.00000, 1.00000)),8)) * 1.50000]]>
</shader>
                </shader>
            </displacement>
        </diffuse>
    </material>

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

Re: ISL shader nodes

Post by fused » Sat Nov 28, 2009 5:55 pm

added some perlin to make it more random!
better mountains2.jpg
better mountains2.jpg (111.86 KiB) Viewed 4937 times

Code: Select all

    <material>
        <name>Indigo Material_mid0</name>
        <diffuse>
            <albedo>
                <constant>
                    <rgb>
                        <rgb>0.800000 0.800000 0.800000</rgb>
                        <gamma>2.200000</gamma>
                    </rgb>
                </constant>
            </albedo>
            <displacement>
                <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() real: ((Vec3ToReal(lerp(vec3(1.00000, 1.00000, 1.00000), vec3(0.00000, 0.00000, 0.00000), length(vec2(0.5,0.5) - getTexCoords(0)) * 2.0 )) * 1.00000 + 0.35000 * fbm01(mulCompVec2(getTexCoords(0) * 10.0, vec2(1.00000, 1.00000)),8)) * 1.50000 + 1.00000 * noise(mulCompVec2(getTexCoords(0) * 10.0, vec2(0.25000, 0.25000)))) * 1.00000]]>
</shader>
                </shader>
            </displacement>
        </diffuse>
    </material>

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

Re: ISL shader nodes

Post by fused » Sat Nov 28, 2009 6:19 pm

bigger, closer. 13.000.000 tris.
Attachments
bigger closer.jpg
bigger closer.jpg (202.36 KiB) Viewed 4934 times

Post Reply
25 posts

Who is online

Users browsing this forum: No registered users and 2 guests