Skocz do zawartości

AnDyX

Members
  • Liczba zawartości

    10
  • Rejestracja

  • Ostatnia wizyta

Odpowiedzi dodane przez AnDyX

  1. Kod shader-a po modyfikacjach.

     

    
    color mydiffuse4(normal Norm; float fact; float samples; float cone; float falloff) 
    { 
    extern point P;
       color C = 0;    
       illuminance( P ) 
    {
     float w = normalize(L).Norm; 
     if ( w >= 0 )
     {
         C = Cl; 
        C += (Cl * w) * fact; 
     }
     else
     {
      float d;
      color Ca;
      gather("illuminance", P, normalize(L) , cone, samples, "ray:length", d, "surface:Ci", Ca)
      {
           float atten;
       if (falloff==0)
        atten=1;
       else if (falloff==2)
        atten=1/(L.L);
       else
        atten = 1/pow(length(L),falloff);
       C += (Ca * atten);
      }
    
      C /= samples;
     }
    }
       return C; 
    } 
    
    surface ax_sss(float Ka = 1;
     float Kd = 1; 
     float Ks = 1;
     float roughness = .1; 
     float lfact = 0.25;
     float samples = 1;
     float cone = 0.1;
     float falloff = 0;
     ) 
    {
     Oi = Os;
     Ci = Os * Cs * (Ka * ambient() + Kd * mydiffuse4(normalize(N),lfact,samples,cone, falloff )) + Ks*specular(normalize(N),-normalize(I),roughness);
    
    }
    

     

    A tak oftopowo to przy okazji zabawy z Renderman-em zrobilem sobie plugin ktory wczytuje mi obiekty z plikow 3DS.

     

    Duzo zabawy i kombinowania z tym Renderman-em a efekty takie sobie ;), dodatkowo w filmach coraz wiecej Mental-a sie uzywa.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności