15 #include "ai_matrix.h"
16 #include "ai_vector.h"
39 #define AI_TYPE_BYTE 0x00
40 #define AI_TYPE_INT 0x01
41 #define AI_TYPE_UINT 0x02
42 #define AI_TYPE_BOOLEAN 0x03
43 #define AI_TYPE_FLOAT 0x04
44 #define AI_TYPE_RGB 0x05
45 #define AI_TYPE_RGBA 0x06
46 #define AI_TYPE_VECTOR 0x07
47 #define AI_TYPE_POINT 0x08
48 #define AI_TYPE_POINT2 0x09
49 #define AI_TYPE_STRING 0x0A
50 #define AI_TYPE_POINTER 0x0B
51 #define AI_TYPE_NODE 0x0C
52 #define AI_TYPE_ARRAY 0x0D
53 #define AI_TYPE_MATRIX 0x0E
54 #define AI_TYPE_ENUM 0x0F
55 #define AI_TYPE_UNDEFINED 0xFF
56 #define AI_TYPE_NONE 0xFF
62 #define AI_USERDEF_UNDEFINED 0
63 #define AI_USERDEF_CONSTANT 1
64 #define AI_USERDEF_UNIFORM 2
65 #define AI_USERDEF_VARYING 3
66 #define AI_USERDEF_INDEXED 4
115 struct AtUserParamEntry;
153 #define AiParameterByte(n,c) AiNodeParamByte (params,-1,n,c);
154 #define AiParameterInt(n,c) AiNodeParamInt (params,-1,n,c);
155 #define AiParameterUInt(n,c) AiNodeParamUInt (params,-1,n,c);
156 #define AiParameterBool(n,c) AiNodeParamBool (params,-1,n,c);
157 #define AiParameterFlt(n,c) AiNodeParamFlt (params,-1,n,c);
158 #define AiParameterRGB(n,r,g,b) AiNodeParamRGB (params,-1,n,r,g,b);
159 #define AiParameterRGBA(n,r,g,b,a) AiNodeParamRGBA (params,-1,n,r,g,b,a);
160 #define AiParameterVec(n,x,y,z) AiNodeParamVec (params,-1,n,x,y,z);
161 #define AiParameterPnt(n,x,y,z) AiNodeParamPnt (params,-1,n,x,y,z);
162 #define AiParameterPnt2(n,x,y) AiNodeParamPnt2 (params,-1,n,x,y);
163 #define AiParameterStr(n,c) AiNodeParamStr (params,-1,n,c);
164 #define AiParameterPtr(n,c) AiNodeParamPtr (params,-1,n,c);
165 #define AiParameterNode(n,c) AiNodeParamNode (params,-1,n,c);
166 #define AiParameterArray(n,c) AiNodeParamArray(params,-1,n,c);
167 #define AiParameterMtx(n,c) AiNodeParamMtx (params,-1,n,c);
168 #define AiParameterEnum(n,c,e) AiNodeParamEnum (params,-1,n,c,e);
177 #define AiParameterBYTE(n,c) AiNodeParamByte (params,-1,n,c);
178 #define AiParameterINT(n,c) AiNodeParamInt (params,-1,n,c);
179 #define AiParameterUINT(n,c) AiNodeParamUInt (params,-1,n,c);
180 #define AiParameterBOOL(n,c) AiNodeParamBool (params,-1,n,c);
181 #define AiParameterFLT(n,c) AiNodeParamFlt (params,-1,n,c);
182 #define AiParameterVEC(n,x,y,z) AiNodeParamVec (params,-1,n,x,y,z);
183 #define AiParameterPNT(n,x,y,z) AiNodeParamPnt (params,-1,n,x,y,z);
184 #define AiParameterPNT2(n,x,y) AiNodeParamPnt2 (params,-1,n,x,y);
185 #define AiParameterSTR(n,c) AiNodeParamStr (params,-1,n,c);
186 #define AiParameterPTR(n,c) AiNodeParamPtr (params,-1,n,c);
187 #define AiParameterNODE(n,c) AiNodeParamNode (params,-1,n,c);
188 #define AiParameterARRAY(n,c) AiNodeParamArray(params,-1,n,c);
189 #define AiParameterMTX(n,c) AiNodeParamMtx (params,-1,n,c);
190 #define AiParameterENUM(n,c,e) AiNodeParamEnum (params,-1,n,c,e);
195 AI_API
void AiNodeParamByte (AtList* params,
int varoffset,
const char* pname,
AtByte pdefault);
196 AI_API
void AiNodeParamInt (AtList* params,
int varoffset,
const char* pname,
int pdefault);
197 AI_API
void AiNodeParamUInt (AtList* params,
int varoffset,
const char* pname,
unsigned int pdefault);
198 AI_API
void AiNodeParamBool (AtList* params,
int varoffset,
const char* pname,
bool pdefault);
199 AI_API
void AiNodeParamFlt (AtList* params,
int varoffset,
const char* pname,
float pdefault);
200 AI_API
void AiNodeParamRGB (AtList* params,
int varoffset,
const char* pname,
float r,
float g,
float b);
201 AI_API
void AiNodeParamRGBA (AtList* params,
int varoffset,
const char* pname,
float r,
float g,
float b,
float a);
202 AI_API
void AiNodeParamVec (AtList* params,
int varoffset,
const char* pname,
float x,
float y,
float z);
203 AI_API
void AiNodeParamPnt (AtList* params,
int varoffset,
const char* pname,
float x,
float y,
float z);
204 AI_API
void AiNodeParamPnt2 (AtList* params,
int varoffset,
const char* pname,
float x,
float y);
205 AI_API
void AiNodeParamStr (AtList* params,
int varoffset,
const char* pname,
const char* pdefault);
206 AI_API
void AiNodeParamPtr (AtList* params,
int varoffset,
const char* pname,
void* pdefault);
207 AI_API
void AiNodeParamNode (AtList* params,
int varoffset,
const char* pname,
AtNode* pdefault);
208 AI_API
void AiNodeParamArray(AtList* params,
int varoffset,
const char* pname,
AtArray* pdefault);
209 AI_API
void AiNodeParamMtx (AtList* params,
int varoffset,
const char* pname,
AtMatrix matrix);
210 AI_API
void AiNodeParamEnum (AtList* params,
int varoffset,
const char* pname,
int pdefault,
AtEnum enum_type);