MaxOSLInterface.h File Reference
         
    
      
        
          | #define MAXOSL_GLOBAL_INTERFACE   Interface_ID(0x16523c14, 0x70a27fea) | 
      
 
Interface ID for the 3ds Max OSL global interface. 
This interface exposes methods that are not related to a particular OSL Map.
To retrieve the interface, use GetCOREInterface(id): 
    1 auto ip = (MaxSDK::OSL::IOSLGlobalInterface *)GetCOREInterface(MAXOSL_GLOBAL_INTERFACE);
 
 
 
      
        
          | #define MAXOSL_OSLMAP_INTERFACE   Interface_ID(0x4fa32eff, 0x5aa01b92) | 
      
 
Interface ID for the 3ds Max OSL Map interface This interface exposes methods that relate to properties of a particular OSL Map. 
To retrieve the interface, use GetInterface on the map: 
    1 auto ip = (MaxSDK::OSL::IOSLMapInterface *)oslmap->GetInterface(MAXOSL_OSLMAP_INTERFACE);
 
 
 
      
        
          | #define MAXOSL_RAYTRACE_INTERFACE   Interface_ID(0x560f06ca, 0x57260b1f) | 
      
 
Interface ID for the 3ds Max OSL Raytracing features, allowing OSL to use a 3rd party renderer's raytracing engine. 
This interface is exposed by the renderer on the ShadeContext it passes to the OSL Map's EvalColor/Mono/NormalPerturb() methods. The OSL Map rendering service callback for the OSL trace() call will get the interface with 
    1 auto ip = (MaxSDK::OSL::IOSLRaytracingInterface *)ShadeContext::GetInterface(MAXOSL_RAYTRACE_INTERFACE)
 
 and call its IOSLRaytracingInterface::TraceRay method to perform raytracing. 
 
 
      
        
          | #define OSLTex_CLASS_ID   Class_ID(0x7f9a7b9d, 0x6fcdf00d) | 
      
 
The ClassID of the OSL Map itself.