lwsurf.h 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /*
  2. * LWSDK Header File
  3. * Copyright 1999, NewTek, Inc.
  4. *
  5. * LWSURF.H -- LightWave Surfaces
  6. */
  7. #ifndef LWSDK_SURF_H
  8. #define LWSDK_SURF_H
  9. typedef struct st_GCoreSurface *LWSurfaceID;
  10. #include <lwrender.h>
  11. #include <lwtxtr.h>
  12. #include <lwenvel.h>
  13. #include <lwimage.h>
  14. #define LWSURFACEFUNCS_GLOBAL "Surface Functions 2"
  15. #define SURF_COLR "BaseColor"
  16. #define SURF_LUMI "Luminosity"
  17. #define SURF_DIFF "Diffuse"
  18. #define SURF_SPEC "Specularity"
  19. #define SURF_REFL "Reflectivity"
  20. #define SURF_TRAN "Transparency"
  21. #define SURF_TRNL "Translucency"
  22. #define SURF_RIND "IOR"
  23. #define SURF_BUMP "Bump"
  24. #define SURF_GLOS "Glossiness"
  25. #define SURF_BUF1 "SpecialBuffer1"
  26. #define SURF_BUF2 "SpecialBuffer2"
  27. #define SURF_BUF3 "SpecialBuffer3"
  28. #define SURF_BUF4 "SpecialBuffer4"
  29. #define SURF_SHRP "DiffuseSharpness"
  30. #define SURF_SMAN "SmoothingAngle"
  31. #define SURF_RSAN "ReflectionSeamAngle"
  32. #define SURF_TSAN "RefractionSeamAngle"
  33. #define SURF_RBLR "ReflectionBlurring"
  34. #define SURF_TBLR "RefractionBlurring"
  35. #define SURF_CLRF "ColorFilter"
  36. #define SURF_CLRH "ColorHighlights"
  37. #define SURF_ADTR "AdditiveTransparency"
  38. #define SURF_AVAL "AlphaValue"
  39. #define SURF_GVAL "GlowValue"
  40. #define SURF_LCOL "LineColor"
  41. #define SURF_LSIZ "LineSize"
  42. #define SURF_ALPH "AlphaOptions"
  43. #define SURF_RFOP "ReflectionOptions"
  44. #define SURF_TROP "RefractionOptions"
  45. #define SURF_SIDE "Sidedness"
  46. #define SURF_GLOW "Glow"
  47. #define SURF_LINE "RenderOutlines"
  48. #define SURF_RIMG "ReflectionImage"
  49. #define SURF_TIMG "RefractionImage"
  50. #define SURF_VCOL "VertexColoring"
  51. typedef struct st_LWSurfaceFuncs {
  52. LWSurfaceID (*create)(const char *objName,const char *surfName);
  53. LWSurfaceID (*first)(void);
  54. LWSurfaceID (*next)(LWSurfaceID surf);
  55. LWSurfaceID *(*byName)(const char *name,const char *objName);
  56. LWSurfaceID *(*byObject)(const char *name);
  57. const char *(*name)(LWSurfaceID surf);
  58. const char *(*sceneObject)(LWSurfaceID surf);
  59. int (*getInt)(LWSurfaceID surf,const char *channel);
  60. double *(*getFlt)(LWSurfaceID surf,const char *channel);
  61. LWEnvelopeID (*getEnv)(LWSurfaceID surf,const char *channel);
  62. LWTextureID (*getTex)(LWSurfaceID surf,const char *channel);
  63. LWImageID (*getImg)(LWSurfaceID surf,const char *channel);
  64. LWChanGroupID (*chanGrp)(LWSurfaceID surf);
  65. const char *(*getColorVMap)(LWSurfaceID surf);
  66. void (*setColorVMap)(LWSurfaceID surf,const char *vmapName,int type);
  67. } LWSurfaceFuncs;
  68. #endif