2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2026-05-25 02:51:43 +00:00

Merge pull request #753 from pagingred/iw5_physpreset_dumper

feat: phys presets dumping and loading for IW3, IW5, T5
This commit is contained in:
Paging Red
2026-05-02 06:01:59 -04:00
committed by GitHub
parent 704b191b97
commit 759a3ccf0e
41 changed files with 1698 additions and 12 deletions
+7
View File
@@ -197,6 +197,13 @@ namespace IW5
WAFT_NUM_FIELD_TYPES,
};
enum physPresetFieldType_t
{
PPFT_SCALING = CSPFT_NUM_BASE_FIELD_TYPES,
PPFT_NUM_FIELD_TYPES,
};
using AssetPhysPreset = Asset<ASSET_TYPE_PHYSPRESET, PhysPreset>;
using AssetPhysCollMap = Asset<ASSET_TYPE_PHYSCOLLMAP, PhysCollmap>;
using AssetXAnim = Asset<ASSET_TYPE_XANIMPARTS, XAnimParts>;
+20
View File
@@ -201,6 +201,26 @@ namespace IW5
bool perSurfaceSndAlias;
};
struct PhysPresetInfo
{
float mass;
float bounce;
float friction;
float bulletForceScale;
float explosiveForceScale;
const char* sndAliasPrefix;
float piecesSpreadFraction;
float piecesUpwardVelocity;
float minMomentum;
float maxMomentum;
float minPitch;
float maxPitch;
PhysPresetScaling volumeType;
PhysPresetScaling pitchType;
int tempDefaultToCylinder;
int perSurfaceSndAlias;
};
struct Bounds
{
vec3_t midPoint;
+17
View File
@@ -177,6 +177,23 @@ namespace T5
vec3_t buoyancyBoxMax;
};
struct PhysPresetInfo
{
float mass;
float bounce;
float friction;
int isFrictionInfinity;
float bulletForceScale;
float explosiveForceScale;
float piecesSpreadFraction;
float piecesUpwardVelocity;
int canFloat;
float gravityScale;
vec3_t centerOfMassOffset;
vec3_t buoyancyBoxMin;
vec3_t buoyancyBoxMax;
};
enum ConstraintType
{
CONSTRAINT_NONE = 0x0,