home *** CD-ROM | disk | FTP | other *** search
/ Hackers Magazine 57 / CdHackersMagazineNr57.iso / Software / Multimedia / k3d-setup-0.7.11.0.exe / share / k3d / shaders / surface / k3d_decal.sl < prev    next >
Encoding:
Text File  |  2008-01-23  |  1.2 KB  |  47 lines

  1. // K-3D
  2. // Copyright (c) 1995-2006, Timothy M. Shead
  3. //
  4. // Contact: tshead@k-3d.com
  5. //
  6. // This program is free software; you can redistribute it and/or
  7. // modify it under the terms of the GNU General Public
  8. // License as published by the Free Software Foundation; either
  9. // version 2 of the License, or (at your option) any later version.
  10. //
  11. // This program is distributed in the hope that it will be useful,
  12. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  14. // General Public License for more details.
  15. //
  16. // You should have received a copy of the GNU General Public
  17. // License along with this program; if not, write to the Free Software
  18. // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  19.  
  20. /** \file
  21.         \author Tim Shead (tshead@k-3d.com)
  22. */
  23.  
  24. surface k3d_decal(
  25.     string texturename = "";
  26.     float s0 = 0.0;
  27.     float s1 = 1.0;
  28.     float t0 = 0.0;
  29.     float t1 = 1.0;
  30.     )
  31. {
  32.     float alpha = 1.0;
  33.     color Ct = Cs;
  34.  
  35.     if(texturename != "")
  36.     {
  37.         float ss = mix(s0, s1, s);
  38.         float tt = mix(t0, t1, t);
  39.         alpha = float texture(texturename[3], ss, tt);
  40.         Ct = color texture(texturename, ss, tt);
  41.     }
  42.  
  43.     Oi = alpha;
  44.     Ci = Oi * Cs * Ct;
  45. }
  46.  
  47.