![]() |
Super Mario 64 Source
A Super Mario 64 decompilation, brought to you by a bunch of clever folks.
|
Go to the source code of this file.
Enumerations | |
| enum | DParmPtr { PARM_PTR_OBJ_VTX = 1, PARM_PTR_CHAR = 5 } |
parameters types for d_set_parm_ptr() More... | |
| enum | DParmF { PARM_F_ALPHA = 1, PARM_F_RANGE_LEFT = 2, PARM_F_RANGE_RIGHT = 3, PARM_F_VARVAL = 6 } |
parameters for d_set_parm_f() More... | |
| enum | DObjTypes { D_CAR_DYNAMICS = 0, D_NET = 1, D_JOINT = 2, D_ANOTHER_JOINT = 3, D_CAMERA = 4, D_VERTEX = 5, D_FACE = 6, D_PLANE = 7, D_BONE = 8, D_MATERIAL = 9, D_SHAPE = 10, D_GADGET = 11, D_LABEL = 12, D_VIEW = 13, D_ANIMATOR = 14, D_DATA_GRP = 15, D_PARTICLE = 16, D_LIGHT = 17, D_GROUP = 18 } |
d_makeobj() object types More... | |
Functions | |
| void | push_dynobj_stash (void) |
Store the active dynamic GdObj into a one object stash. More... | |
| void | pop_dynobj_stash (void) |
Set the stashed GdObj as the active dynamic GdObj. More... | |
| void | reset_dynlist (void) |
| Reset dynlist related variables to a starting state. More... | |
| struct GdObj * | proc_dynlist (struct DynList *dylist) |
Parse a DynList array into active GdObjs. More... | |
| void | d_copystr_to_idbuf (char *) |
Copy input str into a buffer that will be concatenated to a dynamic GdObj's name string when creating a new dynamic object. More... | |
| struct GdObj * | d_makeobj (enum DObjTypes type, DynId id) |
Create a new GdObj of type and add that object to the dynamic object list with id. More... | |
| void | d_set_shapeptrptr (struct ObjShape **) |
Set the shape pointer of the current active dynamic object to the pointer pointed to by shpPtrptr. More... | |
| struct GdObj * | d_use_obj (DynId) |
Set the current active dynamic object to object id. More... | |
| void | set_cur_dynobj () |
| void | d_start_group (DynId) |
Start a dynamic ObjGroup identified with id. More... | |
| void | d_end_group (DynId) |
Add all dynamic objects created between the start of dynamic ObjGroup id and this call. More... | |
| void | dynid_is_int (s32) |
Set if DynId should be treated as integer values, or as char * string pointers. More... | |
| void | d_set_init_pos (f32, f32, f32) |
Set the initial position of the current dynamic object to (x, y, z). More... | |
| void | d_get_init_pos (struct GdVec3f *) |
Get the initial position of the current dynamic object and store in dst. More... | |
| void | d_get_init_rot (struct GdVec3f *) |
Get the initial rotation of the current dynamic object and store in dst. More... | |
| void | d_set_rel_pos (f32, f32, f32) |
| Set the position of the current dynamic object. More... | |
| void | d_get_rel_pos (struct GdVec3f *) |
Store the current dynamic object's position into dst. More... | |
| struct ObjGroup * | d_get_att_objgroup (void) |
| Return a pointer to the attached object group of the current dynamic object. More... | |
| void | d_get_scale (struct GdVec3f *) |
Store the current dynamic object's scale into dst. More... | |
| void | d_set_world_pos (f32, f32, f32) |
| Set the world position of the current dynamic object. More... | |
| void | d_get_world_pos (struct GdVec3f *) |
Copy the world position of the current dynamic object into dst. More... | |
| void | d_set_scale (f32, f32, f32) |
Scale the current dynamic object by factor (x, y, z). More... | |
| void | d_add_valptr (DynId, u32, s32, u32) |
Create a new ObjValPtr to dynamic object objId and attach that valptr to the current dynamic object. More... | |
| void | d_add_valproc (union ObjVarVal *(*)(union ObjVarVal *, union ObjVarVal)) |
| void | d_set_flags (s32) |
| Set the object specific flags of the current dynamic object. More... | |
| void | d_set_parm_f (enum DParmF, f32) |
| Set variable float parameters on the current dynamic object. More... | |
| void | d_set_parm_ptr (enum DParmPtr, void *) |
| Set various pointer parameters for the current dynamic object. More... | |
| void | d_set_obj_draw_flag (enum ObjDrawingFlags) |
| Set the generic drawing flags for the current dynamic object. More... | |
| void | d_set_type (s32) |
| Set an object specific type field for the current dynamic object. More... | |
| void | d_set_colour_num (s32) |
| Set the colour of the current dynamic object. More... | |
| void | d_set_diffuse (f32, f32, f32) |
Set the diffuse color of the current dynamic ObjMaterial or ObjLight. More... | |
| struct GdPlaneF * | d_get_plane (void) |
Get a pointer to a GdPlaneF in the current dynamic object. More... | |
| void | d_get_matrix (Mat4f *) |
Copy the matrix from the current dynamic object into dst. More... | |
| Mat4f * | d_get_rot_mtx_ptr (void) |
| Get a pointer to the current dynamic object's rotation matrix. More... | |
| void | d_set_idn_mtx (Mat4f *) |
Copy src into the identity matrix of the current dynamic object. More... | |
| Mat4f * | d_get_matrix_ptr (void) |
| Get a pointer to the current dynamic object's matrix. More... | |
| Mat4f * | d_get_idn_mtx_ptr (void) |
| Get a pointer to the current dynamic object's identity matrix. More... | |
| f32 | d_calc_world_dist_btwn (struct GdObj *, struct GdObj *) |
Use the dynamic object system to calculate the distance between two GdObjs. More... | |
DynId Type | |
A new type for identification of | |
| #define | DynIdAsStr(id) ((char *)(id)) |
| Macros for casting between types of ids, as the id can be either a number or a string. More... | |
| #define | DynIdAsInt(id) ((u32)(id)) |
| #define | AsDynId(unk) ((DynId)(unk)) |
| typedef void * | DynId |
| #define AsDynId | ( | unk | ) | ((DynId)(unk)) |
| #define DynIdAsInt | ( | id | ) | ((u32)(id)) |
| #define DynIdAsStr | ( | id | ) | ((char *)(id)) |
Macros for casting between types of ids, as the id can be either a number or a string.
| enum DObjTypes |
d_makeobj() object types
| Enumerator | |
|---|---|
| D_CAR_DYNAMICS | |
| D_NET | |
| D_JOINT | |
| D_ANOTHER_JOINT | |
| D_CAMERA | |
| D_VERTEX | |
| D_FACE | |
| D_PLANE | |
| D_BONE | |
| D_MATERIAL | |
| D_SHAPE | |
| D_GADGET | |
| D_LABEL | |
| D_VIEW | |
| D_ANIMATOR | |
| D_DATA_GRP | An |
| D_PARTICLE | |
| D_LIGHT | |
| D_GROUP | |
| enum DParmF |
| enum DParmPtr |
parameters types for d_set_parm_ptr()
| Enumerator | |
|---|---|
| PARM_PTR_OBJ_VTX | |
| PARM_PTR_CHAR | parameter is a |
Create a new ObjValPtr to dynamic object objId and attach that valptr to the current dynamic object.
| type | ValPtrType |
Use the dynamic object system to calculate the distance between two GdObjs.
The objects don't have to be dynamic objects.
Copy input str into a buffer that will be concatenated to a dynamic GdObj's name string when creating a new dynamic object.
If input is NULL, then a generic string is created based on the number of unnamed objects.
Add all dynamic objects created between the start of dynamic ObjGroup id and this call.
Return a pointer to the attached object group of the current dynamic object.
Get the initial position of the current dynamic object and store in dst.
Get the initial rotation of the current dynamic object and store in dst.
Get a pointer to a GdPlaneF in the current dynamic object.
If the current object does not have a plane, a pointer to a global plane at (0,0) is returned.
Copy the world position of the current dynamic object into dst.
Create a new GdObj of type and add that object to the dynamic object list with id.
Created objects have default parameters, which are usually 0 or NULL.
D_DATA_GRP object D_LABEL, the call to make_label() compiles incorrectly due to Goddard only declaring the functions, not prototyping the functions Set the colour of the current dynamic object.
The input color is an index for gd_get_colour()
Set the diffuse color of the current dynamic ObjMaterial or ObjLight.
Set the initial position of the current dynamic object to (x, y, z).
| void d_set_obj_draw_flag | ( | enum | ObjDrawingFlags | ) |
Set the generic drawing flags for the current dynamic object.
Set variable float parameters on the current dynamic object.
These are mainly used for ObjGadgets to set the drawing size range.
Set various pointer parameters for the current dynamic object.
Normally, this is used to set char * pointer for various objects, but it can also set the vertices for an ObjFace.
Set the position of the current dynamic object.
ObjCamera. Scale the current dynamic object by factor (x, y, z).
ObjView Set the shape pointer of the current active dynamic object to the pointer pointed to by shpPtrptr.
Set the world position of the current dynamic object.
ObjView Set if DynId should be treated as integer values, or as char * string pointers.
| isIntBool | TRUE to interpret ids as integers |
| void set_cur_dynobj | ( | ) |
1.8.13