Clean, self-contained extraction of the BattleTech-specific work from the
reverse-engineering workspace -- engine + game + content + build, with nothing
from Red Planet or the raw archive dumps. Builds green (Win32) and runs the
single-player drive->animate->target->fire->damage->destroy loop out of the box.
Layout:
engine/ MUNGA + MUNGA_L4 shared 2007 engine, carrying our BT render/loader
work (bgfload/L4D3D/L4VIDEO: BSL bit-slice decode, LOD/ground/shadow
models) + image codec; the minimal rp/ headers the audio HAL needs
game/ reconstructed BT logic + surviving-original BT source + fwd shims
+ WinMain launcher
content/ full runtime tree (BTL4.RES, VIDEO/, GAUGE/, AUDIO/, eggs, BTDPL.INI)
docs/ format specs + reconstruction ledgers
reference/ raw Ghidra pseudocode (recon source-of-truth) + decomp exporter
tools/ MP console emulator + map/resource scanners
One top-level CMake builds munga_engine lib + bt410_l4 game lib + btl4.exe.
All paths relativized (186 fwd shims + ~437 CMake abs paths -> repo-relative);
DXSDK is the one external, overridable via -DDXSDK. Verified: builds to a
byte-identical 2.27MB exe and runs combat (TARGET DESTROYED, 0 crashes) against
the bundled content.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
687 lines
46 KiB
C++
687 lines
46 KiB
C++
/***************************************************************************
|
|
* <210493.1436>
|
|
* PROJECT: dVS
|
|
* SUBSYSTEM: VCTools.
|
|
* MODULE: VC Object definitions.
|
|
*
|
|
***************************************************************************
|
|
*
|
|
* File: $RCSfile: vcobject.h,v $
|
|
* Revision: $Revision: 1.1 $
|
|
* Date: $Date: 95/05/18 10:24:17 $
|
|
* Author: $Author: john $
|
|
* RCS Ident: $Id: vcobject.h,v 1.1 1995/03/10 14:52:46 john Exp $
|
|
* Creator: Jon Green.
|
|
*
|
|
*
|
|
*
|
|
**************************************************************************
|
|
* *
|
|
* Copyright (c) 1992,1993,1994,1995 Division Ltd. *
|
|
* *
|
|
* All Rights Reserved. *
|
|
* *
|
|
* This Document may not, in whole or in part, be copied, photocopied, *
|
|
* reproduced, translated, or reduced to any electronic medium or *
|
|
* machine readable form without prior written consent from Division *
|
|
* Ltd. *
|
|
* *
|
|
*************************************************************************/
|
|
|
|
/*--- Include Definitions */
|
|
|
|
#ifndef _VCOBJECT_H
|
|
#define _VCOBJECT_H 1
|
|
|
|
/* Spin functions */
|
|
#define VCEntity_SpinX(e,a) VCEntity_Spin(e,VC_X,a)
|
|
#define VCEntity_SpinY(e,a) VCEntity_Spin(e,VC_Y,a)
|
|
#define VCEntity_SpinZ(e,a) VCEntity_Spin(e,VC_Z,a)
|
|
|
|
int VCEntity_Rotate (VCEntity *e, dmPoint centre, int axis, float angle);
|
|
int VCEntity_RotateX (VCEntity *e, float angle);
|
|
int VCEntity_RotateY (VCEntity *e, float angle);
|
|
int VCEntity_RotateZ (VCEntity *e, float angle);
|
|
|
|
|
|
int VCEntity_Spin (VCEntity *e, int axis, float angle);
|
|
int VCEntity_Scale (VCEntity *e, float sx, float sy, float sz);
|
|
int VCEntity_Resize (VCEntity *entity, float sx, float sy, float sz);
|
|
int VCEntity_Translate (VCEntity *e, float dx, float dy, float dz);
|
|
|
|
|
|
VCAttribute *VCVisual_Create (char *visual_name, VCDynamicVisual *dynamicVIsual, uint32 mode, char *lod,
|
|
char *frontMaterial, char *backMaterial,
|
|
uint32 intersectMask);
|
|
int VCVisual_Set (VCAttribute *attribute, char *visual_name, VCDynamicVisual *dynamicVisual,
|
|
uint32 setMode, uint32 clearMode, char *lod, char *frontMaterial,
|
|
char *backMaterial, uint32 setIntersectMask,
|
|
uint32 clearIntersectMask);
|
|
int VCVisual_Get (VCAttribute *attribute, char **visual_name,
|
|
VCDynamicVisual **dynamicVisual,
|
|
uint32 *mode, char **lod, char **frontMaterial, char **backMaterial,
|
|
uint32 *intersectMask);
|
|
VCAttribute *VCVisual_CreateData (VCVisualData *visualData);
|
|
int VCVisual_SetData (VCAttribute *attribute,VCVisualData *visualData);
|
|
int VCVisual_GetData (VCAttribute *attribute, VCVisualData *visualData);
|
|
|
|
VCAttribute *VCEntity_AddVisual (VCEntity *entity, char *visual_name, VCDynamicVisual *DynamicVisual,
|
|
uint32 mode, char *lod,
|
|
char *frontMaterial, char *backMaterial, uint32 intersectMask);
|
|
VCAttribute *VCEntity_AddVisualData(VCEntity *entity, VCVisualData *visualData);
|
|
int VCVisual_SetGeometry (VCAttribute *attribute, char *visual_name);
|
|
int VCVisual_SetDynamicVisual (VCAttribute *attribute, VCDynamicVisual *dynamicVisual);
|
|
int VCVisual_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCVisual_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCVisual_SetFrontMaterial (VCAttribute *attribute, char *frontMaterial);
|
|
int VCVisual_SetBackMaterial (VCAttribute *attribute, char *backMaterial);
|
|
int VCVisual_SetLod (VCAttribute *attribute, char *lod);
|
|
int VCVisual_SetIntersectMask (VCAttribute *attribute, uint32 intersectMask);
|
|
int VCVisual_ModifyIntersectMask (VCAttribute *attribute, uint32 setIntersectMask,
|
|
uint32 clearIntersectMask);
|
|
|
|
int VCVisual_GetGeometry (VCAttribute *attribute, char **visual_name);
|
|
int VCVisual_GetDynamicVisual (VCAttribute *attribute, VCDynamicVisual **dynamicVisual);
|
|
int VCVisual_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCVisual_GetFrontMaterial (VCAttribute *attribute, char **frontMaterial);
|
|
int VCVisual_GetBackMaterial (VCAttribute *attribute, char **backMaterial);
|
|
int VCVisual_GetLod (VCAttribute *attribute, char **lod);
|
|
int VCVisual_GetIntersectMask (VCAttribute *attribute, uint32 *intersectMask);
|
|
|
|
#define VCEntity_AddVisualGeometry(e,g) VCEntity_AddVisual(e, g, NULL, VC_VISIBLE | VC_RMODE_POLYGONAL, NULL, NULL, NULL, 0xffffffff)
|
|
#define VCEntity_DetachVisual(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCVisual_CreateGeometry(g) VCVisual_Create( g, NULL, VC_VISIBLE|VC_RMODE_POLYGONAL, NULL, NULL, NULL, NULL)
|
|
#define VCVisual_Delete(a) VCAttribute_Delete(a)
|
|
|
|
|
|
VCAttribute *VCBodyPart_Create (char *bodyPart_name, uint32 actorId);
|
|
VCAttribute *VCBodyPart_CreateData (VCBodyPartData *bodyPart);
|
|
VCAttribute *VCEntity_AddBodyPartData(VCEntity *entity, VCBodyPartData *data);
|
|
VCAttribute *VCEntity_AddBodyPart (VCEntity *entity, char *bodyPart_name, uint32 actorId);
|
|
int VCBodyPart_Set (VCAttribute *attribute, char *bodyPart_name,
|
|
uint32 *actorId);
|
|
int VCBodyPart_SetData (VCAttribute *attribute, VCBodyPartData *bodyPart);
|
|
int VCBodyPart_SetName (VCAttribute *attribute, char *name);
|
|
int VCBodyPart_Get (VCAttribute *attribute, char **bodyPart_name,
|
|
uint32 *actorId);
|
|
int VCBodyPart_GetData (VCAttribute *attribute, VCBodyPartData *bodyPart);
|
|
int VCBodyPart_GetName (VCAttribute *attribute, char **name);
|
|
int VCBodyPart_GetActorId (VCAttribute *attribute, uint32 *actorId);
|
|
|
|
#define VCEntity_DetachBodyPart(e,a) VCEntity_DetachAttribute(e, a)
|
|
#define VCBodyPart_Delete(a) VCAttribute_Delete(a)
|
|
|
|
VCAttribute *VCPickObject_Create (VCEntity *entity, uint32 mode, uint32 actorId);
|
|
VCAttribute *VCPickObject_CreateData (VCPickObjectData *pickData);
|
|
int VCPickObject_Set (VCAttribute *attribute, VCEntity *entity,
|
|
uint32 setMode, uint32 clearMode, uint32 *actorId);
|
|
int VCPickObject_SetData (VCAttribute *attribute, VCPickObjectData *pickData);
|
|
int VCPickObject_Get (VCAttribute *attribute, VCEntity **entity,
|
|
uint32 *mode, uint32 *actorId);
|
|
int VCPickObject_GetData (VCAttribute *attribute, VCPickObjectData *pickData);
|
|
VCAttribute *VCEntity_AddPickObjectData(VCEntity *entity, VCPickObjectData *data);
|
|
VCAttribute *VCEntity_AddPickObject (VCEntity *entity, VCEntity *pickingEntity, uint32 mode,
|
|
uint32 pickActorId);
|
|
|
|
#define VCEntity_DetachPickObject(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCPickObject_Delete(a) VCAttribute_Delete(a)
|
|
|
|
|
|
|
|
int VCPickObject_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCPickObject_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCPickObject_SetPickingEntity (VCAttribute *attribute, VCEntity *entity);
|
|
int VCPickObject_SetActorId (VCAttribute *attribute, uint32 actorId);
|
|
int VCPickObject_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCPickObject_GetPickingEntity (VCAttribute *attribute, VCEntity **entity);
|
|
int VCPickObject_GetActorId (VCAttribute *attribute, uint32 *actorId);
|
|
|
|
|
|
VCAttribute *VCBoundary_Create (char *geometry, VCDynamicVisual *dynamicVisual, float32 bounds[VC_BOUND_SIZE],
|
|
uint32 mode, char *lod , int numCollisions);
|
|
VCAttribute *VCBoundary_CreateData (VCBoundaryData *boundaryData);
|
|
int VCBoundary_Set (VCAttribute *attribute, char *geometry, VCDynamicVisual *dynamicVisual,
|
|
float32 bounds[VC_BOUND_SIZE], uint32 setMode, uint32 clearMode, char *lod ,
|
|
int32 *numberCollisions);
|
|
int VCBoundary_SetData (VCAttribute *attribute, VCBoundaryData *boundaryData);
|
|
int VCBoundary_Get (VCAttribute *attribute, char **geometry, VCDynamicVisual **dynamicVisual,
|
|
float32 bounds[VC_BOUND_SIZE], uint32 *mode, char **lod, int32 *numberCollisions,
|
|
VCCollision **collision);
|
|
int VCBoundary_GetData (VCAttribute *attribute, VCBoundaryData *boundaryData);
|
|
VCAttribute *VCEntity_AddBoundaryData(VCEntity *entity, VCBoundaryData *data);
|
|
VCAttribute *VCEntity_AddBoundary (VCEntity *entity, char *geometry, VCDynamicVisual *dynamicVisual,
|
|
float32 bounds[VC_BOUND_SIZE], uint32 mode, char *lod, int numCollisions );
|
|
int VCBoundary_Delete(VCAttribute *attribute);
|
|
|
|
#define VCEntity_DetachBoundary(e,a) VCEntity_DetachAttribute(e, a)
|
|
#define VCBoundary_CreateBbox(g) VCBoundary_Create(g,NULL,NULL, VC_COLLISION_ENABLE | VC_COLLISION_BBOX, NULL, 1)
|
|
#define VCBoundary_CreateRadius(g) VCBoundary_Create(g,NULL,NULL, VC_COLLISION_ENABLE | VC_COLLISION_RADIUS, NULL, 1)
|
|
#define VCBoundary_CreateGeometry(g) VCBoundary_Create(g,NULL,NULL, VC_COLLISION_ENABLE | VC_COLLISION_GEOMETRY, NULL, 1)
|
|
#define VCEntity_AddBoundaryBbox(e,g) VCEntity_AddBoundary(e,g,NULL,NULL, VC_COLLISION_ENABLE | VC_COLLISION_BBOX, NULL, 1)
|
|
#define VCEntity_AddBoundaryRadius(e,g) VCEntity_AddBoundary(e, g,NULL,NULL, VC_COLLISION_ENABLE | VC_COLLISION_RADIUS, NULL, 1)
|
|
#define VCEntity_AddBoundaryGeometry(e,g) VCEntity_AddBoundary(e, g,NULL,NULL, VC_COLLISION_ENABLE | VC_COLLISION_GEOMETRY, NULL, 1)
|
|
|
|
|
|
int VCBoundary_ModifyMode(VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCBoundary_SetGeometry(VCAttribute *attribute, char *geometry);
|
|
int VCBoundary_SetDynamicVisual(VCAttribute *attribute, VCDynamicVisual *dynamicGeometry);
|
|
int VCBoundary_SetBounds(VCAttribute *attribute, float32 bounds[VC_BOUND_SIZE]);
|
|
int VCBoundary_SetMode(VCAttribute *attribute, uint32 mode);
|
|
int VCBoundary_SetLod(VCAttribute *attribute, char *lod);
|
|
int VCBoundary_SetNumberCollisions(VCAttribute *attribute, int32 numberCollisions);
|
|
int VCBoundary_GetGeometry(VCAttribute *attribute, char **geometry);
|
|
int VCBoundary_GetBounds(VCAttribute *attribute, float32 bounds[VC_BOUND_SIZE]);
|
|
int VCBoundary_GetMode(VCAttribute *attribute, uint32 *mode);
|
|
int VCBoundary_GetLod(VCAttribute *attribute, char **lod);
|
|
int VCBoundary_GetNumberCollisions(VCAttribute *attribute, int32 *numberCollisions);
|
|
int VCBoundary_GetCollision(VCAttribute *attribute, VCCollision **collision);
|
|
int VCBoundary_GetDynamicVisual(VCAttribute *attribute, VCDynamicVisual **dynamicGeometry);
|
|
void *VCBoundary_AttachCollisionCreateCallback(VCAttribute *boundary, VCCollision_Func func, void *data);
|
|
void *VCBoundary_AttachCollisionUpdateCallback(VCAttribute *boundary, VCCollision_Func func, void *data);
|
|
void *VCBoundary_AttachCollisionDeleteCallback(VCAttribute *boundary, VCCollision_Func func, void *data);
|
|
int VCBoundary_DetachCollisionCreateCallback(VCAttribute *boundary, void *callbackHandle);
|
|
int VCBoundary_DetachCollisionUpdateCallback(VCAttribute *boundary, void *callbackHandle);
|
|
int VCBoundary_DetachCollisionDeleteCallback(VCAttribute *boundary, void *callbackHandle);
|
|
|
|
VCAttribute *VCLight_Create (uint32 mode, VCColour colour, float exponent, float theta);
|
|
VCAttribute *VCLight_CreateData (VCLightData *lightData);
|
|
int VCLight_Get (VCAttribute *attribute, uint32 *mode, VCColour colour,
|
|
float *exponent, float *theta);
|
|
int VCLight_GetData (VCAttribute *attribute, VCLightData *lightData);
|
|
VCAttribute *VCEntity_AddLightData(VCEntity *entity, VCLightData *data);
|
|
VCAttribute *VCEntity_AddLight (VCEntity *entity, uint32 mode, float32 *colour,
|
|
float exponent, float theta);
|
|
int VCLight_Set (VCAttribute *attribute, uint32 setMode, uint32 clearMode,
|
|
VCColour colour, float *exponent, float *theta);
|
|
int VCLight_SetData (VCAttribute *attribute, VCLightData *lightData);
|
|
int VCLight_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCLight_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCLight_SetColour (VCAttribute *attribute, VCColour colour);
|
|
int VCLight_SetUmbra (VCAttribute *attribute, float32 exponent, float theta);
|
|
|
|
int VCLight_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCLight_GetColour (VCAttribute *attribute, VCColour colour);
|
|
int VCLight_GetUmbra (VCAttribute *attribute, float32 *exponent, float32 *theta);
|
|
|
|
#define VCEntity_DetachLight(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCLight_Delete(a) VCAttribute_Delete(a)
|
|
#define VCLight_SetColor(a,c) VCLight_SetColour(a,c)
|
|
#define VCLight_GetColor(a,c) VCLight_GetColour(a,c)
|
|
|
|
#define VCEntity_AddLightDirectional(e,c) VCEntity_AddLight(e, VC_LIGHT_ENABLE | VC_LIGHT_MODE_DIRECTIONAL, c, 0.0f, 0.0f)
|
|
#define VCEntity_AddLightAmbient(e,c) VCEntity_AddLight(e, VC_LIGHT_ENABLE | VC_LIGHT_MODE_AMBIENT, c, 0.0f, 0.0f)
|
|
#define VCEntity_AddLightPoint(e,c) VCEntity_AddLight(e, VC_LIGHT_ENABLE | VC_LIGHT_MODE_POINT, c, 0.0f, 0.0f)
|
|
#define VCEntity_AddLightSpot(e,c,x,t) VCEntity_AddLight(e, VC_LIGHT_ENABLE | VC_LIGHT_MODE_SPOT, c, x, t)
|
|
|
|
#define VCLight_CreateDirectional(c) VCLight_Create(VC_LIGHT_ENABLE | VC_LIGHT_MODE_DIRECTIONAL, c, 0.0f, 0.0f)
|
|
#define VCLight_CreateAmbient(c) VCLight_Create(VC_LIGHT_ENABLE | VC_LIGHT_MODE_AMBIENT, c, 0.0f, 0.0f)
|
|
#define VCLight_CreatePoint(c) VCLight_Create(VC_LIGHT_ENABLE | VC_LIGHT_MODE_POINT, c, 0.0f, 0.0f)
|
|
#define VCLight_CreateSpot(c,x,t) VCLight_Create(VC_LIGHT_ENABLE | VC_LIGHT_MODE_SPOT, c, x, t)
|
|
|
|
VCAttribute *VCAudio_Create (char *voice, float32 gain, uint8 velocity,
|
|
uint32 mode, int32 loopCnt, int8 priority,
|
|
char *radiatorName, char *radiatorFileName);
|
|
VCAttribute *VCEntity_AddAudioData(VCEntity *entity, VCAudioData *data);
|
|
VCAttribute *VCEntity_AddAudio (VCEntity *entity, char *voice, float32 gain, uint8 velocity,
|
|
uint32 mode, int32 loopCnt, int8 priority,
|
|
char * radiatorName, char *radiatorFileName);
|
|
int VCAudio_Set (VCAttribute *attribute, char *voice,
|
|
float32 *gain, uint8 *velocity, uint32 setMode,
|
|
uint32 clearMode, uint8 play, int32 *loopCnt, int8 *priority,
|
|
char *radiatorName, char *radiatorFileName);
|
|
int VCAudio_Get (VCAttribute *attribute, char **voice,
|
|
float32 *gain, uint8 *velocity, uint32 *mode,
|
|
int32 *loopCnt, int8 *priority,
|
|
char **radiatorName, char **radiatorFileName);
|
|
VCAttribute *VCAudio_CreateData (VCAudioData *audioData);
|
|
int VCAudio_GetData (VCAttribute *attribute, VCAudioData *audioData);
|
|
int VCAudio_SetData (VCAttribute *attribute, VCAudioData *audioData);
|
|
|
|
int VCAudio_SetVoice (VCAttribute *attribute, char *voice);
|
|
int VCAudio_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCAudio_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCAudio_SetGain (VCAttribute *attribute, float32 gain);
|
|
int VCAudio_SetVelocity (VCAttribute *attribute, uint8 velocity);
|
|
int VCAudio_SetLoopCount (VCAttribute *attribute, int32 loopCnt);
|
|
int VCAudio_SetPriority (VCAttribute *attribute, int8 priority);
|
|
int VCAudio_SetRadiatorName(VCAttribute *attribute, char *radiator);
|
|
int VCAudio_SetRadiatorFile(VCAttribute *attribute, char *radiator);
|
|
int VCAudio_Start (VCAttribute *attribute);
|
|
int VCAudio_Stop (VCAttribute *attribute);
|
|
|
|
int VCAudio_GetVoice (VCAttribute *attribute, char **voice);
|
|
int VCAudio_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCAudio_GetGain (VCAttribute *attribute, float32 *gain);
|
|
int VCAudio_GetVelocity (VCAttribute *attribute, uint8 *velocity);
|
|
int VCAudio_GetLoopCount (VCAttribute *attribute, int32 *loopCount);
|
|
int VCAudio_GetPriority (VCAttribute *attribute, int8 *priority);
|
|
int VCAudio_GetRadiatorName(VCAttribute *attribute, char **radiator);
|
|
int VCAudio_GetRadiatorFile(VCAttribute *attribute, char **radiator);
|
|
|
|
|
|
#define VCEntity_AddAudioVoice(e,v) VCEntity_AddAudio(e, v, 0, 80, 0, 1, 0, NULL, NULL)
|
|
#define VCEntity_DetachAudio(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCAudio_CreateVoice(v) VCAudio_Create( v, 0, 80, 0, 1, 0, NULL, NULL)
|
|
#define VCAudio_Delete(a) VCAttribute_Delete(a)
|
|
|
|
VCAttribute *VCConstraints_Create (uint32 mode, uint32 flags, float32 points[6],
|
|
float32 rotation[6]);
|
|
VCAttribute *VCConstraints_CreateData (VCConstraintsData *constraintsData);
|
|
int VCConstraints_Get (VCAttribute *attribute, uint32 *mode, uint32 *flags,
|
|
float32 points[6], float32 rotation[6]);
|
|
int VCConstraints_GetData (VCAttribute *attribute, VCConstraintsData *constraintsData);
|
|
|
|
VCAttribute *VCEntity_AddConstraintsData(VCEntity *entity, VCConstraintsData *data);
|
|
VCAttribute *VCEntity_AddConstraints(VCEntity *entity, uint32 mode, uint32 flags,
|
|
float32 points[6], float32 rotation[6]);
|
|
int VCConstraints_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, uint32 setFlags, uint32 clearFlags,
|
|
float32 points[6], float32 rotation[6]);
|
|
int VCConstraints_SetData (VCAttribute *attribute, VCConstraintsData *constraintsData);
|
|
|
|
int VCConstraints_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCConstraints_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCConstraints_ModifyFlags (VCAttribute *attribute, uint32 setFlags, uint32 clearFlags);
|
|
int VCConstraints_SetFlags (VCAttribute *attribute, uint32 flags);
|
|
int VCConstraints_SetPoint (VCAttribute *attribute, float32 point[6]);
|
|
int VCConstraints_SetRotation (VCAttribute *attribute, float32 rotation[6]);
|
|
int VCConstraints_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCConstraints_GetFlags (VCAttribute *attribute, uint32 *flags);
|
|
int VCConstraints_GetPoint (VCAttribute *attribute, float32 point[6]);
|
|
int VCConstraints_GetRotation (VCAttribute *attribute, float32 rotation[6]);
|
|
|
|
|
|
|
|
|
|
|
|
VCAttribute *VCEntity_AddConstraintsHinge(VCEntity *entity, uint32 axis, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsHingeX(VCEntity *entity, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsHingeY(VCEntity *entity, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsHingeZ(VCEntity *entity, float32 min, float32 max);
|
|
|
|
VCAttribute *VCEntity_AddConstraintsTranslate(VCEntity *entity, uint32 axis, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsTranslateX(VCEntity *entity, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsTranslateY(VCEntity *entity, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsTranslateZ(VCEntity *entity, float32 min, float32 max);
|
|
|
|
VCAttribute *VCEntity_AddConstraintsRotate(VCEntity *entity, uint32 axis, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsRotateX(VCEntity *entity, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsRotateY(VCEntity *entity, float32 min, float32 max);
|
|
VCAttribute *VCEntity_AddConstraintsRotateZ(VCEntity *entity, float32 min, float32 max);
|
|
|
|
VCAttribute *VCConstraints_CreateHinge(uint32 axis, float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateHingeX(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateHingeY(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateHingeZ(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateTranslate(uint32 axis, float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateTranslateX(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateTranslateY(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateTranslateZ(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateRotate(uint32 axis, float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateRotateX(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateRotateY(float32 min, float32 max);
|
|
VCAttribute *VCConstraints_CreateRotateZ(float32 min, float32 max);
|
|
|
|
#define VCEntity_DetachConstraints(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCConstraints_Delete(a) VCAttribute_Delete(a)
|
|
|
|
VCAttribute *VCVisualResource_Create (char *name, uint32 mode, float32 frameRate, float32 iod,
|
|
float32 convergence, VCColour backGround,
|
|
float32 nearClip, float32 farClip, VCColour fogColour,
|
|
float32 nearFlog, float32 farFog, float32 lodScale,
|
|
uint32 actorId);
|
|
VCAttribute *VCVisualResource_CreateData (VCVisualResourceData *visualResource);
|
|
int VCVisualResource_Get (VCAttribute *attribute, char **name, uint32 *mode,
|
|
float32 *frameRate, float32 *iod, float32 *convergence,
|
|
VCColour backGround, float32 *nearClip, float32 *farClip,
|
|
VCColour fogColour, float32 *nearFog, float32 *farFog,
|
|
float32 *lodScale, uint32 *actorId);
|
|
int VCVisualResource_GetData (VCAttribute *attribute, VCVisualResourceData *visualResource);
|
|
int VCVisualResource_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, float32 *frameRate, float32 *iod,
|
|
float32 *convergence, VCColour backGround,
|
|
float32 *nearClip, float32 *farClip, VCColour fogColour,
|
|
float32 *nearFog, float32 *farFog, float32 *lodScale);
|
|
int VCVisualResource_SetData (VCAttribute *attribute, VCVisualResourceData *visualResource);
|
|
VCAttribute *VCEntity_AddVisualResourceData(VCEntity *entity, VCVisualResourceData *data);
|
|
VCAttribute *VCEntity_AddVisualResource (VCEntity *entity, char *name, uint32 mode,
|
|
float32 frameRate, float32 iod, float32 convergence,
|
|
VCColour backGround, float32 nearClip, float32 farClip,
|
|
VCColour fogColour, float32 nearFlog, float32 farFog,
|
|
float32 lodScale, uint32 actorId);
|
|
|
|
#define VCEntity_DetachVisualResource(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCVisualResource_Delete(a) VCAttribute_Delete(a)
|
|
|
|
int VCVisualResource_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCVisualResource_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCVisualResource_SetFrameRate (VCAttribute *attribute, float32 frameRate);
|
|
int VCVisualResource_SetIod (VCAttribute *attribute, float32 iod);
|
|
int VCVisualResource_SetConvergence (VCAttribute *attribute, float32 convergence);
|
|
int VCVisualResource_SetBackground (VCAttribute *attribute, VCColour backGround);
|
|
int VCVisualResource_SetNearClip (VCAttribute *attribute, float32 nearClip);
|
|
int VCVisualResource_SetFarClip (VCAttribute *attribute, float32 farClip);
|
|
int VCVisualResource_SetFogColour (VCAttribute *attribute, VCColour fogColour);
|
|
int VCVisualResource_SetNearFog (VCAttribute *attribute, float32 nearFog);
|
|
int VCVisualResource_SetFarFog (VCAttribute *attribute, float32 farFog);
|
|
int VCVisualResource_SetLodScale (VCAttribute *attribute, float32 lodScale);
|
|
int VCVisualResource_GetName (VCAttribute *attribute, char **name);
|
|
int VCVisualResource_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCVisualResource_GetFrameRate (VCAttribute *attribute, float32 *frameRate);
|
|
int VCVisualResource_GetIod (VCAttribute *attribute, float32 *iod);
|
|
int VCVisualResource_GetConvergence (VCAttribute *attribute, float32 *convergence);
|
|
int VCVisualResource_GetBackground (VCAttribute *attribute, VCColour backGround);
|
|
int VCVisualResource_GetNearClip (VCAttribute *attribute, float32 *nearClip);
|
|
int VCVisualResource_GetFarClip (VCAttribute *attribute, float32 *farClip);
|
|
int VCVisualResource_GetFogColour (VCAttribute *attribute, VCColour fogColour);
|
|
int VCVisualResource_GetNearFog (VCAttribute *attribute, float32 *nearFog);
|
|
int VCVisualResource_GetFarFog (VCAttribute *attribute, float32 *farFog);
|
|
int VCVisualResource_GetLodScale(VCAttribute *attribute, float32 *lodScale);
|
|
int VCVisualResource_GetActorId(VCAttribute *attribute, uint32 *actorId);
|
|
|
|
#define VCVisualResource_SetFogColor(a,c) VCVisualResource_SetFogColour(a,c)
|
|
#define VCVisualResource_GetFogColor(a,c) VCVisualResource_GetFogColour(a,c)
|
|
|
|
VCAttribute *VCAudioResource_Create (char *name, uint32 mode, float32 iad, float32 volume,
|
|
float32 spreadingRollOff, float32 atmosAbsorb,char *hrtf,
|
|
char *resourceFileName);
|
|
VCAttribute *VCAudioResource_CreateData (VCAudioResourceData *audioData);
|
|
VCAttribute *VCEntity_AddAudioResourceData(VCEntity *entity, VCAudioResourceData *data);
|
|
VCAttribute *VCEntity_AddAudioResource (VCEntity *entity, char *name, uint32 mode, float32 iad,
|
|
float32 volume, float32 spreadingRollOff, float32 atmosAbsorb,
|
|
char *hrtf, char *resourceFileName);
|
|
int VCAudioResource_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, float32 *iad, float32 *volume,
|
|
float32 *spreadingRollOff, float32 *atmosphericAbsorption,
|
|
char *hrtf, char *resourceFileName);
|
|
int VCAudioResource_SetData (VCAttribute *attribute,VCAudioResourceData *audioData);
|
|
int VCAudioResource_Get (VCAttribute *attribute, char **name, uint32 *mode,
|
|
float32 *iad, float32 *volume,
|
|
float32 *spreadingRollOff, float32 *atmosphericAbsorption,
|
|
char **hrtf, char **resourceFileName);
|
|
int VCAudioResource_GetData (VCAttribute *attribute,VCAudioResourceData *audioData);
|
|
#define VCEntity_DetachAudioResource(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCAudioResource_Delete(a) VCAttribute_Delete(a)
|
|
|
|
int VCAudioResource_SetIad (VCAttribute *attribute, float32 iad);
|
|
int VCAudioResource_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCAudioResource_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCAudioResource_SetVolume (VCAttribute *attribute, float32 volume);
|
|
int VCAudioResource_SetHrtf (VCAttribute *attribute, char *hrtf);
|
|
int VCAudioResource_SetResourceFileName (VCAttribute *attribute, char *resourceName);
|
|
int VCAudioResource_SetSpreadingRollOff (VCAttribute *attribute, float32 spreadingRollOff);
|
|
int VCAudioResource_SetAtmosphericAbsorption (VCAttribute *attribute,
|
|
float32 atmosphericAbsorption);
|
|
|
|
int VCAudioResource_GetName (VCAttribute *attribute, char **name);
|
|
int VCAudioResource_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCAudioResource_GetIad (VCAttribute *attribute, float32 *iad);
|
|
int VCAudioResource_GetVolume (VCAttribute *attribute, float32 *volume);
|
|
int VCAudioResource_GetHrtf (VCAttribute *attribute, char **hrtf);
|
|
int VCAudioResource_GetResourceFileName (VCAttribute *attribute, char **resourceName);
|
|
int VCAudioResource_GetSpreadingRollOff (VCAttribute *attribute,
|
|
float32 *spreadingRollOff);
|
|
int VCAudioResource_GetAtmosphericAbsorption (VCAttribute *attribute,
|
|
float32 *atomsphericAbsorption);
|
|
|
|
|
|
|
|
VCAttribute *VCInputResource_Create (char *name, uint32 mode, VCInput *input);
|
|
VCAttribute *VCInputResource_CreateData (VCInputResourceData *inputData);
|
|
VCAttribute *VCEntity_AddInputResourceData(VCEntity *entity, VCInputResourceData *data);
|
|
VCAttribute *VCEntity_AddInputResource (VCEntity *entity, char *name, uint32 mode, VCInput *input);
|
|
int VCInputResource_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, VCInput *input);
|
|
int VCInputResource_SetData (VCAttribute *attribute, VCInputResourceData *inputData);
|
|
int VCInputResource_Get (VCAttribute *attribute, char **name,
|
|
uint32 *mode, VCInput **input);
|
|
int VCInputResource_GetData (VCAttribute *attribute, VCInputResourceData *inputData);
|
|
int VCInputResource_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCInputResource_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCInputResource_GetName (VCAttribute *attribute, char **name);
|
|
int VCInputResource_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCInputResource_GetInput (VCAttribute *attribute, VCInput **input);
|
|
|
|
|
|
#define VCEntity_DetachInputResource(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCInputResource_Delete(a) VCAttribute_Delete(a)
|
|
|
|
VCAttribute *VCSensorResource_Create (char *name, uint32 mode, VCTracker *tracker, uint32 sensorId,
|
|
float32 scaleTranslate[3], float32 scaleRotate[3],
|
|
float32 translationCurveOrder[3], float32 rotationCurveOrder[3],
|
|
dmPoint prePosition, dmPoint postPosition, dmEuler preEuler,
|
|
dmEuler postEuler, float32 relativeSphere[6], VCPosition *position,
|
|
VCConstraintsData *constraints);
|
|
VCAttribute *VCSensorResource_CreateData (VCSensorResourceData *sensorData);
|
|
VCAttribute *VCEntity_AddSensorResourceData(VCEntity *entity, VCSensorResourceData *data);
|
|
VCAttribute *VCEntity_AddSensorResource (VCEntity *entity, char *name, uint32 mode, VCTracker *tracker,
|
|
uint32 sensorId, float32 scaleTranslate[3],
|
|
float32 scaleRotate[3],float32 translationCurveOrder[3],
|
|
float32 rotationCurveOrder[3], dmPoint prePosition,
|
|
dmPoint postPosition, dmEuler preEuler, dmEuler postEuler,
|
|
float32 relativeSphere[6],
|
|
VCPosition *position, VCConstraintsData *constraints);
|
|
|
|
int VCSensorResource_Set (VCAttribute *attribute, uint32 setMode, uint32 clearMode,
|
|
float32 scaleTranslate[3],
|
|
float32 scaleRotate[3], float32 translationCurveOrder[3],
|
|
float32 rotationCurveOrder[3], dmPoint prePosition,
|
|
dmPoint postPosition, dmEuler preEuler, dmEuler postEuler,
|
|
float32 relativeSphere[6], VCPosition *position,
|
|
VCConstraintsData *constraints);
|
|
int VCSensorResource_SetData (VCAttribute *attribute, VCSensorResourceData *sensorData);
|
|
int VCSensorResource_Get (VCAttribute *attribute, char **name,
|
|
uint32 *mode, VCTracker **tracker, uint32 *sensorId,
|
|
float32 scaleTranslate[3], float32 scaleRotate[3],
|
|
float32 translationCurveOrder[3], float32 rotationCurveOrder[3],
|
|
dmPoint prePosition, dmPoint postPosition, dmEuler preEuler,
|
|
dmEuler postEuler, float32 relativeSphere[6],
|
|
VCPosition **position, VCConstraintsData *constraints);
|
|
int VCSensorResource_GetData (VCAttribute *attribute, VCSensorResourceData *sensorData);
|
|
|
|
|
|
#define VCEntity_DetachSensorResource(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCSensorResource_Delete(a) VCAttribute_Delete(a)
|
|
|
|
int VCSensorResource_ModifyMode(VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCSensorResource_SetMode(VCAttribute *attribute, uint32 mode);
|
|
int VCSensorResource_SetTranslationScale(VCAttribute *attribute, float32 scaleTranslate[3]);
|
|
int VCSensorResource_SetRotationScale(VCAttribute *attribute, float32 scaleRotate[3]);
|
|
int VCSensorResource_SetTranslationCurveOrder(VCAttribute *attribute, float32 curveOrder[3]);
|
|
int VCSensorResource_SetRotationCurveOrder(VCAttribute *attribute, float32 curveOrder[3]);
|
|
int VCSensorResource_SetPrePosition(VCAttribute *attribute, dmPoint prePosition);
|
|
int VCSensorResource_SetPostPosition(VCAttribute *attribute, dmPoint postPosition);
|
|
int VCSensorResource_SetPreEuler(VCAttribute *attribute, dmEuler preEuler);
|
|
int VCSensorResource_SetPostEuler(VCAttribute *attribute, dmEuler postEuler);
|
|
int VCSensorResource_SetRelativeSphere(VCAttribute *attribute, float32 relativeSphere[6]);
|
|
int VCSensorResource_SetPosition(VCAttribute *attribute, VCPosition *pos);
|
|
int VCSensorResource_SetConstraints(VCAttribute *attribute, VCConstraintsData *constraints);
|
|
int VCSensorResource_GetName(VCAttribute *attribute, char **name);
|
|
int VCSensorResource_GetMode(VCAttribute *attribute, uint32 *mode);
|
|
int VCSensorResource_GetTracker(VCAttribute *attribute, VCTracker **tracker);
|
|
int VCSensorResource_GetSensorId(VCAttribute *attribute, uint32 *sensorId);
|
|
int VCSensorResource_GetTranslationScale(VCAttribute *attribute, float32 scaleTranslate[3]);
|
|
int VCSensorResource_GetRotationScale(VCAttribute *attribute, float32 scaleRotate[3]);
|
|
int VCSensorResource_GetTranslationCurveOrder(VCAttribute *attribute, float32 curveOrder[3]);
|
|
int VCSensorResource_GetRotationCurveOrder(VCAttribute *attribute, float32 curveOrder[3]);
|
|
int VCSensorResource_GetPrePosition(VCAttribute *attribute, dmPoint prePosition);
|
|
int VCSensorResource_GetPostPosition(VCAttribute *attribute, dmPoint postPosition);
|
|
int VCSensorResource_GetPreEuler(VCAttribute *attribute, dmEuler preEuler);
|
|
int VCSensorResource_GetPostEuler(VCAttribute *attribute, dmEuler postEuler);
|
|
int VCSensorResource_GetRelativeSphere(VCAttribute *attribute, float32 relativeSphere[6]);
|
|
int VCSensorResource_GetPosition(VCAttribute *attribute, VCPosition **pos);
|
|
int VCSensorResource_GetConstraints(VCAttribute *attribute, VCConstraintsData *constraints);
|
|
|
|
|
|
VCAttribute *VCVectorIntersect_Create (uint32 mode, float32 length, uint32 mask,
|
|
int32 numIntersections);
|
|
VCAttribute *VCVectorIntersect_CreateData (VCVectorIntersectData *intersectData);
|
|
|
|
VCAttribute *VCEntity_AddVectorIntersectData(VCEntity *entity, VCVectorIntersectData *data);
|
|
VCAttribute *VCEntity_AddVectorIntersect (VCEntity *entity, uint32 mode, float32 length,
|
|
uint32 mask, int32 numIntersections);
|
|
int VCVectorIntersect_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, float32 *length, uint32 setMask,
|
|
uint32 clearMaks, int32 *numIntersections);
|
|
int VCVectorIntersect_SetData (VCAttribute *attribute, VCVectorIntersectData *intersectData);
|
|
int VCVectorIntersect_Get (VCAttribute *attribute, uint32 *mode,
|
|
float32 *length, uint32 *mask, int32 *numIntersections,
|
|
VCIntersection **intersection);
|
|
int VCVectorIntersect_GetData (VCAttribute *attribute, VCVectorIntersectData *intersectData);
|
|
int VCVectorIntersect_Delete(VCAttribute *attribute);
|
|
#define VCEntity_DetachVectorIntersect(e,a) VCEntity_DetachAttribute(e,a)
|
|
|
|
|
|
int VCVectorIntersect_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCVectorIntersect_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCVectorIntersect_SetLength (VCAttribute *attribute, float32 kength);
|
|
int VCVectorIntersect_SetIntersectMask (VCAttribute *attribute, uint32 mask);
|
|
int VCVectorIntersect_ModifyIntersectMask (VCAttribute *attribute, uint32 setMask,
|
|
uint32 clearMask);
|
|
int VCVectorIntersect_SetNumberIntersections (VCAttribute *attribute, int32 numIntersections);
|
|
int VCVectorIntersect_SetIntersection (VCAttribute *attribute, VCIntersection *intersection);
|
|
|
|
int VCVectorIntersect_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCVectorIntersect_GetLength (VCAttribute *attribute, float32 *length);
|
|
int VCVectorIntersect_GetIntersectMask (VCAttribute *attribute, uint32 *mask);
|
|
int VCVectorIntersect_GetNumberIntersections (VCAttribute *attribute, int32 numIntersections);
|
|
int VCVectorIntersect_GetIntersection (VCAttribute *attribute, VCIntersection **intersection);
|
|
void *VCVectorIntersect_AttachIntersectionCreateCallback(VCAttribute *intersect,
|
|
VCIntersection_Func func, void *data);
|
|
void *VCVectorIntersect_AttachIntersectionUpdateCallback(VCAttribute *intersect,
|
|
VCIntersection_Func func, void *data);
|
|
void *VCVectorIntersect_AttachIntersectionDeleteCallback(VCAttribute *intersect,
|
|
VCIntersection_Func func, void *data);
|
|
|
|
int VCVectorIntersect_DetachIntersectionCreateCallback(VCAttribute *intersect, void *callbackHandle);
|
|
int VCVectorIntersect_DetachIntersectionUpdateCallback(VCAttribute *intersect, void *callbackHandle);
|
|
|
|
int VCVectorIntersect_DetachIntersectionDeleteCallback(VCAttribute *intersect, void *callbackHandle);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
VCAttribute *VCVisualEffect_Create (uint32 mode, uint32 type, dmPoint offset, float32 *data,
|
|
char *texture);
|
|
VCAttribute *VCVisualEffect_CreateData (VCVisualEffectData *visEffectData);
|
|
VCAttribute *VCEntity_AddVisualEffectData(VCEntity *entity, VCVisualEffectData *data);
|
|
VCAttribute *VCEntity_AddVisualEffect (VCEntity *entity, uint32 mode, uint32 type,
|
|
dmPoint offset, float *data, char *texture);
|
|
int VCVisualEffect_Set (VCAttribute *attribute, uint32 setMode, uint32 clearMode,
|
|
uint32 *type, dmPoint offset, float data[72], char *texture);
|
|
int VCVisualEffect_SetData (VCAttribute *attribute,VCVisualEffectData *visEffectData);
|
|
int VCVisualEffect_Get (VCAttribute *attribute, uint32 *mode, uint32 *type,
|
|
dmPoint offset, float32 data[72], char **texture);
|
|
int VCVisualEffect_GetData (VCAttribute *attribute,VCVisualEffectData *visEffectData);
|
|
#define VCEntity_DetachVisualEffect(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCVisualEffect_Delete(a) VCAttribute_Delete(a)
|
|
#define VCEntity_AddVisualEffectExplosion(e,t,o,te) VCEntity_AddVisualEffect(e,VC_VISUALEFFECT_MODE_EXPLOSION,t,o,NULL,te)
|
|
#define VCVisualEffect_CreateExplosion(t,o,te) VCVisualEffect_Create(VC_VISUALEFFECT_MODE_EXPLOSION,t,o,NULL,te)
|
|
#define VCVisualEffect_StartExplosion(a,o) VCVisualEffect_Set(a,VC_VISUALEFFECT_ENABLE,0,NULL,o,NULL,NULL)
|
|
|
|
int VCVisualEffect_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCVisualEffect_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCVisualEffect_SetType (VCAttribute *attribute, uint32 type);
|
|
int VCVisualEffect_SetOffset (VCAttribute *attribute, dmPoint offset);
|
|
int VCVisualEffect_SetInfo (VCAttribute *attribute, float32 info[72]);
|
|
int VCVisualEffect_SetTexture (VCAttribute *attribute, char *texture);
|
|
|
|
int VCVisualEffect_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCVisualEffect_GetType (VCAttribute *attribute, uint32 *type);
|
|
int VCVisualEffect_GetOffset (VCAttribute *attribute, dmPoint offset);
|
|
int VCVisualEffect_GetInfo (VCAttribute *attribute, float32 info[72]);
|
|
int VCVisualEffect_GetTexture (VCAttribute *attribute, char **texture);
|
|
|
|
|
|
VCAttribute *VCDynamics_Create (uint32 mode, float32 imass, float32 gmass, dmPoint centre,
|
|
float32 *iTensor, float32 spring, float32 damper,
|
|
float32 sFriction, float32 dFriction);
|
|
VCAttribute *VCDynamics_CreateData (VCDynamicsData *dynamicData);
|
|
int VCDynamics_Get (VCAttribute *attribute, uint32 *mode, float32 *imass,
|
|
float32 *gmass, dmPoint centre, float32 itensor[6],
|
|
float32 *spring, float32 *damper, float32 *sFriction,
|
|
float32 *dFricition);
|
|
int VCDynamics_GetData (VCAttribute *attribute, VCDynamicsData *dynamicData);
|
|
VCAttribute *VCEntity_AddDynamicsData(VCEntity *entity, VCDynamicsData *data);
|
|
VCAttribute *VCEntity_AddDynamics (VCEntity *entity, uint32 mode, float32 imass, float32 gmass,
|
|
dmPoint centre, float32 *iTensor, float32 spring,
|
|
float32 damper, float32 sFriction, float32 dFriction);
|
|
int VCDynamics_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, float32 *imass, float32 *gmass,
|
|
dmPoint centre, float32 *iTensor, float32 *spring,
|
|
float32 *damper, float32 *sFriction, float32 *dFriction);
|
|
int VCDynamics_SetData (VCAttribute *attribute, VCDynamicsData *dynamicData);
|
|
#define VCEntity_DetachDynamics(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCDynamics_Delete(a) VCAttribute_Delete(a)
|
|
|
|
int VCDynamics_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCDynamics_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCDynamics_SetImass (VCAttribute *attribute, float32 imass);
|
|
int VCDynamics_SetGmass (VCAttribute *attribute, float32 gmass);
|
|
int VCDynamics_SetCentre (VCAttribute *attribute, dmPoint centre);
|
|
int VCDynamics_SetItensor (VCAttribute *attribute, float32 *itensor);
|
|
int VCDynamics_SetSpring (VCAttribute *attribute, float32 spring);
|
|
int VCDynamics_SetDamper (VCAttribute *attribute, float32 damper);
|
|
int VCDynamics_SetStaticFriction (VCAttribute *attribute, float32 sFriction);
|
|
int VCDynamics_SetDynamicFriction (VCAttribute *attribute, float32 dFriction);
|
|
int VCDynamics_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCDynamics_GetImass (VCAttribute *attribute, float32 *imass);
|
|
int VCDynamics_GetGmass (VCAttribute *attribute, float32 *gmass);
|
|
int VCDynamics_GetCentre (VCAttribute *attribute, dmPoint centre);
|
|
int VCDynamics_GetItensor (VCAttribute *attribute, float32 itensor[6]);
|
|
int VCDynamics_GetSpring (VCAttribute *attribute, float32 *spring);
|
|
int VCDynamics_GetDamper (VCAttribute *attribute, float32 *damper);
|
|
int VCDynamics_GetStaticFriction (VCAttribute *attribute, float32 *sFriction);
|
|
int VCDynamics_GetDynamicFriction (VCAttribute *attribute, float32 *dFriction);
|
|
|
|
|
|
VCAttribute *VCForce_Create (uint32 mode, dmVector force, dmPoint point);
|
|
VCAttribute *VCForce_CreateData (VCForceData *forceData);
|
|
int VCForce_Get (VCAttribute *attribute, uint32 *mode, dmVector force, dmPoint point);
|
|
int VCForce_GetData (VCAttribute *attribute, VCForceData *forceData);
|
|
VCAttribute *VCEntity_AddForceData(VCEntity *entity, VCForceData *data);
|
|
VCAttribute *VCEntity_AddForce (VCEntity *entity, uint32 mode, dmVector force, dmPoint point);
|
|
int VCForce_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, dmVector force, dmPoint point);
|
|
int VCForce_SetData (VCAttribute *attribute, VCForceData *forceData);
|
|
|
|
|
|
|
|
#define VCEntity_DetachForce(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCForce_Delete(a) VCAttribute_Delete(a)
|
|
|
|
int VCForce_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCForce_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCForce_SetForce (VCAttribute *attribute, dmVector force);
|
|
int VCForce_SetPoint (VCAttribute *attribute, dmPoint point);
|
|
int VCForce_GetMode (VCAttribute *attribute, uint32 *mode);
|
|
int VCForce_GetForce (VCAttribute *attribute, dmVector force);
|
|
int VCForce_GetPoint (VCAttribute *attribute, dmPoint point);
|
|
|
|
|
|
|
|
VCAttribute *VCZone_Create (uint32 mode, uint32 actorMask);
|
|
VCAttribute *VCZone_CreateData (VCZoneData *zoneData);
|
|
int VCZone_Get (VCAttribute *attribute, uint32 *mode, uint32 *actorMask);
|
|
int VCZone_GetData (VCAttribute *attribute, VCZoneData *zoneData);
|
|
VCAttribute *VCEntity_AddZoneData(VCEntity *entity, VCZoneData *data);
|
|
VCAttribute *VCEntity_AddZone (VCEntity *entity, uint32 mode, uint32 actorMask);
|
|
int32 VCZone_Set (VCAttribute *attribute, uint32 setMode,
|
|
uint32 clearMode, uint32 setActorMask, uint32 clearActorMask);
|
|
int VCZone_SetData (VCAttribute *attribute, VCZoneData *zoneData);
|
|
#define VCEntity_DetachZone(e,a) VCEntity_DetachAttribute(e,a)
|
|
#define VCZone_Delete(a) VCAttribute_Delete(a)
|
|
|
|
int VCZone_SetMode (VCAttribute *attribute, uint32 mode);
|
|
int VCZone_ModifyMode (VCAttribute *attribute, uint32 setMode, uint32 clearMode);
|
|
int VCZone_SetActorMask (VCAttribute *attribute, uint32 mask);
|
|
int VCZone_ModifyActorMask (VCAttribute *attribute, uint32 setMask, uint32 clearMask);
|
|
int VCZone_GetMode(VCAttribute *attribute, uint32 *mode);
|
|
int VCZone_GetActorMask(VCAttribute *attribute, uint32 *mask);
|
|
|
|
|
|
|
|
#endif /* _VCOBJECT_H */
|