3D Graphics Programming with QuickDraw 3D

14 Summary of Shader Objects

14 C Summary

14 Constants

typedef enum TQ3ShaderUVBoundary {
 kQ3ShaderUVBoundaryWrap,
 kQ3ShaderUVBoundaryClamp
} TQ3ShaderUVBoundary;
#define kQ3ShaderTypeSurface             Q3_OBJECT_TYPE('s','u','s','h')
#define kQ3ShaderTypeIllumination             Q3_OBJECT_TYPE('i','l','s','h')
#define kQ3SurfaceShaderTypeTexture             Q3_OBJECT_TYPE('t','x','s','u')
#define kQ3IlluminationTypeLambert             Q3_OBJECT_TYPE('l','m','i','l')
#define kQ3IlluminationTypePhong             Q3_OBJECT_TYPE('p','h','i','l')
#define kQ3IlluminationTypeNULL             Q3_OBJECT_TYPE('n','u','l','l')
#define kQ3TextureTypePixmap             Q3_OBJECT_TYPE('t','x','p','m')

14 Shader Objects Routines

Managing Shaders

TQ3ObjectType Q3Shader_GetType (TQ3ShaderObject shader);
TQ3Status Q3Shader_Submit (TQ3ShaderObject shader, TQ3ViewObject view);

Managing Shader Characteristics

TQ3Status Q3Shader_GetUVTransform (
TQ3ShaderObject shader, 
TQ3Matrix3x3 *uvTransform);
TQ3Status Q3Shader_SetUVTransform (
TQ3ShaderObject shader, 
const TQ3Matrix3x3 *uvTransform);
TQ3Status Q3Shader_GetUBoundary (
TQ3ShaderObject shader, 
TQ3ShaderUVBoundary *uBoundary);
TQ3Status Q3Shader_SetUBoundary (
TQ3ShaderObject shader, 
TQ3ShaderUVBoundary uBoundary);
TQ3Status Q3Shader_GetVBoundary (
TQ3ShaderObject shader, 
TQ3ShaderUVBoundary *vBoundary);
TQ3Status Q3Shader_SetVBoundary (
TQ3ShaderObject shader, 
TQ3ShaderUVBoundary vBoundary);

Managing Texture Shaders

TQ3ShaderObject Q3TextureShader_New (
TQ3TextureObject texture);
TQ3Status Q3TextureShader_GetTexture (
TQ3ShaderObject shader, 
TQ3TextureObject *texture);
TQ3Status Q3TextureShader_SetTexture (
TQ3ShaderObject shader, 
TQ3TextureObject texture);

Managing Illumination Shaders

TQ3ShaderObject Q3LambertIllumination_New (
void);
TQ3ShaderObject Q3PhongIllumination_New (
void);
TQ3ShaderObject Q3NULLIllumination_New (
void);
TQ3ObjectType Q3IlluminationShader_GetType (
TQ3ShaderObject shader);

Managing Textures

TQ3ObjectType Q3Texture_GetType (
TQ3TextureObject texture);
TQ3Status Q3Texture_GetWidth (TQ3TextureObject texture, 
unsigned long *width);
TQ3Status Q3Texture_GetHeight (TQ3TextureObject texture, 
unsigned long *height);

Managing Pixmap Textures

TQ3TextureObject Q3PixmapTexture_New (
const TQ3StoragePixmap *pixmap);
TQ3Status Q3PixmapTexture_GetPixmap (
TQ3TextureObject texture, 
TQ3StoragePixmap *pixmap);
TQ3Status Q3PixmapTexture_SetPixmap (
TQ3TextureObject texture, 
const TQ3StoragePixmap *pixmap);

14 - C Summary
14 - Constants
14 - Shader Objects Routines
Managing Shaders
Managing Shader Characteristics
Managing Texture Shaders
Managing Illumination Shaders
Managing Textures
Managing Pixmap Textures

3D Graphics Programming with QuickDraw 3D - 17 OCT 1995

© Apple Computer, Inc.

Let us know what you think of these prototype pages.

Generated with Harlequin WebMaker