diff --git a/Engine/source/T3D/Scene.cpp b/Engine/source/T3D/Scene.cpp index 75517fc90..719004766 100644 --- a/Engine/source/T3D/Scene.cpp +++ b/Engine/source/T3D/Scene.cpp @@ -24,6 +24,7 @@ Scene::~Scene() void Scene::initPersistFields() { + docsURL; Parent::initPersistFields(); addGroup("Internal"); diff --git a/Engine/source/T3D/accumulationVolume.cpp b/Engine/source/T3D/accumulationVolume.cpp index 139a843b9..d7260f289 100644 --- a/Engine/source/T3D/accumulationVolume.cpp +++ b/Engine/source/T3D/accumulationVolume.cpp @@ -97,6 +97,7 @@ AccumulationVolume::~AccumulationVolume() void AccumulationVolume::initPersistFields() { + docsURL; addProtectedField("textureAsset", TypeImageAssetId, Offset(mTextureAssetId, AccumulationVolume), &_setTexture, &defaultProtectedGetFn, "Accumulation texture."); addProtectedField( "texture", TypeStringFilename, Offset( mTextureName, AccumulationVolume ), diff --git a/Engine/source/T3D/aiPlayer.cpp b/Engine/source/T3D/aiPlayer.cpp index 3cb53debd..abc84435c 100644 --- a/Engine/source/T3D/aiPlayer.cpp +++ b/Engine/source/T3D/aiPlayer.cpp @@ -133,6 +133,7 @@ AIPlayer::~AIPlayer() void AIPlayer::initPersistFields() { + docsURL; addGroup( "AI" ); addField( "mMoveTolerance", TypeF32, Offset( mMoveTolerance, AIPlayer ), diff --git a/Engine/source/T3D/assets/CppAsset.cpp b/Engine/source/T3D/assets/CppAsset.cpp index b78b9e025..b51ae1025 100644 --- a/Engine/source/T3D/assets/CppAsset.cpp +++ b/Engine/source/T3D/assets/CppAsset.cpp @@ -107,6 +107,7 @@ CppAsset::~CppAsset() void CppAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/CubemapAsset.cpp b/Engine/source/T3D/assets/CubemapAsset.cpp index 8a3c9c673..c5d7be7ca 100644 --- a/Engine/source/T3D/assets/CubemapAsset.cpp +++ b/Engine/source/T3D/assets/CubemapAsset.cpp @@ -111,6 +111,7 @@ CubemapAsset::~CubemapAsset() void CubemapAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/ExampleAsset.cpp b/Engine/source/T3D/assets/ExampleAsset.cpp index 8953880e5..b1f8330ea 100644 --- a/Engine/source/T3D/assets/ExampleAsset.cpp +++ b/Engine/source/T3D/assets/ExampleAsset.cpp @@ -104,6 +104,7 @@ ExampleAsset::~ExampleAsset() void ExampleAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/GUIAsset.cpp b/Engine/source/T3D/assets/GUIAsset.cpp index abbed3f99..8c56059f1 100644 --- a/Engine/source/T3D/assets/GUIAsset.cpp +++ b/Engine/source/T3D/assets/GUIAsset.cpp @@ -95,6 +95,7 @@ GUIAsset::~GUIAsset() void GUIAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/GameObjectAsset.cpp b/Engine/source/T3D/assets/GameObjectAsset.cpp index 41a8df043..566689f0f 100644 --- a/Engine/source/T3D/assets/GameObjectAsset.cpp +++ b/Engine/source/T3D/assets/GameObjectAsset.cpp @@ -109,6 +109,7 @@ GameObjectAsset::~GameObjectAsset() void GameObjectAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/ImageAsset.cpp b/Engine/source/T3D/assets/ImageAsset.cpp index 80f0053f1..044d72dfe 100644 --- a/Engine/source/T3D/assets/ImageAsset.cpp +++ b/Engine/source/T3D/assets/ImageAsset.cpp @@ -155,6 +155,7 @@ void ImageAsset::consoleInit() void ImageAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/LevelAsset.cpp b/Engine/source/T3D/assets/LevelAsset.cpp index f1dc398b0..0dcd04ec4 100644 --- a/Engine/source/T3D/assets/LevelAsset.cpp +++ b/Engine/source/T3D/assets/LevelAsset.cpp @@ -111,6 +111,7 @@ LevelAsset::~LevelAsset() void LevelAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/MaterialAsset.cpp b/Engine/source/T3D/assets/MaterialAsset.cpp index f5ef117ba..5332da0b1 100644 --- a/Engine/source/T3D/assets/MaterialAsset.cpp +++ b/Engine/source/T3D/assets/MaterialAsset.cpp @@ -150,6 +150,7 @@ void MaterialAsset::consoleInit() void MaterialAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/ParticleAsset.cpp b/Engine/source/T3D/assets/ParticleAsset.cpp index 3586277e2..9ba370c66 100644 --- a/Engine/source/T3D/assets/ParticleAsset.cpp +++ b/Engine/source/T3D/assets/ParticleAsset.cpp @@ -106,6 +106,7 @@ ParticleAsset::~ParticleAsset() void ParticleAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/PostEffectAsset.cpp b/Engine/source/T3D/assets/PostEffectAsset.cpp index 2b8a7091c..047a901fc 100644 --- a/Engine/source/T3D/assets/PostEffectAsset.cpp +++ b/Engine/source/T3D/assets/PostEffectAsset.cpp @@ -111,6 +111,7 @@ PostEffectAsset::~PostEffectAsset() void PostEffectAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/ScriptAsset.cpp b/Engine/source/T3D/assets/ScriptAsset.cpp index 199c6402c..06d6db061 100644 --- a/Engine/source/T3D/assets/ScriptAsset.cpp +++ b/Engine/source/T3D/assets/ScriptAsset.cpp @@ -105,6 +105,7 @@ ScriptAsset::~ScriptAsset() void ScriptAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/ShapeAnimationAsset.cpp b/Engine/source/T3D/assets/ShapeAnimationAsset.cpp index 649fc7bca..e0fbac423 100644 --- a/Engine/source/T3D/assets/ShapeAnimationAsset.cpp +++ b/Engine/source/T3D/assets/ShapeAnimationAsset.cpp @@ -112,6 +112,7 @@ ShapeAnimationAsset::~ShapeAnimationAsset() void ShapeAnimationAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/ShapeAsset.cpp b/Engine/source/T3D/assets/ShapeAsset.cpp index 3f67227e2..91fb9a379 100644 --- a/Engine/source/T3D/assets/ShapeAsset.cpp +++ b/Engine/source/T3D/assets/ShapeAsset.cpp @@ -165,6 +165,7 @@ void ShapeAsset::consoleInit() void ShapeAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/SoundAsset.cpp b/Engine/source/T3D/assets/SoundAsset.cpp index 515ecacd5..2c4d9697b 100644 --- a/Engine/source/T3D/assets/SoundAsset.cpp +++ b/Engine/source/T3D/assets/SoundAsset.cpp @@ -147,6 +147,7 @@ SoundAsset::~SoundAsset() void SoundAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/TerrainAsset.cpp b/Engine/source/T3D/assets/TerrainAsset.cpp index 66bd44e6a..af68777ac 100644 --- a/Engine/source/T3D/assets/TerrainAsset.cpp +++ b/Engine/source/T3D/assets/TerrainAsset.cpp @@ -134,6 +134,7 @@ TerrainAsset::~TerrainAsset() void TerrainAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/TerrainMaterialAsset.cpp b/Engine/source/T3D/assets/TerrainMaterialAsset.cpp index 0e1514698..88980b3b7 100644 --- a/Engine/source/T3D/assets/TerrainMaterialAsset.cpp +++ b/Engine/source/T3D/assets/TerrainMaterialAsset.cpp @@ -153,6 +153,7 @@ void TerrainMaterialAsset::consoleInit() void TerrainMaterialAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/assets/assetImporter.cpp b/Engine/source/T3D/assets/assetImporter.cpp index 07a718568..fed7ed005 100644 --- a/Engine/source/T3D/assets/assetImporter.cpp +++ b/Engine/source/T3D/assets/assetImporter.cpp @@ -134,6 +134,7 @@ void AssetImportConfig::onRemove() /// Engine. void AssetImportConfig::initPersistFields() { + docsURL; Parent::initPersistFields(); addGroup("General"); @@ -466,6 +467,7 @@ void AssetImportObject::onRemove() void AssetImportObject::initPersistFields() { + docsURL; Parent::initPersistFields(); addField("assetType", TypeRealString, Offset(assetType, AssetImportObject), "What type is the importing asset"); @@ -539,6 +541,7 @@ void AssetImporter::onRemove() void AssetImporter::initPersistFields() { + docsURL; Parent::initPersistFields(); addField("targetModuleId", TypeRealString, Offset(targetModuleId, AssetImporter), "The Id of the module the assets are to be imported into"); diff --git a/Engine/source/T3D/assets/stateMachineAsset.cpp b/Engine/source/T3D/assets/stateMachineAsset.cpp index 30f459004..137f64396 100644 --- a/Engine/source/T3D/assets/stateMachineAsset.cpp +++ b/Engine/source/T3D/assets/stateMachineAsset.cpp @@ -106,6 +106,7 @@ StateMachineAsset::~StateMachineAsset() void StateMachineAsset::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/T3D/camera.cpp b/Engine/source/T3D/camera.cpp index 19a8e3320..4d235f754 100644 --- a/Engine/source/T3D/camera.cpp +++ b/Engine/source/T3D/camera.cpp @@ -85,6 +85,7 @@ ConsoleDocClass( CameraData, void CameraData::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -1307,6 +1308,7 @@ void Camera::unpackUpdate(NetConnection *con, BitStream *bstream) void Camera::initPersistFields() { + docsURL; addGroup( "Camera" ); addProtectedField( "controlMode", TYPEID< CameraMotionMode >(), Offset( mMode, Camera ), &_setModeField, &defaultProtectedGetFn, diff --git a/Engine/source/T3D/convexShape.cpp b/Engine/source/T3D/convexShape.cpp index 14d2d0502..bdf32d833 100644 --- a/Engine/source/T3D/convexShape.cpp +++ b/Engine/source/T3D/convexShape.cpp @@ -309,6 +309,7 @@ ConvexShape::~ConvexShape() void ConvexShape::initPersistFields() { + docsURL; addGroup( "Rendering" ); INITPERSISTFIELD_MATERIALASSET(Material, ConvexShape, "Default material used to render the ConvexShape surface."); diff --git a/Engine/source/T3D/debris.cpp b/Engine/source/T3D/debris.cpp index ba94b0892..739957af5 100644 --- a/Engine/source/T3D/debris.cpp +++ b/Engine/source/T3D/debris.cpp @@ -295,21 +295,23 @@ bool DebrisData::preload(bool server, String &errorStr) void DebrisData::initPersistFields() { - addGroup("Display"); - addField("texture", TypeString, Offset(textureName, DebrisData), - "@brief Texture imagemap to use for this debris object.\n\nNot used any more.\n", AbstractClassRep::FIELD_HideInInspectors); - - INITPERSISTFIELD_SHAPEASSET(Shape, DebrisData, "Shape to use for this debris object."); - endGroup("Display"); + docsURL; + addGroup("Shapes"); + addField("texture", TypeString, Offset(textureName, DebrisData), + "@brief Texture imagemap to use for this debris object.\n\nNot used any more.\n", AbstractClassRep::FIELD_HideInInspectors); + INITPERSISTFIELD_SHAPEASSET(Shape, DebrisData, "Shape to use for this debris object."); + endGroup("Shapes"); + addGroup("Particle Effects"); + addField("emitters", TYPEID< ParticleEmitterData >(), Offset(emitterList, DebrisData), DDC_NUM_EMITTERS, + "@brief List of particle emitters to spawn along with this debris object.\n\nThese are optional. You could have Debris made up of only a shape.\n"); + addGroup("Particle Effects"); addGroup("Datablocks"); - addField("emitters", TYPEID< ParticleEmitterData >(), Offset(emitterList, DebrisData), DDC_NUM_EMITTERS, - "@brief List of particle emitters to spawn along with this debris object.\n\nThese are optional. You could have Debris made up of only a shape.\n"); addField("explosion", TYPEID< ExplosionData >(), Offset(explosion, DebrisData), "@brief ExplosionData to spawn along with this debris object.\n\nThis is optional as not all Debris explode.\n"); endGroup("Datablocks"); - addGroup("Physical Properties"); + addGroup("Physics"); addField("elasticity", TypeF32, Offset(elasticity, DebrisData), "@brief A floating-point value specifying how 'bouncy' this object is.\n\nMust be in the range of -10 to 10.\n"); addField("friction", TypeF32, Offset(friction, DebrisData), @@ -338,7 +340,7 @@ void DebrisData::initPersistFields() "@brief Use mass calculations based on radius.\n\nAllows for the adjustment of elasticity and friction based on the Debris size.\n@see baseRadius\n"); addField("baseRadius", TypeF32, Offset(baseRadius, DebrisData), "@brief Radius at which the standard elasticity and friction apply.\n\nOnly used when useRaduisMass is true.\n@see useRadiusMass.\n"); - endGroup("Physical Properties"); + endGroup("Physics"); addGroup("Behavior"); addField("explodeOnMaxBounce", TypeBool, Offset(explodeOnMaxBounce, DebrisData), @@ -566,6 +568,7 @@ Debris::~Debris() void Debris::initPersistFields() { + docsURL; addGroup( "Debris" ); addField( "lifetime", TypeF32, Offset(mLifetime, Debris), diff --git a/Engine/source/T3D/decal/decalData.cpp b/Engine/source/T3D/decal/decalData.cpp index d40d50853..0c8f84ca6 100644 --- a/Engine/source/T3D/decal/decalData.cpp +++ b/Engine/source/T3D/decal/decalData.cpp @@ -138,6 +138,7 @@ void DecalData::onRemove() void DecalData::initPersistFields() { + docsURL; addGroup( "Decal" ); addField( "size", TypeF32, Offset( size, DecalData ), diff --git a/Engine/source/T3D/examples/renderMeshExample.cpp b/Engine/source/T3D/examples/renderMeshExample.cpp index 343075358..cd8e1b593 100644 --- a/Engine/source/T3D/examples/renderMeshExample.cpp +++ b/Engine/source/T3D/examples/renderMeshExample.cpp @@ -74,6 +74,7 @@ RenderMeshExample::~RenderMeshExample() //----------------------------------------------------------------------------- void RenderMeshExample::initPersistFields() { + docsURL; addGroup( "Rendering" ); INITPERSISTFIELD_MATERIALASSET(Material, RenderMeshExample, "The material used to render the mesh."); endGroup( "Rendering" ); diff --git a/Engine/source/T3D/examples/renderObjectExample.cpp b/Engine/source/T3D/examples/renderObjectExample.cpp index e491eb447..16b29f819 100644 --- a/Engine/source/T3D/examples/renderObjectExample.cpp +++ b/Engine/source/T3D/examples/renderObjectExample.cpp @@ -68,6 +68,7 @@ RenderObjectExample::~RenderObjectExample() //----------------------------------------------------------------------------- void RenderObjectExample::initPersistFields() { + docsURL; // SceneObject already handles exposing the transform Parent::initPersistFields(); } @@ -277,4 +278,4 @@ void RenderObjectExample::render( ObjectRenderInst *ri, SceneRenderState *state, // Draw our triangles GFX->drawPrimitive( GFXTriangleList, 0, 12 ); -} \ No newline at end of file +} diff --git a/Engine/source/T3D/examples/renderShapeExample.cpp b/Engine/source/T3D/examples/renderShapeExample.cpp index a4a92d572..731db472e 100644 --- a/Engine/source/T3D/examples/renderShapeExample.cpp +++ b/Engine/source/T3D/examples/renderShapeExample.cpp @@ -72,12 +72,13 @@ RenderShapeExample::~RenderShapeExample() //----------------------------------------------------------------------------- void RenderShapeExample::initPersistFields() { - addGroup( "Rendering" ); + docsURL; + Parent::initPersistFields(); + addGroup( "Shapes" ); INITPERSISTFIELD_SHAPEASSET(Shape, RenderShapeExample, "The path to the shape file.") - endGroup( "Rendering" ); + endGroup( "Shapes" ); // SceneObject already handles exposing the transform - Parent::initPersistFields(); } void RenderShapeExample::inspectPostApply() diff --git a/Engine/source/T3D/fps/guiClockHud.cpp b/Engine/source/T3D/fps/guiClockHud.cpp index e823466e9..88be62f96 100644 --- a/Engine/source/T3D/fps/guiClockHud.cpp +++ b/Engine/source/T3D/fps/guiClockHud.cpp @@ -97,6 +97,7 @@ GuiClockHud::GuiClockHud() void GuiClockHud::initPersistFields() { + docsURL; addGroup("Misc"); addField( "showFill", TypeBool, Offset( mShowFill, GuiClockHud ), "If true, draws a background color behind the control."); addField( "showFrame", TypeBool, Offset( mShowFrame, GuiClockHud ), "If true, draws a frame around the control." ); diff --git a/Engine/source/T3D/fps/guiCrossHairHud.cpp b/Engine/source/T3D/fps/guiCrossHairHud.cpp index 723941b8c..17f1a6cdc 100644 --- a/Engine/source/T3D/fps/guiCrossHairHud.cpp +++ b/Engine/source/T3D/fps/guiCrossHairHud.cpp @@ -99,6 +99,7 @@ GuiCrossHairHud::GuiCrossHairHud() void GuiCrossHairHud::initPersistFields() { + docsURL; addGroup("Damage"); addField( "damageFillColor", TypeColorF, Offset( mDamageFillColor, GuiCrossHairHud ), "As the health bar depletes, this color will represent the health loss amount." ); addField( "damageFrameColor", TypeColorF, Offset( mDamageFrameColor, GuiCrossHairHud ), "Color for the health bar's frame." ); diff --git a/Engine/source/T3D/fps/guiHealthBarHud.cpp b/Engine/source/T3D/fps/guiHealthBarHud.cpp index 73994c82b..a01d17a69 100644 --- a/Engine/source/T3D/fps/guiHealthBarHud.cpp +++ b/Engine/source/T3D/fps/guiHealthBarHud.cpp @@ -112,6 +112,7 @@ GuiHealthBarHud::GuiHealthBarHud() void GuiHealthBarHud::initPersistFields() { + docsURL; addGroup("Colors"); addField( "fillColor", TypeColorF, Offset( mFillColor, GuiHealthBarHud ), "Standard color for the background of the control." ); addField( "frameColor", TypeColorF, Offset( mFrameColor, GuiHealthBarHud ), "Color for the control's frame." ); diff --git a/Engine/source/T3D/fps/guiHealthTextHud.cpp b/Engine/source/T3D/fps/guiHealthTextHud.cpp index 99a63d34b..989287484 100644 --- a/Engine/source/T3D/fps/guiHealthTextHud.cpp +++ b/Engine/source/T3D/fps/guiHealthTextHud.cpp @@ -115,7 +115,8 @@ GuiHealthTextHud::GuiHealthTextHud() } void GuiHealthTextHud::initPersistFields() -{ +{ + docsURL; addGroup("Colors"); addField("fillColor", TypeColorF, Offset(mFillColor, GuiHealthTextHud), "Color for the background of the control."); addField("frameColor", TypeColorF, Offset(mFrameColor, GuiHealthTextHud), "Color for the control's frame."); @@ -199,4 +200,4 @@ void GuiHealthTextHud::onRender(Point2I offset, const RectI &updateRect) // If enabled draw the border last if (mShowFrame) drawUtil->drawRect(updateRect, mFrameColor.toColorI()); -} \ No newline at end of file +} diff --git a/Engine/source/T3D/fps/guiShapeNameHud.cpp b/Engine/source/T3D/fps/guiShapeNameHud.cpp index 60a14a596..27eca76f6 100644 --- a/Engine/source/T3D/fps/guiShapeNameHud.cpp +++ b/Engine/source/T3D/fps/guiShapeNameHud.cpp @@ -126,6 +126,7 @@ GuiShapeNameHud::GuiShapeNameHud() void GuiShapeNameHud::initPersistFields() { + docsURL; addGroup("Colors"); addField( "fillColor", TypeColorF, Offset( mFillColor, GuiShapeNameHud ), "Standard color for the background of the control." ); addField( "frameColor", TypeColorF, Offset( mFrameColor, GuiShapeNameHud ), "Color for the control's frame." ); diff --git a/Engine/source/T3D/fx/explosion.cpp b/Engine/source/T3D/fx/explosion.cpp index b59e87447..61d27dae7 100644 --- a/Engine/source/T3D/fx/explosion.cpp +++ b/Engine/source/T3D/fx/explosion.cpp @@ -387,134 +387,148 @@ ExplosionData* ExplosionData::cloneAndPerformSubstitutions(const SimObject* owne void ExplosionData::initPersistFields() { - INITPERSISTFIELD_SHAPEASSET(ExplosionShape, ExplosionData, "@brief Optional shape asset to place at the center of the explosion.\n\n" - "The ambient animation of this model will be played automatically at the start of the explosion."); + docsURL; + addGroup("Shapes"); + INITPERSISTFIELD_SHAPEASSET(ExplosionShape, ExplosionData, "@brief Optional shape asset to place at the center of the explosion.\n\n" + "The ambient animation of this model will be played automatically at the start of the explosion."); + endGroup("Shapes"); - addField( "explosionScale", TypePoint3F, Offset(explosionScale, ExplosionData), + addGroup("Sounds"); + INITPERSISTFIELD_SOUNDASSET(Sound, ExplosionData, "Sound to play when this explosion explodes."); + endGroup("Sounds"); + + addGroup("Particle Effects"); + addField( "faceViewer", TypeBool, Offset(faceViewer, ExplosionData), + "Controls whether the visual effects of the explosion always face the camera." ); + + addField( "particleEmitter", TYPEID< ParticleEmitterData >(), Offset(particleEmitter, ExplosionData), + "@brief Emitter used to generate a cloud of particles at the start of the explosion.\n\n" + "Explosions can generate two different particle effects. The first is a " + "single burst of particles at the start of the explosion emitted in a " + "spherical cloud using particleEmitter.\n\n" + "The second effect spawns the list of ParticleEmitters given by the emitter[] " + "field. These emitters generate particles in the normal way throughout the " + "lifetime of the explosion." ); + addField( "particleDensity", TypeS32, Offset(particleDensity, ExplosionData), + "@brief Density of the particle cloud created at the start of the explosion.\n\n" + "@see particleEmitter" ); + addField( "particleRadius", TypeF32, Offset(particleRadius, ExplosionData), + "@brief Radial distance from the explosion center at which cloud particles " + "are emitted.\n\n" + "@see particleEmitter" ); + addField( "emitter", TYPEID< ParticleEmitterData >(), Offset(emitterList, ExplosionData), EC_NUM_EMITTERS, + "@brief List of additional ParticleEmitterData objects to spawn with this " + "explosion.\n\n" + "@see particleEmitter" ); + endGroup("Particle Effects"); + + addGroup("Debris"); + addField( "debris", TYPEID< DebrisData >(), Offset(debrisList, ExplosionData), EC_NUM_DEBRIS_TYPES, + "List of DebrisData objects to spawn with this explosion." ); + addField( "debrisThetaMin", TypeF32, Offset(debrisThetaMin, ExplosionData), + "Minimum angle, from the horizontal plane, to eject debris from." ); + addField( "debrisThetaMax", TypeF32, Offset(debrisThetaMax, ExplosionData), + "Maximum angle, from the horizontal plane, to eject debris from." ); + addField( "debrisPhiMin", TypeF32, Offset(debrisPhiMin, ExplosionData), + "Minimum reference angle, from the vertical plane, to eject debris from." ); + addField( "debrisPhiMax", TypeF32, Offset(debrisPhiMax, ExplosionData), + "Maximum reference angle, from the vertical plane, to eject debris from." ); + addField( "debrisNum", TypeS32, Offset(debrisNum, ExplosionData), + "Number of debris objects to create." ); + addField( "debrisNumVariance", TypeS32, Offset(debrisNumVariance, ExplosionData), + "Variance in the number of debris objects to create (must be from 0 - debrisNum)." ); + addField( "debrisVelocity", TypeF32, Offset(debrisVelocity, ExplosionData), + "Velocity to toss debris at." ); + addField( "debrisVelocityVariance", TypeF32, Offset(debrisVelocityVariance, ExplosionData), + "Variance in the debris initial velocity (must be >= 0)." ); + addField( "subExplosion", TYPEID< ExplosionData >(), Offset(explosionList, ExplosionData), EC_MAX_SUB_EXPLOSIONS, + "List of additional ExplosionData objects to create at the start of the explosion." ); + endGroup("Debris"); + + + addGroup("Animation"); + addField("explosionScale", TypePoint3F, Offset(explosionScale, ExplosionData), "\"X Y Z\" scale factor applied to the explosionShape model at the start " - "of the explosion." ); - addField( "playSpeed", TypeF32, Offset(playSpeed, ExplosionData), - "Time scale at which to play the explosionShape ambient sequence." ); + "of the explosion."); + addField("playSpeed", TypeF32, Offset(playSpeed, ExplosionData), + "Time scale at which to play the explosionShape ambient sequence."); - INITPERSISTFIELD_SOUNDASSET(Sound, ExplosionData, "Sound to play when this explosion explodes."); + addField( "delayMS", TypeS32, Offset(delayMS, ExplosionData), + "Amount of time, in milliseconds, to delay the start of the explosion effect " + "from the creation of the Explosion object." ); + addField( "delayVariance", TypeS32, Offset(delayVariance, ExplosionData), + "Variance, in milliseconds, of delayMS." ); + addField( "lifetimeMS", TypeS32, Offset(lifetimeMS, ExplosionData), + "@brief Lifetime, in milliseconds, of the Explosion object.\n\n" + "@note If explosionShape is defined and contains an ambient animation, " + "this field is ignored, and the playSpeed scaled duration of the animation " + "is used instead." ); + addField( "lifetimeVariance", TypeS32, Offset(lifetimeVariance, ExplosionData), + "Variance, in milliseconds, of the lifetimeMS of the Explosion object.\n" ); + addField( "offset", TypeF32, Offset(offset, ExplosionData), + "@brief Offset distance (in a random direction) of the center of the explosion " + "from the Explosion object position.\n\n" + "Most often used to create some variance in position for subExplosion effects." ); - addField( "faceViewer", TypeBool, Offset(faceViewer, ExplosionData), - "Controls whether the visual effects of the explosion always face the camera." ); + addField( "times", TypeF32, Offset(times, ExplosionData), EC_NUM_TIME_KEYS, + "@brief Time keyframes used to scale the explosionShape model.\n\n" + "Values should be in increasing order from 0.0 - 1.0, and correspond to " + "the life of the Explosion where 0 is the beginning and 1 is the end of " + "the explosion lifetime.\n" + "@see lifetimeMS" ); + addField( "sizes", TypePoint3F, Offset(sizes, ExplosionData), EC_NUM_TIME_KEYS, + "@brief \"X Y Z\" size keyframes used to scale the explosionShape model.\n\n" + "The explosionShape (if defined) will be scaled using the times/sizes " + "keyframes over the lifetime of the explosion.\n" + "@see lifetimeMS" ); + endGroup("Animation"); - addField( "particleEmitter", TYPEID< ParticleEmitterData >(), Offset(particleEmitter, ExplosionData), - "@brief Emitter used to generate a cloud of particles at the start of the explosion.\n\n" - "Explosions can generate two different particle effects. The first is a " - "single burst of particles at the start of the explosion emitted in a " - "spherical cloud using particleEmitter.\n\n" - "The second effect spawns the list of ParticleEmitters given by the emitter[] " - "field. These emitters generate particles in the normal way throughout the " - "lifetime of the explosion." ); - addField( "particleDensity", TypeS32, Offset(particleDensity, ExplosionData), - "@brief Density of the particle cloud created at the start of the explosion.\n\n" - "@see particleEmitter" ); - addField( "particleRadius", TypeF32, Offset(particleRadius, ExplosionData), - "@brief Radial distance from the explosion center at which cloud particles " - "are emitted.\n\n" - "@see particleEmitter" ); - addField( "emitter", TYPEID< ParticleEmitterData >(), Offset(emitterList, ExplosionData), EC_NUM_EMITTERS, - "@brief List of additional ParticleEmitterData objects to spawn with this " - "explosion.\n\n" - "@see particleEmitter" ); + addGroup("Camera Shake"); + addField( "shakeCamera", TypeBool, Offset(shakeCamera, ExplosionData), + "Controls whether the camera shakes during this explosion." ); + addField( "camShakeFreq", TypePoint3F, Offset(camShakeFreq, ExplosionData), + "Frequency of camera shaking, defined in the \"X Y Z\" axes." ); + addField( "camShakeAmp", TypePoint3F, Offset(camShakeAmp, ExplosionData), + "@brief Amplitude of camera shaking, defined in the \"X Y Z\" axes.\n\n" + "Set any value to 0 to disable shaking in that axis." ); + addField( "camShakeDuration", TypeF32, Offset(camShakeDuration, ExplosionData), + "Duration (in seconds) to shake the camera." ); + addField( "camShakeRadius", TypeF32, Offset(camShakeRadius, ExplosionData), + "Radial distance that a camera's position must be within relative to the " + "center of the explosion to be shaken." ); + addField( "camShakeFalloff", TypeF32, Offset(camShakeFalloff, ExplosionData), + "Falloff value for the camera shake." ); + endGroup("Camera Shake"); - addField( "debris", TYPEID< DebrisData >(), Offset(debrisList, ExplosionData), EC_NUM_DEBRIS_TYPES, - "List of DebrisData objects to spawn with this explosion." ); - addField( "debrisThetaMin", TypeF32, Offset(debrisThetaMin, ExplosionData), - "Minimum angle, from the horizontal plane, to eject debris from." ); - addField( "debrisThetaMax", TypeF32, Offset(debrisThetaMax, ExplosionData), - "Maximum angle, from the horizontal plane, to eject debris from." ); - addField( "debrisPhiMin", TypeF32, Offset(debrisPhiMin, ExplosionData), - "Minimum reference angle, from the vertical plane, to eject debris from." ); - addField( "debrisPhiMax", TypeF32, Offset(debrisPhiMax, ExplosionData), - "Maximum reference angle, from the vertical plane, to eject debris from." ); - addField( "debrisNum", TypeS32, Offset(debrisNum, ExplosionData), - "Number of debris objects to create." ); - addField( "debrisNumVariance", TypeS32, Offset(debrisNumVariance, ExplosionData), - "Variance in the number of debris objects to create (must be from 0 - debrisNum)." ); - addField( "debrisVelocity", TypeF32, Offset(debrisVelocity, ExplosionData), - "Velocity to toss debris at." ); - addField( "debrisVelocityVariance", TypeF32, Offset(debrisVelocityVariance, ExplosionData), - "Variance in the debris initial velocity (must be >= 0)." ); - - addField( "subExplosion", TYPEID< ExplosionData >(), Offset(explosionList, ExplosionData), EC_MAX_SUB_EXPLOSIONS, - "List of additional ExplosionData objects to create at the start of the " - "explosion." ); - - addField( "delayMS", TypeS32, Offset(delayMS, ExplosionData), - "Amount of time, in milliseconds, to delay the start of the explosion effect " - "from the creation of the Explosion object." ); - addField( "delayVariance", TypeS32, Offset(delayVariance, ExplosionData), - "Variance, in milliseconds, of delayMS." ); - addField( "lifetimeMS", TypeS32, Offset(lifetimeMS, ExplosionData), - "@brief Lifetime, in milliseconds, of the Explosion object.\n\n" - "@note If explosionShape is defined and contains an ambient animation, " - "this field is ignored, and the playSpeed scaled duration of the animation " - "is used instead." ); - addField( "lifetimeVariance", TypeS32, Offset(lifetimeVariance, ExplosionData), - "Variance, in milliseconds, of the lifetimeMS of the Explosion object.\n" ); - addField( "offset", TypeF32, Offset(offset, ExplosionData), - "@brief Offset distance (in a random direction) of the center of the explosion " - "from the Explosion object position.\n\n" - "Most often used to create some variance in position for subExplosion effects." ); - - addField( "times", TypeF32, Offset(times, ExplosionData), EC_NUM_TIME_KEYS, - "@brief Time keyframes used to scale the explosionShape model.\n\n" - "Values should be in increasing order from 0.0 - 1.0, and correspond to " - "the life of the Explosion where 0 is the beginning and 1 is the end of " - "the explosion lifetime.\n" - "@see lifetimeMS" ); - addField( "sizes", TypePoint3F, Offset(sizes, ExplosionData), EC_NUM_TIME_KEYS, - "@brief \"X Y Z\" size keyframes used to scale the explosionShape model.\n\n" - "The explosionShape (if defined) will be scaled using the times/sizes " - "keyframes over the lifetime of the explosion.\n" - "@see lifetimeMS" ); - - addField( "shakeCamera", TypeBool, Offset(shakeCamera, ExplosionData), - "Controls whether the camera shakes during this explosion." ); - addField( "camShakeFreq", TypePoint3F, Offset(camShakeFreq, ExplosionData), - "Frequency of camera shaking, defined in the \"X Y Z\" axes." ); - addField( "camShakeAmp", TypePoint3F, Offset(camShakeAmp, ExplosionData), - "@brief Amplitude of camera shaking, defined in the \"X Y Z\" axes.\n\n" - "Set any value to 0 to disable shaking in that axis." ); - addField( "camShakeDuration", TypeF32, Offset(camShakeDuration, ExplosionData), - "Duration (in seconds) to shake the camera." ); - addField( "camShakeRadius", TypeF32, Offset(camShakeRadius, ExplosionData), - "Radial distance that a camera's position must be within relative to the " - "center of the explosion to be shaken." ); - addField( "camShakeFalloff", TypeF32, Offset(camShakeFalloff, ExplosionData), - "Falloff value for the camera shake." ); - - addField( "lightStartRadius", TypeF32, Offset(lightStartRadius, ExplosionData), - "@brief Initial radius of the PointLight created by this explosion.\n\n" - "Radius is linearly interpolated from lightStartRadius to lightEndRadius " - "over the lifetime of the explosion.\n" - "@see lifetimeMS" ); - addField( "lightEndRadius", TypeF32, Offset(lightEndRadius, ExplosionData), - "@brief Final radius of the PointLight created by this explosion.\n\n" - "@see lightStartRadius" ); - addField( "lightStartColor", TypeColorF, Offset(lightStartColor, ExplosionData), - "@brief Initial color of the PointLight created by this explosion.\n\n" - "Color is linearly interpolated from lightStartColor to lightEndColor " - "over the lifetime of the explosion.\n" - "@see lifetimeMS" ); - addField( "lightEndColor", TypeColorF, Offset(lightEndColor, ExplosionData), - "@brief Final color of the PointLight created by this explosion.\n\n" - "@see lightStartColor" ); - addField( "lightStartBrightness", TypeF32, Offset(lightStartBrightness, ExplosionData), - "@brief Initial brightness of the PointLight created by this explosion.\n\n" - "Brightness is linearly interpolated from lightStartBrightness to " - "lightEndBrightness over the lifetime of the explosion.\n" - "@see lifetimeMS" ); - addField("lightEndBrightness", TypeF32, Offset(lightEndBrightness, ExplosionData), - "@brief Final brightness of the PointLight created by this explosion.\n\n" - "@see lightStartBrightness" ); - addField( "lightNormalOffset", TypeF32, Offset(lightNormalOffset, ExplosionData), - "Distance (in the explosion normal direction) of the PointLight position " - "from the explosion center." ); + addGroup("Light Emitter"); + addField( "lightStartRadius", TypeF32, Offset(lightStartRadius, ExplosionData), + "@brief Initial radius of the PointLight created by this explosion.\n\n" + "Radius is linearly interpolated from lightStartRadius to lightEndRadius " + "over the lifetime of the explosion.\n" + "@see lifetimeMS" ); + addField( "lightEndRadius", TypeF32, Offset(lightEndRadius, ExplosionData), + "@brief Final radius of the PointLight created by this explosion.\n\n" + "@see lightStartRadius" ); + addField( "lightStartColor", TypeColorF, Offset(lightStartColor, ExplosionData), + "@brief Initial color of the PointLight created by this explosion.\n\n" + "Color is linearly interpolated from lightStartColor to lightEndColor " + "over the lifetime of the explosion.\n" + "@see lifetimeMS" ); + addField( "lightEndColor", TypeColorF, Offset(lightEndColor, ExplosionData), + "@brief Final color of the PointLight created by this explosion.\n\n" + "@see lightStartColor" ); + addField( "lightStartBrightness", TypeF32, Offset(lightStartBrightness, ExplosionData), + "@brief Initial brightness of the PointLight created by this explosion.\n\n" + "Brightness is linearly interpolated from lightStartBrightness to " + "lightEndBrightness over the lifetime of the explosion.\n" + "@see lifetimeMS" ); + addField("lightEndBrightness", TypeF32, Offset(lightEndBrightness, ExplosionData), + "@brief Final brightness of the PointLight created by this explosion.\n\n" + "@see lightStartBrightness" ); + addField( "lightNormalOffset", TypeF32, Offset(lightNormalOffset, ExplosionData), + "Distance (in the explosion normal direction) of the PointLight position " + "from the explosion center." ); + endGroup("Light Emitter"); // disallow some field substitutions onlyKeepClearSubstitutions("debris"); // subs resolving to "~~", or "~0" are OK @@ -967,6 +981,7 @@ void Explosion::setInitialState(const Point3F& point, const Point3F& normal, con //-------------------------------------------------------------------------- void Explosion::initPersistFields() { + docsURL; Parent::initPersistFields(); addField("initialNormal", TypePoint3F, Offset(mInitialNormal, Explosion), "Initial starting Normal."); // diff --git a/Engine/source/T3D/fx/fxFoliageReplicator.cpp b/Engine/source/T3D/fx/fxFoliageReplicator.cpp index 5078389bf..ca22a597e 100644 --- a/Engine/source/T3D/fx/fxFoliageReplicator.cpp +++ b/Engine/source/T3D/fx/fxFoliageReplicator.cpp @@ -345,6 +345,7 @@ fxFoliageReplicator::~fxFoliageReplicator() void fxFoliageReplicator::initPersistFields() { + docsURL; // Add out own persistent fields. addGroup( "Debugging" ); // MM: Added Group Header. addField( "UseDebugInfo", TypeBool, Offset( mFieldData.mUseDebugInfo, fxFoliageReplicator ), "Culling bins are drawn when set to true." ); diff --git a/Engine/source/T3D/fx/fxShapeReplicator.cpp b/Engine/source/T3D/fx/fxShapeReplicator.cpp index 1df326e45..19b97b88a 100644 --- a/Engine/source/T3D/fx/fxShapeReplicator.cpp +++ b/Engine/source/T3D/fx/fxShapeReplicator.cpp @@ -139,6 +139,7 @@ fxShapeReplicator::~fxShapeReplicator() void fxShapeReplicator::initPersistFields() { + docsURL; // Add out own persistent fields. addGroup( "Debugging" ); // MM: Added Group Header. addField( "HideReplications", TypeBool, Offset( mFieldData.mHideReplications, fxShapeReplicator ), "Replicated shapes are hidden when set to true." ); diff --git a/Engine/source/T3D/fx/groundCover.cpp b/Engine/source/T3D/fx/groundCover.cpp index e6d354d76..cfe618993 100644 --- a/Engine/source/T3D/fx/groundCover.cpp +++ b/Engine/source/T3D/fx/groundCover.cpp @@ -540,6 +540,7 @@ IMPLEMENT_CO_NETOBJECT_V1(GroundCover); void GroundCover::initPersistFields() { + docsURL; addGroup( "GroundCover General" ); INITPERSISTFIELD_MATERIALASSET(Material, GroundCover, "Material used by all GroundCover segments."); diff --git a/Engine/source/T3D/fx/lightning.cpp b/Engine/source/T3D/fx/lightning.cpp index 9fb30f625..0ffef45bf 100644 --- a/Engine/source/T3D/fx/lightning.cpp +++ b/Engine/source/T3D/fx/lightning.cpp @@ -262,6 +262,7 @@ LightningData::~LightningData() //-------------------------------------------------------------------------- void LightningData::initPersistFields() { + docsURL; INITPERSISTFIELD_SOUNDASSET(StrikeSound, LightningData, "Sound to play when lightning STRIKES!"); @@ -411,6 +412,7 @@ Lightning::~Lightning() //-------------------------------------------------------------------------- void Lightning::initPersistFields() { + docsURL; addGroup( "Strikes" ); addField( "strikesPerMinute", TypeS32, Offset(strikesPerMinute, Lightning), "@brief Number of lightning strikes to perform per minute.\n\n" diff --git a/Engine/source/T3D/fx/particle.cpp b/Engine/source/T3D/fx/particle.cpp index f1ed926fd..0826e22be 100644 --- a/Engine/source/T3D/fx/particle.cpp +++ b/Engine/source/T3D/fx/particle.cpp @@ -147,6 +147,7 @@ FRangeValidator spinRandFValidator(-1000.f, 1000.f); //----------------------------------------------------------------------------- void ParticleData::initPersistFields() { + docsURL; addFieldV( "dragCoefficient", TYPEID< F32 >(), Offset(dragCoefficient, ParticleData), &dragCoefFValidator, "Particle physics drag amount." ); addField( "windCoefficient", TYPEID< F32 >(), Offset(windCoefficient, ParticleData), diff --git a/Engine/source/T3D/fx/particleEmitter.cpp b/Engine/source/T3D/fx/particleEmitter.cpp index 9a600a094..a512e893c 100644 --- a/Engine/source/T3D/fx/particleEmitter.cpp +++ b/Engine/source/T3D/fx/particleEmitter.cpp @@ -207,6 +207,7 @@ FRangeValidator phiFValidator(0.f, 360.f); //----------------------------------------------------------------------------- void ParticleEmitterData::initPersistFields() { + docsURL; addGroup( "ParticleEmitterData" ); addFieldV("ejectionPeriodMS", TYPEID< S32 >(), Offset(ejectionPeriodMS, ParticleEmitterData), &ejectPeriodIValidator, diff --git a/Engine/source/T3D/fx/particleEmitterNode.cpp b/Engine/source/T3D/fx/particleEmitterNode.cpp index e03e5a1a7..fbc717bbd 100644 --- a/Engine/source/T3D/fx/particleEmitterNode.cpp +++ b/Engine/source/T3D/fx/particleEmitterNode.cpp @@ -89,6 +89,7 @@ ParticleEmitterNodeData::~ParticleEmitterNodeData() //----------------------------------------------------------------------------- void ParticleEmitterNodeData::initPersistFields() { + docsURL; addField( "timeMultiple", TYPEID< F32 >(), Offset(timeMultiple, ParticleEmitterNodeData), "@brief Time multiplier for particle emitter nodes.\n\n" "Increasing timeMultiple is like running the emitter at a faster rate - single-shot " @@ -181,6 +182,7 @@ ParticleEmitterNode::~ParticleEmitterNode() //----------------------------------------------------------------------------- void ParticleEmitterNode::initPersistFields() { + docsURL; addField( "active", TYPEID< bool >(), Offset(mActive,ParticleEmitterNode), "Controls whether particles are emitted from this node." ); addField( "emitter", TYPEID< ParticleEmitterData >(), Offset(mEmitterDatablock, ParticleEmitterNode), diff --git a/Engine/source/T3D/fx/precipitation.cpp b/Engine/source/T3D/fx/precipitation.cpp index 471c31734..fda28f597 100644 --- a/Engine/source/T3D/fx/precipitation.cpp +++ b/Engine/source/T3D/fx/precipitation.cpp @@ -143,6 +143,7 @@ PrecipitationData::PrecipitationData() void PrecipitationData::initPersistFields() { + docsURL; INITPERSISTFIELD_SOUNDASSET(Sound, PrecipitationData, "Looping SFXProfile effect to play while Precipitation is active."); addProtectedField( "dropTexture", TypeFilename, Offset(mDropName, PrecipitationData), &_setDropData, &defaultProtectedGetFn, @@ -367,6 +368,7 @@ IRangeValidator ValidNumDropsRange(1, 100000); void Precipitation::initPersistFields() { + docsURL; addGroup("Precipitation"); addFieldV( "numDrops", TypeS32, Offset(mNumDrops, Precipitation), &ValidNumDropsRange, diff --git a/Engine/source/T3D/fx/ribbon.cpp b/Engine/source/T3D/fx/ribbon.cpp index 42fa1e63e..2580d57fe 100644 --- a/Engine/source/T3D/fx/ribbon.cpp +++ b/Engine/source/T3D/fx/ribbon.cpp @@ -68,6 +68,7 @@ RibbonData::RibbonData() void RibbonData::initPersistFields() { + docsURL; Parent::initPersistFields(); addGroup("Ribbon"); @@ -205,6 +206,7 @@ Ribbon::~Ribbon() //-------------------------------------------------------------------------- void Ribbon::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/fx/ribbonNode.cpp b/Engine/source/T3D/fx/ribbonNode.cpp index 7e73fbc59..adc846017 100644 --- a/Engine/source/T3D/fx/ribbonNode.cpp +++ b/Engine/source/T3D/fx/ribbonNode.cpp @@ -56,6 +56,7 @@ RibbonNodeData::~RibbonNodeData() //----------------------------------------------------------------------------- void RibbonNodeData::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -90,6 +91,7 @@ RibbonNode::~RibbonNode() //----------------------------------------------------------------------------- void RibbonNode::initPersistFields() { + docsURL; addField( "active", TYPEID< bool >(), Offset(mActive,RibbonNode), "Controls whether ribbon is emitted from this node." ); addField( "ribbon", TYPEID< RibbonData >(), Offset(mRibbonDatablock, RibbonNode), diff --git a/Engine/source/T3D/fx/splash.cpp b/Engine/source/T3D/fx/splash.cpp index 509dd8923..46f1a22db 100644 --- a/Engine/source/T3D/fx/splash.cpp +++ b/Engine/source/T3D/fx/splash.cpp @@ -114,8 +114,9 @@ SplashData::SplashData() //-------------------------------------------------------------------------- // Init fields //-------------------------------------------------------------------------- - void SplashData::initPersistFields() +void SplashData::initPersistFields() { + docsURL; INITPERSISTFIELD_SOUNDASSET(Sound, SplashData, "Sound to play when splash, splashes."); addField("scale", TypePoint3F, Offset(scale, SplashData), "The scale of this splashing effect, defined as the F32 points X, Y, Z.\n"); diff --git a/Engine/source/T3D/gameBase/gameBase.cpp b/Engine/source/T3D/gameBase/gameBase.cpp index 2f6fd36d2..8f9b04a99 100644 --- a/Engine/source/T3D/gameBase/gameBase.cpp +++ b/Engine/source/T3D/gameBase/gameBase.cpp @@ -156,6 +156,7 @@ bool GameBaseData::onAdd() void GameBaseData::initPersistFields() { + docsURL; addGroup("Scripting"); addField( "category", TypeCaseString, Offset(mCategory, GameBaseData ), @@ -721,6 +722,7 @@ DefineEngineMethod( GameBase, setDataBlock, bool, ( GameBaseData* data ),, void GameBase::initPersistFields() { + docsURL; addGroup( "Game" ); addProtectedField( "dataBlock", TYPEID< GameBaseData >(), Offset(mDataBlock, GameBase), diff --git a/Engine/source/T3D/groundPlane.cpp b/Engine/source/T3D/groundPlane.cpp index 3062ff813..40f8349f7 100644 --- a/Engine/source/T3D/groundPlane.cpp +++ b/Engine/source/T3D/groundPlane.cpp @@ -103,6 +103,7 @@ GroundPlane::~GroundPlane() void GroundPlane::initPersistFields() { + docsURL; addGroup( "Plane" ); addField( "squareSize", TypeF32, Offset( mSquareSize, GroundPlane ), "Square size in meters to which %GroundPlane subdivides its geometry." ); diff --git a/Engine/source/T3D/guiObjectView.cpp b/Engine/source/T3D/guiObjectView.cpp index 5158004ee..1fb8451f5 100644 --- a/Engine/source/T3D/guiObjectView.cpp +++ b/Engine/source/T3D/guiObjectView.cpp @@ -135,6 +135,7 @@ GuiObjectView::~GuiObjectView() void GuiObjectView::initPersistFields() { + docsURL; addGroup( "Model" ); addField( "shapeFile", TypeStringFilename, Offset( mModelName, GuiObjectView ), diff --git a/Engine/source/T3D/item.cpp b/Engine/source/T3D/item.cpp index 4b592ed78..605275b2d 100644 --- a/Engine/source/T3D/item.cpp +++ b/Engine/source/T3D/item.cpp @@ -88,7 +88,6 @@ ConsoleDocClass( ItemData, " density = 2;\n" " drag = 0.5;\n" " maxVelocity = \"10.0\";\n" - " emap = true;\n" " sticky = false;\n" " dynamicType = \"0\"\n;" " lightOnlyStatic = false;\n" @@ -109,9 +108,6 @@ ConsoleDocClass( ItemData, ItemData::ItemData() { - shadowEnable = true; - - friction = 0; elasticity = 0; @@ -141,40 +137,43 @@ EndImplementEnumType; void ItemData::initPersistFields() { - addField("friction", TypeF32, Offset(friction, ItemData), "A floating-point value specifying how much velocity is lost to impact and sliding friction."); - addField("elasticity", TypeF32, Offset(elasticity, ItemData), "A floating-point value specifying how 'bouncy' this ItemData is."); - addField("sticky", TypeBool, Offset(sticky, ItemData), - "@brief If true, ItemData will 'stick' to any surface it collides with.\n\n" - "When an item does stick to a surface, the Item::onStickyCollision() callback is called. The Item has methods to retrieve " - "the world position and normal the Item is stuck to.\n" - "@note Valid objects to stick to must be of StaticShapeObjectType.\n"); - addField("gravityMod", TypeF32, Offset(gravityMod, ItemData), "Floating point value to multiply the existing gravity with, just for this ItemData."); - addField("maxVelocity", TypeF32, Offset(maxVelocity, ItemData), "Maximum velocity that this ItemData is able to move."); - - addField("lightType", TYPEID< Item::LightType >(), Offset(lightType, ItemData), "Type of light to apply to this ItemData. Options are NoLight, ConstantLight, PulsingLight. Default is NoLight." ); - addField("lightColor", TypeColorF, Offset(lightColor, ItemData), - "@brief Color value to make this light. Example: \"1.0,1.0,1.0\"\n\n" - "@see lightType\n"); - addField("lightTime", TypeS32, Offset(lightTime, ItemData), - "@brief Time value for the light of this ItemData, used to control the pulse speed of the PulsingLight LightType.\n\n" - "@see lightType\n"); - addField("lightRadius", TypeF32, Offset(lightRadius, ItemData), - "@brief Distance from the center point of this ItemData for the light to affect\n\n" - "@see lightType\n"); - addField("lightOnlyStatic", TypeBool, Offset(lightOnlyStatic, ItemData), - "@brief If true, this ItemData will only cast a light if the Item for this ItemData has a static value of true.\n\n" - "@see lightType\n"); - - addField("simpleServerCollision", TypeBool, Offset(simpleServerCollision, ItemData), - "@brief Determines if only simple server-side collision will be used (for pick ups).\n\n" - "If set to true then only simple, server-side collision detection will be used. This is often the case " - "if the item is used for a pick up object, such as ammo. If set to false then a full collision volume " - "will be used as defined by the shape. The default is true.\n" - "@note Only applies when using a physics library.\n" - "@see TurretShape and ProximityMine for examples that should set this to false to allow them to be " - "shot by projectiles.\n"); - + docsURL; Parent::initPersistFields(); + addGroup("Physics"); + addField("friction", TypeF32, Offset(friction, ItemData), "A floating-point value specifying how much velocity is lost to impact and sliding friction."); + addField("elasticity", TypeF32, Offset(elasticity, ItemData), "A floating-point value specifying how 'bouncy' this ItemData is."); + addField("sticky", TypeBool, Offset(sticky, ItemData), + "@brief If true, ItemData will 'stick' to any surface it collides with.\n\n" + "When an item does stick to a surface, the Item::onStickyCollision() callback is called. The Item has methods to retrieve " + "the world position and normal the Item is stuck to.\n" + "@note Valid objects to stick to must be of StaticShapeObjectType.\n"); + addField("gravityMod", TypeF32, Offset(gravityMod, ItemData), "Floating point value to multiply the existing gravity with, just for this ItemData."); + addField("maxVelocity", TypeF32, Offset(maxVelocity, ItemData), "Maximum velocity that this ItemData is able to move."); + addField("simpleServerCollision", TypeBool, Offset(simpleServerCollision, ItemData), + "@brief Determines if only simple server-side collision will be used (for pick ups).\n\n" + "If set to true then only simple, server-side collision detection will be used. This is often the case " + "if the item is used for a pick up object, such as ammo. If set to false then a full collision volume " + "will be used as defined by the shape. The default is true.\n" + "@note Only applies when using a physics library.\n" + "@see TurretShape and ProximityMine for examples that should set this to false to allow them to be " + "shot by projectiles.\n"); + endGroup("Physics"); + + addGroup("Light Emitter"); + addField("lightType", TYPEID< Item::LightType >(), Offset(lightType, ItemData), "Type of light to apply to this ItemData. Options are NoLight, ConstantLight, PulsingLight. Default is NoLight." ); + addField("lightColor", TypeColorF, Offset(lightColor, ItemData), + "@brief Color value to make this light. Example: \"1.0,1.0,1.0\"\n\n" + "@see lightType\n"); + addField("lightTime", TypeS32, Offset(lightTime, ItemData), + "@brief Time value for the light of this ItemData, used to control the pulse speed of the PulsingLight LightType.\n\n" + "@see lightType\n"); + addField("lightRadius", TypeF32, Offset(lightRadius, ItemData), + "@brief Distance from the center point of this ItemData for the light to affect\n\n" + "@see lightType\n"); + addField("lightOnlyStatic", TypeBool, Offset(lightOnlyStatic, ItemData), + "@brief If true, this ItemData will only cast a light if the Item for this ItemData has a static value of true.\n\n" + "@see lightType\n"); + endGroup("Light Emitter"); } void ItemData::packData(BitStream* stream) @@ -262,7 +261,6 @@ ConsoleDocClass( Item, " mass = 2;\n" " friction = 1;\n" " elasticity = 0.3;\n" - " emap = true;\n\n" " // Dynamic properties used by the scripts\n" " pickupName = \"a health patch\";\n" " repairAmount = 50;\n" @@ -1304,6 +1302,7 @@ bool Item::_setRotate(void *object, const char *index, const char *data) void Item::initPersistFields() { + docsURL; addGroup("Misc"); addProtectedField("static", TypeBool, Offset(mStatic, Item), &_setStatic, &defaultProtectedGetFn, "If true, the object is not moving in the world.\n"); addProtectedField("rotate", TypeBool, Offset(mRotate, Item), &_setRotate, &defaultProtectedGetFn, "If true, the object will automatically rotate around its Z axis.\n"); diff --git a/Engine/source/T3D/levelInfo.cpp b/Engine/source/T3D/levelInfo.cpp index d2f1c53f7..74280ffaf 100644 --- a/Engine/source/T3D/levelInfo.cpp +++ b/Engine/source/T3D/levelInfo.cpp @@ -127,6 +127,7 @@ FRangeValidator ValiDampnessRange(0.0f, 1.0f); void LevelInfo::initPersistFields() { + docsURL; addGroup( "Visibility" ); addField( "nearClip", TypeF32, Offset( mNearClip, LevelInfo ), "Closest distance from the camera's position to render the world." ); diff --git a/Engine/source/T3D/lightAnimData.cpp b/Engine/source/T3D/lightAnimData.cpp index 77e948935..8a5cc7793 100644 --- a/Engine/source/T3D/lightAnimData.cpp +++ b/Engine/source/T3D/lightAnimData.cpp @@ -62,6 +62,7 @@ ConsoleDocClass( LightAnimData, void LightAnimData::initPersistFields() { + docsURL; addGroup( "Offset", "The XYZ translation animation state relative to the light position." ); diff --git a/Engine/source/T3D/lightBase.cpp b/Engine/source/T3D/lightBase.cpp index 9ec867c07..957149e93 100644 --- a/Engine/source/T3D/lightBase.cpp +++ b/Engine/source/T3D/lightBase.cpp @@ -88,6 +88,7 @@ LightBase::~LightBase() void LightBase::initPersistFields() { + docsURL; // We only add the basic lighting options that all lighting // systems would use... the specific lighting system options // are injected at runtime by the lighting system itself. diff --git a/Engine/source/T3D/lightDescription.cpp b/Engine/source/T3D/lightDescription.cpp index cf326a9fe..52c29b641 100644 --- a/Engine/source/T3D/lightDescription.cpp +++ b/Engine/source/T3D/lightDescription.cpp @@ -90,6 +90,7 @@ ConsoleDocClass( LightDescription, void LightDescription::initPersistFields() { + docsURL; addGroup( "Light" ); addField( "color", TypeColorF, Offset( color, LightDescription ), "Changes the base color hue of the light." ); diff --git a/Engine/source/T3D/lightFlareData.cpp b/Engine/source/T3D/lightFlareData.cpp index fb8fbaa55..4aaa4747e 100644 --- a/Engine/source/T3D/lightFlareData.cpp +++ b/Engine/source/T3D/lightFlareData.cpp @@ -142,6 +142,7 @@ LightFlareData::~LightFlareData() void LightFlareData::initPersistFields() { + docsURL; addGroup( "LightFlareData" ); addField( "overallScale", TypeF32, Offset( mScale, LightFlareData ), diff --git a/Engine/source/T3D/lighting/boxEnvironmentProbe.cpp b/Engine/source/T3D/lighting/boxEnvironmentProbe.cpp index e532acd3c..4104ec87d 100644 --- a/Engine/source/T3D/lighting/boxEnvironmentProbe.cpp +++ b/Engine/source/T3D/lighting/boxEnvironmentProbe.cpp @@ -90,6 +90,7 @@ BoxEnvironmentProbe::~BoxEnvironmentProbe() //----------------------------------------------------------------------------- void BoxEnvironmentProbe::initPersistFields() { + docsURL; // SceneObject already handles exposing the transform Parent::initPersistFields(); diff --git a/Engine/source/T3D/lighting/reflectionProbe.cpp b/Engine/source/T3D/lighting/reflectionProbe.cpp index 73dddc6e9..c7a9cfed8 100644 --- a/Engine/source/T3D/lighting/reflectionProbe.cpp +++ b/Engine/source/T3D/lighting/reflectionProbe.cpp @@ -151,6 +151,7 @@ ReflectionProbe::~ReflectionProbe() //----------------------------------------------------------------------------- void ReflectionProbe::initPersistFields() { + docsURL; addField("canDamp", TypeBool, Offset(mCanDamp, ReflectionProbe),"wetness allowed"); addGroup("Rendering"); addProtectedField("enabled", TypeBool, Offset(mEnabled, ReflectionProbe), diff --git a/Engine/source/T3D/lighting/skylight.cpp b/Engine/source/T3D/lighting/skylight.cpp index 880c22681..3c9d6da5e 100644 --- a/Engine/source/T3D/lighting/skylight.cpp +++ b/Engine/source/T3D/lighting/skylight.cpp @@ -90,6 +90,7 @@ Skylight::~Skylight() //----------------------------------------------------------------------------- void Skylight::initPersistFields() { + docsURL; // SceneObject already handles exposing the transform Parent::initPersistFields(); diff --git a/Engine/source/T3D/lighting/sphereEnvironmentProbe.cpp b/Engine/source/T3D/lighting/sphereEnvironmentProbe.cpp index b3e0865a7..2979cc326 100644 --- a/Engine/source/T3D/lighting/sphereEnvironmentProbe.cpp +++ b/Engine/source/T3D/lighting/sphereEnvironmentProbe.cpp @@ -89,6 +89,7 @@ SphereEnvironmentProbe::~SphereEnvironmentProbe() //----------------------------------------------------------------------------- void SphereEnvironmentProbe::initPersistFields() { + docsURL; // SceneObject already handles exposing the transform Parent::initPersistFields(); diff --git a/Engine/source/T3D/missionArea.cpp b/Engine/source/T3D/missionArea.cpp index 4e66dde8a..a5f9670a6 100644 --- a/Engine/source/T3D/missionArea.cpp +++ b/Engine/source/T3D/missionArea.cpp @@ -130,6 +130,7 @@ void MissionArea::inspectPostApply() void MissionArea::initPersistFields() { + docsURL; addGroup("Dimensions"); addField("area", TypeRectI, Offset(mArea, MissionArea), "Four corners (X1, X2, Y1, Y2) that makes up the level's boundaries"); addField("flightCeiling", TypeF32, Offset(mFlightCeiling, MissionArea), "Represents the top of the mission area, used by FlyingVehicle. "); @@ -215,4 +216,4 @@ DefineEngineMethod( MissionArea, postApply, void, (),, ) { object->inspectPostApply(); -} \ No newline at end of file +} diff --git a/Engine/source/T3D/missionMarker.cpp b/Engine/source/T3D/missionMarker.cpp index 1bd19ae68..bf9e8561d 100644 --- a/Engine/source/T3D/missionMarker.cpp +++ b/Engine/source/T3D/missionMarker.cpp @@ -179,7 +179,9 @@ void MissionMarker::unpackUpdate(NetConnection * con, BitStream * stream) } } -void MissionMarker::initPersistFields() { +void MissionMarker::initPersistFields() +{ + docsURL; Parent::initPersistFields(); } @@ -281,6 +283,7 @@ void WayPoint::unpackUpdate(NetConnection * con, BitStream * stream) void WayPoint::initPersistFields() { + docsURL; addGroup("Misc"); addField("markerName", TypeCaseString, Offset(mName, WayPoint), "Unique name representing this waypoint"); endGroup("Misc"); @@ -468,6 +471,7 @@ void SpawnSphere::advanceTime( F32 timeDelta ) void SpawnSphere::initPersistFields() { + docsURL; addGroup( "Spawn" ); addField( "spawnClass", TypeRealString, Offset(mSpawnClass, SpawnSphere), "Object class to create (eg. Player, AIPlayer, Debris etc)" ); @@ -611,6 +615,7 @@ void CameraBookmark::unpackUpdate(NetConnection * con, BitStream * stream) void CameraBookmark::initPersistFields() { + docsURL; //addGroup("Misc"); //addField("name", TypeCaseString, Offset(mName, CameraBookmark)); //endGroup("Misc"); diff --git a/Engine/source/T3D/notesObject.cpp b/Engine/source/T3D/notesObject.cpp index 1b6ccd436..b5fd83087 100644 --- a/Engine/source/T3D/notesObject.cpp +++ b/Engine/source/T3D/notesObject.cpp @@ -40,6 +40,7 @@ NotesObject::~NotesObject() //----------------------------------------------------------------------------- void NotesObject::initPersistFields() { + docsURL; Parent::initPersistFields(); addField("Note", TypeCommand, Offset(mNote, NotesObject), ""); diff --git a/Engine/source/T3D/pathCamera.cpp b/Engine/source/T3D/pathCamera.cpp index 6b7aeddae..3a4ccd578 100644 --- a/Engine/source/T3D/pathCamera.cpp +++ b/Engine/source/T3D/pathCamera.cpp @@ -61,6 +61,7 @@ void PathCameraData::consoleInit() void PathCameraData::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -201,6 +202,7 @@ void PathCamera::onEditorDisable() void PathCamera::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -637,4 +639,4 @@ DefineEngineMethod(PathCamera, popFront, void, (),, "Removes the knot at the fro "@endtsexample\n") { object->popFront(); -} \ No newline at end of file +} diff --git a/Engine/source/T3D/pathShape.cpp b/Engine/source/T3D/pathShape.cpp index bd2292004..846e7bf18 100644 --- a/Engine/source/T3D/pathShape.cpp +++ b/Engine/source/T3D/pathShape.cpp @@ -44,6 +44,7 @@ bool PathShapeData::preload(bool server, String &errorStr) void PathShapeData::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -146,6 +147,7 @@ PathShapeData::PathShapeData() void PathShape::initPersistFields() { + docsURL; addField( "Path", TYPEID< SimObjectRef >(), Offset( mSimPath, PathShape ), "@brief Name of a Path to follow." ); @@ -587,4 +589,4 @@ DefineEngineMethod(PathShape, popFront, void, (), , "Removes the knot at the fro DefineEngineMethod(PathShape, getState, S32, (), , "PathShape.getState()") { return object->getState(); -} \ No newline at end of file +} diff --git a/Engine/source/T3D/physicalZone.cpp b/Engine/source/T3D/physicalZone.cpp index 9603a4f34..138222302 100644 --- a/Engine/source/T3D/physicalZone.cpp +++ b/Engine/source/T3D/physicalZone.cpp @@ -148,6 +148,7 @@ void PhysicalZone::consoleInit() void PhysicalZone::initPersistFields() { + docsURL; addGroup("Misc"); addField("velocityMod", TypeF32, Offset(mVelocityMod, PhysicalZone), "Multiply velocity of objects entering zone by this value every tick."); addField("gravityMod", TypeF32, Offset(mGravityMod, PhysicalZone), "Gravity in PhysicalZone. Multiplies against standard gravity."); diff --git a/Engine/source/T3D/physics/physicsDebris.cpp b/Engine/source/T3D/physics/physicsDebris.cpp index 077fcf7d8..79b8183e0 100644 --- a/Engine/source/T3D/physics/physicsDebris.cpp +++ b/Engine/source/T3D/physics/physicsDebris.cpp @@ -110,21 +110,23 @@ bool PhysicsDebrisData::preload( bool server, String &errorStr ) void PhysicsDebrisData::initPersistFields() { - addGroup( "Display" ); + docsURL; + addGroup( "Shapes" ); addProtectedField( "shapeFile", TypeShapeFilename, Offset( mShapeName, PhysicsDebrisData ), &_setShapeData, &defaultProtectedGetFn, "@brief Path to the .DAE or .DTS file to use for this shape.\n\n" "Compatable with Live-Asset Reloading.", AbstractClassRep::FIELD_HideInInspectors); - + INITPERSISTFIELD_SHAPEASSET(Shape, PhysicsDebrisData, "@brief Shape to use with this debris.\n\n" "Compatable with Live-Asset Reloading."); + endGroup( "Shapes" ); + addGroup("Rendering"); addField( "castShadows", TypeBool, Offset( castShadows, PhysicsDebrisData ), "@brief Determines if the shape's shadow should be cast onto the environment.\n\n" ); + endGroup("Rendering"); - endGroup( "Display" ); - - addGroup( "Physical Properties" ); + addGroup( "Physics" ); addField("lifetime", TypeF32, Offset( lifetime, PhysicsDebrisData ), "@brief Base time, in seconds, that debris persists after time of creation.\n\n" @@ -192,8 +194,7 @@ void PhysicsDebrisData::initPersistFields() "The result of the calculated buoyancy is relative to the density of the WaterObject the PhysicsDebris is within." "@see WaterObject::density"); - endGroup( "Physical Properties" ); - + endGroup( "Physics" ); Parent::initPersistFields(); } @@ -332,6 +333,7 @@ PhysicsDebris::~PhysicsDebris() void PhysicsDebris::initPersistFields() { + docsURL; Con::addVariable( "$pref::PhysicsDebris::lifetimeScale", TypeF32, &smLifetimeScale, "@brief Scales how long %PhysicsDebris will live before being removed.\n" "@note A value of 0 will disable PhysicsDebris entirely."); @@ -723,4 +725,4 @@ void PhysicsDebris::_onPhysicsReset( PhysicsResetEvent reset ) // Editing stuff, clean up the trash! safeDeleteObject(); } -} \ No newline at end of file +} diff --git a/Engine/source/T3D/physics/physicsForce.cpp b/Engine/source/T3D/physics/physicsForce.cpp index a64cf71f7..457751a9a 100644 --- a/Engine/source/T3D/physics/physicsForce.cpp +++ b/Engine/source/T3D/physics/physicsForce.cpp @@ -54,7 +54,8 @@ PhysicsForce::~PhysicsForce() } void PhysicsForce::initPersistFields() -{ +{ + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/physics/physicsShape.cpp b/Engine/source/T3D/physics/physicsShape.cpp index 6e6b4e937..4666b2450 100644 --- a/Engine/source/T3D/physics/physicsShape.cpp +++ b/Engine/source/T3D/physics/physicsShape.cpp @@ -87,9 +87,8 @@ PhysicsShapeData::~PhysicsShapeData() void PhysicsShapeData::initPersistFields() { - Parent::initPersistFields(); - - addGroup("Media"); + docsURL; + addGroup("Shapes"); INITPERSISTFIELD_SHAPEASSET(Shape, PhysicsShapeData, "@brief Shape asset to be used with this physics object.\n\n" "Compatable with Live-Asset Reloading. ") @@ -103,7 +102,7 @@ void PhysicsShapeData::initPersistFields() addField( "destroyedShape", TYPEID< SimObjectRef >(), Offset( destroyedShape, PhysicsShapeData ), "@brief Name of a PhysicsShapeData to spawn when this shape is destroyed (optional)." ); - endGroup("Media"); + endGroup("Shapes"); addGroup( "Physics" ); @@ -173,7 +172,8 @@ void PhysicsShapeData::initPersistFields() addField( "simType", TYPEID< PhysicsShapeData::SimType >(), Offset( simType, PhysicsShapeData ), "@brief Controls whether this shape is simulated on the server, client, or both physics simulations.\n\n" ); - endGroup( "Networking" ); + endGroup( "Networking" ); + Parent::initPersistFields(); } void PhysicsShapeData::packData( BitStream *stream ) @@ -431,7 +431,8 @@ void PhysicsShape::consoleInit() } void PhysicsShape::initPersistFields() -{ +{ + docsURL; addGroup( "PhysicsShape" ); addField( "playAmbient", TypeBool, Offset( mPlayAmbient, PhysicsShape ), diff --git a/Engine/source/T3D/player.cpp b/Engine/source/T3D/player.cpp index 32b0b0d22..7d5c4be99 100644 --- a/Engine/source/T3D/player.cpp +++ b/Engine/source/T3D/player.cpp @@ -282,7 +282,6 @@ IMPLEMENT_CALLBACK( PlayerData, onLeaveMissionArea, void, ( Player* obj ), ( obj PlayerData::PlayerData() { - shadowEnable = true; shadowSize = 256; shadowProjectionDistance = 14.0f; @@ -705,6 +704,9 @@ bool PlayerData::isJumpAction(U32 action) void PlayerData::initPersistFields() { + docsURL; + Parent::initPersistFields(); + addField( "pickupRadius", TypeF32, Offset(pickupRadius, PlayerData), "@brief Radius around the player to collide with Items in the scene (on server).\n\n" "Internally the pickupRadius is added to the larger side of the initial bounding box " @@ -1163,8 +1165,6 @@ void PlayerData::initPersistFields() "need to.\n"); endGroup( "Third Person" ); - - Parent::initPersistFields(); } void PlayerData::packData(BitStream* stream) diff --git a/Engine/source/T3D/pointLight.cpp b/Engine/source/T3D/pointLight.cpp index edf057a63..98fc16404 100644 --- a/Engine/source/T3D/pointLight.cpp +++ b/Engine/source/T3D/pointLight.cpp @@ -99,6 +99,7 @@ PointLight::~PointLight() void PointLight::initPersistFields() { + docsURL; addGroup( "Light" ); addField( "radius", TypeF32, Offset( mRadius, PointLight ), "Controls the falloff of the light emission" ); diff --git a/Engine/source/T3D/portal.cpp b/Engine/source/T3D/portal.cpp index 0f1a3cb3e..ed69329ce 100644 --- a/Engine/source/T3D/portal.cpp +++ b/Engine/source/T3D/portal.cpp @@ -147,6 +147,7 @@ Portal::Portal() void Portal::initPersistFields() { + docsURL; addGroup( "Zoning" ); addProtectedField( "frontSidePassable", TypeBool, Offset( mPassableSides[ FrontSide ], Portal ), diff --git a/Engine/source/T3D/prefab.cpp b/Engine/source/T3D/prefab.cpp index a211a41e5..d43abb54a 100644 --- a/Engine/source/T3D/prefab.cpp +++ b/Engine/source/T3D/prefab.cpp @@ -81,6 +81,7 @@ Prefab::~Prefab() void Prefab::initPersistFields() { + docsURL; addGroup( "Prefab" ); addProtectedField( "filename", TypePrefabFilename, Offset( mFilename, Prefab ), diff --git a/Engine/source/T3D/projectile.cpp b/Engine/source/T3D/projectile.cpp index e43372720..d99188ac3 100644 --- a/Engine/source/T3D/projectile.cpp +++ b/Engine/source/T3D/projectile.cpp @@ -232,88 +232,91 @@ ProjectileData::ProjectileData(const ProjectileData& other, bool temp_clone) : G void ProjectileData::initPersistFields() { - addField("particleEmitter", TYPEID< ParticleEmitterData >(), Offset(particleEmitter, ProjectileData), - "@brief Particle emitter datablock used to generate particles while the projectile is outside of water.\n\n" - "@note If datablocks are defined for both particleEmitter and particleWaterEmitter, both effects will play " - "as the projectile enters or leaves water.\n\n" - "@see particleWaterEmitter\n"); - addField("particleWaterEmitter", TYPEID< ParticleEmitterData >(), Offset(particleWaterEmitter, ProjectileData), - "@brief Particle emitter datablock used to generate particles while the projectile is submerged in water.\n\n" - "@note If datablocks are defined for both particleWaterEmitter and particleEmitter , both effects will play " - "as the projectile enters or leaves water.\n\n" - "@see particleEmitter\n"); + docsURL; + addGroup("Shapes"); + addProtectedField("projectileShapeName", TypeShapeFilename, Offset(mProjectileShapeName, ProjectileData), &_setProjectileShapeData, &defaultProtectedGetFn, + "@brief File path to the model of the projectile.\n\n", AbstractClassRep::FIELD_HideInInspectors); + INITPERSISTFIELD_SHAPEASSET(ProjectileShape, ProjectileData, "@brief The model of the projectile.\n\n"); + addField("scale", TypePoint3F, Offset(scale, ProjectileData), + "@brief Scale to apply to the projectile's size.\n\n" + "@note This is applied after SceneObject::scale\n"); + endGroup("Shapes"); - addProtectedField("projectileShapeName", TypeShapeFilename, Offset(mProjectileShapeName, ProjectileData), &_setProjectileShapeData, &defaultProtectedGetFn, - "@brief File path to the model of the projectile.\n\n", AbstractClassRep::FIELD_HideInInspectors); - - INITPERSISTFIELD_SHAPEASSET(ProjectileShape, ProjectileData, "@brief The model of the projectile.\n\n"); + addGroup("Particle Effects"); + addField("particleEmitter", TYPEID< ParticleEmitterData >(), Offset(particleEmitter, ProjectileData), + "@brief Particle emitter datablock used to generate particles while the projectile is outside of water.\n\n" + "@note If datablocks are defined for both particleEmitter and particleWaterEmitter, both effects will play " + "as the projectile enters or leaves water.\n\n" + "@see particleWaterEmitter\n"); + addField("particleWaterEmitter", TYPEID< ParticleEmitterData >(), Offset(particleWaterEmitter, ProjectileData), + "@brief Particle emitter datablock used to generate particles while the projectile is submerged in water.\n\n" + "@note If datablocks are defined for both particleWaterEmitter and particleEmitter , both effects will play " + "as the projectile enters or leaves water.\n\n" + "@see particleEmitter\n"); + addField("explosion", TYPEID< ExplosionData >(), Offset(explosion, ProjectileData), + "@brief Explosion datablock used when the projectile explodes outside of water.\n\n"); + addField("waterExplosion", TYPEID< ExplosionData >(), Offset(waterExplosion, ProjectileData), + "@brief Explosion datablock used when the projectile explodes underwater.\n\n"); + addField("splash", TYPEID< SplashData >(), Offset(splash, ProjectileData), + "@brief Splash datablock used to create splash effects as the projectile enters or leaves water\n\n"); + addField("decal", TYPEID< DecalData >(), Offset(decal, ProjectileData), + "@brief Decal datablock used for decals placed at projectile explosion points.\n\n"); + endGroup("Particle Effects"); - addField("scale", TypePoint3F, Offset(scale, ProjectileData), - "@brief Scale to apply to the projectile's size.\n\n" - "@note This is applied after SceneObject::scale\n"); + addGroup("Sounds"); + INITPERSISTFIELD_SOUNDASSET(ProjectileSound, ProjectileData, "The sound for the projectile."); + endGroup("Sounds"); - INITPERSISTFIELD_SOUNDASSET(ProjectileSound, ProjectileData, "The sound for the projectile."); + addGroup("Light Emitter"); + addField("lightDesc", TYPEID< LightDescription >(), Offset(lightDesc, ProjectileData), + "@brief LightDescription datablock used for lights attached to the projectile.\n\n"); + endGroup("Light Emitter"); - addField("explosion", TYPEID< ExplosionData >(), Offset(explosion, ProjectileData), - "@brief Explosion datablock used when the projectile explodes outside of water.\n\n"); - addField("waterExplosion", TYPEID< ExplosionData >(), Offset(waterExplosion, ProjectileData), - "@brief Explosion datablock used when the projectile explodes underwater.\n\n"); + addGroup("Physics"); + addProtectedField("lifetime", TypeS32, Offset(lifetime, ProjectileData), &setLifetime, &getScaledValue, + "@brief Amount of time, in milliseconds, before the projectile is removed from the simulation.\n\n" + "Used with fadeDelay to determine the transparency of the projectile at a given time. " + "A projectile may exist up to a maximum of 131040ms (or 4095 ticks) as defined by Projectile::MaxLivingTicks in the source code." + "@see fadeDelay"); + addProtectedField("armingDelay", TypeS32, Offset(armingDelay, ProjectileData), &setArmingDelay, &getScaledValue, + "@brief Amount of time, in milliseconds, before the projectile will cause damage or explode on impact.\n\n" + "This value must be equal to or less than the projectile's lifetime.\n\n" + "@see lifetime"); + addProtectedField("fadeDelay", TypeS32, Offset(fadeDelay, ProjectileData), &setFadeDelay, &getScaledValue, + "@brief Amount of time, in milliseconds, before the projectile begins to fade out.\n\n" + "This value must be smaller than the projectile's lifetime to have an affect."); + addField("isBallistic", TypeBool, Offset(isBallistic, ProjectileData), + "@brief Detetmines if the projectile should be affected by gravity and whether or not " + "it bounces before exploding.\n\n"); + addField("velInheritFactor", TypeF32, Offset(velInheritFactor, ProjectileData), + "@brief Amount of velocity the projectile recieves from the source that created it.\n\n" + "Use an amount between 0 and 1 for the best effect. " + "This value is never modified by the engine.\n" + "@note This value by default is not transmitted between the server and the client."); + addField("muzzleVelocity", TypeF32, Offset(muzzleVelocity, ProjectileData), + "@brief Amount of velocity the projectile recieves from the \"muzzle\" of the gun.\n\n" + "Used with velInheritFactor to determine the initial velocity of the projectile. " + "This value is never modified by the engine.\n\n" + "@note This value by default is not transmitted between the server and the client.\n\n" + "@see velInheritFactor"); + addField("impactForce", TypeF32, Offset(impactForce, ProjectileData)); + addField("bounceElasticity", TypeF32, Offset(bounceElasticity, ProjectileData), + "@brief Influences post-bounce velocity of a projectile that does not explode on contact.\n\n" + "Scales the velocity from a bounce after friction is taken into account. " + "A value of 1.0 will leave it's velocity unchanged while values greater than 1.0 will increase it.\n"); + addField("bounceFriction", TypeF32, Offset(bounceFriction, ProjectileData), + "@brief Factor to reduce post-bounce velocity of a projectile that does not explode on contact.\n\n" + "Reduces bounce velocity by this factor and a multiple of the tangent to impact. " + "Used to simulate surface friction.\n"); + addField("gravityMod", TypeF32, Offset(gravityMod, ProjectileData), + "@brief Scales the influence of gravity on the projectile.\n\n" + "The larger this value is, the more that gravity will affect the projectile. " + "A value of 1.0 will assume \"normal\" influence upon it.\n" + "The magnitude of gravity is assumed to be 9.81 m/s/s\n\n" + "@note ProjectileData::isBallistic must be true for this to have any affect."); + endGroup("Physics"); - addField("splash", TYPEID< SplashData >(), Offset(splash, ProjectileData), - "@brief Splash datablock used to create splash effects as the projectile enters or leaves water\n\n"); - - addField("decal", TYPEID< DecalData >(), Offset(decal, ProjectileData), - "@brief Decal datablock used for decals placed at projectile explosion points.\n\n"); - - addField("lightDesc", TYPEID< LightDescription >(), Offset(lightDesc, ProjectileData), - "@brief LightDescription datablock used for lights attached to the projectile.\n\n"); - - addField("isBallistic", TypeBool, Offset(isBallistic, ProjectileData), - "@brief Detetmines if the projectile should be affected by gravity and whether or not " - "it bounces before exploding.\n\n"); - - addField("velInheritFactor", TypeF32, Offset(velInheritFactor, ProjectileData), - "@brief Amount of velocity the projectile recieves from the source that created it.\n\n" - "Use an amount between 0 and 1 for the best effect. " - "This value is never modified by the engine.\n" - "@note This value by default is not transmitted between the server and the client."); - addField("muzzleVelocity", TypeF32, Offset(muzzleVelocity, ProjectileData), - "@brief Amount of velocity the projectile recieves from the \"muzzle\" of the gun.\n\n" - "Used with velInheritFactor to determine the initial velocity of the projectile. " - "This value is never modified by the engine.\n\n" - "@note This value by default is not transmitted between the server and the client.\n\n" - "@see velInheritFactor"); - - addField("impactForce", TypeF32, Offset(impactForce, ProjectileData)); - - addProtectedField("lifetime", TypeS32, Offset(lifetime, ProjectileData), &setLifetime, &getScaledValue, - "@brief Amount of time, in milliseconds, before the projectile is removed from the simulation.\n\n" - "Used with fadeDelay to determine the transparency of the projectile at a given time. " - "A projectile may exist up to a maximum of 131040ms (or 4095 ticks) as defined by Projectile::MaxLivingTicks in the source code." - "@see fadeDelay"); - - addProtectedField("armingDelay", TypeS32, Offset(armingDelay, ProjectileData), &setArmingDelay, &getScaledValue, - "@brief Amount of time, in milliseconds, before the projectile will cause damage or explode on impact.\n\n" - "This value must be equal to or less than the projectile's lifetime.\n\n" - "@see lifetime"); - addProtectedField("fadeDelay", TypeS32, Offset(fadeDelay, ProjectileData), &setFadeDelay, &getScaledValue, - "@brief Amount of time, in milliseconds, before the projectile begins to fade out.\n\n" - "This value must be smaller than the projectile's lifetime to have an affect."); - - addField("bounceElasticity", TypeF32, Offset(bounceElasticity, ProjectileData), - "@brief Influences post-bounce velocity of a projectile that does not explode on contact.\n\n" - "Scales the velocity from a bounce after friction is taken into account. " - "A value of 1.0 will leave it's velocity unchanged while values greater than 1.0 will increase it.\n"); - addField("bounceFriction", TypeF32, Offset(bounceFriction, ProjectileData), - "@brief Factor to reduce post-bounce velocity of a projectile that does not explode on contact.\n\n" - "Reduces bounce velocity by this factor and a multiple of the tangent to impact. " - "Used to simulate surface friction.\n"); - addField("gravityMod", TypeF32, Offset(gravityMod, ProjectileData ), - "@brief Scales the influence of gravity on the projectile.\n\n" - "The larger this value is, the more that gravity will affect the projectile. " - "A value of 1.0 will assume \"normal\" influence upon it.\n" - "The magnitude of gravity is assumed to be 9.81 m/s/s\n\n" - "@note ProjectileData::isBallistic must be true for this to have any affect."); + Parent::initPersistFields(); // disallow some field substitutions onlyKeepClearSubstitutions("explosion"); onlyKeepClearSubstitutions("particleEmitter"); @@ -321,8 +324,6 @@ void ProjectileData::initPersistFields() onlyKeepClearSubstitutions("sound"); onlyKeepClearSubstitutions("splash"); onlyKeepClearSubstitutions("waterExplosion"); - - Parent::initPersistFields(); } @@ -647,6 +648,7 @@ Projectile::~Projectile() //-------------------------------------------------------------------------- void Projectile::initPersistFields() { + docsURL; addGroup("Physics"); addProtectedField("initialPosition", TypePoint3F, Offset(mInitialPosition, Projectile), &_setInitialPosition, &defaultProtectedGetFn, diff --git a/Engine/source/T3D/proximityMine.cpp b/Engine/source/T3D/proximityMine.cpp index 2c96c9e3a..2cc49a8ef 100644 --- a/Engine/source/T3D/proximityMine.cpp +++ b/Engine/source/T3D/proximityMine.cpp @@ -88,12 +88,16 @@ ProximityMineData::ProximityMineData() void ProximityMineData::initPersistFields() { + docsURL; + Parent::initPersistFields(); + addGroup("Sounds"); + INITPERSISTFIELD_SOUNDASSET(ArmSound, ProximityMineData, "Arming sound for this proximity mine."); + INITPERSISTFIELD_SOUNDASSET(TriggerSound, ProximityMineData, "Arming sound for this proximity mine."); + endGroup("Sounds"); + addGroup( "Arming" ); addField( "armingDelay", TypeF32, Offset(armingDelay, ProximityMineData), "Delay (in seconds) from when the mine is placed to when it becomes active." ); - - INITPERSISTFIELD_SOUNDASSET(ArmSound, ProximityMineData, "Arming sound for this proximity mine."); - endGroup( "Arming" ); addGroup( "Triggering" ); @@ -111,9 +115,6 @@ void ProximityMineData::initPersistFields() "Speed above which moving objects within the trigger radius will trigger the mine" ); addField( "triggerDelay", TypeF32, Offset(triggerDelay, ProximityMineData), "Delay (in seconds) from when the mine is triggered until it explodes." ); - - INITPERSISTFIELD_SOUNDASSET(TriggerSound, ProximityMineData, "Arming sound for this proximity mine."); - endGroup( "Triggering" ); addGroup( "Explosion" ); @@ -124,8 +125,6 @@ void ProximityMineData::initPersistFields() "ground, which can end up blocking the explosion. This offset along the mine's " "'up' normal allows you to raise the explosion origin to a better height."); endGroup( "Explosion" ); - - Parent::initPersistFields(); } bool ProximityMineData::preload( bool server, String& errorStr ) diff --git a/Engine/source/T3D/rigidShape.cpp b/Engine/source/T3D/rigidShape.cpp index 3fe833824..cbece3f20 100644 --- a/Engine/source/T3D/rigidShape.cpp +++ b/Engine/source/T3D/rigidShape.cpp @@ -61,7 +61,6 @@ ConsoleDocClass( RigidShapeData, " category = \"RigidShape\";\n" "\n" " shapeFile = \"~/data/shapes/boulder/boulder.dts\";\n" - " emap = true;\n" "\n" " // Rigid Body\n" " mass = 500;\n" @@ -112,7 +111,6 @@ ConsoleDocClass( RigidShape, " category = \"RigidShape\";\n" "\n" " shapeFile = \"~/data/shapes/boulder/boulder.dts\";\n" - " emap = true;\n" "\n" " // Rigid Body\n" " mass = 500;\n" @@ -232,8 +230,6 @@ EndImplementEnumType; RigidShapeData::RigidShapeData() { - shadowEnable = true; - body.friction = 0; body.restitution = 1; @@ -516,73 +512,57 @@ void RigidShapeData::unpackData(BitStream* stream) void RigidShapeData::initPersistFields() { - addGroup("Physics"); - addField("enablePhysicsRep", TypeBool, Offset(enablePhysicsRep, RigidShapeData), - "@brief Creates a representation of the object in the physics plugin.\n"); - endGroup("Physics"); + docsURL; + Parent::initPersistFields(); - addField("massCenter", TypePoint3F, Offset(massCenter, RigidShapeData), "Center of mass for rigid body."); - addField("massBox", TypePoint3F, Offset(massBox, RigidShapeData), "Size of inertial box."); - addField("bodyRestitution", TypeF32, Offset(body.restitution, RigidShapeData), "The percentage of kinetic energy kept by this object in a collision."); - addField("bodyFriction", TypeF32, Offset(body.friction, RigidShapeData), "How much friction this object has. Lower values will cause the object to appear to be more slippery."); - - addField("minImpactSpeed", TypeF32, Offset(minImpactSpeed, RigidShapeData), - "Minimum collision speed to classify collision as impact (triggers onImpact on server object)." ); - addField("softImpactSpeed", TypeF32, Offset(softImpactSpeed, RigidShapeData), "Minimum speed at which this object must be travelling for the soft impact sound to be played."); - addField("hardImpactSpeed", TypeF32, Offset(hardImpactSpeed, RigidShapeData), "Minimum speed at which the object must be travelling for the hard impact sound to be played."); - addField("minRollSpeed", TypeF32, Offset(minRollSpeed, RigidShapeData)); - - addField("maxDrag", TypeF32, Offset(maxDrag, RigidShapeData), "Maximum drag available to this object."); - addField("minDrag", TypeF32, Offset(minDrag, RigidShapeData), "Minimum drag available to this object."); - addField("integration", TypeS32, Offset(integration, RigidShapeData), "Number of physics steps to process per tick."); - addField("collisionTol", TypeF32, Offset(collisionTol, RigidShapeData), "Collision distance tolerance."); - addField("contactTol", TypeF32, Offset(contactTol, RigidShapeData), "Contact velocity tolerance."); - - addGroup( "Forces" ); - - addField("dragForce", TypeF32, Offset(dragForce, RigidShapeData), "Used to simulate the constant drag acting on the object"); - addField("vertFactor", TypeF32, Offset(vertFactor, RigidShapeData), "The scalar applied to the vertical portion of the velocity drag acting on a object."); - - endGroup( "Forces" ); - addGroup( "Particle Effects" ); - addField("dustEmitter", TYPEID< ParticleEmitterData >(), Offset(dustEmitter, RigidShapeData), "Array of pointers to ParticleEmitterData datablocks which will be used to emit particles at object/terrain contact point.\n"); addField("triggerDustHeight", TypeF32, Offset(triggerDustHeight, RigidShapeData), "Maximum height from the ground at which the object will generate dust.\n"); addField("dustHeight", TypeF32, Offset(dustHeight, RigidShapeData), "Height of dust effects.\n"); - addField("dustTrailEmitter", TYPEID< ParticleEmitterData >(), Offset(dustTrailEmitter, RigidShapeData), "Particle emitter used to create a dust trail for the moving object.\n"); - addField("splashEmitter", TYPEID< ParticleEmitterData >(), Offset(splashEmitterList, RigidShapeData), VC_NUM_SPLASH_EMITTERS, "Array of pointers to ParticleEmitterData datablocks which will generate splash effects.\n"); - addField("splashFreqMod", TypeF32, Offset(splashFreqMod, RigidShapeData), "The simulated frequency modulation of a splash generated by this object. Multiplied along with speed and time elapsed when determining splash emition rate.\n"); - addField("splashVelEpsilon", TypeF32, Offset(splashVelEpsilon, RigidShapeData), "The threshold speed at which we consider the object's movement to have stopped when updating splash effects.\n"); - + addField("splashVelEpsilon", TypeF32, Offset(splashVelEpsilon, RigidShapeData), "The threshold speed at which we consider the object's movement to have stopped when updating splash effects.\n"); endGroup( "Particle Effects" ); addGroup( "Sounds" ); + INITPERSISTFIELD_SOUNDASSET_ENUMED(BodySounds, bodySounds, Body::Sounds::MaxSounds, RigidShapeData, "Sounds for body."); INITPERSISTFIELD_SOUNDASSET_ENUMED(WaterSounds, waterSounds, Sounds::MaxSounds, RigidShapeData, "Sounds for interacting with water."); + endGroup( "Sounds" ); - INITPERSISTFIELD_SOUNDASSET_ENUMED(BodySounds, bodySounds, Body::Sounds::MaxSounds, RigidShapeData, "Sounds for body."); + addGroup("Physics"); + addField("enablePhysicsRep", TypeBool, Offset(enablePhysicsRep, RigidShapeData), + "@brief Creates a representation of the object in the physics plugin.\n"); + ("massCenter", TypePoint3F, Offset(massCenter, RigidShapeData), "Center of mass for rigid body."); + addField("massBox", TypePoint3F, Offset(massBox, RigidShapeData), "Size of inertial box."); + addField("bodyRestitution", TypeF32, Offset(body.restitution, RigidShapeData), "The percentage of kinetic energy kept by this object in a collision."); + addField("bodyFriction", TypeF32, Offset(body.friction, RigidShapeData), "How much friction this object has. Lower values will cause the object to appear to be more slippery."); + addField("maxDrag", TypeF32, Offset(maxDrag, RigidShapeData), "Maximum drag available to this object."); + addField("minDrag", TypeF32, Offset(minDrag, RigidShapeData), "Minimum drag available to this object."); + addField("integration", TypeS32, Offset(integration, RigidShapeData), "Number of physics steps to process per tick."); + addField("collisionTol", TypeF32, Offset(collisionTol, RigidShapeData), "Collision distance tolerance."); + addField("contactTol", TypeF32, Offset(contactTol, RigidShapeData), "Contact velocity tolerance."); + addField("dragForce", TypeF32, Offset(dragForce, RigidShapeData), "Used to simulate the constant drag acting on the object"); + addField("vertFactor", TypeF32, Offset(vertFactor, RigidShapeData), "The scalar applied to the vertical portion of the velocity drag acting on a object."); + endGroup("Physics"); + addGroup("Collision"); + addField("minImpactSpeed", TypeF32, Offset(minImpactSpeed, RigidShapeData), + "Minimum collision speed to classify collision as impact (triggers onImpact on server object)." ); + addField("softImpactSpeed", TypeF32, Offset(softImpactSpeed, RigidShapeData), "Minimum speed at which this object must be travelling for the soft impact sound to be played."); + addField("hardImpactSpeed", TypeF32, Offset(hardImpactSpeed, RigidShapeData), "Minimum speed at which the object must be travelling for the hard impact sound to be played."); + addField("minRollSpeed", TypeF32, Offset(minRollSpeed, RigidShapeData)); addField("exitSplashSoundVelocity", TypeF32, Offset(exitSplashSoundVel, RigidShapeData), "The minimum velocity at which the exit splash sound will be played when emerging from water.\n"); addField("softSplashSoundVelocity", TypeF32, Offset(softSplashSoundVel, RigidShapeData),"The minimum velocity at which the soft splash sound will be played when impacting water.\n"); addField("mediumSplashSoundVelocity", TypeF32, Offset(medSplashSoundVel, RigidShapeData), "The minimum velocity at which the medium splash sound will be played when impacting water.\n"); addField("hardSplashSoundVelocity", TypeF32, Offset(hardSplashSoundVel, RigidShapeData), "The minimum velocity at which the hard splash sound will be played when impacting water.\n"); - - INITPERSISTFIELD_SOUNDASSET_ENUMED(WaterSounds, waterSounds, Sounds::MaxSounds, RigidShapeData, "Sounds for interacting with water."); - - endGroup( "Sounds" ); + endGroup("Collision"); addGroup( "Camera" ); - addField("cameraRoll", TypeBool, Offset(cameraRoll, RigidShapeData), "Specifies whether the camera's rotation matrix, and the render eye transform are multiplied during camera updates.\n"); addField("cameraLag", TypeF32, Offset(cameraLag, RigidShapeData), "Scalar amount by which the third person camera lags the object, relative to the object's linear velocity.\n"); addField("cameraDecay", TypeF32, Offset(cameraDecay, RigidShapeData), "Scalar rate at which the third person camera offset decays, per tick.\n"); addField("cameraOffset", TypeF32, Offset(cameraOffset, RigidShapeData), "The vertical offset of the object's camera.\n"); - endGroup( "Camera" ); - - Parent::initPersistFields(); } @@ -1706,6 +1686,7 @@ void RigidShape::consoleInit() void RigidShape::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/scopeAlwaysShape.cpp b/Engine/source/T3D/scopeAlwaysShape.cpp index b2c8551a0..ea804cf69 100644 --- a/Engine/source/T3D/scopeAlwaysShape.cpp +++ b/Engine/source/T3D/scopeAlwaysShape.cpp @@ -40,6 +40,7 @@ ScopeAlwaysShape::ScopeAlwaysShape() void ScopeAlwaysShape::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/sfx/sfxEmitter.cpp b/Engine/source/T3D/sfx/sfxEmitter.cpp index 59215acb4..e33409cdb 100644 --- a/Engine/source/T3D/sfx/sfxEmitter.cpp +++ b/Engine/source/T3D/sfx/sfxEmitter.cpp @@ -174,6 +174,7 @@ void SFXEmitter::consoleInit() void SFXEmitter::initPersistFields() { + docsURL; addGroup( "Media" ); INITPERSISTFIELD_SOUNDASSET(Sound, SFXEmitter, ""); diff --git a/Engine/source/T3D/shapeBase.cpp b/Engine/source/T3D/shapeBase.cpp index 1d2ca3502..f23f38a91 100644 --- a/Engine/source/T3D/shapeBase.cpp +++ b/Engine/source/T3D/shapeBase.cpp @@ -153,7 +153,7 @@ static const char *sDamageStateName[] = //---------------------------------------------------------------------------- ShapeBaseData::ShapeBaseData() - : shadowEnable( false ), + : shadowSize( 128 ), shadowMaxVisibleDistance( 80.0f ), shadowProjectionDistance( 10.0f ), @@ -208,7 +208,6 @@ ShapeBaseData::ShapeBaseData() ShapeBaseData::ShapeBaseData(const ShapeBaseData& other, bool temp_clone) : GameBaseData(other, temp_clone) { - shadowEnable = other.shadowEnable; shadowSize = other.shadowSize; shadowMaxVisibleDistance = other.shadowMaxVisibleDistance; shadowProjectionDistance = other.shadowProjectionDistance; @@ -535,31 +534,17 @@ bool ShapeBaseData::_setMass( void* object, const char* index, const char* data void ShapeBaseData::initPersistFields() { - addGroup( "Shadows" ); - - addField( "shadowEnable", TypeBool, Offset(shadowEnable, ShapeBaseData), - "Enable shadows for this shape (currently unused, shadows are always enabled)." ); - addField( "shadowSize", TypeS32, Offset(shadowSize, ShapeBaseData), - "Size of the projected shadow texture (must be power of 2)." ); - addField( "shadowMaxVisibleDistance", TypeF32, Offset(shadowMaxVisibleDistance, ShapeBaseData), - "Maximum distance at which shadow is visible (currently unused)." ); - addField( "shadowProjectionDistance", TypeF32, Offset(shadowProjectionDistance, ShapeBaseData), - "Maximum height above ground to project shadow. If the object is higher " - "than this no shadow will be rendered." ); - addField( "shadowSphereAdjust", TypeF32, Offset(shadowSphereAdjust, ShapeBaseData), - "Scalar applied to the radius of spot shadows (initial radius is based " - "on the shape bounds but can be adjusted with this field)." ); - - endGroup( "Shadows" ); - - addGroup( "Render" ); - + docsURL; + addGroup( "Shapes" ); INITPERSISTFIELD_SHAPEASSET(Shape, ShapeBaseData, "The source shape asset."); + addField("computeCRC", TypeBool, Offset(computeCRC, ShapeBaseData), + "If true, verify that the CRC of the client's shape model matches the " + "server's CRC for the shape model when loaded by the client."); + addField("silentBBoxValidation", TypeBool, Offset(silent_bbox_check, ShapeBaseData)); + INITPERSISTFIELD_SHAPEASSET(DebrisShape, ShapeBaseData, "The shape asset to use for auto-generated breakups via blowup(). @note may not be functional."); + endGroup( "Shapes" ); - endGroup( "Render" ); - - addGroup( "Destruction", "Parameters related to the destruction effects of this object." ); - + addGroup("Particle Effects"); addField( "explosion", TYPEID< ExplosionData >(), Offset(explosion, ShapeBaseData), "%Explosion to generate when this shape is blown up." ); addField( "underwaterExplosion", TYPEID< ExplosionData >(), Offset(underwaterExplosion, ShapeBaseData), @@ -568,23 +553,17 @@ void ShapeBaseData::initPersistFields() "%Debris to generate when this shape is blown up." ); addField( "renderWhenDestroyed", TypeBool, Offset(renderWhenDestroyed, ShapeBaseData), "Whether to render the shape when it is in the \"Destroyed\" damage state." ); + endGroup("Particle Effects"); - INITPERSISTFIELD_SHAPEASSET(DebrisShape, ShapeBaseData, "The shape asset to use for auto-generated breakups. @note may not be functional."); - - endGroup( "Destruction" ); - - addGroup( "Physics" ); - + addGroup( "Physics" ); addProtectedField("mass", TypeF32, Offset(mass, ShapeBaseData), &_setMass, &defaultProtectedGetFn, "Shape mass.\nUsed in simulation of moving objects.\n" ); addField( "drag", TypeF32, Offset(drag, ShapeBaseData), "Drag factor.\nReduces velocity of moving objects." ); addField( "density", TypeF32, Offset(density, ShapeBaseData), "Shape density.\nUsed when computing buoyancy when in water.\n" ); - endGroup( "Physics" ); addGroup( "Damage/Energy" ); - addField( "maxEnergy", TypeF32, Offset(maxEnergy, ShapeBaseData), "Maximum energy level for this object." ); addField( "maxDamage", TypeF32, Offset(maxDamage, ShapeBaseData), @@ -605,11 +584,9 @@ void ShapeBaseData::initPersistFields() addField( "isInvincible", TypeBool, Offset(isInvincible, ShapeBaseData), "Invincible flag; when invincible, the object cannot be damaged or " "repaired." ); - endGroup( "Damage/Energy" ); addGroup( "Camera", "The settings used by the shape when it is the camera." ); - addField( "cameraMaxDist", TypeF32, Offset(cameraMaxDist, ShapeBaseData), "The maximum distance from the camera to the object.\n" "Used when computing a custom camera transform for this object.\n\n" @@ -638,35 +615,38 @@ void ShapeBaseData::initPersistFields() "Observe this object through its camera transform and default fov.\n" "If true, when this object is the camera it can provide a custom camera " "transform and FOV (instead of the default eye transform)." ); - endGroup("Camera"); - addGroup( "Misc" ); - - addField( "computeCRC", TypeBool, Offset(computeCRC, ShapeBaseData), - "If true, verify that the CRC of the client's shape model matches the " - "server's CRC for the shape model when loaded by the client." ); - - endGroup( "Misc" ); - addGroup( "Reflection" ); - addField( "cubeReflectorDesc", TypeRealString, Offset( cubeDescName, ShapeBaseData ), "References a ReflectorDesc datablock that defines performance and quality properties for dynamic reflections.\n"); //addField( "reflectMaxRateMs", TypeS32, Offset( reflectMaxRateMs, ShapeBaseData ), "reflection will not be updated more frequently than this" ); //addField( "reflectMaxDist", TypeF32, Offset( reflectMaxDist, ShapeBaseData ), "distance at which reflection is never updated" ); //addField( "reflectMinDist", TypeF32, Offset( reflectMinDist, ShapeBaseData ), "distance at which reflection is always updated" ); //addField( "reflectDetailAdjust", TypeF32, Offset( reflectDetailAdjust, ShapeBaseData ), "scale up or down the detail level for objects rendered in a reflection" ); - endGroup( "Reflection" ); addField("remapTextureTags", TypeString, Offset(remap_txr_tags, ShapeBaseData)); - addField("silentBBoxValidation", TypeBool, Offset(silent_bbox_check, ShapeBaseData)); + // disallow some field substitutions onlyKeepClearSubstitutions("debris"); // subs resolving to "~~", or "~0" are OK onlyKeepClearSubstitutions("explosion"); onlyKeepClearSubstitutions("underwaterExplosion"); Parent::initPersistFields(); + + addGroup("BL Projected Shadows"); + addField("shadowSize", TypeS32, Offset(shadowSize, ShapeBaseData), + "Size of the projected shadow texture (must be power of 2)."); + addField("shadowMaxVisibleDistance", TypeF32, Offset(shadowMaxVisibleDistance, ShapeBaseData), + "Maximum distance at which shadow is visible (currently unused)."); + addField("shadowProjectionDistance", TypeF32, Offset(shadowProjectionDistance, ShapeBaseData), + "Maximum height above ground to project shadow. If the object is higher " + "than this no shadow will be rendered."); + addField("shadowSphereAdjust", TypeF32, Offset(shadowSphereAdjust, ShapeBaseData), + "Scalar applied to the radius of spot shadows (initial radius is based " + "on the shape bounds but can be adjusted with this field)."); + endGroup("BL Projected Shadows"); + } DefineEngineMethod( ShapeBaseData, checkDeployPos, bool, ( TransformF txfm ),, @@ -751,7 +731,6 @@ void ShapeBaseData::packData(BitStream* stream) if(stream->writeFlag(computeCRC)) stream->write(mCRC); - stream->writeFlag(shadowEnable); stream->write(shadowSize); stream->write(shadowMaxVisibleDistance); stream->write(shadowProjectionDistance); @@ -829,7 +808,6 @@ void ShapeBaseData::unpackData(BitStream* stream) if(computeCRC) stream->read(&mCRC); - shadowEnable = stream->readFlag(); stream->read(&shadowSize); stream->read(&shadowMaxVisibleDistance); stream->read(&shadowProjectionDistance); @@ -1056,6 +1034,7 @@ ShapeBase::~ShapeBase() void ShapeBase::initPersistFields() { + docsURL; addProtectedField( "skin", TypeRealString, Offset(mAppliedSkinName, ShapeBase), &_setFieldSkin, &_getFieldSkin, "@brief The skin applied to the shape.\n\n" diff --git a/Engine/source/T3D/shapeBase.h b/Engine/source/T3D/shapeBase.h index 035e6c55c..0d32739fe 100644 --- a/Engine/source/T3D/shapeBase.h +++ b/Engine/source/T3D/shapeBase.h @@ -354,7 +354,6 @@ struct ShapeBaseImageData: public GameBaseData { bool useRemainderDT; // - bool emap; ///< Environment mapping on? bool correctMuzzleVector; ///< Adjust 1st person firing vector to eye's LOS point? bool correctMuzzleVectorTP; ///< Adjust 3rd person firing vector to camera's LOS point? bool firstPerson; ///< Render the image when in first person? @@ -542,7 +541,6 @@ public: // TODO: These are only really used in Basic Lighting // mode... we should probably move them somewhere else. - bool shadowEnable; U32 shadowSize; F32 shadowMaxVisibleDistance; F32 shadowProjectionDistance; diff --git a/Engine/source/T3D/shapeImage.cpp b/Engine/source/T3D/shapeImage.cpp index 4161dbaf7..97ee3cea5 100644 --- a/Engine/source/T3D/shapeImage.cpp +++ b/Engine/source/T3D/shapeImage.cpp @@ -166,8 +166,6 @@ static ShapeBaseImageData::StateData gDefaultStateData; ShapeBaseImageData::ShapeBaseImageData() { - emap = false; - mountPoint = 0; mountOffset.identity(); eyeOffset.identity(); @@ -631,92 +629,109 @@ S32 ShapeBaseImageData::lookupState(const char* name) void ShapeBaseImageData::initPersistFields() { - addField( "emap", TypeBool, Offset(emap, ShapeBaseImageData), - "@brief Whether to enable environment mapping on this Image.\n\n" ); - - INITPERSISTFIELD_SHAPEASSET_ARRAY(Shape, MaxShapes, ShapeBaseImageData, "The shape asset to use for this image in the third person") - + docsURL; + addGroup("Shapes"); + INITPERSISTFIELD_SHAPEASSET_ARRAY(Shape, MaxShapes, ShapeBaseImageData, "The shape asset to use for this image in the third person") //addProtectedField("shapeFileFP", TypeShapeFilename, Offset(mShapeName[1], ShapeBaseImageData), _setShapeData, defaultProtectedGetFn, "deprecated alias for ShapeFPFile/Asset", AbstractClassRep::FIELD_HideInInspectors); + addField("casing", TYPEID< DebrisData >(), Offset(casing, ShapeBaseImageData), + "@brief DebrisData datablock to use for ejected casings.\n\n" + "@see stateEjectShell"); + addField("shellExitDir", TypePoint3F, Offset(shellExitDir, ShapeBaseImageData), + "@brief Vector direction to eject shell casings.\n\n" + "@see casing"); + addField("shellExitVariance", TypeF32, Offset(shellExitVariance, ShapeBaseImageData), + "@brief Variance (in degrees) from the shellExitDir vector to eject casings.\n\n" + "@see shellExitDir"); + addField("shellVelocity", TypeF32, Offset(shellVelocity, ShapeBaseImageData), + "@brief Speed at which to eject casings.\n\n" + "@see casing"); + addField("computeCRC", TypeBool, Offset(computeCRC, ShapeBaseImageData), + "If true, verify that the CRC of the client's Image matches the server's " + "CRC for the Image when loaded by the client."); + endGroup("Shapes"); - addField( "imageAnimPrefix", TypeCaseString, Offset(imageAnimPrefix, ShapeBaseImageData), - "@brief Passed along to the mounting shape to modify animation sequences played in third person. [optional]\n\n" ); - addField( "imageAnimPrefixFP", TypeCaseString, Offset(imageAnimPrefixFP, ShapeBaseImageData), - "@brief Passed along to the mounting shape to modify animation sequences played in first person. [optional]\n\n" ); - - addField( "animateAllShapes", TypeBool, Offset(animateAllShapes, ShapeBaseImageData), - "@brief Indicates that all shapes should be animated in sync.\n\n" - "When multiple shapes are defined for this image datablock, each of them are automatically " - "animated in step with each other. This allows for easy switching between between shapes " - "when some other condition changes, such as going from first person to third person, and " - "keeping their look consistent. If you know that you'll never switch between shapes on the " - "fly, such as players only being allowed in a first person view, then you could set this to " - "false to save some calculations.\n\n" - "There are other circumstances internal to the engine that determine that only the current shape " - "should be animated rather than all defined shapes. In those cases, this property is ignored.\n\n" - "@note This property is only important if you have more than one shape defined, such as shapeFileFP.\n\n" - "@see shapeFileFP\n"); - - addField( "animateOnServer", TypeBool, Offset(animateOnServer, ShapeBaseImageData), - "@brief Indicates that the image should be animated on the server.\n\n" - "In most cases you'll want this set if you're using useEyeNode. You may also want to " - "set this if the muzzlePoint is animated while it shoots. You can set this " - "to false even if these previous cases are true if the image's shape is set " - "up in the correct position and orientation in the 'root' pose and none of " - "the nodes are animated at key times, such as the muzzlePoint essentially " - "remaining at the same position at the start of the fire state (it could " - "animate just fine after the projectile is away as the muzzle vector is only " - "calculated at the start of the state).\n\n" - "You'll also want to set this to true if you're animating the camera using the " - "image's 'eye' node -- unless the movement is very subtle and doesn't need to " - "be reflected on the server.\n\n" - "@note Setting this to true causes up to four animation threads to be advanced on the server " - "for each instance in use, although for most images only one or two are actually defined.\n\n" - "@see useEyeNode\n"); - - addField( "scriptAnimTransitionTime", TypeF32, Offset(scriptAnimTransitionTime, ShapeBaseImageData), - "@brief The amount of time to transition between the previous sequence and new sequence when the script prefix has changed.\n\n" - "When setImageScriptAnimPrefix() is used on a ShapeBase that has this image mounted, the image " - "will attempt to switch to the new animation sequence based on the given script prefix. This is " - "the amount of time it takes to transition from the previously playing animation sequence to" - "the new script prefix-based animation sequence.\n" - "@see ShapeBase::setImageScriptAnimPrefix()"); + addGroup("Animation"); + addField( "imageAnimPrefix", TypeCaseString, Offset(imageAnimPrefix, ShapeBaseImageData), + "@brief Passed along to the mounting shape to modify animation sequences played in third person. [optional]\n\n" ); + addField( "imageAnimPrefixFP", TypeCaseString, Offset(imageAnimPrefixFP, ShapeBaseImageData), + "@brief Passed along to the mounting shape to modify animation sequences played in first person. [optional]\n\n" ); + addField( "animateAllShapes", TypeBool, Offset(animateAllShapes, ShapeBaseImageData), + "@brief Indicates that all shapes should be animated in sync.\n\n" + "When multiple shapes are defined for this image datablock, each of them are automatically " + "animated in step with each other. This allows for easy switching between between shapes " + "when some other condition changes, such as going from first person to third person, and " + "keeping their look consistent. If you know that you'll never switch between shapes on the " + "fly, such as players only being allowed in a first person view, then you could set this to " + "false to save some calculations.\n\n" + "There are other circumstances internal to the engine that determine that only the current shape " + "should be animated rather than all defined shapes. In those cases, this property is ignored.\n\n" + "@note This property is only important if you have more than one shape defined, such as shapeFileFP.\n\n" + "@see shapeFileFP\n"); + addField( "animateOnServer", TypeBool, Offset(animateOnServer, ShapeBaseImageData), + "@brief Indicates that the image should be animated on the server.\n\n" + "In most cases you'll want this set if you're using useEyeNode. You may also want to " + "set this if the muzzlePoint is animated while it shoots. You can set this " + "to false even if these previous cases are true if the image's shape is set " + "up in the correct position and orientation in the 'root' pose and none of " + "the nodes are animated at key times, such as the muzzlePoint essentially " + "remaining at the same position at the start of the fire state (it could " + "animate just fine after the projectile is away as the muzzle vector is only " + "calculated at the start of the state).\n\n" + "You'll also want to set this to true if you're animating the camera using the " + "image's 'eye' node -- unless the movement is very subtle and doesn't need to " + "be reflected on the server.\n\n" + "@note Setting this to true causes up to four animation threads to be advanced on the server " + "for each instance in use, although for most images only one or two are actually defined.\n\n" + "@see useEyeNode\n"); + addField( "scriptAnimTransitionTime", TypeF32, Offset(scriptAnimTransitionTime, ShapeBaseImageData), + "@brief The amount of time to transition between the previous sequence and new sequence when the script prefix has changed.\n\n" + "When setImageScriptAnimPrefix() is used on a ShapeBase that has this image mounted, the image " + "will attempt to switch to the new animation sequence based on the given script prefix. This is " + "the amount of time it takes to transition from the previously playing animation sequence to" + "the new script prefix-based animation sequence.\n" + "@see ShapeBase::setImageScriptAnimPrefix()"); + endGroup("Animation"); addField( "projectile", TYPEID< ProjectileData >(), Offset(projectile, ShapeBaseImageData), "@brief The projectile fired by this Image\n\n" ); - addField( "cloakable", TypeBool, Offset(cloakable, ShapeBaseImageData), "@brief Whether this Image can be cloaked.\n\n" "Currently unused." ); + addField("usesEnergy", TypeBool, Offset(usesEnergy, ShapeBaseImageData), + "@brief Flag indicating whether this Image uses energy instead of ammo. The energy level comes from the ShapeBase object we're mounted to.\n\n" + "@see ShapeBase::setEnergyLevel()"); + addField("minEnergy", TypeF32, Offset(minEnergy, ShapeBaseImageData), + "@brief Minimum Image energy for it to be operable.\n\n" + "@see usesEnergy"); + addGroup("Mounting"); addField( "mountPoint", TypeS32, Offset(mountPoint, ShapeBaseImageData), "@brief Mount node # to mount this Image to.\n\n" "This should correspond to a mount# node on the ShapeBase derived object we are mounting to." ); - addField( "offset", TypeMatrixPosition, Offset(mountOffset, ShapeBaseImageData), "@brief \"X Y Z\" translation offset from this Image's mountPoint node to " "attach to.\n\n" "Defaults to \"0 0 0\". ie. attach this Image's " "mountPoint node to the ShapeBase model's mount# node without any offset.\n" "@see rotation"); - addField( "rotation", TypeMatrixRotation, Offset(mountOffset, ShapeBaseImageData), "@brief \"X Y Z ANGLE\" rotation offset from this Image's mountPoint node " "to attach to.\n\n" "Defaults to \"0 0 0\". ie. attach this Image's " "mountPoint node to the ShapeBase model's mount# node without any additional rotation.\n" "@see offset"); + endGroup("Mounting"); + addGroup("Camera"); addField( "eyeOffset", TypeMatrixPosition, Offset(eyeOffset, ShapeBaseImageData), "@brief \"X Y Z\" translation offset from the ShapeBase model's eye node.\n\n" "When in first person view, this is the offset from the eye node to place the gun. This " "gives the gun a fixed point in space, typical of a lot of FPS games.\n" "@see eyeRotation"); - addField( "eyeRotation", TypeMatrixRotation, Offset(eyeOffset, ShapeBaseImageData), "@brief \"X Y Z ANGLE\" rotation offset from the ShapeBase model's eye node.\n\n" "When in first person view, this is the rotation from the eye node to place the gun.\n" "@see eyeOffset"); - addField( "useEyeNode", TypeBool, Offset(useEyeNode, ShapeBaseImageData), "@brief Mount image using image's eyeMount node and place the camera at the image's eye node (or " "at the eyeMount node if the eye node is missing).\n\n" @@ -728,92 +743,62 @@ void ShapeBaseImageData::initPersistFields() "@note Read about the animateOnServer field as you may want to set it to true if you're using useEyeNode.\n\n" "@see eyeOffset\n\n" "@see animateOnServer\n\n"); + addField("firstPerson", TypeBool, Offset(firstPerson, ShapeBaseImageData), + "@brief Set to true to render the image in first person."); + endGroup("Camera"); + + addGroup("Camera Shake"); + addField( "shakeCamera", TypeBool, Offset(shakeCamera, ShapeBaseImageData), + "@brief Flag indicating whether the camera should shake when this Image fires.\n\n" ); + addField( "camShakeFreq", TypePoint3F, Offset(camShakeFreq, ShapeBaseImageData), + "@brief Frequency of the camera shaking effect.\n\n" + "@see shakeCamera" ); + addField( "camShakeAmp", TypePoint3F, Offset(camShakeAmp, ShapeBaseImageData), + "@brief Amplitude of the camera shaking effect.\n\n" + "@see shakeCamera" ); + addField( "camShakeDuration", TypeF32, Offset(camShakeDuration, ShapeBaseImageData), + "Duration (in seconds) to shake the camera." ); + addField( "camShakeRadius", TypeF32, Offset(camShakeRadius, ShapeBaseImageData), + "Radial distance that a camera's position must be within relative to the " + "center of the explosion to be shaken." ); + addField( "camShakeFalloff", TypeF32, Offset(camShakeFalloff, ShapeBaseImageData), + "Falloff value for the camera shake." ); + endGroup("Camera Shake"); + addGroup("Physics"); addField( "correctMuzzleVector", TypeBool, Offset(correctMuzzleVector, ShapeBaseImageData), "@brief Flag to adjust the aiming vector to the eye's LOS point when in 1st person view.\n\n" "@see ShapeBase::getMuzzleVector()" ); - addField( "correctMuzzleVectorTP", TypeBool, Offset(correctMuzzleVectorTP, ShapeBaseImageData), "@brief Flag to adjust the aiming vector to the camera's LOS point when in 3rd person view.\n\n" "@see ShapeBase::getMuzzleVector()" ); - - addField( "firstPerson", TypeBool, Offset(firstPerson, ShapeBaseImageData), - "@brief Set to true to render the image in first person." ); - addField( "mass", TypeF32, Offset(mass, ShapeBaseImageData), "@brief Mass of this Image.\n\n" "This is added to the total mass of the ShapeBase object." ); - - addField( "usesEnergy", TypeBool, Offset(usesEnergy,ShapeBaseImageData), - "@brief Flag indicating whether this Image uses energy instead of ammo. The energy level comes from the ShapeBase object we're mounted to.\n\n" - "@see ShapeBase::setEnergyLevel()"); - - addField( "minEnergy", TypeF32, Offset(minEnergy, ShapeBaseImageData), - "@brief Minimum Image energy for it to be operable.\n\n" - "@see usesEnergy"); - addField( "accuFire", TypeBool, Offset(accuFire, ShapeBaseImageData), "@brief Flag to control whether the Image's aim is automatically converged with " "the crosshair.\n\n" "Currently unused." ); + endGroup("Physics"); - addField( "lightType", TYPEID< ShapeBaseImageData::LightType >(), Offset(lightType, ShapeBaseImageData), - "@brief The type of light this Image emits.\n\n" - "@see ShapeBaseImageLightType"); - - addField( "lightColor", TypeColorF, Offset(lightColor, ShapeBaseImageData), - "@brief The color of light this Image emits.\n\n" - "@see lightType"); - - addField( "lightDuration", TypeS32, Offset(lightDuration, ShapeBaseImageData), - "@brief Duration in SimTime of Pulsing and WeaponFire type lights.\n\n" - "@see lightType"); - - addField( "lightRadius", TypeF32, Offset(lightRadius, ShapeBaseImageData), - "@brief Radius of the light this Image emits.\n\n" - "@see lightType"); - - addField( "lightBrightness", TypeF32, Offset(lightBrightness, ShapeBaseImageData), - "@brief Brightness of the light this Image emits.\n\n" - "Only valid for WeaponFireLight." - "@see lightType"); - - addField( "shakeCamera", TypeBool, Offset(shakeCamera, ShapeBaseImageData), - "@brief Flag indicating whether the camera should shake when this Image fires.\n\n" ); - - addField( "camShakeFreq", TypePoint3F, Offset(camShakeFreq, ShapeBaseImageData), - "@brief Frequency of the camera shaking effect.\n\n" - "@see shakeCamera" ); - - addField( "camShakeAmp", TypePoint3F, Offset(camShakeAmp, ShapeBaseImageData), - "@brief Amplitude of the camera shaking effect.\n\n" - "@see shakeCamera" ); - - addField( "camShakeDuration", TypeF32, Offset(camShakeDuration, ShapeBaseImageData), - "Duration (in seconds) to shake the camera." ); - - addField( "camShakeRadius", TypeF32, Offset(camShakeRadius, ShapeBaseImageData), - "Radial distance that a camera's position must be within relative to the " - "center of the explosion to be shaken." ); - - addField( "camShakeFalloff", TypeF32, Offset(camShakeFalloff, ShapeBaseImageData), - "Falloff value for the camera shake." ); - - addField( "casing", TYPEID< DebrisData >(), Offset(casing, ShapeBaseImageData), - "@brief DebrisData datablock to use for ejected casings.\n\n" - "@see stateEjectShell" ); - - addField( "shellExitDir", TypePoint3F, Offset(shellExitDir, ShapeBaseImageData), - "@brief Vector direction to eject shell casings.\n\n" - "@see casing"); - - addField( "shellExitVariance", TypeF32, Offset(shellExitVariance, ShapeBaseImageData), - "@brief Variance (in degrees) from the shellExitDir vector to eject casings.\n\n" - "@see shellExitDir"); - - addField( "shellVelocity", TypeF32, Offset(shellVelocity, ShapeBaseImageData), - "@brief Speed at which to eject casings.\n\n" - "@see casing"); + addGroup("Light Emitter"); + addField( "lightType", TYPEID< ShapeBaseImageData::LightType >(), Offset(lightType, ShapeBaseImageData), + "@brief The type of light this Image emits.\n\n" + "@see ShapeBaseImageLightType"); + addField( "lightColor", TypeColorF, Offset(lightColor, ShapeBaseImageData), + "@brief The color of light this Image emits.\n\n" + "@see lightType"); + addField( "lightDuration", TypeS32, Offset(lightDuration, ShapeBaseImageData), + "@brief Duration in SimTime of Pulsing and WeaponFire type lights.\n\n" + "@see lightType"); + addField( "lightRadius", TypeF32, Offset(lightRadius, ShapeBaseImageData), + "@brief Radius of the light this Image emits.\n\n" + "@see lightType"); + addField( "lightBrightness", TypeF32, Offset(lightBrightness, ShapeBaseImageData), + "@brief Brightness of the light this Image emits.\n\n" + "Only valid for WeaponFireLight." + "@see lightType"); + endGroup("Light Emitter"); // State arrays addArray( "States", MaxStates ); @@ -994,18 +979,17 @@ void ShapeBaseImageData::initPersistFields() endArray( "States" ); - addField( "computeCRC", TypeBool, Offset(computeCRC, ShapeBaseImageData), - "If true, verify that the CRC of the client's Image matches the server's " - "CRC for the Image when loaded by the client." ); - - addField( "maxConcurrentSounds", TypeS32, Offset(maxConcurrentSounds, ShapeBaseImageData), - "@brief Maximum number of sounds this Image can play at a time.\n\n" - "Any value <= 0 indicates that it can play an infinite number of sounds." ); - - addField( "useRemainderDT", TypeBool, Offset(useRemainderDT, ShapeBaseImageData), - "@brief If true, allow multiple timeout transitions to occur within a single " - "tick (useful if states have a very small timeout).\n\n" ); + addGroup("Sounds"); + addField( "maxConcurrentSounds", TypeS32, Offset(maxConcurrentSounds, ShapeBaseImageData), + "@brief Maximum number of sounds this Image can play at a time.\n\n" + "Any value <= 0 indicates that it can play an infinite number of sounds." ); + endGroup("Sounds"); + addGroup("Animation"); + addField( "useRemainderDT", TypeBool, Offset(useRemainderDT, ShapeBaseImageData), + "@brief If true, allow multiple timeout transitions to occur within a single " + "tick (useful if states have a very small timeout).\n\n" ); + endGroup("Animation"); Parent::initPersistFields(); } diff --git a/Engine/source/T3D/spotLight.cpp b/Engine/source/T3D/spotLight.cpp index 359669cef..3f43305f7 100644 --- a/Engine/source/T3D/spotLight.cpp +++ b/Engine/source/T3D/spotLight.cpp @@ -95,6 +95,7 @@ SpotLight::~SpotLight() void SpotLight::initPersistFields() { + docsURL; addGroup( "Light" ); addField( "range", TypeF32, Offset( mRange, SpotLight ) ); diff --git a/Engine/source/T3D/staticShape.cpp b/Engine/source/T3D/staticShape.cpp index f23e67ee3..ad7a00ad1 100644 --- a/Engine/source/T3D/staticShape.cpp +++ b/Engine/source/T3D/staticShape.cpp @@ -95,9 +95,6 @@ ConsoleDocClass( StaticShapeData, StaticShapeData::StaticShapeData() { dynamicTypeField = 0; - - shadowEnable = true; - noIndividualDamage = false; } @@ -111,13 +108,13 @@ StaticShapeData::StaticShapeData(const StaticShapeData& other, bool temp_clone) void StaticShapeData::initPersistFields() { + docsURL; + Parent::initPersistFields(); addField("noIndividualDamage", TypeBool, Offset(noIndividualDamage, StaticShapeData), "Deprecated\n\n @internal"); addField("dynamicType", TypeS32, Offset(dynamicTypeField, StaticShapeData), "@brief An integer value which, if speficied, is added to the value retured by getType().\n\n" "This allows you to extend the type mask for a StaticShape that uses this datablock. Type masks " "are used for container queries, etc."); - - Parent::initPersistFields(); } void StaticShapeData::packData(BitStream* stream) @@ -197,6 +194,7 @@ StaticShape::~StaticShape() void StaticShape::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/trigger.cpp b/Engine/source/T3D/trigger.cpp index bcf85810b..4bde2c683 100644 --- a/Engine/source/T3D/trigger.cpp +++ b/Engine/source/T3D/trigger.cpp @@ -98,6 +98,7 @@ bool TriggerData::onAdd() void TriggerData::initPersistFields() { + docsURL; addGroup("Callbacks"); addField( "tickPeriodMS", TypeS32, Offset( tickPeriodMS, TriggerData ), @@ -370,6 +371,7 @@ void Trigger::consoleInit() void Trigger::initPersistFields() { + docsURL; addField("polyhedron", TypeTriggerPolyhedron, Offset(mTriggerPolyhedron, Trigger), "@brief Defines a non-rectangular area for the trigger.\n\n" "Rather than the standard rectangular bounds, this optional parameter defines a quadrilateral " diff --git a/Engine/source/T3D/tsStatic.cpp b/Engine/source/T3D/tsStatic.cpp index a93c90949..2b454a1d1 100644 --- a/Engine/source/T3D/tsStatic.cpp +++ b/Engine/source/T3D/tsStatic.cpp @@ -176,11 +176,7 @@ FRangeValidator speedValidator(0.0f, AnimSpeedMax); void TSStatic::initPersistFields() { - addFieldV("AnimOffset", TypeF32, Offset(mAnimOffset, TSStatic), &percentValidator, - "Percent Animation Offset."); - - addFieldV("AnimSpeed", TypeF32, Offset(mAnimSpeed, TSStatic), &speedValidator, - "Percent Animation Speed."); + docsURL; addGroup("Shape"); INITPERSISTFIELD_SHAPEASSET(Shape, TSStatic, "Model to use for this TSStatic"); @@ -219,16 +215,21 @@ void TSStatic::initPersistFields() "name as the new target.\n\n"); endGroup("Materials"); - addGroup("Rendering"); - + addGroup("Animation"); addField("playAmbient", TypeBool, Offset(mPlayAmbient, TSStatic), "Enables automatic playing of the animation sequence named \"ambient\" (if it exists) when the TSStatic is loaded."); + addFieldV("AnimOffset", TypeF32, Offset(mAnimOffset, TSStatic), &percentValidator, + "Percent Animation Offset."); + addFieldV("AnimSpeed", TypeF32, Offset(mAnimSpeed, TSStatic), &speedValidator, + "Percent Animation Speed."); + endGroup("Animation"); + + addGroup("Rendering"); addField("meshCulling", TypeBool, Offset(mMeshCulling, TSStatic), "Enables detailed culling of meshes within the TSStatic. Should only be used " "with large complex shapes like buildings which contain many submeshes."); addField("originSort", TypeBool, Offset(mUseOriginSort, TSStatic), "Enables translucent sorting of the TSStatic by its origin instead of the bounds."); - endGroup("Rendering"); addGroup("Reflection"); diff --git a/Engine/source/T3D/turret/aiTurretShape.cpp b/Engine/source/T3D/turret/aiTurretShape.cpp index b607bc974..dd54807a6 100644 --- a/Engine/source/T3D/turret/aiTurretShape.cpp +++ b/Engine/source/T3D/turret/aiTurretShape.cpp @@ -124,34 +124,34 @@ AITurretShapeData::AITurretShapeData() void AITurretShapeData::initPersistFields() { - addField("maxScanHeading", TypeF32, Offset(maxScanHeading, AITurretShapeData), - "@brief Maximum number of degrees to scan left and right.\n\n" - "@note Maximum scan heading is 90 degrees.\n"); - addField("maxScanPitch", TypeF32, Offset(maxScanPitch, AITurretShapeData), - "@brief Maximum number of degrees to scan up and down.\n\n" - "@note Maximum scan pitch is 90 degrees.\n"); - addField("maxScanDistance", TypeF32, Offset(maxScanDistance, AITurretShapeData), - "@brief Maximum distance to scan.\n\n" - "When combined with maxScanHeading and maxScanPitch this forms a 3D scanning wedge used to initially " - "locate a target.\n"); - - addField("scanTickFrequency", TypeS32, Offset(scanTickFrequency, AITurretShapeData), - "@brief How often should we perform a full scan when looking for a target.\n\n" - "Expressed as the number of ticks between full scans, but no less than 1.\n"); - addField("scanTickFrequencyVariance", TypeS32, Offset(scanTickFrequencyVariance, AITurretShapeData), - "@brief Random amount that should be added to the scan tick frequency each scan period.\n\n" - "Expressed as the number of ticks to randomly add, but no less than zero.\n"); - - addField("trackLostTargetTime", TypeF32, Offset(trackLostTargetTime, AITurretShapeData), - "@brief How long after the turret has lost the target should it still track it.\n\n" - "Expressed in seconds.\n"); - + docsURL; + Parent::initPersistFields(); + addGroup("AI Steering"); + addField("maxScanHeading", TypeF32, Offset(maxScanHeading, AITurretShapeData), + "@brief Maximum number of degrees to scan left and right.\n\n" + "@note Maximum scan heading is 90 degrees.\n"); + addField("maxScanPitch", TypeF32, Offset(maxScanPitch, AITurretShapeData), + "@brief Maximum number of degrees to scan up and down.\n\n" + "@note Maximum scan pitch is 90 degrees.\n"); + addField("maxScanDistance", TypeF32, Offset(maxScanDistance, AITurretShapeData), + "@brief Maximum distance to scan.\n\n" + "When combined with maxScanHeading and maxScanPitch this forms a 3D scanning wedge used to initially " + "locate a target.\n"); + addField("scanTickFrequency", TypeS32, Offset(scanTickFrequency, AITurretShapeData), + "@brief How often should we perform a full scan when looking for a target.\n\n" + "Expressed as the number of ticks between full scans, but no less than 1.\n"); + addField("scanTickFrequencyVariance", TypeS32, Offset(scanTickFrequencyVariance, AITurretShapeData), + "@brief Random amount that should be added to the scan tick frequency each scan period.\n\n" + "Expressed as the number of ticks to randomly add, but no less than zero.\n"); + addField("trackLostTargetTime", TypeF32, Offset(trackLostTargetTime, AITurretShapeData), + "@brief How long after the turret has lost the target should it still track it.\n\n" + "Expressed in seconds.\n"); addField("maxWeaponRange", TypeF32, Offset(maxWeaponRange, AITurretShapeData), "@brief Maximum distance that the weapon will fire upon a target.\n\n"); - addField("weaponLeadVelocity", TypeF32, Offset(weaponLeadVelocity, AITurretShapeData), "@brief Velocity used to lead target.\n\n" "If value <= 0, don't lead target.\n"); + endGroup("AI Steering"); // State arrays addArray( "States", MaxStates ); @@ -196,8 +196,6 @@ void AITurretShapeData::initPersistFields() "Scoped to AITurretShapeData."); endArray( "States" ); - - Parent::initPersistFields(); } bool AITurretShapeData::onAdd() @@ -467,6 +465,7 @@ AITurretShape::~AITurretShape() void AITurretShape::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/turret/turretShape.cpp b/Engine/source/T3D/turret/turretShape.cpp index 17fef5176..52cd198e6 100644 --- a/Engine/source/T3D/turret/turretShape.cpp +++ b/Engine/source/T3D/turret/turretShape.cpp @@ -87,8 +87,6 @@ TurretShapeData::TurretShapeData() { weaponLinkType = FireTogether; - shadowEnable = true; - zRotOnly = false; startLoaded = true; @@ -133,42 +131,45 @@ TurretShapeData::TurretShapeData() void TurretShapeData::initPersistFields() { - addField("zRotOnly", TypeBool, Offset(zRotOnly, TurretShapeData), - "@brief Should the turret allow only z rotations.\n\n" - "True indicates that the turret may only be rotated on its z axis, just like the Item class. " - "This keeps the turret always upright regardless of the surface it lands on.\n"); + docsURL; + Parent::initPersistFields(); + addGroup("Steering"); + addField("zRotOnly", TypeBool, Offset(zRotOnly, TurretShapeData), + "@brief Should the turret allow only z rotations.\n\n" + "True indicates that the turret may only be rotated on its z axis, just like the Item class. " + "This keeps the turret always upright regardless of the surface it lands on.\n"); + addField("maxHeading", TypeF32, Offset(maxHeading, TurretShapeData), + "@brief Maximum number of degrees to rotate from center.\n\n" + "A value of 180 or more degrees indicates the turret may rotate completely around.\n"); + addField("minPitch", TypeF32, Offset(minPitch, TurretShapeData), + "@brief Minimum number of degrees to rotate down from straight ahead.\n\n"); + addField("maxPitch", TypeF32, Offset(maxPitch, TurretShapeData), + "@brief Maximum number of degrees to rotate up from straight ahead.\n\n"); + addField("headingRate", TypeF32, Offset(headingRate, TurretShapeData), + "@brief Degrees per second rotation.\n\n" + "A value of 0 means no rotation is allowed. A value less than 0 means the rotation is instantaneous.\n"); + addField("pitchRate", TypeF32, Offset(pitchRate, TurretShapeData), + "@brief Degrees per second rotation.\n\n" + "A value of 0 means no rotation is allowed. A value less than 0 means the rotation is instantaneous.\n"); + endGroup("Steering"); + addGroup("Weapon State"); addField( "weaponLinkType", TYPEID< TurretShapeData::FireLinkType >(), Offset(weaponLinkType, TurretShapeData), "@brief Set how the mounted weapons are linked and triggered.\n\n" "\n" "@see TurretShapeFireLinkType"); - addField("startLoaded", TypeBool, Offset(startLoaded, TurretShapeData), "@brief Does the turret's mounted weapon(s) start in a loaded state.\n\n" "True indicates that all mounted weapons start in a loaded state.\n" "@see ShapeBase::setImageLoaded()"); + endGroup("Weapon State"); + addGroup("Camera", "The settings used by the shape when it is the camera."); addField("cameraOffset", TypeF32, Offset(cameraOffset, TurretShapeData), "Vertical (Z axis) height of the camera above the turret." ); - - addField("maxHeading", TypeF32, Offset(maxHeading, TurretShapeData), - "@brief Maximum number of degrees to rotate from center.\n\n" - "A value of 180 or more degrees indicates the turret may rotate completely around.\n"); - addField("minPitch", TypeF32, Offset(minPitch, TurretShapeData), - "@brief Minimum number of degrees to rotate down from straight ahead.\n\n"); - addField("maxPitch", TypeF32, Offset(maxPitch, TurretShapeData), - "@brief Maximum number of degrees to rotate up from straight ahead.\n\n"); - - addField("headingRate", TypeF32, Offset(headingRate, TurretShapeData), - "@brief Degrees per second rotation.\n\n" - "A value of 0 means no rotation is allowed. A value less than 0 means the rotation is instantaneous.\n"); - addField("pitchRate", TypeF32, Offset(pitchRate, TurretShapeData), - "@brief Degrees per second rotation.\n\n" - "A value of 0 means no rotation is allowed. A value less than 0 means the rotation is instantaneous.\n"); - - Parent::initPersistFields(); + endGroup("Camera"); } void TurretShapeData::packData(BitStream* stream) @@ -300,6 +301,7 @@ TurretShape::~TurretShape() void TurretShape::initPersistFields() { + docsURL; addField("respawn", TypeBool, Offset(mRespawn, TurretShape), "@brief Respawn the turret after it has been destroyed.\n\n" "If true, the turret will respawn after it is destroyed.\n"); diff --git a/Engine/source/T3D/vehicles/flyingVehicle.cpp b/Engine/source/T3D/vehicles/flyingVehicle.cpp index 3bbea662c..13e42df15 100644 --- a/Engine/source/T3D/vehicles/flyingVehicle.cpp +++ b/Engine/source/T3D/vehicles/flyingVehicle.cpp @@ -50,6 +50,15 @@ const static U32 sCollisionMoveMask = ( TerrainObjectType | WaterObjectType static U32 sServerCollisionMask = sCollisionMoveMask; // ItemObjectType static U32 sClientCollisionMask = sCollisionMoveMask; +typedef FlyingVehicleData::Sounds engineSounds; +DefineEnumType(engineSounds); + +ImplementEnumType(engineSounds, "enum types.\n" + "@ingroup VehicleData\n\n") + { engineSounds::JetSound, "JetSound", "..." }, + { engineSounds::EngineSound, "EngineSound", "..." }, + EndImplementEnumType; + // const char* FlyingVehicle::sJetSequence[FlyingVehicle::JetAnimCount] = { @@ -166,15 +175,30 @@ bool FlyingVehicleData::preload(bool server, String &errorStr) void FlyingVehicleData::initPersistFields() { + docsURL; + Parent::initPersistFields(); - INITPERSISTFIELD_SOUNDASSET_ARRAY(FlyingSounds, Sounds::MaxSounds, FlyingVehicleData, "Sounds for flying vehicle"); - - addField( "maneuveringForce", TypeF32, Offset(maneuveringForce, FlyingVehicleData), - "@brief Maximum X and Y (horizontal plane) maneuvering force.\n\n" - "The actual force applied depends on the current thrust." ); + addGroup("Physics"); + addField( "rollForce", TypeF32, Offset(rollForce, FlyingVehicleData), + "@brief Damping torque against rolling maneuvers (rotation about the y-axis), " + "proportional to linear velocity.\n\n" + "Acts to adjust roll to a stable position over time as the vehicle moves." ); + addField( "rotationalDrag", TypeF32, Offset(rotationalDrag, FlyingVehicleData), + "Rotational drag factor (slows vehicle rotation speed in all axes)." ); addField( "horizontalSurfaceForce", TypeF32, Offset(horizontalSurfaceForce, FlyingVehicleData), "@brief Damping force in the opposite direction to sideways velocity.\n\n" "Provides \"bite\" into the wind for climbing/diving and turning)." ); + addField( "hoverHeight", TypeF32, Offset(hoverHeight, FlyingVehicleData), + "The vehicle's height off the ground when at rest." ); + addField( "createHoverHeight", TypeF32, Offset(createHoverHeight, FlyingVehicleData), + "@brief The vehicle's height off the ground when useCreateHeight is active.\n\n" + "This can help avoid problems with spawning the vehicle." ); + endGroup("Physics"); + + addGroup("Steering"); + addField( "maneuveringForce", TypeF32, Offset(maneuveringForce, FlyingVehicleData), + "@brief Maximum X and Y (horizontal plane) maneuvering force.\n\n" + "The actual force applied depends on the current thrust." ); addField( "verticalSurfaceForce", TypeF32, Offset(verticalSurfaceForce, FlyingVehicleData), "@brief Damping force in the opposite direction to vertical velocity.\n\n" "Controls side slip; lower numbers give more slide." ); @@ -186,13 +210,9 @@ void FlyingVehicleData::initPersistFields() addField( "steeringRollForce", TypeF32, Offset(steeringRollForce, FlyingVehicleData), "Roll force induced by sideways steering input value (controls how much " "the vehicle rolls when turning)." ); - addField( "rollForce", TypeF32, Offset(rollForce, FlyingVehicleData), - "@brief Damping torque against rolling maneuvers (rotation about the y-axis), " - "proportional to linear velocity.\n\n" - "Acts to adjust roll to a stable position over time as the vehicle moves." ); - addField( "rotationalDrag", TypeF32, Offset(rotationalDrag, FlyingVehicleData), - "Rotational drag factor (slows vehicle rotation speed in all axes)." ); + endGroup("Steering"); + addGroup("AutoCorrection"); addField( "maxAutoSpeed", TypeF32, Offset(maxAutoSpeed, FlyingVehicleData), "Maximum speed for automatic vehicle control assistance - vehicles " "travelling at speeds above this value do not get control assitance." ); @@ -208,13 +228,9 @@ void FlyingVehicleData::initPersistFields() "@brief Corrective torque applied to level out the vehicle when moving at less " "than maxAutoSpeed.\n\n" "The torque is inversely proportional to vehicle speed." ); + endGroup("AutoCorrection"); - addField( "hoverHeight", TypeF32, Offset(hoverHeight, FlyingVehicleData), - "The vehicle's height off the ground when at rest." ); - addField( "createHoverHeight", TypeF32, Offset(createHoverHeight, FlyingVehicleData), - "@brief The vehicle's height off the ground when useCreateHeight is active.\n\n" - "This can help avoid problems with spawning the vehicle." ); - + addGroup("Particle Effects"); addField( "forwardJetEmitter",TYPEID< ParticleEmitterData >(), Offset(jetEmitter[ForwardJetEmitter], FlyingVehicleData), "@brief Emitter to generate particles for forward jet thrust.\n\n" "Forward jet thrust particles are emitted from model nodes JetNozzle0 " @@ -231,8 +247,11 @@ void FlyingVehicleData::initPersistFields() "Emitter to generate contrail particles from model nodes contrail0 - contrail3." ); addField( "minTrailSpeed", TypeF32, Offset(minTrailSpeed, FlyingVehicleData), "Minimum speed at which to start generating contrail particles." ); + endGroup("Particle Effects"); - Parent::initPersistFields(); + addGroup("Sounds"); + INITPERSISTFIELD_SOUNDASSET_ENUMED(FlyingSounds, engineSounds, Sounds::MaxSounds, FlyingVehicleData, "EngineSounds."); + endGroup("Sounds"); } void FlyingVehicleData::packData(BitStream* stream) @@ -788,6 +807,7 @@ void FlyingVehicle::unpackUpdate(NetConnection *con, BitStream *stream) void FlyingVehicle::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/vehicles/guiSpeedometer.cpp b/Engine/source/T3D/vehicles/guiSpeedometer.cpp index 07e176438..a145f8b8d 100644 --- a/Engine/source/T3D/vehicles/guiSpeedometer.cpp +++ b/Engine/source/T3D/vehicles/guiSpeedometer.cpp @@ -108,6 +108,7 @@ GuiSpeedometerHud::GuiSpeedometerHud() void GuiSpeedometerHud::initPersistFields() { + docsURL; addGroup("Needle"); addField("maxSpeed", TypeF32, Offset( mMaxSpeed, GuiSpeedometerHud ), diff --git a/Engine/source/T3D/vehicles/hoverVehicle.cpp b/Engine/source/T3D/vehicles/hoverVehicle.cpp index 83292cb88..0172c573f 100644 --- a/Engine/source/T3D/vehicles/hoverVehicle.cpp +++ b/Engine/source/T3D/vehicles/hoverVehicle.cpp @@ -174,79 +174,88 @@ HoverVehicleData::~HoverVehicleData() //-------------------------------------------------------------------------- void HoverVehicleData::initPersistFields() { - addField( "dragForce", TypeF32, Offset(dragForce, HoverVehicleData), + docsURL; + Parent::initPersistFields(); + addGroup("Physics"); + addField( "normalForce", TypeF32, Offset(normalForce, HoverVehicleData), + "Force generated in the ground normal direction when the vehicle is not " + "floating (within stabalizer length from the ground).\n\n" + "@see stabLenMin" ); + addField( "stabLenMin", TypeF32, Offset(stabLenMin, HoverVehicleData), + "Length of the base stabalizer when travelling at minimum speed (0).\n" + "Each tick, the vehicle performs 2 raycasts (from the center back and " + "center front of the vehicle) to check for contact with the ground. The " + "base stabalizer length determines the length of that raycast; if " + "neither raycast hit the ground, the vehicle is floating, stabalizer " + "spring and ground normal forces are not applied.\n\n" + "\n" + "@see stabSpringConstant" ); + addField( "stabLenMax", TypeF32, Offset(stabLenMax, HoverVehicleData), + "Length of the base stabalizer when travelling at maximum speed " + "(maxThrustSpeed).\n\n@see stabLenMin\n\n@see mainThrustForce" ); + addField("vertFactor", TypeF32, Offset(vertFactor, HoverVehicleData), + "Scalar applied to the vertical portion of the velocity drag acting on " + "the vehicle.\nFor the horizontal (X and Y) components of velocity drag, " + "a factor of 0.25 is applied when the vehicle is floating, and a factor " + "of 1.0 is applied when the vehicle is not floating. This velocity drag " + "is multiplied by the vehicle's dragForce, as defined above, and the " + "result is subtracted from it's movement force.\n" + "@note The vertFactor must be between 0.0 and 1.0 (inclusive)."); + addField("stabSpringConstant", TypeF32, Offset(stabSpringConstant, HoverVehicleData), + "Value used to generate stabalizer spring force. The force generated " + "depends on stabilizer compression, that is how close the vehicle is " + "to the ground proportional to current stabalizer length.\n\n" + "@see stabLenMin"); + addField("stabDampingConstant", TypeF32, Offset(stabDampingConstant, HoverVehicleData), + "Damping spring force acting against changes in the stabalizer length.\n\n" + "@see stabLenMin"); + endGroup("Physics"); + + addGroup("Steering"); + addField( "steeringForce", TypeF32, Offset(steeringForce, HoverVehicleData), + "Yaw (rotation about the Z-axis) force applied when steering in the x-axis direction." + "about the vehicle's Z-axis)" ); + addField( "rollForce", TypeF32, Offset(rollForce, HoverVehicleData), + "Roll (rotation about the Y-axis) force applied when steering in the x-axis direction." ); + addField( "pitchForce", TypeF32, Offset(pitchForce, HoverVehicleData), + "Pitch (rotation about the X-axis) force applied when steering in the y-axis direction." ); + addField( "dragForce", TypeF32, Offset(dragForce, HoverVehicleData), "Drag force factor that acts opposite to the vehicle velocity.\nAlso " "used to determnine the vehicle's maxThrustSpeed.\n@see mainThrustForce" ); - addField( "vertFactor", TypeF32, Offset(vertFactor, HoverVehicleData), - "Scalar applied to the vertical portion of the velocity drag acting on " - "the vehicle.\nFor the horizontal (X and Y) components of velocity drag, " - "a factor of 0.25 is applied when the vehicle is floating, and a factor " - "of 1.0 is applied when the vehicle is not floating. This velocity drag " - "is multiplied by the vehicle's dragForce, as defined above, and the " - "result is subtracted from it's movement force.\n" - "@note The vertFactor must be between 0.0 and 1.0 (inclusive)." ); - addField( "floatingThrustFactor", TypeF32, Offset(floatingThrustFactor, HoverVehicleData), - "Scalar applied to the vehicle's thrust force when the vehicle is floating.\n" - "@note The floatingThrustFactor must be between 0.0 and 1.0 (inclusive)." ); - addField( "mainThrustForce", TypeF32, Offset(mainThrustForce, HoverVehicleData), - "Force generated by thrusting the vehicle forward.\nAlso used to determine " - "the maxThrustSpeed:\n\n" - "@tsexample\n" - "maxThrustSpeed = (mainThrustForce + strafeThrustForce) / dragForce;\n" - "@endtsexample\n" ); - addField( "reverseThrustForce", TypeF32, Offset(reverseThrustForce, HoverVehicleData), - "Force generated by thrusting the vehicle backward." ); - addField( "strafeThrustForce", TypeF32, Offset(strafeThrustForce, HoverVehicleData), - "Force generated by thrusting the vehicle to one side.\nAlso used to " - "determine the vehicle's maxThrustSpeed.\n@see mainThrustForce" ); - addField( "turboFactor", TypeF32, Offset(turboFactor, HoverVehicleData), - "Scale factor applied to the vehicle's thrust force when jetting." ); - - addField( "stabLenMin", TypeF32, Offset(stabLenMin, HoverVehicleData), - "Length of the base stabalizer when travelling at minimum speed (0).\n" - "Each tick, the vehicle performs 2 raycasts (from the center back and " - "center front of the vehicle) to check for contact with the ground. The " - "base stabalizer length determines the length of that raycast; if " - "neither raycast hit the ground, the vehicle is floating, stabalizer " - "spring and ground normal forces are not applied.\n\n" - "\n" - "@see stabSpringConstant" ); - addField( "stabLenMax", TypeF32, Offset(stabLenMax, HoverVehicleData), - "Length of the base stabalizer when travelling at maximum speed " - "(maxThrustSpeed).\n\n@see stabLenMin\n\n@see mainThrustForce" ); - - addField( "stabSpringConstant", TypeF32, Offset(stabSpringConstant, HoverVehicleData), - "Value used to generate stabalizer spring force. The force generated " - "depends on stabilizer compression, that is how close the vehicle is " - "to the ground proportional to current stabalizer length.\n\n" - "@see stabLenMin" ); - addField( "stabDampingConstant", TypeF32, Offset(stabDampingConstant, HoverVehicleData), - "Damping spring force acting against changes in the stabalizer length.\n\n" - "@see stabLenMin" ); + addField( "mainThrustForce", TypeF32, Offset(mainThrustForce, HoverVehicleData), + "Force generated by thrusting the vehicle forward.\nAlso used to determine " + "the maxThrustSpeed:\n\n" + "@tsexample\n" + "maxThrustSpeed = (mainThrustForce + strafeThrustForce) / dragForce;\n" + "@endtsexample\n" ); + addField( "reverseThrustForce", TypeF32, Offset(reverseThrustForce, HoverVehicleData), + "Force generated by thrusting the vehicle backward." ); + addField( "strafeThrustForce", TypeF32, Offset(strafeThrustForce, HoverVehicleData), + "Force generated by thrusting the vehicle to one side.\nAlso used to " + "determine the vehicle's maxThrustSpeed.\n@see mainThrustForce" ); + addField( "turboFactor", TypeF32, Offset(turboFactor, HoverVehicleData), + "Scale factor applied to the vehicle's thrust force when jetting." ); + addField( "floatingThrustFactor", TypeF32, Offset(floatingThrustFactor, HoverVehicleData), + "Scalar applied to the vehicle's thrust force when the vehicle is floating.\n" + "@note The floatingThrustFactor must be between 0.0 and 1.0 (inclusive)." ); + endGroup("Steering"); + addGroup("AutoCorrection"); addField( "gyroDrag", TypeF32, Offset(gyroDrag, HoverVehicleData), "Damping torque that acts against the vehicle's current angular momentum." ); - addField( "normalForce", TypeF32, Offset(normalForce, HoverVehicleData), - "Force generated in the ground normal direction when the vehicle is not " - "floating (within stabalizer length from the ground).\n\n" - "@see stabLenMin" ); addField( "restorativeForce", TypeF32, Offset(restorativeForce, HoverVehicleData), "Force generated to stabalize the vehicle (return it to neutral pitch/roll) " "when the vehicle is floating (more than stabalizer length from the " "ground.\n\n@see stabLenMin" ); - addField( "steeringForce", TypeF32, Offset(steeringForce, HoverVehicleData), - "Yaw (rotation about the Z-axis) force applied when steering in the x-axis direction." - "about the vehicle's Z-axis)" ); - addField( "rollForce", TypeF32, Offset(rollForce, HoverVehicleData), - "Roll (rotation about the Y-axis) force applied when steering in the x-axis direction." ); - addField( "pitchForce", TypeF32, Offset(pitchForce, HoverVehicleData), - "Pitch (rotation about the X-axis) force applied when steering in the y-axis direction." ); + endGroup("AutoCorrection"); - INITPERSISTFIELD_SOUNDASSET_ENUMED(HoverSounds, hoverSoundsEnum, Sounds::MaxSounds, HoverVehicleData, "Sounds for hover vehicle."); - + addGroup("Particle Effects"); addField( "dustTrailEmitter", TYPEID< ParticleEmitterData >(), Offset(dustTrailEmitter, HoverVehicleData), "Emitter to generate particles for the vehicle's dust trail.\nThe trail " "of dust particles is generated only while the vehicle is moving." ); + addField( "forwardJetEmitter", TYPEID< ParticleEmitterData >(), Offset(jetEmitter[ForwardJetEmitter], HoverVehicleData), + "Emitter to generate particles for forward jet thrust.\nForward jet " + "thrust particles are emitted from model nodes JetNozzle0 and JetNozzle1." ); addField( "dustTrailOffset", TypePoint3F, Offset(dustTrailOffset, HoverVehicleData), "\"X Y Z\" offset from the vehicle's origin from which to generate dust " "trail particles.\nBy default particles are emitted directly beneath the " @@ -261,23 +270,11 @@ void HoverVehicleData::initPersistFields() "vehicle's speed is divided by this value to determine how many particles " "to generate each frame. Lower values give a more dense trail, higher " "values a more sparse trail." ); + endGroup("Sounds"); - addField( "floatingGravMag", TypeF32, Offset(floatingGravMag, HoverVehicleData), - "Scale factor applied to the vehicle gravitational force when the vehicle " - "is floating.\n\n@see stabLenMin" ); - addField( "brakingForce", TypeF32, Offset(brakingForce, HoverVehicleData), - "Force generated by braking.\nThe vehicle is considered to be braking if " - "it is moving, but the throttle is off, and no left or right thrust is " - "being applied. This force is only applied when the vehicle's velocity is " - "less than brakingActivationSpeed." ); - addField( "brakingActivationSpeed", TypeF32, Offset(brakingActivationSpeed, HoverVehicleData), - "Maximum speed below which a braking force is applied.\n\n@see brakingForce" ); - - addField( "forwardJetEmitter", TYPEID< ParticleEmitterData >(), Offset(jetEmitter[ForwardJetEmitter], HoverVehicleData), - "Emitter to generate particles for forward jet thrust.\nForward jet " - "thrust particles are emitted from model nodes JetNozzle0 and JetNozzle1." ); - - Parent::initPersistFields(); + addGroup("Particle Effects"); + INITPERSISTFIELD_SOUNDASSET_ENUMED(HoverSounds, hoverSoundsEnum, Sounds::MaxSounds, HoverVehicleData, "Sounds for hover vehicle."); + endGroup("Sounds"); } diff --git a/Engine/source/T3D/vehicles/vehicle.cpp b/Engine/source/T3D/vehicles/vehicle.cpp index 2509ab291..82e7d09d4 100644 --- a/Engine/source/T3D/vehicles/vehicle.cpp +++ b/Engine/source/T3D/vehicles/vehicle.cpp @@ -127,7 +127,6 @@ ConsoleDocClass( VehicleData, VehicleData::VehicleData() { - shadowEnable = true; shadowSize = 256; shadowProjectionDistance = 14.0f; maxSteeringAngle = M_PI_F/4.0f; // 45 deg. @@ -275,30 +274,10 @@ void VehicleData::unpackData(BitStream* stream) void VehicleData::initPersistFields() { - addGroup("Physics"); - addField("enablePhysicsRep", TypeBool, Offset(enablePhysicsRep, VehicleData), - "@brief Creates a representation of the object in the physics plugin.\n"); - endGroup("Physics"); - - addField( "jetForce", TypeF32, Offset(jetForce, VehicleData), - "@brief Additional force applied to the vehicle when it is jetting.\n\n" - "For WheeledVehicles, the force is applied in the forward direction. For " - "FlyingVehicles, the force is applied in the thrust direction." ); - addField( "jetEnergyDrain", TypeF32, Offset(jetEnergyDrain, VehicleData), - "@brief Energy amount to drain for each tick the vehicle is jetting.\n\n" - "Once the vehicle's energy level reaches 0, it will no longer be able to jet." ); - addField( "minJetEnergy", TypeF32, Offset(minJetEnergy, VehicleData), - "Minimum vehicle energy level to begin jetting." ); - - addField( "steeringReturn", TypeF32, Offset(steeringReturn, VehicleData), - "Rate at which the vehicle's steering returns to forwards when it is moving." ); - addField( "steeringReturnSpeedScale", TypeF32, Offset(steeringReturnSpeedScale, VehicleData), - "Amount of effect the vehicle's speed has on its rate of steering return." ); - addField( "powerSteering", TypeBool, Offset(powerSteering, VehicleData), - "If true, steering does not auto-centre while the vehicle is being steered by its driver." ); - addField( "maxSteeringAngle", TypeF32, Offset(maxSteeringAngle, VehicleData), - "Maximum yaw (horizontal) and pitch (vertical) steering angle in radians." ); + docsURL; + Parent::initPersistFields(); + addGroup("Particle Effects"); addField( "damageEmitter", TYPEID< ParticleEmitterData >(), Offset(damageEmitterList, VehicleData), VC_NUM_DAMAGE_EMITTERS, "@brief Array of particle emitters used to generate damage (dust, smoke etc) " "effects.\n\n" @@ -326,13 +305,43 @@ void VehicleData::initPersistFields() addField( "numDmgEmitterAreas", TypeF32, Offset(numDmgEmitterAreas, VehicleData), "Number of damageEmitterOffset values to use for each damageEmitter.\n\n" "@see damageEmitterOffset" ); + endGroup("Particle Effects"); + + addGroup("Physics"); + addField("enablePhysicsRep", TypeBool, Offset(enablePhysicsRep, VehicleData), + "@brief Creates a representation of the object in the physics plugin.\n"); + endGroup("Physics"); + + addGroup("Collision"); addField( "collDamageThresholdVel", TypeF32, Offset(collDamageThresholdVel, VehicleData), "Minimum collision velocity to cause damage to this vehicle.\nCurrently unused." ); addField( "collDamageMultiplier", TypeF32, Offset(collDamageMultiplier, VehicleData), "@brief Damage to this vehicle after a collision (multiplied by collision " "velocity).\n\nCurrently unused." ); + endGroup("Collision"); - Parent::initPersistFields(); + addGroup("Steering"); + addField( "jetForce", TypeF32, Offset(jetForce, VehicleData), + "@brief Additional force applied to the vehicle when it is jetting.\n\n" + "For WheeledVehicles, the force is applied in the forward direction. For " + "FlyingVehicles, the force is applied in the thrust direction." ); + addField( "jetEnergyDrain", TypeF32, Offset(jetEnergyDrain, VehicleData), + "@brief Energy amount to drain for each tick the vehicle is jetting.\n\n" + "Once the vehicle's energy level reaches 0, it will no longer be able to jet." ); + addField( "minJetEnergy", TypeF32, Offset(minJetEnergy, VehicleData), + "Minimum vehicle energy level to begin jetting." ); + addField( "maxSteeringAngle", TypeF32, Offset(maxSteeringAngle, VehicleData), + "Maximum yaw (horizontal) and pitch (vertical) steering angle in radians." ); + endGroup("Steering"); + + addGroup("AutoCorrection"); + addField( "powerSteering", TypeBool, Offset(powerSteering, VehicleData), + "If true, steering does not auto-centre while the vehicle is being steered by its driver." ); + addField( "steeringReturn", TypeF32, Offset(steeringReturn, VehicleData), + "Rate at which the vehicle's steering returns to forwards when it is moving." ); + addField( "steeringReturnSpeedScale", TypeF32, Offset(steeringReturnSpeedScale, VehicleData), + "Amount of effect the vehicle's speed has on its rate of steering return." ); + endGroup("AutoCorrection"); } @@ -1100,6 +1109,7 @@ void Vehicle::consoleInit() void Vehicle::initPersistFields() { + docsURL; addField( "disableMove", TypeBool, Offset(mDisableMove, Vehicle), "When this flag is set, the vehicle will ignore throttle changes." ); diff --git a/Engine/source/T3D/vehicles/vehicleBlocker.cpp b/Engine/source/T3D/vehicles/vehicleBlocker.cpp index a31969d1b..6c8b17bd1 100644 --- a/Engine/source/T3D/vehicles/vehicleBlocker.cpp +++ b/Engine/source/T3D/vehicles/vehicleBlocker.cpp @@ -59,6 +59,7 @@ VehicleBlocker::~VehicleBlocker() //-------------------------------------------------------------------------- void VehicleBlocker::initPersistFields() { + docsURL; addField("dimensions", TypePoint3F, Offset(mDimensions, VehicleBlocker)); Parent::initPersistFields(); } diff --git a/Engine/source/T3D/vehicles/wheeledVehicle.cpp b/Engine/source/T3D/vehicles/wheeledVehicle.cpp index fc7ed88ae..b11c040f9 100644 --- a/Engine/source/T3D/vehicles/wheeledVehicle.cpp +++ b/Engine/source/T3D/vehicles/wheeledVehicle.cpp @@ -112,6 +112,7 @@ bool WheeledVehicleTire::preload(bool server, String &errorStr) void WheeledVehicleTire::initPersistFields() { + docsURL; INITPERSISTFIELD_SHAPEASSET(Shape, WheeledVehicleTire, "The shape to use for the wheel."); addField( "mass", TypeF32, Offset(mass, WheeledVehicleTire), @@ -233,6 +234,7 @@ WheeledVehicleSpring::WheeledVehicleSpring() void WheeledVehicleSpring::initPersistFields() { + docsURL; addField( "length", TypeF32, Offset(length, WheeledVehicleSpring), "@brief Maximum spring length. ie. how far the wheel can extend from the " "root hub position.\n\n" @@ -448,13 +450,20 @@ bool WheeledVehicleData::mirrorWheel(Wheel* we) void WheeledVehicleData::initPersistFields() { + docsURL; + Parent::initPersistFields(); + + addGroup("Particle Effects"); + addField("tireEmitter", TYPEID< ParticleEmitterData >(), Offset(tireEmitter, WheeledVehicleData), + "ParticleEmitterData datablock used to generate particles from each wheel " + "when the vehicle is moving and the wheel is in contact with the ground."); + endGroup("Particle Effects"); + addGroup("Sounds"); INITPERSISTFIELD_SOUNDASSET_ENUMED(WheeledVehicleSounds, WheeledVehicleSoundsEnum, MaxSounds, WheeledVehicleData, "Sounds related to wheeled vehicle."); endGroup("Sounds"); - addField("tireEmitter",TYPEID< ParticleEmitterData >(), Offset(tireEmitter, WheeledVehicleData), - "ParticleEmitterData datablock used to generate particles from each wheel " - "when the vehicle is moving and the wheel is in contact with the ground."); + addGroup("Steering"); addField("maxWheelSpeed", TypeF32, Offset(maxWheelSpeed, WheeledVehicleData), "@brief Maximum linear velocity of each wheel.\n\n" "This caps the maximum speed of the vehicle." ); @@ -468,8 +477,7 @@ void WheeledVehicleData::initPersistFields() addField("brakeTorque", TypeF32, Offset(brakeTorque, WheeledVehicleData), "@brief Torque applied when braking.\n\n" "This controls how fast the vehicle will stop when the brakes are applied." ); - - Parent::initPersistFields(); + endGroup("Steering"); } @@ -555,6 +563,7 @@ WheeledVehicle::~WheeledVehicle() void WheeledVehicle::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/T3D/zone.cpp b/Engine/source/T3D/zone.cpp index 936df171f..97078d5ec 100644 --- a/Engine/source/T3D/zone.cpp +++ b/Engine/source/T3D/zone.cpp @@ -85,6 +85,7 @@ void Zone::consoleInit() #ifdef TORQUE_TOOLS void Zone::initPersistFields() { + docsURL; addProtectedField("selectAll", TypeBool, Offset(mSelecting, Zone), &_doSelect, &defaultProtectedGetFn, "Select all in this zone", AbstractClassRep::FieldFlags::FIELD_ComponentInspectors); diff --git a/Engine/source/Verve/Core/VController.cpp b/Engine/source/Verve/Core/VController.cpp index abb84fbb9..4baa4e7df 100644 --- a/Engine/source/Verve/Core/VController.cpp +++ b/Engine/source/Verve/Core/VController.cpp @@ -60,8 +60,9 @@ VController::~VController( void ) // Void. } -void VController::initPersistFields( void ) +void VController::initPersistFields() { + docsURL; addGroup( "Controller" ); addProtectedField( "Time", TypeS32, Offset( mTime, VController ), &setTime, &defaultProtectedGetFn, "Current position of the Controller (in milliseconds)." ); addProtectedField( "Duration", TypeS32, Offset( mDuration, VController ), &setDuration, &defaultProtectedGetFn, "Total length of the sequence (in milliseconds)." ); diff --git a/Engine/source/Verve/Core/VController.h b/Engine/source/Verve/Core/VController.h index d6996c8ef..ca6ea13dd 100644 --- a/Engine/source/Verve/Core/VController.h +++ b/Engine/source/Verve/Core/VController.h @@ -152,7 +152,7 @@ public: VController(); ~VController(); - static void initPersistFields( void ); + static void initPersistFields(); // ITickable. diff --git a/Engine/source/Verve/Core/VEvent.cpp b/Engine/source/Verve/Core/VEvent.cpp index 6b4e8ed54..3f7fab3cd 100644 --- a/Engine/source/Verve/Core/VEvent.cpp +++ b/Engine/source/Verve/Core/VEvent.cpp @@ -40,8 +40,9 @@ VEvent::VEvent( void ) : setLabel( "DefaultEvent" ); } -void VEvent::initPersistFields( void ) +void VEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addProtectedField( "TriggerTime", TypeS32, Offset( mTriggerTime, VEvent ), &setTriggerTime, &defaultProtectedGetFn, "The time that this event is triggered." ); @@ -403,4 +404,4 @@ void VEvent::setDuration( const S32 &pDuration ) // Apply Duration. mDuration = pDuration; -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Core/VEvent.h b/Engine/source/Verve/Core/VEvent.h index 7a1914f04..a5ac75aab 100644 --- a/Engine/source/Verve/Core/VEvent.h +++ b/Engine/source/Verve/Core/VEvent.h @@ -48,7 +48,7 @@ public: VEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Controller Methods. diff --git a/Engine/source/Verve/Core/VObject.cpp b/Engine/source/Verve/Core/VObject.cpp index 248ed5032..09b52b672 100644 --- a/Engine/source/Verve/Core/VObject.cpp +++ b/Engine/source/Verve/Core/VObject.cpp @@ -42,8 +42,9 @@ VObject::~VObject( void ) remove(); } -void VObject::initPersistFields( void ) +void VObject::initPersistFields() { + docsURL; // Don't Use Parent Fields. // Parent::initPersistFields(); diff --git a/Engine/source/Verve/Core/VObject.h b/Engine/source/Verve/Core/VObject.h index f42b5cae7..18b9989d2 100644 --- a/Engine/source/Verve/Core/VObject.h +++ b/Engine/source/Verve/Core/VObject.h @@ -66,7 +66,7 @@ public: VObject( void ); virtual ~VObject( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Reference Methods. diff --git a/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.cpp b/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.cpp index b40460871..41255eec9 100644 --- a/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.cpp +++ b/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.cpp @@ -38,8 +38,9 @@ VShapeAnimationEvent::VShapeAnimationEvent( void ) : //----------------------------------------------------------------------------- -void VShapeAnimationEvent::initPersistFields( void ) +void VShapeAnimationEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "AnimationData", TypeRealString, Offset( mAnimationData, VShapeAnimationEvent ), "The name of the Animation Sequence to play upon triggering." ); @@ -151,4 +152,4 @@ F32 VShapeAnimationEvent::getAnimationPosition( const S32 &pTime ) const S32 loopInterp = S32( mDuration * interp ) % duration; return ( F32 )loopInterp / ( F32 )duration; -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.h b/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.h index 9146836e9..5c08da976 100644 --- a/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.h +++ b/Engine/source/Verve/Extension/Animation/VShapeAnimationEvent.h @@ -46,7 +46,7 @@ public: VShapeAnimationEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Callback Methods. diff --git a/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.cpp b/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.cpp index caeff5b38..627502112 100644 --- a/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.cpp +++ b/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.cpp @@ -38,8 +38,9 @@ VShapeAnimationTrack::VShapeAnimationTrack( void ) : //----------------------------------------------------------------------------- -void VShapeAnimationTrack::initPersistFields( void ) +void VShapeAnimationTrack::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "ThreadIndex", TypeS32, Offset( mThreadIndex, VShapeAnimationTrack ), "The index of the Animation Thread to play." ); diff --git a/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.h b/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.h index 3b9cf7bce..6eb08a253 100644 --- a/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.h +++ b/Engine/source/Verve/Extension/Animation/VShapeAnimationTrack.h @@ -43,7 +43,7 @@ public: VShapeAnimationTrack( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Controller Methods. diff --git a/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.cpp b/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.cpp index 88c528d27..58d9923e7 100644 --- a/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.cpp +++ b/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.cpp @@ -39,8 +39,9 @@ VCameraShakeEvent::VCameraShakeEvent( void ) : setLabel( "CameraShakeEvent" ); } -void VCameraShakeEvent::initPersistFields( void ) +void VCameraShakeEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Amplitude", TypePoint3F, Offset( mAmplitude, VCameraShakeEvent ), "Amplitude of the Camera Shake event." ); @@ -80,4 +81,4 @@ void VCameraShakeEvent::onTrigger( const S32 &pTime, const S32 &pDelta ) // Shake Camera. VTorque::startCameraShake( duration, mFalloff, mAmplitude, mFrequency ); -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.h b/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.h index 9a8af7899..6d0d15ad8 100644 --- a/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.h +++ b/Engine/source/Verve/Extension/Camera/VCameraShakeEvent.h @@ -43,7 +43,7 @@ public: VCameraShakeEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/Director/VDirectorEvent.cpp b/Engine/source/Verve/Extension/Director/VDirectorEvent.cpp index 9030b4018..c9c4677c6 100644 --- a/Engine/source/Verve/Extension/Director/VDirectorEvent.cpp +++ b/Engine/source/Verve/Extension/Director/VDirectorEvent.cpp @@ -35,8 +35,9 @@ VDirectorEvent::VDirectorEvent( void ) : // Void. } -void VDirectorEvent::initPersistFields( void ) +void VDirectorEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Target", TypeRealString, Offset( mTarget, VDirectorEvent ), "The name of the CameraGroup that will be activated upon triggering." ); @@ -72,4 +73,4 @@ void VDirectorEvent::onTrigger( const S32 &pTime, const S32 &pDelta ) // Change Camera. targetGroup->setActive(); -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/Director/VDirectorEvent.h b/Engine/source/Verve/Extension/Director/VDirectorEvent.h index e890e5a06..9df880e8d 100644 --- a/Engine/source/Verve/Extension/Director/VDirectorEvent.h +++ b/Engine/source/Verve/Extension/Director/VDirectorEvent.h @@ -45,7 +45,7 @@ public: VDirectorEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/Director/VSceneJumpEvent.cpp b/Engine/source/Verve/Extension/Director/VSceneJumpEvent.cpp index 09df231b1..a9221cedb 100644 --- a/Engine/source/Verve/Extension/Director/VSceneJumpEvent.cpp +++ b/Engine/source/Verve/Extension/Director/VSceneJumpEvent.cpp @@ -38,8 +38,9 @@ VSceneJumpEvent::VSceneJumpEvent( void ) : setLabel( "SceneJumpEvent" ); } -void VSceneJumpEvent::initPersistFields( void ) +void VSceneJumpEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Target", TypeRealString, Offset( mTarget, VSceneJumpEvent ), "The name of the Scene that the controller will jump to upon triggering." ); @@ -79,4 +80,4 @@ void VSceneJumpEvent::onTrigger( const S32 &pTime, const S32 &pDelta ) // Go To Scene. getController()->jump( VController::k_JumpTime, event->getTriggerTime() ); -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/Director/VSceneJumpEvent.h b/Engine/source/Verve/Extension/Director/VSceneJumpEvent.h index bf7b597bf..f8d8765e9 100644 --- a/Engine/source/Verve/Extension/Director/VSceneJumpEvent.h +++ b/Engine/source/Verve/Extension/Director/VSceneJumpEvent.h @@ -41,7 +41,7 @@ public: VSceneJumpEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/Director/VSlowMoEvent.cpp b/Engine/source/Verve/Extension/Director/VSlowMoEvent.cpp index 3427bda43..6b407d363 100644 --- a/Engine/source/Verve/Extension/Director/VSlowMoEvent.cpp +++ b/Engine/source/Verve/Extension/Director/VSlowMoEvent.cpp @@ -36,8 +36,9 @@ VSlowMoEvent::VSlowMoEvent( void ) : setLabel( "SlowMoEvent" ); } -void VSlowMoEvent::initPersistFields( void ) +void VSlowMoEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "TimeScale", TypeF32, Offset( mTimeScale, VSlowMoEvent ), "The Time Scale to be applied to the Root Controller." ); @@ -127,4 +128,4 @@ void VSlowMoEvent::onComplete( const S32 &pTime, const S32 &pDelta ) // Tidy Up. controller->setTimeScale( mTimeScale ); -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/Director/VSlowMoEvent.h b/Engine/source/Verve/Extension/Director/VSlowMoEvent.h index 1cdf75889..37f62e3c9 100644 --- a/Engine/source/Verve/Extension/Director/VSlowMoEvent.h +++ b/Engine/source/Verve/Extension/Director/VSlowMoEvent.h @@ -42,7 +42,7 @@ public: VSlowMoEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.cpp b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.cpp index 92218060a..0826c77eb 100644 --- a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.cpp +++ b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.cpp @@ -34,8 +34,9 @@ VSpawnSphereSpawnTargetEvent::VSpawnSphereSpawnTargetEvent( void ) setLabel( "SpawnTargetEvent" ); } -void VSpawnSphereSpawnTargetEvent::initPersistFields( void ) +void VSpawnSphereSpawnTargetEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -65,4 +66,4 @@ void VSpawnSphereSpawnTargetEvent::onTrigger( const S32 &pTime, const S32 &pDelt // Spawn the Target. track->spawnTarget(); -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.h b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.h index 60b39952d..e19fd6861 100644 --- a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.h +++ b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetEvent.h @@ -40,7 +40,7 @@ public: VSpawnSphereSpawnTargetEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.cpp b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.cpp index 220362290..b0a2078e8 100644 --- a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.cpp +++ b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.cpp @@ -34,8 +34,9 @@ VSpawnSphereSpawnTargetTrack::VSpawnSphereSpawnTargetTrack( void ) setLabel( "SpawnTargetTrack" ); } -void VSpawnSphereSpawnTargetTrack::initPersistFields( void ) +void VSpawnSphereSpawnTargetTrack::initPersistFields() { + docsURL; // Parent Call. Parent::initPersistFields(); diff --git a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.h b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.h index 0df6f2ae5..36efd32fd 100644 --- a/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.h +++ b/Engine/source/Verve/Extension/Game/VSpawnSphereSpawnTargetTrack.h @@ -48,7 +48,7 @@ public: VSpawnSphereSpawnTargetTrack( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Controller Methods. diff --git a/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.cpp b/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.cpp index 94f34c350..a6f99d47a 100644 --- a/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.cpp +++ b/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.cpp @@ -36,8 +36,9 @@ VLightObjectAnimationEvent::VLightObjectAnimationEvent( void ) : setLabel( "AnimationEvent" ); } -void VLightObjectAnimationEvent::initPersistFields( void ) +void VLightObjectAnimationEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "AnimationData", TYPEID(), Offset( mAnimationData, VLightObjectAnimationEvent ) ); @@ -89,4 +90,4 @@ void VLightObjectAnimationEvent::onComplete( const S32 &pTime, const S32 &pDelta // Pause the Animation. VTorque::pauseAnimation( lightObject ); } -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.h b/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.h index 18162ff2c..1f1e328bd 100644 --- a/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.h +++ b/Engine/source/Verve/Extension/LightObject/VLightObjectAnimationEvent.h @@ -45,7 +45,7 @@ public: VLightObjectAnimationEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.cpp b/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.cpp index 4e1475a5f..3d9f5179b 100644 --- a/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.cpp +++ b/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.cpp @@ -34,8 +34,9 @@ VLightObjectToggleEvent::VLightObjectToggleEvent( void ) : setLabel( "ToggleEvent" ); } -void VLightObjectToggleEvent::initPersistFields( void ) +void VLightObjectToggleEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Action", TYPEID(), Offset( mEventType, VLightObjectToggleEvent ) ); @@ -67,4 +68,4 @@ void VLightObjectToggleEvent::onTrigger( const S32 &pTime, const S32 &pDelta ) // Toggle Light. VTorque::setLightObjectOn( lightObject, turnOn ); } -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.h b/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.h index 382aee1c7..8be55ae9e 100644 --- a/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.h +++ b/Engine/source/Verve/Extension/LightObject/VLightObjectToggleEvent.h @@ -49,7 +49,7 @@ public: VLightObjectToggleEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/Motion/VMotionTrack.cpp b/Engine/source/Verve/Extension/Motion/VMotionTrack.cpp index cc33f12db..bfc446146 100644 --- a/Engine/source/Verve/Extension/Motion/VMotionTrack.cpp +++ b/Engine/source/Verve/Extension/Motion/VMotionTrack.cpp @@ -39,8 +39,9 @@ VMotionTrack::VMotionTrack( void ) : setLabel( "MotionTrack" ); } -void VMotionTrack::initPersistFields( void ) +void VMotionTrack::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Reference", TypeRealString, Offset( mDataReference, VMotionTrack ), "The name of the data field referencing the object to be attached to the path." ); diff --git a/Engine/source/Verve/Extension/Motion/VMotionTrack.h b/Engine/source/Verve/Extension/Motion/VMotionTrack.h index b0fc25c34..7531f7cfa 100644 --- a/Engine/source/Verve/Extension/Motion/VMotionTrack.h +++ b/Engine/source/Verve/Extension/Motion/VMotionTrack.h @@ -53,7 +53,7 @@ public: VMotionTrack( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Controller Methods. diff --git a/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.cpp b/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.cpp index 658f3b5d0..c4c1c3b2c 100644 --- a/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.cpp +++ b/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.cpp @@ -34,8 +34,9 @@ VParticleEffectToggleEvent::VParticleEffectToggleEvent( void ) : setLabel( "ToggleEvent" ); } -void VParticleEffectToggleEvent::initPersistFields( void ) +void VParticleEffectToggleEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Action", TYPEID(), Offset( mEventType, VParticleEffectToggleEvent ) ); @@ -67,4 +68,4 @@ void VParticleEffectToggleEvent::onTrigger( const S32 &pTime, const S32 &pDelta // Toggle Particle Effect. VTorque::setParticleEffectOn( particleEffect, turnOn ); } -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.h b/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.h index e4028413a..73d4b2a92 100644 --- a/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.h +++ b/Engine/source/Verve/Extension/ParticleEffect/VParticleEffectToggleEvent.h @@ -49,7 +49,7 @@ public: VParticleEffectToggleEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.cpp b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.cpp index 5e5d65d40..c865b74c1 100644 --- a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.cpp +++ b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.cpp @@ -36,8 +36,9 @@ VPostEffectToggleEvent::VPostEffectToggleEvent( void ) : setLabel( "ToggleEvent" ); } -void VPostEffectToggleEvent::initPersistFields( void ) +void VPostEffectToggleEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Action", TYPEID(), Offset( mEventType, VPostEffectToggleEvent ) ); @@ -74,4 +75,4 @@ void VPostEffectToggleEvent::onTrigger( const S32 &pTime, const S32 &pDelta ) // Enable Effect. VTorque::setPostEffectOn( track->getPostEffect(), turnOn ); -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.h b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.h index 66668307b..714c76c58 100644 --- a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.h +++ b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleEvent.h @@ -49,7 +49,7 @@ public: VPostEffectToggleEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.cpp b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.cpp index ff2dd52a5..d0404450a 100644 --- a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.cpp +++ b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.cpp @@ -36,8 +36,9 @@ VPostEffectToggleTrack::VPostEffectToggleTrack( void ) : setLabel( "PostEffectTrack" ); } -void VPostEffectToggleTrack::initPersistFields( void ) +void VPostEffectToggleTrack::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "PostEffect", TYPEID(), Offset( mPostEffect, VPostEffectToggleTrack ), "The name of the PostEffect object to be triggered." ); @@ -100,4 +101,4 @@ bool VPostEffectToggleTrack::onCameraEvent( const VCameraGroup::eCameraEventType } return true; -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.h b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.h index 24a531684..e487f0cde 100644 --- a/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.h +++ b/Engine/source/Verve/Extension/PostEffect/VPostEffectToggleTrack.h @@ -45,7 +45,7 @@ public: VPostEffectToggleTrack( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Camera Methods. diff --git a/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.cpp b/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.cpp index 83307cc7b..e6be50610 100644 --- a/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.cpp +++ b/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.cpp @@ -36,8 +36,9 @@ VSceneObjectGroup::VSceneObjectGroup( void ) : setLabel( "SceneObjectGroup" ); }; -void VSceneObjectGroup::initPersistFields( void ) +void VSceneObjectGroup::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "Reference", TypeRealString, Offset( mDataReference, VSceneObjectGroup ), "The name of the data field referencing the targeted object." ); diff --git a/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.h b/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.h index 9af52eef6..cc78d0b4e 100644 --- a/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.h +++ b/Engine/source/Verve/Extension/SceneObject/VSceneObjectGroup.h @@ -48,7 +48,7 @@ public: VSceneObjectGroup( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Reference Methods. diff --git a/Engine/source/Verve/Extension/Script/VScriptEvent.cpp b/Engine/source/Verve/Extension/Script/VScriptEvent.cpp index 69b477466..6fcdb8046 100644 --- a/Engine/source/Verve/Extension/Script/VScriptEvent.cpp +++ b/Engine/source/Verve/Extension/Script/VScriptEvent.cpp @@ -46,8 +46,9 @@ VScriptEvent::VScriptEvent( void ) : setLabel( "ScriptEvent" ); } -void VScriptEvent::initPersistFields( void ) +void VScriptEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "CommandType", TYPEID(), Offset( mCommandType, VScriptEvent ), "The type of command to be evaluated." ); diff --git a/Engine/source/Verve/Extension/Script/VScriptEvent.h b/Engine/source/Verve/Extension/Script/VScriptEvent.h index ee0b139ca..59b7eed55 100644 --- a/Engine/source/Verve/Extension/Script/VScriptEvent.h +++ b/Engine/source/Verve/Extension/Script/VScriptEvent.h @@ -50,7 +50,7 @@ public: VScriptEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Event Methods. diff --git a/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.cpp b/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.cpp index 92c352427..932229e9a 100644 --- a/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.cpp +++ b/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.cpp @@ -36,8 +36,9 @@ VSoundEffectEvent::VSoundEffectEvent( void ) : setLabel( "SoundEvent" ); } -void VSoundEffectEvent::initPersistFields( void ) +void VSoundEffectEvent::initPersistFields() { + docsURL; Parent::initPersistFields(); addProtectedField( "SoundEffect", TYPEID(), Offset( mSoundEffect, VSoundEffectEvent ), &setSoundData, &defaultProtectedGetFn, "" ); @@ -128,4 +129,4 @@ bool VSoundEffectEvent::setSoundData( void *pObject, const char *pArray, const c event->setDuration( 0 ); return false; -} \ No newline at end of file +} diff --git a/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.h b/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.h index 79ea79d65..285fd6084 100644 --- a/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.h +++ b/Engine/source/Verve/Extension/SoundEffect/VSoundEffectEvent.h @@ -50,7 +50,7 @@ public: VSoundEffectEvent( void ); - static void initPersistFields( void ); + static void initPersistFields(); static bool setSoundData( void *pObject, const char *pArray, const char *pData ); diff --git a/Engine/source/Verve/GUI/VEditorButton.cpp b/Engine/source/Verve/GUI/VEditorButton.cpp index d86f86e3f..d166eed86 100644 --- a/Engine/source/Verve/GUI/VEditorButton.cpp +++ b/Engine/source/Verve/GUI/VEditorButton.cpp @@ -36,8 +36,9 @@ VEditorButton::VEditorButton( void ) : // Void. } -void VEditorButton::initPersistFields( void ) +void VEditorButton::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "IsDraggable", TypeBool, Offset( mIsDraggable, VEditorButton ) ); diff --git a/Engine/source/Verve/GUI/VEditorButton.h b/Engine/source/Verve/GUI/VEditorButton.h index 15b3e0dfa..00456956d 100644 --- a/Engine/source/Verve/GUI/VEditorButton.h +++ b/Engine/source/Verve/GUI/VEditorButton.h @@ -39,7 +39,7 @@ public: VEditorButton(); - static void initPersistFields( void ); + static void initPersistFields(); void onMouseDown( const GuiEvent &pEvent ); void onMouseUp( const GuiEvent &pEvent ); diff --git a/Engine/source/Verve/GUI/VTimeLineControl.cpp b/Engine/source/Verve/GUI/VTimeLineControl.cpp index 9bfc7ccfc..1f8e7552e 100644 --- a/Engine/source/Verve/GUI/VTimeLineControl.cpp +++ b/Engine/source/Verve/GUI/VTimeLineControl.cpp @@ -43,8 +43,9 @@ VTimeLineControl::VTimeLineControl( void ) : mSelection.EndTime = 0; } -void VTimeLineControl::initPersistFields( void ) +void VTimeLineControl::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "IsController", TypeBool, Offset( mIsController, VTimeLineControl ) ); diff --git a/Engine/source/Verve/GUI/VTimeLineControl.h b/Engine/source/Verve/GUI/VTimeLineControl.h index 1dd1b9851..865e8f594 100644 --- a/Engine/source/Verve/GUI/VTimeLineControl.h +++ b/Engine/source/Verve/GUI/VTimeLineControl.h @@ -57,7 +57,7 @@ public: VTimeLineControl( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Mouse. diff --git a/Engine/source/Verve/VActor/VActorData.cpp b/Engine/source/Verve/VActor/VActorData.cpp index 24d3b54d1..b3321bfa3 100644 --- a/Engine/source/Verve/VActor/VActorData.cpp +++ b/Engine/source/Verve/VActor/VActorData.cpp @@ -35,7 +35,6 @@ VActorData::VActorData( void ) : mSubmergeCoverage( 0.25f ) { // Setup Shadowing. - shadowEnable = true; shadowSize = 256; shadowProjectionDistance = 14.0f; @@ -48,8 +47,9 @@ VActorData::~VActorData( void ) // Void. } -void VActorData::initPersistFields( void ) +void VActorData::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "MaxStepHeight", TypeF32, Offset( mMaxStepHeight, VActorData ) ); @@ -167,4 +167,4 @@ S32 VActorData::getAnimationSequence( const U32 &pIndex ) // Invalid Sequence. return -1; -}; \ No newline at end of file +}; diff --git a/Engine/source/Verve/VActor/VActorData.h b/Engine/source/Verve/VActor/VActorData.h index 2aaf0fc58..fb3b85028 100644 --- a/Engine/source/Verve/VActor/VActorData.h +++ b/Engine/source/Verve/VActor/VActorData.h @@ -106,7 +106,7 @@ public: VActorData( void ); ~VActorData( void ); - static void initPersistFields( void ); + static void initPersistFields(); virtual bool initAnimationSequenceList( const S32 &pSize, const sAnimationSequence *pTable ); virtual bool initAnimationTransitionList( const S32 &pSize, const sAnimationTransition *pTable ); diff --git a/Engine/source/Verve/VPath/VPath.cpp b/Engine/source/Verve/VPath/VPath.cpp index 965e1c574..3a96010e3 100644 --- a/Engine/source/Verve/VPath/VPath.cpp +++ b/Engine/source/Verve/VPath/VPath.cpp @@ -166,8 +166,9 @@ void VPath::onRemove( void ) Parent::onRemove(); } -void VPath::initPersistFields( void ) +void VPath::initPersistFields() { + docsURL; Parent::initPersistFields(); addProtectedField( "PathType", TYPEID(), Offset( mPathType, VPath ), &setPathType, &defaultProtectedGetFn, "The type of path this is." ); diff --git a/Engine/source/Verve/VPath/VPath.h b/Engine/source/Verve/VPath/VPath.h index 925d88d78..6fa570b92 100644 --- a/Engine/source/Verve/VPath/VPath.h +++ b/Engine/source/Verve/VPath/VPath.h @@ -104,7 +104,7 @@ public: void onDeleteNotify( SimObject *pObject ); void onRemove( void ); - static void initPersistFields( void ); + static void initPersistFields(); static SimSet *getServerSet( void ); diff --git a/Engine/source/Verve/VPath/VPathEditor.cpp b/Engine/source/Verve/VPath/VPathEditor.cpp index 670ab6b0f..05d0eb567 100644 --- a/Engine/source/Verve/VPath/VPathEditor.cpp +++ b/Engine/source/Verve/VPath/VPathEditor.cpp @@ -85,8 +85,9 @@ bool VPathEditor::onWake( void ) return Parent::onWake(); } -void VPathEditor::initPersistFields( void ) +void VPathEditor::initPersistFields() { + docsURL; addField( "IsDirty", TypeBool, Offset( mIsDirty, VPathEditor ) ); addField( "EditMode", TYPEID(), Offset( mEditMode, VPathEditor ) ); diff --git a/Engine/source/Verve/VPath/VPathEditor.h b/Engine/source/Verve/VPath/VPathEditor.h index 9b98af686..47071bd2e 100644 --- a/Engine/source/Verve/VPath/VPathEditor.h +++ b/Engine/source/Verve/VPath/VPathEditor.h @@ -122,7 +122,7 @@ public: virtual bool onAdd( void ); virtual bool onWake( void ); - static void initPersistFields( void ); + static void initPersistFields(); // Gui Events. diff --git a/Engine/source/afx/afxCamera.cpp b/Engine/source/afx/afxCamera.cpp index 50ba064a4..f4f141b5e 100644 --- a/Engine/source/afx/afxCamera.cpp +++ b/Engine/source/afx/afxCamera.cpp @@ -67,6 +67,7 @@ U32 afxCameraData::sCameraCollisionMask = TerrainObjectType | InteriorLikeObject void afxCameraData::initPersistFields() { + docsURL; Con::addVariable("pref::afxCamera::collisionMask", TypeS32, &sCameraCollisionMask); Parent::initPersistFields(); diff --git a/Engine/source/afx/afxChoreographer.cpp b/Engine/source/afx/afxChoreographer.cpp index d1b4d9069..2997f27dd 100644 --- a/Engine/source/afx/afxChoreographer.cpp +++ b/Engine/source/afx/afxChoreographer.cpp @@ -68,6 +68,7 @@ afxChoreographerData::afxChoreographerData(const afxChoreographerData& other, bo void afxChoreographerData::initPersistFields() { + docsURL; addField("execOnNewClients", TypeBool, myOffset(exec_on_new_clients), "..."); addField("echoPacketUsage", TypeS8, myOffset(echo_packet_usage), @@ -178,6 +179,7 @@ afxChoreographer::~afxChoreographer() void afxChoreographer::initPersistFields() { + docsURL; // conditionals addField("extra", TYPEID(), Offset(mExtra, afxChoreographer), "..."); diff --git a/Engine/source/afx/afxEffectGroup.cpp b/Engine/source/afx/afxEffectGroup.cpp index e7677d4a7..2bc5a858e 100644 --- a/Engine/source/afx/afxEffectGroup.cpp +++ b/Engine/source/afx/afxEffectGroup.cpp @@ -140,6 +140,7 @@ void afxEffectGroupData::unpack_fx(BitStream* stream, afxEffectList& fx) void afxEffectGroupData::initPersistFields() { + docsURL; addField("groupEnabled", TypeBool, myOffset(group_enabled), "..."); addField("count", TypeS32, myOffset(group_count), diff --git a/Engine/source/afx/afxEffectWrapper.cpp b/Engine/source/afx/afxEffectWrapper.cpp index 3ec9d855f..d6f516db5 100644 --- a/Engine/source/afx/afxEffectWrapper.cpp +++ b/Engine/source/afx/afxEffectWrapper.cpp @@ -213,6 +213,7 @@ afxEffectWrapperData::~afxEffectWrapperData() void afxEffectWrapperData::initPersistFields() { + docsURL; // the wrapped effect addField("effect", TYPEID(), myOffset(effect_data), "..."); @@ -737,6 +738,7 @@ afxEffectWrapper::~afxEffectWrapper() void afxEffectWrapper::initPersistFields() { + docsURL; addField("liveScaleFactor", TypeF32, myOffset(mLive_scale_factor), "..."); addField("liveFadeFactor", TypeF32, myOffset(mLive_fade_factor), diff --git a/Engine/source/afx/afxEffectron.cpp b/Engine/source/afx/afxEffectron.cpp index f90d20f73..6c9a36299 100644 --- a/Engine/source/afx/afxEffectron.cpp +++ b/Engine/source/afx/afxEffectron.cpp @@ -110,6 +110,7 @@ void afxEffectronData::reloadReset() void afxEffectronData::initPersistFields() { + docsURL; addField("duration", TypeF32, myOffset(duration), "..."); addField("numLoops", TypeS32, myOffset(n_loops), diff --git a/Engine/source/afx/afxMagicMissile.cpp b/Engine/source/afx/afxMagicMissile.cpp index eccb14d8c..09a4e7053 100644 --- a/Engine/source/afx/afxMagicMissile.cpp +++ b/Engine/source/afx/afxMagicMissile.cpp @@ -329,96 +329,81 @@ FRangeValidator missileBallisticCoefficientValidator(0, 1); void afxMagicMissileData::initPersistFields() { + docsURL; static IRangeValidatorScaled ticksFromMS(TickMs, 0, MaxLifetimeTicks); - addField("particleEmitter", TYPEID(), Offset(particleEmitter, afxMagicMissileData)); - addField("particleWaterEmitter", TYPEID(), Offset(particleWaterEmitter, afxMagicMissileData)); + addGroup("Shapes"); + INITPERSISTFIELD_SHAPEASSET(ProjectileShape, afxMagicMissileData, "Shape for the projectile"); + addField("scale", TypePoint3F, Offset(scale, afxMagicMissileData)); + addField("missileShapeScale", TypePoint3F, myOffset(scale)); + endGroup("Shapes"); - INITPERSISTFIELD_SHAPEASSET(ProjectileShape, afxMagicMissileData, "Shape for the projectile"); - addField("scale", TypePoint3F, Offset(scale, afxMagicMissileData)); + addGroup("Particle Effects"); + addField("particleEmitter", TYPEID(), Offset(particleEmitter, afxMagicMissileData)); + addField("particleWaterEmitter", TYPEID(), Offset(particleWaterEmitter, afxMagicMissileData)); + addField("splash", TYPEID(), Offset(splash, afxMagicMissileData)); + endGroup("Particle Effects"); - INITPERSISTFIELD_SOUNDASSET(ProjectileSound, afxMagicMissileData, "sound for the projectile"); + addGroup("Sounds"); + INITPERSISTFIELD_SOUNDASSET(ProjectileSound, afxMagicMissileData, "sound for the projectile"); + endGroup("Sounds"); - /* From stock Projectile code... - addField("explosion", TYPEID< ExplosionData >(), Offset(explosion, ProjectileData)); - addField("waterExplosion", TYPEID< ExplosionData >(), Offset(waterExplosion, ProjectileData)); - */ + addGroup("Light Emitter"); + addField("lightDesc", TYPEID< LightDescription >(), Offset(lightDesc, afxMagicMissileData)); + endGroup("Light Emitter"); - addField("splash", TYPEID(), Offset(splash, afxMagicMissileData)); - /* From stock Projectile code... - addField("decal", TYPEID< DecalData >(), Offset(decal, ProjectileData)); - */ + addGroup("Physics"); + addNamedFieldV(lifetime, TypeS32, afxMagicMissileData, &ticksFromMS); + addFieldV("casterSafetyTime", TypeS32, myOffset(caster_safety_time), &ticksFromMS); + addField("isBallistic", TypeBool, Offset(isBallistic, afxMagicMissileData)); + addNamedFieldV(muzzleVelocity, TypeF32, afxMagicMissileData, &muzzleVelocityValidator); + addNamedFieldV(ballisticCoefficient, TypeF32, afxMagicMissileData, &missileBallisticCoefficientValidator); + addField("gravityMod", TypeF32, Offset(gravityMod, afxMagicMissileData)); + addField("collisionMask", TypeS32, myOffset(collision_mask)); + addField("startingVelocityVector",TypePoint3F, myOffset(starting_vel_vec)); + addNamedField(acceleration, TypeF32, afxMagicMissileData); + addNamedFieldV(accelDelay, TypeS32, afxMagicMissileData, &ticksFromMS); + addNamedFieldV(accelLifetime, TypeS32, afxMagicMissileData, &ticksFromMS); + addField("reverseTargeting", TypeBool, myOffset(reverse_targeting)); + endGroup("Physics"); - addField("lightDesc", TYPEID< LightDescription >(), Offset(lightDesc, afxMagicMissileData)); + addGroup("Physics-Tracking"); + addNamedField(isGuided, TypeBool, afxMagicMissileData); + addNamedFieldV(precision, TypeF32, afxMagicMissileData, &missilePrecisionValidator); + addNamedFieldV(trackDelay, TypeS32, afxMagicMissileData, &missileTrackDelayValidator); + endGroup("Physics-Tracking"); - addField("isBallistic", TypeBool, Offset(isBallistic, afxMagicMissileData)); - /* From stock Projectile code... - addField("velInheritFactor", TypeF32, Offset(velInheritFactor, ProjectileData)); - */ - addNamedFieldV(muzzleVelocity, TypeF32, afxMagicMissileData, &muzzleVelocityValidator); - /* From stock Projectile code... - addField("impactForce", TypeF32, Offset(impactForce, ProjectileData)); - */ - addNamedFieldV(lifetime, TypeS32, afxMagicMissileData, &ticksFromMS); - /* From stock Projectile code... - addProtectedField("armingDelay", TypeS32, Offset(armingDelay, ProjectileData), &setArmingDelay, &getScaledValue, - "The time in milliseconds before the projectile is armed and will cause damage or explode on impact." ); + addGroup("Physics-Avoidance"); + addField("followTerrain", TypeBool, myOffset(followTerrain)); + addField("followTerrainHeight", TypeF32, myOffset(followTerrainHeight)); + addField("followTerrainAdjustRate", TypeF32, myOffset(followTerrainAdjustRate)); + addFieldV("followTerrainAdjustDelay", TypeS32, myOffset(followTerrainAdjustDelay), &ticksFromMS); - addProtectedField("fadeDelay", TypeS32, Offset(fadeDelay, ProjectileData), &setFadeDelay, &getScaledValue, - "The time in milliseconds when the projectile begins to fade out. Must be less than the lifetime to have an effect." ); + addField("hoverAltitude", TypeF32, myOffset(hover_altitude)); + addField("hoverAttackDistance", TypeF32, myOffset(hover_attack_distance)); + addField("hoverAttackGradient", TypeF32, myOffset(hover_attack_gradient)); + addFieldV("hoverTime", TypeS32, myOffset(hover_time), &ticksFromMS); + endGroup("Physics-Avoidance"); - addField("bounceElasticity", TypeF32, Offset(bounceElasticity, ProjectileData)); - addField("bounceFriction", TypeF32, Offset(bounceFriction, ProjectileData)); - */ - addField("gravityMod", TypeF32, Offset(gravityMod, afxMagicMissileData)); - - // FIELDS ADDED BY MAGIC-MISSILE - - //addField("missileShapeName", TypeFilename, myOffset(projectileShapeName)); - addField("missileShapeScale", TypePoint3F, myOffset(scale)); - - addField("startingVelocityVector",TypePoint3F, myOffset(starting_vel_vec)); - - addNamedField(isGuided, TypeBool, afxMagicMissileData); - addNamedFieldV(precision, TypeF32, afxMagicMissileData, &missilePrecisionValidator); - addNamedFieldV(trackDelay, TypeS32, afxMagicMissileData, &missileTrackDelayValidator); - addNamedFieldV(ballisticCoefficient, TypeF32, afxMagicMissileData, &missileBallisticCoefficientValidator); - - addField("collisionMask", TypeS32, myOffset(collision_mask)); - - addField("followTerrain", TypeBool, myOffset(followTerrain)); - addField("followTerrainHeight", TypeF32, myOffset(followTerrainHeight)); - addField("followTerrainAdjustRate", TypeF32, myOffset(followTerrainAdjustRate)); - addFieldV("followTerrainAdjustDelay", TypeS32, myOffset(followTerrainAdjustDelay), &ticksFromMS); - - addNamedField(acceleration, TypeF32, afxMagicMissileData); - addNamedFieldV(accelDelay, TypeS32, afxMagicMissileData, &ticksFromMS); - addNamedFieldV(accelLifetime, TypeS32, afxMagicMissileData, &ticksFromMS); - - addField("launchNode", TypeString, myOffset(launch_node)); - addField("launchOffset", TypePoint3F, myOffset(launch_offset)); - addField("launchOffsetServer",TypePoint3F, myOffset(launch_offset_server)); - addField("launchOffsetClient",TypePoint3F, myOffset(launch_offset_client)); - addField("launchNodeOffset", TypePoint3F, myOffset(launch_node_offset)); - addField("launchAimPitch", TypeF32, myOffset(launch_pitch)); - addField("launchAimPan", TypeF32, myOffset(launch_pan)); - addField("launchConstraintServer", TypeString, myOffset(launch_cons_s_spec)); - addField("launchConstraintClient", TypeString, myOffset(launch_cons_c_spec)); - // - addField("echoLaunchOffset", TypeBool, myOffset(echo_launch_offset)); + addGroup("Physics-Launch"); + addField("launchNode", TypeString, myOffset(launch_node)); + addField("launchOffset", TypePoint3F, myOffset(launch_offset)); + addField("launchOffsetServer",TypePoint3F, myOffset(launch_offset_server)); + addField("launchOffsetClient",TypePoint3F, myOffset(launch_offset_client)); + addField("launchNodeOffset", TypePoint3F, myOffset(launch_node_offset)); + addField("launchAimPitch", TypeF32, myOffset(launch_pitch)); + addField("launchAimPan", TypeF32, myOffset(launch_pan)); + addField("launchConstraintServer", TypeString, myOffset(launch_cons_s_spec)); + addField("launchConstraintClient", TypeString, myOffset(launch_cons_c_spec)); + addField("echoLaunchOffset", TypeBool, myOffset(echo_launch_offset)); + endGroup("Physics-Launch"); + addGroup("Physics-Wiggle"); addField("wiggleMagnitudes", TypeF32Vector, myOffset(wiggle_magnitudes)); addField("wiggleSpeeds", TypeF32Vector, myOffset(wiggle_speeds)); addField("wiggleAxis", TypeString, myOffset(wiggle_axis_string)); + endGroup("Physics-Wiggle"); - addField("hoverAltitude", TypeF32, myOffset(hover_altitude)); - addField("hoverAttackDistance", TypeF32, myOffset(hover_attack_distance)); - addField("hoverAttackGradient", TypeF32, myOffset(hover_attack_gradient)); - addFieldV("hoverTime", TypeS32, myOffset(hover_time), &ticksFromMS); - - addField("reverseTargeting", TypeBool, myOffset(reverse_targeting)); - - addFieldV("casterSafetyTime", TypeS32, myOffset(caster_safety_time), &ticksFromMS); Parent::initPersistFields(); @@ -999,6 +984,7 @@ afxMagicMissile::~afxMagicMissile() //-------------------------------------------------------------------------- void afxMagicMissile::initPersistFields() { + docsURL; addGroup("Physics"); addField("initialPosition", TypePoint3F, Offset(mCurrPosition, afxMagicMissile) , "Initial starting position for this missile."); diff --git a/Engine/source/afx/afxMagicSpell.cpp b/Engine/source/afx/afxMagicSpell.cpp index 9d05f0b80..8d0822b51 100644 --- a/Engine/source/afx/afxMagicSpell.cpp +++ b/Engine/source/afx/afxMagicSpell.cpp @@ -210,6 +210,7 @@ void afxMagicSpellData::reloadReset() void afxMagicSpellData::initPersistFields() { + docsURL; static ewValidator _castingPhrase(CASTING_PHRASE); static ewValidator _launchPhrase(LAUNCH_PHRASE); static ewValidator _deliveryPhrase(DELIVERY_PHRASE); @@ -980,6 +981,7 @@ void afxMagicSpell::onDeleteNotify(SimObject* obj) // static void afxMagicSpell::initPersistFields() { + docsURL; addField("caster", TYPEID(), Offset(mCaster_field, afxMagicSpell), "..."); addField("target", TYPEID(), Offset(mTarget_field, afxMagicSpell), diff --git a/Engine/source/afx/afxSelectron.cpp b/Engine/source/afx/afxSelectron.cpp index 1b6194b9a..1aa182f6c 100644 --- a/Engine/source/afx/afxSelectron.cpp +++ b/Engine/source/afx/afxSelectron.cpp @@ -148,6 +148,7 @@ void afxSelectronData::reloadReset() void afxSelectronData::initPersistFields() { + docsURL; static ewValidator _mainPhrase(MAIN_PHRASE); static ewValidator _selectPhrase(SELECT_PHRASE); static ewValidator _deselectPhrase(DESELECT_PHRASE); diff --git a/Engine/source/afx/afxSpellBook.cpp b/Engine/source/afx/afxSpellBook.cpp index 190c01fea..35d207c57 100644 --- a/Engine/source/afx/afxSpellBook.cpp +++ b/Engine/source/afx/afxSpellBook.cpp @@ -64,6 +64,7 @@ afxSpellBookData::afxSpellBookData() void afxSpellBookData::initPersistFields() { + docsURL; addField("spellsPerPage", TypeS8, myOffset(spells_per_page), "..."); addField("pagesPerBook", TypeS8, myOffset(pages_per_book), @@ -172,6 +173,7 @@ afxSpellBook::~afxSpellBook() void afxSpellBook::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/afx/ce/afxAnimClip.cpp b/Engine/source/afx/ce/afxAnimClip.cpp index ed9561f2b..5adb7642a 100644 --- a/Engine/source/afx/ce/afxAnimClip.cpp +++ b/Engine/source/afx/ce/afxAnimClip.cpp @@ -101,6 +101,7 @@ void afxAnimClipData::onStaticModified(const char* slot, const char* newValue) void afxAnimClipData::initPersistFields() { + docsURL; addField("clipName", TYPEID< StringTableEntry >(), myOffset(clip_name), "The name of an animation sequence to be played by a ShapeBase-derived object to which this effect is " "constrained. Also works on afxModel effects.\n" diff --git a/Engine/source/afx/ce/afxAnimLock.cpp b/Engine/source/afx/ce/afxAnimLock.cpp index cd5da6654..2fd394ef4 100644 --- a/Engine/source/afx/ce/afxAnimLock.cpp +++ b/Engine/source/afx/ce/afxAnimLock.cpp @@ -70,6 +70,7 @@ afxAnimLockData::afxAnimLockData() void afxAnimLockData::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/afx/ce/afxAreaDamage.cpp b/Engine/source/afx/ce/afxAreaDamage.cpp index bd63045c4..6699f3793 100644 --- a/Engine/source/afx/ce/afxAreaDamage.cpp +++ b/Engine/source/afx/ce/afxAreaDamage.cpp @@ -74,6 +74,7 @@ afxAreaDamageData::afxAreaDamageData(const afxAreaDamageData& other, bool temp_c void afxAreaDamageData::initPersistFields() { + docsURL; addField("flavor", TypeString, myOffset(flavor), "An arbitrary string which is passed as an argument to a spell's onDamage() script " "method. It is used to classify a type of damage such as 'melee', 'magical', or " diff --git a/Engine/source/afx/ce/afxAudioBank.cpp b/Engine/source/afx/ce/afxAudioBank.cpp index 82537419d..6398e8166 100644 --- a/Engine/source/afx/ce/afxAudioBank.cpp +++ b/Engine/source/afx/ce/afxAudioBank.cpp @@ -121,6 +121,7 @@ void afxAudioBank::onPerformSubstitutions() void afxAudioBank::initPersistFields() { + docsURL; addField("path", TypeFilename, Offset(mPath, afxAudioBank), "A filesystem path to the folder containing the sound files specified by the " "filenames[] field. All sound files used in a single AudioBank must be located in " diff --git a/Engine/source/afx/ce/afxBillboard.cpp b/Engine/source/afx/ce/afxBillboard.cpp index c0092c389..ce541f4b1 100644 --- a/Engine/source/afx/ce/afxBillboard.cpp +++ b/Engine/source/afx/ce/afxBillboard.cpp @@ -91,6 +91,7 @@ EndImplementEnumType; void afxBillboardData::initPersistFields() { + docsURL; addField("color", TypeColorF, myOffset(color), "The color assigned to the quadrangle geometry. The way it combines with the given " "texture varies according to the setting of the textureFunction field."); diff --git a/Engine/source/afx/ce/afxCameraPuppet.cpp b/Engine/source/afx/ce/afxCameraPuppet.cpp index 14b578494..2c22eb31c 100644 --- a/Engine/source/afx/ce/afxCameraPuppet.cpp +++ b/Engine/source/afx/ce/afxCameraPuppet.cpp @@ -80,6 +80,7 @@ afxCameraPuppetData::afxCameraPuppetData(const afxCameraPuppetData& other, bool void afxCameraPuppetData::initPersistFields() { + docsURL; addField("cameraSpec", TypeString, myOffset(cam_spec), "This field is like the effect-wrapper fields for specifying constraint sources, " "but here it specifies a target for the camera-puppet effect."); @@ -129,4 +130,4 @@ void afxCameraPuppetData::gather_cons_defs(Vector& defs) defs.push_back(cam_def); }; -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/ce/afxCameraShake.cpp b/Engine/source/afx/ce/afxCameraShake.cpp index 152deaff2..a8ba8ad45 100644 --- a/Engine/source/afx/ce/afxCameraShake.cpp +++ b/Engine/source/afx/ce/afxCameraShake.cpp @@ -66,6 +66,7 @@ afxCameraShakeData::afxCameraShakeData(const afxCameraShakeData& other, bool tem void afxCameraShakeData::initPersistFields() { + docsURL; addField("frequency", TypePoint3F, Offset(camShakeFreq, afxCameraShakeData), "The camera shake frequencies for all three axes: X, Y, Z."); addField("amplitude", TypePoint3F, Offset(camShakeAmp, afxCameraShakeData), diff --git a/Engine/source/afx/ce/afxCollisionEvent.cpp b/Engine/source/afx/ce/afxCollisionEvent.cpp index 9b51e2dc7..1ca475c5a 100644 --- a/Engine/source/afx/ce/afxCollisionEvent.cpp +++ b/Engine/source/afx/ce/afxCollisionEvent.cpp @@ -65,6 +65,7 @@ afxCollisionEventData::afxCollisionEventData(const afxCollisionEventData& other, void afxCollisionEventData::initPersistFields() { + docsURL; addField("methodName", TypeString, myOffset(method_name), "..."); addField("scriptData", TypeString, myOffset(script_data), diff --git a/Engine/source/afx/ce/afxConsoleMessage.cpp b/Engine/source/afx/ce/afxConsoleMessage.cpp index 4854eef48..632b45973 100644 --- a/Engine/source/afx/ce/afxConsoleMessage.cpp +++ b/Engine/source/afx/ce/afxConsoleMessage.cpp @@ -61,6 +61,7 @@ afxConsoleMessageData::afxConsoleMessageData(const afxConsoleMessageData& other, void afxConsoleMessageData::initPersistFields() { + docsURL; addField("message", TypeString, myOffset(message_str), "A text message to be displayed when the effect is executed."); diff --git a/Engine/source/afx/ce/afxDamage.cpp b/Engine/source/afx/ce/afxDamage.cpp index 4d8ca412a..ee93fc507 100644 --- a/Engine/source/afx/ce/afxDamage.cpp +++ b/Engine/source/afx/ce/afxDamage.cpp @@ -74,6 +74,7 @@ afxDamageData::afxDamageData(const afxDamageData& other, bool temp_clone) : Game void afxDamageData::initPersistFields() { + docsURL; addField("label", TypeString, myOffset(label), "An arbitrary string which is passed as an argument to a spell's onDamage() script " "method. It can be used to identify which damage effect the damage came from in " diff --git a/Engine/source/afx/ce/afxFootSwitch.cpp b/Engine/source/afx/ce/afxFootSwitch.cpp index 45d273b90..6e081021c 100644 --- a/Engine/source/afx/ce/afxFootSwitch.cpp +++ b/Engine/source/afx/ce/afxFootSwitch.cpp @@ -74,6 +74,7 @@ afxFootSwitchData::afxFootSwitchData(const afxFootSwitchData& other, bool temp_c void afxFootSwitchData::initPersistFields() { + docsURL; addField("overrideAll", TypeBool, myOffset(override_all), "When true, all of a Player's footstep effects are turned off for the duration of " "the foot-switch effect."); diff --git a/Engine/source/afx/ce/afxGuiController.cpp b/Engine/source/afx/ce/afxGuiController.cpp index 094cd0f5b..2ff2fe0f5 100644 --- a/Engine/source/afx/ce/afxGuiController.cpp +++ b/Engine/source/afx/ce/afxGuiController.cpp @@ -66,6 +66,7 @@ afxGuiControllerData::afxGuiControllerData(const afxGuiControllerData& other, bo void afxGuiControllerData::initPersistFields() { + docsURL; addField("controlName", TypeString, myOffset(control_name), "Specifies the name of an existing gui-control."); addField("preservePosition", TypeBool, myOffset(preserve_pos), diff --git a/Engine/source/afx/ce/afxGuiText.cpp b/Engine/source/afx/ce/afxGuiText.cpp index 2b733f3f4..45304e57e 100644 --- a/Engine/source/afx/ce/afxGuiText.cpp +++ b/Engine/source/afx/ce/afxGuiText.cpp @@ -63,6 +63,7 @@ afxGuiTextData::afxGuiTextData(const afxGuiTextData& other, bool temp_clone) : G void afxGuiTextData::initPersistFields() { + docsURL; addField("text", TypeString, myOffset(text_str), "The literal text to display on the afxGuiTextHud. The center of the text will be " "placed at the projection of the 3D constraint position into 2D screen space.\n" diff --git a/Engine/source/afx/ce/afxLightBase_T3D.cpp b/Engine/source/afx/ce/afxLightBase_T3D.cpp index a6b8da051..3645c5720 100644 --- a/Engine/source/afx/ce/afxLightBase_T3D.cpp +++ b/Engine/source/afx/ce/afxLightBase_T3D.cpp @@ -93,6 +93,7 @@ afxT3DLightBaseData::afxT3DLightBaseData(const afxT3DLightBaseData& other, bool // void afxT3DLightBaseData::initPersistFields() { + docsURL; // We only add the basic lighting options that all lighting // systems would use... the specific lighting system options // are injected at runtime by the lighting system itself. diff --git a/Engine/source/afx/ce/afxMachineGun.cpp b/Engine/source/afx/ce/afxMachineGun.cpp index 6b040ff5b..8a8a3d071 100644 --- a/Engine/source/afx/ce/afxMachineGun.cpp +++ b/Engine/source/afx/ce/afxMachineGun.cpp @@ -65,6 +65,7 @@ afxMachineGunData::afxMachineGunData(const afxMachineGunData& other, bool temp_c void afxMachineGunData::initPersistFields() { + docsURL; addField("projectile", TYPEID(), myOffset(projectile_data), "A ProjectileData datablock describing the projectile to be launched."); addField("roundsPerMinute", TypeS32, myOffset(rounds_per_minute), diff --git a/Engine/source/afx/ce/afxModel.cpp b/Engine/source/afx/ce/afxModel.cpp index 7c6eb019c..434a58985 100644 --- a/Engine/source/afx/ce/afxModel.cpp +++ b/Engine/source/afx/ce/afxModel.cpp @@ -74,7 +74,6 @@ afxModelData::afxModelData() useCustomAmbientLighting = false; customAmbientForSelfIllumination = false; customAmbientLighting = LinearColorF(0.0f, 0.0f, 0.0f); - shadowEnable = false; shadowSize = 128; shadowMaxVisibleDistance = 80.0f; @@ -103,7 +102,6 @@ afxModelData::afxModelData(const afxModelData& other, bool temp_clone) : GameBas useCustomAmbientLighting = other.useCustomAmbientLighting; customAmbientForSelfIllumination = other.customAmbientForSelfIllumination; customAmbientLighting = other.customAmbientLighting; - shadowEnable = other.shadowEnable; shadowSize = other.shadowSize; shadowMaxVisibleDistance = other.shadowMaxVisibleDistance; @@ -174,31 +172,37 @@ bool afxModelData::preload(bool server, String &errorStr) void afxModelData::initPersistFields() { - INITPERSISTFIELD_SHAPEASSET(Shape, afxModelData, "The name of a .dts format file to use for the model."); - addField("sequence", TypeString, myOffset(sequence), - "The name of an animation sequence to play in the model."); - addField("sequenceRate", TypeF32, myOffset(seq_rate), - "The rate of playback for the sequence."); - addField("sequenceOffset", TypeF32, myOffset(seq_offset), - "An offset in seconds indicating a starting point for the animation sequence " - "specified by the sequence field. A rate of 1.0 (rather than sequenceRate) is used " - "to convert from seconds to the thread offset."); - addField("alphaMult", TypeF32, myOffset(alpha_mult), - "An alpha multiplier used to set maximum opacity of the model."); + docsURL; + addGroup("Shapes"); + INITPERSISTFIELD_SHAPEASSET(Shape, afxModelData, "The name of a .dts format file to use for the model."); + addGroup("Shapes"); - addField("fogMult", TypeF32, myOffset(fog_mult), - ""); - addField("remapTextureTags", TypeString, myOffset(remap_txr_tags), - "Rename one or more texture tags in the model. Texture tags are what link a " - "model's textures to materials.\n" - "Field should be a string containing space-separated remapping tokens. A remapping " - "token is two names separated by a colon, ':'. The first name should be a texture-tag " - "that exists in the model, while the second is a new name to replace it. The string " - "can have any number of remapping tokens as long as the total string length does not " - "exceed 255."); - addField("shadowEnable", TypeBool, myOffset(shadowEnable), - "Sets whether the model casts a shadow."); + addGroup("Animation"); + addField("sequence", TypeString, myOffset(sequence), + "The name of an animation sequence to play in the model."); + addField("sequenceRate", TypeF32, myOffset(seq_rate), + "The rate of playback for the sequence."); + addField("sequenceOffset", TypeF32, myOffset(seq_offset), + "An offset in seconds indicating a starting point for the animation sequence " + "specified by the sequence field. A rate of 1.0 (rather than sequenceRate) is used " + "to convert from seconds to the thread offset."); + endGroup("Animation"); + addGroup("Rendering"); + addField("alphaMult", TypeF32, myOffset(alpha_mult), + "An alpha multiplier used to set maximum opacity of the model."); + addField("fogMult", TypeF32, myOffset(fog_mult), ""); + addField("remapTextureTags", TypeString, myOffset(remap_txr_tags), + "Rename one or more texture tags in the model. Texture tags are what link a " + "model's textures to materials.\n" + "Field should be a string containing space-separated remapping tokens. A remapping " + "token is two names separated by a colon, ':'. The first name should be a texture-tag " + "that exists in the model, while the second is a new name to replace it. The string " + "can have any number of remapping tokens as long as the total string length does not " + "exceed 255."); + endGroup("Rendering"); + + addGroup("Deprecated"); addField("useVertexAlpha", TypeBool, myOffset(use_vertex_alpha), "deprecated"); addField("forceOnMaterialFlags", TypeS32, myOffset(force_on_material_flags), @@ -229,6 +233,7 @@ void afxModelData::initPersistFields() "deprecated"); addField("shadowSphereAdjust", TypeF32, myOffset(shadowSphereAdjust), "deprecated"); + endGroup("Deprecated"); Parent::initPersistFields(); @@ -273,7 +278,6 @@ void afxModelData::packData(BitStream* stream) stream->writeFlag(customAmbientForSelfIllumination); stream->write(customAmbientLighting); stream->writeFlag(receiveLMLighting); - stream->writeFlag(shadowEnable); stream->write(shadowSize); stream->write(shadowMaxVisibleDistance); @@ -305,7 +309,6 @@ void afxModelData::unpackData(BitStream* stream) customAmbientForSelfIllumination = stream->readFlag(); stream->read(&customAmbientLighting); receiveLMLighting = stream->readFlag(); - shadowEnable = stream->readFlag(); stream->read(&shadowSize); stream->read(&shadowMaxVisibleDistance); diff --git a/Engine/source/afx/ce/afxModel.h b/Engine/source/afx/ce/afxModel.h index 80c6803f7..ad8cb4c99 100644 --- a/Engine/source/afx/ce/afxModel.h +++ b/Engine/source/afx/ce/afxModel.h @@ -74,7 +74,6 @@ struct afxModelData : public GameBaseData bool useCustomAmbientLighting; bool customAmbientForSelfIllumination; LinearColorF customAmbientLighting; - bool shadowEnable; U32 shadowSize; F32 shadowMaxVisibleDistance; diff --git a/Engine/source/afx/ce/afxMooring.cpp b/Engine/source/afx/ce/afxMooring.cpp index 9adf47526..abe76b23a 100644 --- a/Engine/source/afx/ce/afxMooring.cpp +++ b/Engine/source/afx/ce/afxMooring.cpp @@ -67,6 +67,7 @@ afxMooringData::afxMooringData(const afxMooringData& other, bool temp_clone) : G void afxMooringData::initPersistFields() { + docsURL; addField("displayAxisMarker", TypeBool, myOffset(display_axis_marker), "Specifies whether to display an axis to help visualize the position and orientation " "of the mooring."); diff --git a/Engine/source/afx/ce/afxParticleEmitter.cpp b/Engine/source/afx/ce/afxParticleEmitter.cpp index c34bd5510..afb4488cd 100644 --- a/Engine/source/afx/ce/afxParticleEmitter.cpp +++ b/Engine/source/afx/ce/afxParticleEmitter.cpp @@ -70,6 +70,7 @@ afxParticleEmitterData::afxParticleEmitterData(const afxParticleEmitterData& oth void afxParticleEmitterData::initPersistFields() { + docsURL; addField("fadeVelocity", TypeBool, Offset(fade_velocity, afxParticleEmitterData), "If true, the initial velocity of emitted particles is multiplied by the fade amount " "of the containing effect wrapper. As the effect fades-in and out, so does the " @@ -232,6 +233,7 @@ afxParticleEmitterVectorData::afxParticleEmitterVectorData(const afxParticleEmit void afxParticleEmitterVectorData::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -289,6 +291,7 @@ afxParticleEmitterConeData::afxParticleEmitterConeData(const afxParticleEmitterC void afxParticleEmitterConeData::initPersistFields() { + docsURL; addField("spreadMin", TypeF32, Offset(spread_min, afxParticleEmitterConeData), "..."); addField("spreadMax", TypeF32, Offset(spread_max, afxParticleEmitterConeData), @@ -399,6 +402,7 @@ EndImplementEnumType; void afxParticleEmitterPathData::initPersistFields() { + docsURL; addField("paths", TypeString, Offset(epaths_string, afxParticleEmitterPathData), "..."); @@ -642,6 +646,7 @@ afxParticleEmitterDiscData::afxParticleEmitterDiscData(const afxParticleEmitterD void afxParticleEmitterDiscData::initPersistFields() { + docsURL; addField("radiusMin", TypeF32, Offset(pe_radius_min, afxParticleEmitterDiscData), "..."); addField("radiusMax", TypeF32, Offset(pe_radius_max, afxParticleEmitterDiscData), diff --git a/Engine/source/afx/ce/afxPhraseEffect.cpp b/Engine/source/afx/ce/afxPhraseEffect.cpp index eff1315ec..d83d589bf 100644 --- a/Engine/source/afx/ce/afxPhraseEffect.cpp +++ b/Engine/source/afx/ce/afxPhraseEffect.cpp @@ -139,6 +139,7 @@ EndImplementEnumType; void afxPhraseEffectData::initPersistFields() { + docsURL; addField("duration", TypeF32, myOffset(duration), "Specifies a duration for the phrase-effect. If set to infinity, the phrase-effect " "needs to have a phraseType of continuous. Set infinite duration using " diff --git a/Engine/source/afx/ce/afxPhysicalZone.cpp b/Engine/source/afx/ce/afxPhysicalZone.cpp index 2ed7ca6b6..e63759f4c 100644 --- a/Engine/source/afx/ce/afxPhysicalZone.cpp +++ b/Engine/source/afx/ce/afxPhysicalZone.cpp @@ -75,6 +75,7 @@ afxPhysicalZoneData::afxPhysicalZoneData(const afxPhysicalZoneData& other, bool void afxPhysicalZoneData::initPersistFields() { + docsURL; addField("velocityMod", TypeF32, myOffset(mVelocityMod), "A multiplier that biases the velocity of an object every tick it is within the " "zone."); @@ -111,4 +112,4 @@ void afxPhysicalZoneData::unpackData(BitStream* stream) } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/ce/afxPlayerMovement.cpp b/Engine/source/afx/ce/afxPlayerMovement.cpp index bd5161cc8..94327ea22 100644 --- a/Engine/source/afx/ce/afxPlayerMovement.cpp +++ b/Engine/source/afx/ce/afxPlayerMovement.cpp @@ -80,6 +80,7 @@ EndImplementEnumType; void afxPlayerMovementData::initPersistFields() { + docsURL; addField("speedBias", TypeF32, myOffset(speed_bias), "A floating-point multiplier that scales the constraint Player's movement speed."); addField("movement", TypePoint3F, myOffset(movement), @@ -137,4 +138,4 @@ bool afxPlayerMovementData::hasMovementOverride() } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/ce/afxPlayerPuppet.cpp b/Engine/source/afx/ce/afxPlayerPuppet.cpp index b9ec4f090..495397828 100644 --- a/Engine/source/afx/ce/afxPlayerPuppet.cpp +++ b/Engine/source/afx/ce/afxPlayerPuppet.cpp @@ -73,6 +73,7 @@ afxPlayerPuppetData::afxPlayerPuppetData(const afxPlayerPuppetData& other, bool void afxPlayerPuppetData::initPersistFields() { + docsURL; addField("objectSpec", TypeString, myOffset(obj_spec), "..."); addField("networking", TypeS8, myOffset(networking), @@ -119,4 +120,4 @@ void afxPlayerPuppetData::gather_cons_defs(Vector& defs) defs.push_back(obj_def); }; -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/ce/afxPointLight_T3D.cpp b/Engine/source/afx/ce/afxPointLight_T3D.cpp index 748ecf26c..a44c4092d 100644 --- a/Engine/source/afx/ce/afxPointLight_T3D.cpp +++ b/Engine/source/afx/ce/afxPointLight_T3D.cpp @@ -62,6 +62,7 @@ afxT3DPointLightData::afxT3DPointLightData(const afxT3DPointLightData& other, bo // void afxT3DPointLightData::initPersistFields() { + docsURL; addGroup( "Light" ); addField( "radius", TypeF32, Offset( mRadius, afxT3DPointLightData ), diff --git a/Engine/source/afx/ce/afxProjectile.cpp b/Engine/source/afx/ce/afxProjectile.cpp index 581e16d3c..e95cf88f9 100644 --- a/Engine/source/afx/ce/afxProjectile.cpp +++ b/Engine/source/afx/ce/afxProjectile.cpp @@ -82,23 +82,24 @@ EndImplementEnumType; void afxProjectileData::initPersistFields() { - addField("networking", TypeS8, myOffset(networking), - "..."); - addField("launchPosSpec", TypeString, myOffset(launch_pos_spec), - "..."); - addField("launchDirBias", TypePoint3F, myOffset(launch_dir_bias), - "..."); - addField("ignoreSourceTimeout", TypeBool, myOffset(ignore_src_timeout), - "..."); - addField("dynamicCollisionMask", TypeS32, myOffset(dynamicCollisionMask), - "..."); - addField("staticCollisionMask", TypeS32, myOffset(staticCollisionMask), - "..."); - addField("overrideCollisionMasks", TypeBool, myOffset(override_collision_masks), - "..."); + docsURL; + addGroup("Physics"); + addField("ignoreSourceTimeout", TypeBool, myOffset(ignore_src_timeout), "..."); + addField("dynamicCollisionMask", TypeS32, myOffset(dynamicCollisionMask), "..."); + addField("staticCollisionMask", TypeS32, myOffset(staticCollisionMask), "..."); + addField("overrideCollisionMasks", TypeBool, myOffset(override_collision_masks), "..."); + endGroup("Physics"); - addField("launchDirMethod", TYPEID(), myOffset(launch_dir_method), - "Possible values: towardPos2Constraint, orientConstraint, or launchDirField."); + addGroup("Physics-Launch"); + addField("launchPosSpec", TypeString, myOffset(launch_pos_spec), "..."); + addField("launchDirBias", TypePoint3F, myOffset(launch_dir_bias), "..."); + addField("launchDirMethod", TYPEID(), myOffset(launch_dir_method), + "Possible values: towardPos2Constraint, orientConstraint, or launchDirField."); + endGroup("Physics-Launch"); + + addGroup("Networking"); + addField("networking", TypeS8, myOffset(networking), "..."); + endGroup("Networking"); Parent::initPersistFields(); } @@ -368,4 +369,4 @@ void afxProjectile::explode(const Point3F& p, const Point3F& n, const U32 collid Sim::postEvent(this, new afxProjectileDeleteEvent, Sim::getCurrentTime() + DeleteWaitTime); } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/ce/afxScriptEvent.cpp b/Engine/source/afx/ce/afxScriptEvent.cpp index 762652119..3dec37089 100644 --- a/Engine/source/afx/ce/afxScriptEvent.cpp +++ b/Engine/source/afx/ce/afxScriptEvent.cpp @@ -63,6 +63,7 @@ afxScriptEventData::afxScriptEventData(const afxScriptEventData& other, bool tem void afxScriptEventData::initPersistFields() { + docsURL; addField("methodName", TypeString, myOffset(method_name), "The name of a script method defined for the instance class of an effects " "choreographer. The arguments used to call this method are determined by the type " diff --git a/Engine/source/afx/ce/afxSpotLight_T3D.cpp b/Engine/source/afx/ce/afxSpotLight_T3D.cpp index aa21e50a5..d2c5009a4 100644 --- a/Engine/source/afx/ce/afxSpotLight_T3D.cpp +++ b/Engine/source/afx/ce/afxSpotLight_T3D.cpp @@ -66,6 +66,7 @@ afxT3DSpotLightData::afxT3DSpotLightData(const afxT3DSpotLightData& other, bool // void afxT3DSpotLightData::initPersistFields() { + docsURL; addGroup( "Light" ); addField( "range", TypeF32, Offset( mRange, afxT3DSpotLightData ), diff --git a/Engine/source/afx/ce/afxStaticShape.cpp b/Engine/source/afx/ce/afxStaticShape.cpp index 4aad448f8..a5bac7549 100644 --- a/Engine/source/afx/ce/afxStaticShape.cpp +++ b/Engine/source/afx/ce/afxStaticShape.cpp @@ -70,17 +70,23 @@ afxStaticShapeData::afxStaticShapeData(const afxStaticShapeData& other, bool tem void afxStaticShapeData::initPersistFields() { - addField("sequence", TypeString, myOffset(sequence), + docsURL; + addGroup("Animation"); + addField("sequence", TypeString, myOffset(sequence), "An animation sequence in the StaticShape to play."); - addField("ignoreSceneAmbient", TypeBool, myOffset(ignore_scene_amb), - "..."); - addField("useCustomSceneAmbient", TypeBool, myOffset(use_custom_scene_amb), - "..."); - addField("customSceneAmbient", TypeColorF, myOffset(custom_scene_amb), - "..."); - addField("doSpawn", TypeBool, myOffset(do_spawn), - "When true, the StaticShape effect will leave behind the StaticShape object as a " - "permanent part of the scene."); + endGroup("Animation"); + + addGroup("Rendering"); + addField("ignoreSceneAmbient", TypeBool, myOffset(ignore_scene_amb), "..."); + addField("useCustomSceneAmbient", TypeBool, myOffset(use_custom_scene_amb), "..."); + addField("customSceneAmbient", TypeColorF, myOffset(custom_scene_amb), "..."); + endGroup("Rendering"); + + addGroup("Behaviour"); + addField("doSpawn", TypeBool, myOffset(do_spawn), + "When true, the StaticShape effect will leave behind the StaticShape object as a " + "permanent part of the scene."); + endGroup("Behaviour"); Parent::initPersistFields(); } diff --git a/Engine/source/afx/ce/afxZodiac.cpp b/Engine/source/afx/ce/afxZodiac.cpp index dc4cb5b01..5d9f310ef 100644 --- a/Engine/source/afx/ce/afxZodiac.cpp +++ b/Engine/source/afx/ce/afxZodiac.cpp @@ -156,6 +156,7 @@ EndImplementEnumType; void afxZodiacData::initPersistFields() { + docsURL; INITPERSISTFIELD_IMAGEASSET(Texture, afxZodiacData, "An image to use as the zodiac's texture."); addField("radius", TypeF32, Offset(radius_xy, afxZodiacData), "The zodiac's radius in scene units."); diff --git a/Engine/source/afx/ce/afxZodiacPlane.cpp b/Engine/source/afx/ce/afxZodiacPlane.cpp index c9045bc95..be645c091 100644 --- a/Engine/source/afx/ce/afxZodiacPlane.cpp +++ b/Engine/source/afx/ce/afxZodiacPlane.cpp @@ -111,6 +111,7 @@ EndImplementEnumType; void afxZodiacPlaneData::initPersistFields() { + docsURL; INITPERSISTFIELD_IMAGEASSET(Texture, afxZodiacPlaneData, "An image to use as the zodiac's texture."); addField("radius", TypeF32, myOffset(radius_xy), diff --git a/Engine/source/afx/ea/afxEA_Zodiac.cpp b/Engine/source/afx/ea/afxEA_Zodiac.cpp index 9e76f50ad..dcaa05ee4 100644 --- a/Engine/source/afx/ea/afxEA_Zodiac.cpp +++ b/Engine/source/afx/ea/afxEA_Zodiac.cpp @@ -396,6 +396,7 @@ void afxEA_Zodiac::do_runtime_substitutions() void afxEA_Zodiac::initPersistFields() { + docsURL; addField("liveColor", TypeColorF, myOffset(live_color), "..."); addField("liveColorFactor", TypeF32, myOffset(live_color_factor), @@ -431,4 +432,4 @@ bool afxEA_ZodiacDesc::requiresStop(const afxEffectWrapperData* ew, const afxEff return (timing.lifetime < 0); } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/forces/afxF_Drag.cpp b/Engine/source/afx/forces/afxF_Drag.cpp index f006fc2ad..2eab36584 100644 --- a/Engine/source/afx/forces/afxF_Drag.cpp +++ b/Engine/source/afx/forces/afxF_Drag.cpp @@ -103,6 +103,7 @@ afxF_DragData::afxF_DragData(const afxF_DragData& other, bool temp_clone) : afxF void afxF_DragData::initPersistFields() { + docsURL; addField("drag", TypeF32, myOffset(drag_coefficient), "..."); addField("airDensity", TypeF32, myOffset(air_density), diff --git a/Engine/source/afx/forces/afxF_Gravity.cpp b/Engine/source/afx/forces/afxF_Gravity.cpp index cbe9e6ad2..b91665031 100644 --- a/Engine/source/afx/forces/afxF_Gravity.cpp +++ b/Engine/source/afx/forces/afxF_Gravity.cpp @@ -95,6 +95,7 @@ afxF_GravityData::afxF_GravityData(const afxF_GravityData& other, bool temp_clon void afxF_GravityData::initPersistFields() { + docsURL; addField("gravity", TypeF32, myOffset(gravity), "..."); diff --git a/Engine/source/afx/forces/afxForce.cpp b/Engine/source/afx/forces/afxForce.cpp index 935ef7174..5727d05e5 100644 --- a/Engine/source/afx/forces/afxForce.cpp +++ b/Engine/source/afx/forces/afxForce.cpp @@ -52,6 +52,7 @@ afxForceData::afxForceData(const afxForceData& other, bool temp_clone) : GameBas void afxForceData::initPersistFields() { + docsURL; addField("forceSetName", TypeString, myOffset(force_set_name), "..."); @@ -145,4 +146,4 @@ bool afxForceDesc::identifyForce(afxForceData* force_data) } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/forces/afxXM_Force.cpp b/Engine/source/afx/forces/afxXM_Force.cpp index cfe534dd8..2b8ab6278 100644 --- a/Engine/source/afx/forces/afxXM_Force.cpp +++ b/Engine/source/afx/forces/afxXM_Force.cpp @@ -118,6 +118,7 @@ afxXM_ForceData::afxXM_ForceData(const afxXM_ForceData& other, bool temp_clone) void afxXM_ForceData::initPersistFields() { + docsURL; addField("forceSetName", TypeString, Offset(force_set_name, afxXM_ForceData), "..."); addField("updateDT", TypeF32, Offset(update_dt, afxXM_ForceData), diff --git a/Engine/source/afx/rpg/afxRPGMagicSpell.cpp b/Engine/source/afx/rpg/afxRPGMagicSpell.cpp index 3e9362435..fe9f6578a 100644 --- a/Engine/source/afx/rpg/afxRPGMagicSpell.cpp +++ b/Engine/source/afx/rpg/afxRPGMagicSpell.cpp @@ -81,6 +81,7 @@ EndImplementEnumType; void afxRPGMagicSpellData::initPersistFields() { + docsURL; // spell parameters addField("spellName", TypeString, myOffset(spell_name), "..."); diff --git a/Engine/source/afx/ui/afxGuiTextHud.cpp b/Engine/source/afx/ui/afxGuiTextHud.cpp index 90bc24b00..46cbfc1a2 100644 --- a/Engine/source/afx/ui/afxGuiTextHud.cpp +++ b/Engine/source/afx/ui/afxGuiTextHud.cpp @@ -60,6 +60,7 @@ afxGuiTextHud::afxGuiTextHud() void afxGuiTextHud::initPersistFields() { + docsURL; addGroup("Colors"); addField( "fillColor", TypeColorF, Offset( mFillColor, afxGuiTextHud ), "..."); diff --git a/Engine/source/afx/ui/afxSpellButton.cpp b/Engine/source/afx/ui/afxSpellButton.cpp index 43f054769..70b4d3a84 100644 --- a/Engine/source/afx/ui/afxSpellButton.cpp +++ b/Engine/source/afx/ui/afxSpellButton.cpp @@ -83,6 +83,7 @@ afxSpellButton::~afxSpellButton() void afxSpellButton::initPersistFields() { + docsURL; addField("bitmap", TypeFilename, Offset(mBitmapName, afxSpellButton), "..."); addField("book_slot", TypePoint2I, Offset(book_slot, afxSpellButton), diff --git a/Engine/source/afx/ui/afxSpellCastBar.cpp b/Engine/source/afx/ui/afxSpellCastBar.cpp index f08740743..2b2c29b90 100644 --- a/Engine/source/afx/ui/afxSpellCastBar.cpp +++ b/Engine/source/afx/ui/afxSpellCastBar.cpp @@ -103,6 +103,7 @@ void afxSpellCastBar::onStaticModified(const char* slotName, const char* newValu // STATIC void afxSpellCastBar::initPersistFields() { + docsURL; addGroup("Colors"); addField( "backgroundColor", TypeColorF, Offset(rgba_background, afxSpellCastBar), "..."); diff --git a/Engine/source/afx/ui/afxStatusBar.cpp b/Engine/source/afx/ui/afxStatusBar.cpp index b2e79e69c..fabb0c0b7 100644 --- a/Engine/source/afx/ui/afxStatusBar.cpp +++ b/Engine/source/afx/ui/afxStatusBar.cpp @@ -134,6 +134,7 @@ void afxStatusBar::onSleep() // STATIC void afxStatusBar::initPersistFields() { + docsURL; addField("fillColor", TypeColorF, Offset(rgba_fill, afxStatusBar), "..."); addField("displayEnergy", TypeBool, Offset(show_energy, afxStatusBar), diff --git a/Engine/source/afx/util/afxParticlePool.cpp b/Engine/source/afx/util/afxParticlePool.cpp index e6dbb172f..6fe71a658 100644 --- a/Engine/source/afx/util/afxParticlePool.cpp +++ b/Engine/source/afx/util/afxParticlePool.cpp @@ -70,6 +70,7 @@ afxParticlePoolData::~afxParticlePoolData() void afxParticlePoolData::initPersistFields() { + docsURL; addField("poolType", TYPEID< afxParticlePoolData::PoolType >(), Offset(pool_type, afxParticlePoolData), "..."); addField("baseColor", TypeColorF, Offset(base_color, afxParticlePoolData), diff --git a/Engine/source/afx/util/afxPath.cpp b/Engine/source/afx/util/afxPath.cpp index 1a9ecc4af..cc1843333 100644 --- a/Engine/source/afx/util/afxPath.cpp +++ b/Engine/source/afx/util/afxPath.cpp @@ -142,6 +142,7 @@ afxPathData::~afxPathData() void afxPathData::initPersistFields() { + docsURL; addField("points", TypeString, Offset(points_string, afxPathData), "..."); addField("roll", TypeString, Offset(roll_string, afxPathData), diff --git a/Engine/source/afx/xm/afxXM_Aim.cpp b/Engine/source/afx/xm/afxXM_Aim.cpp index 5e52823b7..fb0bac753 100644 --- a/Engine/source/afx/xm/afxXM_Aim.cpp +++ b/Engine/source/afx/xm/afxXM_Aim.cpp @@ -131,6 +131,7 @@ afxXM_AimData::afxXM_AimData(const afxXM_AimData& other, bool temp_clone) : afxX void afxXM_AimData::initPersistFields() { + docsURL; addField("aimZOnly", TypeBool, Offset(aim_z_only, afxXM_AimData), "..."); @@ -258,4 +259,4 @@ void afxXM_Aim_fixed_z::updateParams(F32 dt, F32 elapsed, afxXM_Params& params) params.ori = MathUtils::createOrientFromDir(line_of_sight); } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_AltitudeConform.cpp b/Engine/source/afx/xm/afxXM_AltitudeConform.cpp index d2be81cc8..ba9faf695 100644 --- a/Engine/source/afx/xm/afxXM_AltitudeConform.cpp +++ b/Engine/source/afx/xm/afxXM_AltitudeConform.cpp @@ -109,6 +109,7 @@ afxXM_AltitudeConformData::afxXM_AltitudeConformData(const afxXM_AltitudeConform void afxXM_AltitudeConformData::initPersistFields() { + docsURL; addField("height", TypeF32, Offset(height, afxXM_AltitudeConformData), "..."); addField("conformToTerrain", TypeBool, Offset(do_terrain, afxXM_AltitudeConformData), diff --git a/Engine/source/afx/xm/afxXM_BoxAdapt.cpp b/Engine/source/afx/xm/afxXM_BoxAdapt.cpp index 14df4b399..e5fd631e6 100644 --- a/Engine/source/afx/xm/afxXM_BoxAdapt.cpp +++ b/Engine/source/afx/xm/afxXM_BoxAdapt.cpp @@ -99,6 +99,7 @@ afxXM_BoxAdaptData::afxXM_BoxAdaptData(const afxXM_BoxAdaptData& other, bool tem void afxXM_BoxAdaptData::initPersistFields() { + docsURL; addField("scaleFactor", TypeF32, Offset(scale_factor, afxXM_BoxAdaptData), "..."); addField("dimensionRange", TypePoint2F, Offset(dim_range, afxXM_BoxAdaptData), @@ -172,4 +173,4 @@ void afxXM_BoxAdapt::updateParams(F32 dt, F32 elapsed, afxXM_Params& params) fx_wrapper->setField("liveScaleFactor", avar("%g", dim)); } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_BoxConform.cpp b/Engine/source/afx/xm/afxXM_BoxConform.cpp index 3ae897446..10c99d8c3 100644 --- a/Engine/source/afx/xm/afxXM_BoxConform.cpp +++ b/Engine/source/afx/xm/afxXM_BoxConform.cpp @@ -105,6 +105,7 @@ EndImplementEnumType; void afxXM_BoxConformData::initPersistFields() { + docsURL; addField("boxAlignment", TYPEID< afxXM_BoxConformType >(), Offset(aabb_alignment, afxXM_BoxConformData), "..."); diff --git a/Engine/source/afx/xm/afxXM_BoxHeightOffset.cpp b/Engine/source/afx/xm/afxXM_BoxHeightOffset.cpp index d8fccb013..96fce645a 100644 --- a/Engine/source/afx/xm/afxXM_BoxHeightOffset.cpp +++ b/Engine/source/afx/xm/afxXM_BoxHeightOffset.cpp @@ -97,6 +97,7 @@ afxXM_BoxHeightOffsetData::afxXM_BoxHeightOffsetData(const afxXM_BoxHeightOffset void afxXM_BoxHeightOffsetData::initPersistFields() { + docsURL; addField("offset", TypePoint3F, Offset(offset, afxXM_BoxHeightOffsetData)); Parent::initPersistFields(); @@ -142,4 +143,4 @@ void afxXM_BoxHeightOffset::updateParams(F32 dt, F32 elapsed, afxXM_Params& para params.pos += offset; } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_Freeze.cpp b/Engine/source/afx/xm/afxXM_Freeze.cpp index 4476c6090..901715ffa 100644 --- a/Engine/source/afx/xm/afxXM_Freeze.cpp +++ b/Engine/source/afx/xm/afxXM_Freeze.cpp @@ -161,6 +161,7 @@ afxXM_FreezeData::afxXM_FreezeData(const afxXM_FreezeData& other, bool temp_clon void afxXM_FreezeData::initPersistFields() { + docsURL; addField("mask", TypeS32, Offset(mask, afxXM_FreezeData), "..."); addField("delay", TypeF32, Offset(delay, afxXM_FreezeData), @@ -333,4 +334,4 @@ void afxXM_Freeze_ori::updateParams(F32 dt, F32 elapsed, afxXM_Params& params) params.ori = frozen_ori; } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_GroundConform.cpp b/Engine/source/afx/xm/afxXM_GroundConform.cpp index f31509b41..088ca5224 100644 --- a/Engine/source/afx/xm/afxXM_GroundConform.cpp +++ b/Engine/source/afx/xm/afxXM_GroundConform.cpp @@ -101,6 +101,7 @@ afxXM_GroundConformData::afxXM_GroundConformData(const afxXM_GroundConformData& void afxXM_GroundConformData::initPersistFields() { + docsURL; addField("height", TypeF32, Offset(height, afxXM_GroundConformData), "..."); addField("conformToTerrain", TypeBool, Offset(do_terrain, afxXM_GroundConformData), diff --git a/Engine/source/afx/xm/afxXM_HeightSampler.cpp b/Engine/source/afx/xm/afxXM_HeightSampler.cpp index 2a627bb12..261bb5488 100644 --- a/Engine/source/afx/xm/afxXM_HeightSampler.cpp +++ b/Engine/source/afx/xm/afxXM_HeightSampler.cpp @@ -91,6 +91,7 @@ afxXM_HeightSamplerData::afxXM_HeightSamplerData(const afxXM_HeightSamplerData& void afxXM_HeightSamplerData::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -143,4 +144,4 @@ void afxXM_HeightSampler::updateParams(F32 dt, F32 elapsed, afxXM_Params& params fx_wrapper->setField("liveFadeFactor", avar("%g", factor)); } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_MountedImageNode.cpp b/Engine/source/afx/xm/afxXM_MountedImageNode.cpp index b4b244011..115c76598 100644 --- a/Engine/source/afx/xm/afxXM_MountedImageNode.cpp +++ b/Engine/source/afx/xm/afxXM_MountedImageNode.cpp @@ -104,6 +104,7 @@ afxXM_MountedImageNodeData::afxXM_MountedImageNodeData(const afxXM_MountedImageN void afxXM_MountedImageNodeData::initPersistFields() { + docsURL; addField("imageSlot", TypeS32, Offset(image_slot, afxXM_MountedImageNodeData), "..."); addField("nodeName", TypeString, Offset(node_name, afxXM_MountedImageNodeData), @@ -228,4 +229,4 @@ void afxXM_MountedImageNode::updateParams(F32 dt, F32 elapsed, afxXM_Params& par } } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_Offset.cpp b/Engine/source/afx/xm/afxXM_Offset.cpp index d4547c05b..745885709 100644 --- a/Engine/source/afx/xm/afxXM_Offset.cpp +++ b/Engine/source/afx/xm/afxXM_Offset.cpp @@ -231,6 +231,7 @@ afxXM_LocalOffsetData::afxXM_LocalOffsetData(const afxXM_LocalOffsetData& other, void afxXM_LocalOffsetData::initPersistFields() { + docsURL; addField("localOffset", TypePoint3F, Offset(local_offset, afxXM_LocalOffsetData), "..."); addField("offsetPos2", TypeBool, Offset(offset_pos2, afxXM_LocalOffsetData), @@ -384,6 +385,7 @@ afxXM_WorldOffsetData::afxXM_WorldOffsetData(const afxXM_WorldOffsetData& other, void afxXM_WorldOffsetData::initPersistFields() { + docsURL; addField("worldOffset", TypePoint3F, Offset(world_offset, afxXM_WorldOffsetData), "..."); addField("offsetPos2", TypeBool, Offset(offset_pos2, afxXM_WorldOffsetData), @@ -486,4 +488,4 @@ void afxXM_WorldOffset2_fixed::updateParams(F32 dt, F32 elapsed, afxXM_Params& p params.pos2 += world_offset; } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_Oscillate.cpp b/Engine/source/afx/xm/afxXM_Oscillate.cpp index 769aaeed0..55d8dd7c2 100644 --- a/Engine/source/afx/xm/afxXM_Oscillate.cpp +++ b/Engine/source/afx/xm/afxXM_Oscillate.cpp @@ -160,6 +160,7 @@ afxXM_OscillateData::afxXM_OscillateData(const afxXM_OscillateData& other, bool void afxXM_OscillateData::initPersistFields() { + docsURL; addField("mask", TypeS32, Offset(mask, afxXM_OscillateData), "..."); addField("min", TypePoint3F, Offset(min, afxXM_OscillateData), diff --git a/Engine/source/afx/xm/afxXM_OscillateZodiacColor.cpp b/Engine/source/afx/xm/afxXM_OscillateZodiacColor.cpp index 28fc98eb6..fc91e5046 100644 --- a/Engine/source/afx/xm/afxXM_OscillateZodiacColor.cpp +++ b/Engine/source/afx/xm/afxXM_OscillateZodiacColor.cpp @@ -90,6 +90,7 @@ afxXM_OscillateZodiacColorData::afxXM_OscillateZodiacColorData() void afxXM_OscillateZodiacColorData::initPersistFields() { + docsURL; addField("colorA", TypeColorF, Offset(color_a, afxXM_OscillateZodiacColorData), "..."); addField("colorB", TypeColorF, Offset(color_b, afxXM_OscillateZodiacColorData), diff --git a/Engine/source/afx/xm/afxXM_PathConform.cpp b/Engine/source/afx/xm/afxXM_PathConform.cpp index 07bd86d92..d2a92e7fd 100644 --- a/Engine/source/afx/xm/afxXM_PathConform.cpp +++ b/Engine/source/afx/xm/afxXM_PathConform.cpp @@ -128,6 +128,7 @@ afxXM_PathConformData::afxXM_PathConformData(const afxXM_PathConformData& other, void afxXM_PathConformData::initPersistFields() { + docsURL; addField("paths", TypeString, Offset(paths_string, afxXM_PathConformData), "..."); addField("pathMult", TypeF32, Offset(path_mult, afxXM_PathConformData), diff --git a/Engine/source/afx/xm/afxXM_PivotNodeOffset.cpp b/Engine/source/afx/xm/afxXM_PivotNodeOffset.cpp index 9d1c73270..7204b1ce3 100644 --- a/Engine/source/afx/xm/afxXM_PivotNodeOffset.cpp +++ b/Engine/source/afx/xm/afxXM_PivotNodeOffset.cpp @@ -102,6 +102,7 @@ afxXM_PivotNodeOffsetData::afxXM_PivotNodeOffsetData(const afxXM_PivotNodeOffset void afxXM_PivotNodeOffsetData::initPersistFields() { + docsURL; addField("nodeName", TypeString, Offset(node_name, afxXM_PivotNodeOffsetData), "..."); addField("nodeIsStatic", TypeBool, Offset(node_is_static, afxXM_PivotNodeOffsetData), @@ -177,4 +178,4 @@ void afxXM_PivotNodeOffset::updateParams(F32 dt, F32 elapsed, afxXM_Params& para params.pos += pivot_offset_temp; } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_RandomRot.cpp b/Engine/source/afx/xm/afxXM_RandomRot.cpp index f7534a214..c8278293f 100644 --- a/Engine/source/afx/xm/afxXM_RandomRot.cpp +++ b/Engine/source/afx/xm/afxXM_RandomRot.cpp @@ -107,6 +107,7 @@ afxXM_RandomRotData::afxXM_RandomRotData(const afxXM_RandomRotData& other, bool void afxXM_RandomRotData::initPersistFields() { + docsURL; addField("axis", TypePoint3F, Offset(axis, afxXM_RandomRotData), "..."); addField("thetaMin", TypeF32, Offset(theta_min, afxXM_RandomRotData), @@ -178,4 +179,4 @@ void afxXM_RandomRot::updateParams(F32 dt, F32 elapsed, afxXM_Params& params) params.ori = rand_ori; } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_Scale.cpp b/Engine/source/afx/xm/afxXM_Scale.cpp index 109051087..4444ec537 100644 --- a/Engine/source/afx/xm/afxXM_Scale.cpp +++ b/Engine/source/afx/xm/afxXM_Scale.cpp @@ -98,6 +98,7 @@ afxXM_ScaleData::afxXM_ScaleData(const afxXM_ScaleData& other, bool temp_clone) void afxXM_ScaleData::initPersistFields() { + docsURL; addField("scale", TypePoint3F, Offset(scale, afxXM_ScaleData), "..."); @@ -152,4 +153,4 @@ void afxXM_Scale_weighted::updateParams(F32 dt, F32 elapsed, afxXM_Params& param params.scale.z = 0.00001f; } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_Shockwave.cpp b/Engine/source/afx/xm/afxXM_Shockwave.cpp index 47c6e5eb2..13e0c7c10 100644 --- a/Engine/source/afx/xm/afxXM_Shockwave.cpp +++ b/Engine/source/afx/xm/afxXM_Shockwave.cpp @@ -103,6 +103,7 @@ afxXM_ShockwaveData::afxXM_ShockwaveData(const afxXM_ShockwaveData& other, bool void afxXM_ShockwaveData::initPersistFields() { + docsURL; addField("rate", TypeF32, Offset(rate, afxXM_ShockwaveData), "..."); addField("aimZOnly", TypeBool, Offset(aim_z_only, afxXM_ShockwaveData), @@ -167,4 +168,4 @@ void afxXM_Shockwave::updateParams(F32 dt, F32 elapsed, afxXM_Params& params) params.pos = fixed_pos + line_of_sight*(elapsed*db->rate); } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_Spin.cpp b/Engine/source/afx/xm/afxXM_Spin.cpp index 753835c1a..a76de1e53 100644 --- a/Engine/source/afx/xm/afxXM_Spin.cpp +++ b/Engine/source/afx/xm/afxXM_Spin.cpp @@ -120,6 +120,7 @@ afxXM_SpinData::afxXM_SpinData(const afxXM_SpinData& other, bool temp_clone) : a void afxXM_SpinData::initPersistFields() { + docsURL; addField("spinAxis", TypePoint3F, Offset(spin_axis, afxXM_SpinData), "..."); addField("spinAngle", TypeF32, Offset(spin_angle, afxXM_SpinData), @@ -238,4 +239,4 @@ void afxXM_Spin_fixed::updateParams(F32 dt, F32 elapsed, afxXM_Params& params) params.ori.mul(spin_xfm); } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_VelocityOffset.cpp b/Engine/source/afx/xm/afxXM_VelocityOffset.cpp index 38fce9e7d..3f4f75b4f 100644 --- a/Engine/source/afx/xm/afxXM_VelocityOffset.cpp +++ b/Engine/source/afx/xm/afxXM_VelocityOffset.cpp @@ -166,6 +166,7 @@ afxXM_VelocityOffsetData::afxXM_VelocityOffsetData(const afxXM_VelocityOffsetDat void afxXM_VelocityOffsetData::initPersistFields() { + docsURL; addField("offsetFactor", TypeF32, Offset(offset_factor, afxXM_VelocityOffsetData), "..."); addField("offsetPos2", TypeBool, Offset(offset_pos2, afxXM_VelocityOffsetData), @@ -370,4 +371,4 @@ void afxXM_VelocityOffset2_fixed::updateParams(F32 dt, F32 elapsed, afxXM_Params } } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_WaveBase.cpp b/Engine/source/afx/xm/afxXM_WaveBase.cpp index 4d5f6c3dd..036bc3a56 100644 --- a/Engine/source/afx/xm/afxXM_WaveBase.cpp +++ b/Engine/source/afx/xm/afxXM_WaveBase.cpp @@ -143,6 +143,7 @@ EndImplementEnumType; void afxXM_WaveBaseData::initPersistFields() { + docsURL; addField("waveform", TYPEID< afxXM_WaveBaseData::WaveFormType >(), Offset(waveform_type, afxXM_WaveBaseData), "..."); addField("parameter", TYPEID< afxXM_WaveBaseData::WaveParamType >(), Offset(parameter, afxXM_WaveBaseData), @@ -365,6 +366,7 @@ afxXM_WaveRiderBaseData::afxXM_WaveRiderBaseData(const afxXM_WaveRiderBaseData& void afxXM_WaveRiderBaseData::initPersistFields() { + docsURL; addField("waveform", TYPEID< afxXM_WaveBaseData::WaveFormType >(), Offset(waveform_type, afxXM_WaveRiderBaseData), "..."); addField("parameter", TYPEID< afxXM_WaveBaseData::WaveParamType >(), Offset(parameter, afxXM_WaveRiderBaseData), @@ -607,4 +609,4 @@ void afxXM_WaveRiderBase::updateParams(F32 dt, F32 elapsed, afxXM_Params& params } } -//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// \ No newline at end of file +//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// diff --git a/Engine/source/afx/xm/afxXM_WaveColor.cpp b/Engine/source/afx/xm/afxXM_WaveColor.cpp index af823d58f..bc2df445f 100644 --- a/Engine/source/afx/xm/afxXM_WaveColor.cpp +++ b/Engine/source/afx/xm/afxXM_WaveColor.cpp @@ -216,6 +216,7 @@ afxXM_WaveColorData::afxXM_WaveColorData(const afxXM_WaveColorData& other, bool void afxXM_WaveColorData::initPersistFields() { + docsURL; addField("a", TypeColorF, Offset(a, afxXM_WaveColorData), "..."); addField("b", TypeColorF, Offset(b, afxXM_WaveColorData), @@ -331,6 +332,7 @@ afxXM_WaveRiderColorData::afxXM_WaveRiderColorData(const afxXM_WaveRiderColorDat void afxXM_WaveRiderColorData::initPersistFields() { + docsURL; addField("a", TypeColorF, Offset(a, afxXM_WaveRiderColorData), "..."); addField("b", TypeColorF, Offset(b, afxXM_WaveRiderColorData), diff --git a/Engine/source/afx/xm/afxXM_WaveScalar.cpp b/Engine/source/afx/xm/afxXM_WaveScalar.cpp index 5a052b43d..211382a76 100644 --- a/Engine/source/afx/xm/afxXM_WaveScalar.cpp +++ b/Engine/source/afx/xm/afxXM_WaveScalar.cpp @@ -631,6 +631,7 @@ afxXM_WaveScalarData::afxXM_WaveScalarData(const afxXM_WaveScalarData& other, bo void afxXM_WaveScalarData::initPersistFields() { + docsURL; addField("a", TypeF32, Offset(a, afxXM_WaveScalarData), "..."); addField("b", TypeF32, Offset(b, afxXM_WaveScalarData), @@ -757,6 +758,7 @@ afxXM_WaveRiderScalarData::afxXM_WaveRiderScalarData(const afxXM_WaveRiderScalar void afxXM_WaveRiderScalarData::initPersistFields() { + docsURL; addField("a", TypeF32, Offset(a, afxXM_WaveRiderScalarData), "..."); addField("b", TypeF32, Offset(b, afxXM_WaveRiderScalarData), diff --git a/Engine/source/afx/xm/afxXfmMod.cpp b/Engine/source/afx/xm/afxXfmMod.cpp index 896cc06d0..9759d844f 100644 --- a/Engine/source/afx/xm/afxXfmMod.cpp +++ b/Engine/source/afx/xm/afxXfmMod.cpp @@ -132,6 +132,7 @@ afxXM_BaseData::afxXM_BaseData(const afxXM_BaseData& other, bool temp_clone) : G void afxXM_BaseData::initPersistFields() { + docsURL; addField("ignoreTimeFactor", TypeBool, Offset(ignore_time_factor, afxXM_BaseData), "..."); @@ -213,6 +214,7 @@ F32 afxXM_WeightedBaseData::getWeightFactor() const void afxXM_WeightedBaseData::initPersistFields() { + docsURL; addField("delay", TypeF32, Offset(delay, afxXM_WeightedBaseData), "..."); addField("lifetime", TypeF32, Offset(lifetime, afxXM_WeightedBaseData), diff --git a/Engine/source/assets/assetBase.cpp b/Engine/source/assets/assetBase.cpp index bdd7072fd..3741ece3d 100644 --- a/Engine/source/assets/assetBase.cpp +++ b/Engine/source/assets/assetBase.cpp @@ -93,6 +93,7 @@ AssetBase::~AssetBase() void AssetBase::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/assets/assetManager.cpp b/Engine/source/assets/assetManager.cpp index 557520f79..8f2c84f3e 100644 --- a/Engine/source/assets/assetManager.cpp +++ b/Engine/source/assets/assetManager.cpp @@ -127,6 +127,7 @@ void AssetManager::onRemove() void AssetManager::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/assets/assetQuery.cpp b/Engine/source/assets/assetQuery.cpp index 7b66db6fc..074a03fff 100644 --- a/Engine/source/assets/assetQuery.cpp +++ b/Engine/source/assets/assetQuery.cpp @@ -43,6 +43,7 @@ IMPLEMENT_CONOBJECT( AssetQuery ); void AssetQuery::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); @@ -118,4 +119,4 @@ void AssetQuery::onTamlCustomRead( const TamlCustomNodes& customNodes ) // Store asset. mAssetList.push_back(pField->getFieldValue()); } -} \ No newline at end of file +} diff --git a/Engine/source/assets/autoloadAssets.cpp b/Engine/source/assets/autoloadAssets.cpp index e5b3ca53f..4341d69a3 100644 --- a/Engine/source/assets/autoloadAssets.cpp +++ b/Engine/source/assets/autoloadAssets.cpp @@ -36,6 +36,7 @@ IMPLEMENT_CONOBJECT(AutoloadAssets); void AutoloadAssets::initPersistFields() { + docsURL; // Call Parent. Parent::initPersistFields(); diff --git a/Engine/source/assets/declaredAssets.cpp b/Engine/source/assets/declaredAssets.cpp index d888093a6..5cc65a77b 100644 --- a/Engine/source/assets/declaredAssets.cpp +++ b/Engine/source/assets/declaredAssets.cpp @@ -36,6 +36,7 @@ IMPLEMENT_CONOBJECT( DeclaredAssets ); void DeclaredAssets::initPersistFields() { + docsURL; // Call Parent. Parent::initPersistFields(); diff --git a/Engine/source/assets/referencedAssets.cpp b/Engine/source/assets/referencedAssets.cpp index f5807de2b..4f59b6a4c 100644 --- a/Engine/source/assets/referencedAssets.cpp +++ b/Engine/source/assets/referencedAssets.cpp @@ -36,10 +36,11 @@ IMPLEMENT_CONOBJECT( ReferencedAssets ); void ReferencedAssets::initPersistFields() { + docsURL; // Call Parent. Parent::initPersistFields(); addField("Path", TypeString, Offset(mPath, ReferencedAssets), "" ); addField("Extension", TypeString, Offset(mExtension, ReferencedAssets), "" ); addField("Recurse", TypeBool, Offset(mRecurse, ReferencedAssets), "" ); -} \ No newline at end of file +} diff --git a/Engine/source/console/SimXMLDocument.cpp b/Engine/source/console/SimXMLDocument.cpp index 6e0de4c19..798ad3478 100644 --- a/Engine/source/console/SimXMLDocument.cpp +++ b/Engine/source/console/SimXMLDocument.cpp @@ -199,6 +199,7 @@ void SimXMLDocument::onRemove() // ----------------------------------------------------------------------------- void SimXMLDocument::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/console/arrayObject.cpp b/Engine/source/console/arrayObject.cpp index 6449775ef..bd3893ab0 100644 --- a/Engine/source/console/arrayObject.cpp +++ b/Engine/source/console/arrayObject.cpp @@ -133,6 +133,7 @@ ArrayObject::ArrayObject() void ArrayObject::initPersistFields() { + docsURL; addField( "caseSensitive", TypeBool, Offset( mCaseSensitive, ArrayObject ), "Makes the keys and values case-sensitive.\n" "By default, comparison of key and value strings will be case-insensitive." ); diff --git a/Engine/source/console/consoleFunctions.cpp b/Engine/source/console/consoleFunctions.cpp index b17909184..7ec077950 100644 --- a/Engine/source/console/consoleFunctions.cpp +++ b/Engine/source/console/consoleFunctions.cpp @@ -2130,24 +2130,15 @@ DefineEngineFunction( quitWithStatus, void, ( S32 status ), (0), } //----------------------------------------------------------------------------- - -DefineEngineFunction( gotoWebPage, void, ( const char* address ),, - "Open the given URL or file in the user's web browser.\n\n" - "@param address The address to open. If this is not prefixed by a protocol specifier (\"...://\"), then " - "the function checks whether the address refers to a file or directory and if so, prepends \"file://\" " - "to @a adress; if the file check fails, \"http://\" is prepended to @a address.\n\n" - "@tsexample\n" - "gotoWebPage( \"http://www.garagegames.com\" );\n" - "@endtsexample\n\n" - "@ingroup Platform" ) +void gotoWebPage(const char* address) { // If there's a protocol prefix in the address, just invoke // the browser on the given address. - - char* protocolSep = dStrstr( address,"://"); - if( protocolSep != NULL ) + + char* protocolSep = dStrstr(address, "://"); + if (protocolSep != NULL) { - Platform::openWebBrowser( address ); + Platform::openWebBrowser(address); return; } @@ -2155,23 +2146,36 @@ DefineEngineFunction( gotoWebPage, void, ( const char* address ),, // sent us a bad url. We'll first check to see if a file inside the sandbox // with that name exists, then we'll just glom "http://" onto the front of // the bogus url, and hope for the best. - + String addr; - if( Torque::FS::IsFile( address ) || Torque::FS::IsDirectory( address ) ) + if (Torque::FS::IsFile(address) || Torque::FS::IsDirectory(address)) { #ifdef TORQUE2D_TOOLS_FIXME - addr = String::ToString( "file://%s", address ); + addr = String::ToString("file://%s", address); #else - addr = String::ToString( "file://%s/%s", Platform::getCurrentDirectory(), address ); + addr = String::ToString("file://%s/%s", Platform::getCurrentDirectory(), address); #endif } else - addr = String::ToString( "http://%s", address ); - - Platform::openWebBrowser( addr ); + addr = String::ToString("http://%s", address); + + Platform::openWebBrowser(addr); return; } +DefineEngineFunction( gotoWebPage, void, ( const char* address ),, + "Open the given URL or file in the user's web browser.\n\n" + "@param address The address to open. If this is not prefixed by a protocol specifier (\"...://\"), then " + "the function checks whether the address refers to a file or directory and if so, prepends \"file://\" " + "to @a adress; if the file check fails, \"http://\" is prepended to @a address.\n\n" + "@tsexample\n" + "gotoWebPage( \"https://torque3d.org/\" );\n" + "@endtsexample\n\n" + "@ingroup Platform" ) +{ + gotoWebPage(address); +} + //----------------------------------------------------------------------------- DefineEngineFunction( displaySplashWindow, bool, (const char* path), (""), @@ -2876,4 +2880,34 @@ DefineEngineFunction(systemCommand, S32, (const char* commandLineAction, const c return -1; } + +const char* getDocsLink(const char* filename, U32 lineNumber) +{ + Vector fileStringSplit; + String(filename).split("source", fileStringSplit); + String fileString = fileStringSplit.last(); + String fileLineString = fileString + String("#L") + String::ToString(lineNumber-2); + String baseUrL = String(Con::getVariable("Pref::DocURL","https://github.com/TorqueGameEngines/Torque3D/blob/development/Engine/source")); + String URL = String("docs"); + + return (new String(URL))->c_str(); +} + +bool getDocsURL(void* obj, const char* array, const char* data) +{ + ConsoleObject* cObj = static_cast(obj); + //if (cObj->mDocsClick) + { + + String docpage = String(cObj->findField(StringTable->insert("docsURL"))->pFieldDocs); + //strip wrapper + docpage.replace("docs", ""); + Con::errorf("%s", docpage.c_str()); + gotoWebPage(docpage.c_str()); + } + //cObj->mDocsClick = !cObj->mDocsClick; + return false; +} + #endif diff --git a/Engine/source/console/consoleFunctions.h b/Engine/source/console/consoleFunctions.h index 1cb19d1df..7da94874d 100644 --- a/Engine/source/console/consoleFunctions.h +++ b/Engine/source/console/consoleFunctions.h @@ -13,4 +13,12 @@ bool isValidIP(const char* ip); bool isValidPort(U16 port); -#endif \ No newline at end of file +void gotoWebPage(const char* address); + +bool getDocsURL(void* obj, const char* array, const char* data); +const char* getDocsLink(const char* filename, U32 lineNumber); + +#define docsURL addGroup("Ungrouped");\ + addProtectedField("docsURL", TypeBool, Offset(mDocsClick, ConsoleObject), &getDocsURL, &defaultProtectedGetFn, getDocsLink(__FILE__,__LINE__), AbstractClassRep::FieldFlags::FIELD_ComponentInspectors);\ + endGroup("Ungrouped") +#endif diff --git a/Engine/source/console/consoleLogger.cpp b/Engine/source/console/consoleLogger.cpp index d68cdb6c0..5334c0b8e 100644 --- a/Engine/source/console/consoleLogger.cpp +++ b/Engine/source/console/consoleLogger.cpp @@ -70,6 +70,7 @@ EndImplementEnumType; void ConsoleLogger::initPersistFields() { + docsURL; addGroup( "Logging" ); addField( "level", TYPEID< ConsoleLogEntry::Level >(), Offset( mLevel, ConsoleLogger ), "Determines the priority level and attention the logged entry gets when recorded\n\n" ); endGroup( "Logging" ); diff --git a/Engine/source/console/consoleObject.cpp b/Engine/source/console/consoleObject.cpp index c4b44c71f..96ea82c2f 100644 --- a/Engine/source/console/consoleObject.cpp +++ b/Engine/source/console/consoleObject.cpp @@ -681,6 +681,7 @@ bool ConsoleObject::removeField(const char* in_pFieldname) //-------------------------------------- void ConsoleObject::initPersistFields() { + docsURL; } //-------------------------------------- diff --git a/Engine/source/console/consoleObject.h b/Engine/source/console/consoleObject.h index beaf94235..aa4e372ab 100644 --- a/Engine/source/console/consoleObject.h +++ b/Engine/source/console/consoleObject.h @@ -55,6 +55,10 @@ #include "tinyxml2.h" #endif +#ifndef _CONSOLFUNCTIONS_H_ +#include "console/consoleFunctions.h" +#endif + /// @file /// Legacy console object system. @@ -824,8 +828,11 @@ protected: ConsoleObject(const ConsoleObject&); public: - - ConsoleObject() {} + /// + /// Only used for interfacing with the editor's inspector docsURL button + /// + bool mDocsClick; + ConsoleObject() { mDocsClick = false; } /// Get a reference to a field by name. const AbstractClassRep::Field *findField(StringTableEntry fieldName) const; diff --git a/Engine/source/console/fieldBrushObject.cpp b/Engine/source/console/fieldBrushObject.cpp index f0671b711..0a2c626c1 100644 --- a/Engine/source/console/fieldBrushObject.cpp +++ b/Engine/source/console/fieldBrushObject.cpp @@ -51,6 +51,7 @@ FieldBrushObject::FieldBrushObject() //----------------------------------------------------------------------------- void FieldBrushObject::initPersistFields() { + docsURL; // Add Fields. addProtectedField("description", TypeCaseString, Offset(mDescription, FieldBrushObject), setDescription, defaultProtectedGetFn, ""); addProtectedField("sortName", TypeString, Offset(mSortName, FieldBrushObject), setSortName, defaultProtectedGetFn, ""); diff --git a/Engine/source/console/scriptObjects.cpp b/Engine/source/console/scriptObjects.cpp index f33011993..129e77e1a 100644 --- a/Engine/source/console/scriptObjects.cpp +++ b/Engine/source/console/scriptObjects.cpp @@ -126,6 +126,7 @@ ScriptTickObject::ScriptTickObject() void ScriptTickObject::initPersistFields() { + docsURL; addField("callOnAdvanceTime", TypeBool, Offset(mCallOnAdvanceTime, ScriptTickObject), "Call the onAdvaceTime() callback."); Parent::initPersistFields(); diff --git a/Engine/source/console/simObject.cpp b/Engine/source/console/simObject.cpp index 7cde17c29..42f2f5c07 100644 --- a/Engine/source/console/simObject.cpp +++ b/Engine/source/console/simObject.cpp @@ -149,8 +149,10 @@ bool SimObject::processArguments(S32 argc, ConsoleValue *argv) //----------------------------------------------------------------------------- + void SimObject::initPersistFields() { + docsURL; addGroup( "Ungrouped" ); addProtectedField( "name", TypeName, Offset(mObjectName, SimObject), &setProtectedName, &defaultProtectedGetFn, @@ -912,6 +914,9 @@ void SimObject::assignFieldsFrom(SimObject *parent) { const AbstractClassRep::Field* f = &list[i]; + if (f->pFieldname == StringTable->insert("docsURL")) + continue; + // Skip the special field types. if ( f->type >= AbstractClassRep::ARCFirstCustomField ) continue; diff --git a/Engine/source/environment/VolumetricFog.cpp b/Engine/source/environment/VolumetricFog.cpp index c9eaff9df..e6302d826 100644 --- a/Engine/source/environment/VolumetricFog.cpp +++ b/Engine/source/environment/VolumetricFog.cpp @@ -165,10 +165,13 @@ VolumetricFog::~VolumetricFog() void VolumetricFog::initPersistFields() { + docsURL; + Parent::initPersistFields(); + addGroup("Shapes"); + INITPERSISTFIELD_SHAPEASSET(Shape, VolumetricFog, "The source shape asset."); + endGroup("Shapes"); + addGroup("VolumetricFogData"); - - INITPERSISTFIELD_SHAPEASSET(Shape, VolumetricFog, "The source shape asset."); - addField("FogColor", TypeColorI, Offset(mFogColor, VolumetricFog), "Fog color RGBA (Alpha is ignored)"); addField("FogDensity", TypeF32, Offset(mFogDensity, VolumetricFog), @@ -211,7 +214,6 @@ void VolumetricFog::initPersistFields() addField("lightRayMod", TypeF32, Offset(mLightRayMod, VolumetricFog), "Modifier for LightRay PostFX when inside Fog."); endGroup("PostFX"); - Parent::initPersistFields(); } bool VolumetricFog::_setShapeAsset(void* obj, const char* index, const char* data) diff --git a/Engine/source/environment/basicClouds.cpp b/Engine/source/environment/basicClouds.cpp index f6d6d8bdb..b4b7a9765 100644 --- a/Engine/source/environment/basicClouds.cpp +++ b/Engine/source/environment/basicClouds.cpp @@ -169,6 +169,7 @@ void BasicClouds::onRemove() void BasicClouds::initPersistFields() { + docsURL; addGroup( "BasicClouds" ); addArray( "Layers", TEX_COUNT ); diff --git a/Engine/source/environment/cloudLayer.cpp b/Engine/source/environment/cloudLayer.cpp index 0bc5b5944..d6de0c055 100644 --- a/Engine/source/environment/cloudLayer.cpp +++ b/Engine/source/environment/cloudLayer.cpp @@ -191,6 +191,7 @@ void CloudLayer::onRemove() void CloudLayer::initPersistFields() { + docsURL; addGroup( "CloudLayer" ); INITPERSISTFIELD_IMAGEASSET(Texture, CloudLayer, "An RGBA texture which should contain normals and opacity (density)."); diff --git a/Engine/source/environment/decalRoad.cpp b/Engine/source/environment/decalRoad.cpp index 28be1efc8..4ee7b98de 100644 --- a/Engine/source/environment/decalRoad.cpp +++ b/Engine/source/environment/decalRoad.cpp @@ -303,6 +303,7 @@ IMPLEMENT_CO_NETOBJECT_V1(DecalRoad); void DecalRoad::initPersistFields() { + docsURL; addGroup( "DecalRoad" ); INITPERSISTFIELD_MATERIALASSET(Material, DecalRoad, "Material used for rendering."); diff --git a/Engine/source/environment/editors/guiMeshRoadEditorCtrl.cpp b/Engine/source/environment/editors/guiMeshRoadEditorCtrl.cpp index 671c39e96..16e6bcd8c 100644 --- a/Engine/source/environment/editors/guiMeshRoadEditorCtrl.cpp +++ b/Engine/source/environment/editors/guiMeshRoadEditorCtrl.cpp @@ -214,6 +214,7 @@ bool GuiMeshRoadEditorCtrl::onAdd() void GuiMeshRoadEditorCtrl::initPersistFields() { + docsURL; addField( "DefaultWidth", TypeF32, Offset( mDefaultWidth, GuiMeshRoadEditorCtrl ) ); addField( "DefaultDepth", TypeF32, Offset( mDefaultDepth, GuiMeshRoadEditorCtrl ) ); addField( "DefaultNormal", TypePoint3F,Offset( mDefaultNormal, GuiMeshRoadEditorCtrl ) ); diff --git a/Engine/source/environment/editors/guiRiverEditorCtrl.cpp b/Engine/source/environment/editors/guiRiverEditorCtrl.cpp index 983c8a01e..8dc21ef1b 100644 --- a/Engine/source/environment/editors/guiRiverEditorCtrl.cpp +++ b/Engine/source/environment/editors/guiRiverEditorCtrl.cpp @@ -168,6 +168,7 @@ bool GuiRiverEditorCtrl::onAdd() void GuiRiverEditorCtrl::initPersistFields() { + docsURL; addField( "DefaultWidth", TypeF32, Offset( mDefaultWidth, GuiRiverEditorCtrl ) ); addField( "DefaultDepth", TypeF32, Offset( mDefaultDepth, GuiRiverEditorCtrl ) ); addField( "DefaultNormal", TypePoint3F,Offset( mDefaultNormal, GuiRiverEditorCtrl ) ); diff --git a/Engine/source/environment/editors/guiRoadEditorCtrl.cpp b/Engine/source/environment/editors/guiRoadEditorCtrl.cpp index 67b6ef883..a644bc9d3 100644 --- a/Engine/source/environment/editors/guiRoadEditorCtrl.cpp +++ b/Engine/source/environment/editors/guiRoadEditorCtrl.cpp @@ -158,6 +158,7 @@ bool GuiRoadEditorCtrl::onAdd() void GuiRoadEditorCtrl::initPersistFields() { + docsURL; addField( "DefaultWidth", TypeF32, Offset( mDefaultWidth, GuiRoadEditorCtrl ) ); addField( "HoverSplineColor", TypeColorI, Offset( mHoverSplineColor, GuiRoadEditorCtrl ) ); addField( "SelectedSplineColor", TypeColorI, Offset( mSelectedSplineColor, GuiRoadEditorCtrl ) ); diff --git a/Engine/source/environment/meshRoad.cpp b/Engine/source/environment/meshRoad.cpp index 2413198a8..0fcb1d7b4 100644 --- a/Engine/source/environment/meshRoad.cpp +++ b/Engine/source/environment/meshRoad.cpp @@ -935,6 +935,7 @@ MeshRoad::~MeshRoad() void MeshRoad::initPersistFields() { + docsURL; addGroup( "MeshRoad" ); INITPERSISTFIELD_MATERIALASSET(TopMaterial, MeshRoad, "Material for the upper surface of the road."); diff --git a/Engine/source/environment/river.cpp b/Engine/source/environment/river.cpp index 0213f9d1d..e5862710a 100644 --- a/Engine/source/environment/river.cpp +++ b/Engine/source/environment/river.cpp @@ -626,6 +626,7 @@ River::~River() void River::initPersistFields() { + docsURL; addGroup( "River" ); addField( "SegmentLength", TypeF32, Offset( mMetersPerSegment, River ), diff --git a/Engine/source/environment/scatterSky.cpp b/Engine/source/environment/scatterSky.cpp index 407ca5827..9869bf4a7 100644 --- a/Engine/source/environment/scatterSky.cpp +++ b/Engine/source/environment/scatterSky.cpp @@ -320,6 +320,7 @@ void ScatterSky::inspectPostApply() void ScatterSky::initPersistFields() { + docsURL; addGroup( "ScatterSky", "Only azimuth and elevation are networked fields. To trigger a full update of all other fields use the applyChanges ConsoleMethod." ); diff --git a/Engine/source/environment/skyBox.cpp b/Engine/source/environment/skyBox.cpp index de32d0e92..7cd590a0e 100644 --- a/Engine/source/environment/skyBox.cpp +++ b/Engine/source/environment/skyBox.cpp @@ -114,6 +114,7 @@ void SkyBox::onRemove() void SkyBox::initPersistFields() { + docsURL; addGroup( "Sky Box" ); INITPERSISTFIELD_MATERIALASSET(Material, SkyBox, "The name of a cubemap material for the sky box."); diff --git a/Engine/source/environment/skySphere.cpp b/Engine/source/environment/skySphere.cpp index 67dddc5f8..fc9255bde 100644 --- a/Engine/source/environment/skySphere.cpp +++ b/Engine/source/environment/skySphere.cpp @@ -113,6 +113,7 @@ void SkySphere::onRemove() void SkySphere::initPersistFields() { + docsURL; addGroup("Sky Sphere"); INITPERSISTFIELD_MATERIALASSET(Material, SkySphere, "The name of a cubemap material for the sky box."); diff --git a/Engine/source/environment/sun.cpp b/Engine/source/environment/sun.cpp index 47cc91070..4237a34f7 100644 --- a/Engine/source/environment/sun.cpp +++ b/Engine/source/environment/sun.cpp @@ -141,6 +141,7 @@ void Sun::onRemove() void Sun::initPersistFields() { + docsURL; addGroup( "Orbit" ); addField( "azimuth", TypeF32, Offset( mSunAzimuth, Sun ), diff --git a/Engine/source/environment/timeOfDay.cpp b/Engine/source/environment/timeOfDay.cpp index b1338bf77..c943a4000 100644 --- a/Engine/source/environment/timeOfDay.cpp +++ b/Engine/source/environment/timeOfDay.cpp @@ -124,6 +124,7 @@ bool TimeOfDay::setDayLength( void *object, const char *index, const char *data void TimeOfDay::initPersistFields() { + docsURL; addGroup( "TimeOfDay" ); addField( "axisTilt", TypeF32, Offset( mAxisTilt, TimeOfDay ), diff --git a/Engine/source/environment/waterBlock.cpp b/Engine/source/environment/waterBlock.cpp index 23345985a..9b8c3ecf2 100644 --- a/Engine/source/environment/waterBlock.cpp +++ b/Engine/source/environment/waterBlock.cpp @@ -527,6 +527,7 @@ bool WaterBlock::setGridSizeProperty( void *obj, const char *index, const char * //----------------------------------------------------------------------------- void WaterBlock::initPersistFields() { + docsURL; addGroup( "WaterBlock" ); addProtectedField( "gridElementSize", TypeF32, Offset( mGridElementSize, WaterBlock ), &setGridSizeProperty, &defaultProtectedGetFn, "Spacing between vertices in the WaterBlock mesh" ); diff --git a/Engine/source/environment/waterObject.cpp b/Engine/source/environment/waterObject.cpp index 246e95c78..c2074446d 100644 --- a/Engine/source/environment/waterObject.cpp +++ b/Engine/source/environment/waterObject.cpp @@ -275,6 +275,7 @@ WaterObject::~WaterObject() void WaterObject::initPersistFields() { + docsURL; addGroup( "WaterObject" ); addProtectedField( "density", TypeF32, Offset( mDensity, WaterObject ), &WaterObject::_checkDensity, &defaultProtectedGetFn, "Affects buoyancy of an object, thus affecting the Z velocity of a player (jumping, falling, etc."); diff --git a/Engine/source/environment/waterPlane.cpp b/Engine/source/environment/waterPlane.cpp index 3e5904a31..55470e253 100644 --- a/Engine/source/environment/waterPlane.cpp +++ b/Engine/source/environment/waterPlane.cpp @@ -118,6 +118,7 @@ void WaterPlane::onRemove() void WaterPlane::initPersistFields() { + docsURL; addGroup( "WaterPlane" ); addProtectedField( "gridSize", TypeS32, Offset( mGridSize, WaterPlane ), &protectedSetGridSize, &defaultProtectedGetFn, @@ -1006,4 +1007,4 @@ void WaterPlane::_getWaterPlane( const Point3F &camPos, PlaneF &outPlane, Point3 { outPos = getPosition(); outPlane.set( outPos, Point3F(0,0,1) ); -} \ No newline at end of file +} diff --git a/Engine/source/forest/editor/forestBrushElement.cpp b/Engine/source/forest/editor/forestBrushElement.cpp index 8c41cc969..33a0a7b81 100644 --- a/Engine/source/forest/editor/forestBrushElement.cpp +++ b/Engine/source/forest/editor/forestBrushElement.cpp @@ -58,7 +58,8 @@ ForestBrushElement::ForestBrushElement() void ForestBrushElement::initPersistFields() -{ +{ + docsURL; Parent::initPersistFields(); addGroup( "ForestBrushElement" ); diff --git a/Engine/source/forest/editor/forestBrushTool.cpp b/Engine/source/forest/editor/forestBrushTool.cpp index 06a75ea1d..f8f057fa6 100644 --- a/Engine/source/forest/editor/forestBrushTool.cpp +++ b/Engine/source/forest/editor/forestBrushTool.cpp @@ -104,7 +104,8 @@ ConsoleDocClass( ForestBrushTool, ); void ForestBrushTool::initPersistFields() -{ +{ + docsURL; addGroup( "ForestBrushTool" ); addField( "mode", TYPEID< BrushMode >(), Offset( mMode, ForestBrushTool) ); diff --git a/Engine/source/forest/editor/forestEditorCtrl.cpp b/Engine/source/forest/editor/forestEditorCtrl.cpp index bf88f0b4c..a3d5710d0 100644 --- a/Engine/source/forest/editor/forestEditorCtrl.cpp +++ b/Engine/source/forest/editor/forestEditorCtrl.cpp @@ -59,6 +59,7 @@ bool ForestEditorCtrl::onAdd() void ForestEditorCtrl::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/forest/forest.cpp b/Engine/source/forest/forest.cpp index 2a7c7329a..6be22be8c 100644 --- a/Engine/source/forest/forest.cpp +++ b/Engine/source/forest/forest.cpp @@ -100,6 +100,7 @@ Forest::~Forest() void Forest::initPersistFields() { + docsURL; Parent::initPersistFields(); addField( "dataFile", TypeFilename, Offset( mDataFileName, Forest ), diff --git a/Engine/source/forest/forestItem.cpp b/Engine/source/forest/forestItem.cpp index e9cdbc7c0..2303bbf53 100644 --- a/Engine/source/forest/forestItem.cpp +++ b/Engine/source/forest/forestItem.cpp @@ -58,22 +58,21 @@ ForestItemData::ForestItemData() void ForestItemData::initPersistFields() { - Parent::initPersistFields(); - - addGroup( "Media" ); + docsURL; + addGroup( "Shapes" ); INITPERSISTFIELD_SHAPEASSET(Shape, ForestItemData, "Shape asset for this item type"); addProtectedField( "shapeFile", TypeShapeFilename, Offset( mShapeName, ForestItemData ), &_setShapeData, &defaultProtectedGetFn, "Shape file for this item type", AbstractClassRep::FIELD_HideInInspectors ); + endGroup( "Shape(s)" ); + addGroup("Physics"); addField( "collidable", TypeBool, Offset( mCollidable, ForestItemData ), "Can other objects or spacial queries hit items of this type." ); - addField( "radius", TypeF32, Offset( mRadius, ForestItemData ), "Radius used during placement to ensure items are not crowded." ); - - endGroup( "Media" ); + endGroup("Physics"); addGroup( "Wind" ); @@ -108,6 +107,7 @@ void ForestItemData::initPersistFields() "Frequency (speed) of the effect on leafs/fronds." ); endGroup( "Wind" ); + Parent::initPersistFields(); } void ForestItemData::consoleInit() diff --git a/Engine/source/forest/forestWindEmitter.cpp b/Engine/source/forest/forestWindEmitter.cpp index 1b4f02351..a9f4d5840 100644 --- a/Engine/source/forest/forestWindEmitter.cpp +++ b/Engine/source/forest/forestWindEmitter.cpp @@ -238,6 +238,7 @@ ForestWindEmitter::~ForestWindEmitter() void ForestWindEmitter::initPersistFields() { + docsURL; // Initialise parents' persistent fields. Parent::initPersistFields(); @@ -591,4 +592,4 @@ DefineEngineMethod( ForestWindEmitter, attachToObject, void, ( U32 objectID ),, Con::warnf( "ForestWindEmitter::attachToObject - failed to find object with ID: %d", objectID ); object->attachToObject( obj ); -} \ No newline at end of file +} diff --git a/Engine/source/gfx/sim/cubemapData.cpp b/Engine/source/gfx/sim/cubemapData.cpp index 618e1842f..0e7d7686e 100644 --- a/Engine/source/gfx/sim/cubemapData.cpp +++ b/Engine/source/gfx/sim/cubemapData.cpp @@ -76,6 +76,7 @@ ConsoleDocClass( CubemapData, void CubemapData::initPersistFields() { + docsURL; addProtectedField( "cubeFace", TypeStringFilename, Offset(mCubeMapFaceName, CubemapData), _setCubeMapFaceData, defaultProtectedGetFn, 6, "@brief The 6 cubemap face textures for a static cubemap.\n\n" "They are in the following order:\n" diff --git a/Engine/source/gfx/sim/gfxStateBlockData.cpp b/Engine/source/gfx/sim/gfxStateBlockData.cpp index 913dbbf00..9b015559d 100644 --- a/Engine/source/gfx/sim/gfxStateBlockData.cpp +++ b/Engine/source/gfx/sim/gfxStateBlockData.cpp @@ -65,6 +65,7 @@ GFXStateBlockData::GFXStateBlockData() void GFXStateBlockData::initPersistFields() { + docsURL; addGroup( "Alpha Blending" ); addField( "blendDefined", TypeBool, Offset(mState.blendDefined, GFXStateBlockData), @@ -279,6 +280,7 @@ ConsoleDocClass( GFXSamplerStateData, void GFXSamplerStateData::initPersistFields() { + docsURL; Parent::initPersistFields(); addGroup( "Address Mode" ); diff --git a/Engine/source/gfx/video/theoraTextureObject.cpp b/Engine/source/gfx/video/theoraTextureObject.cpp index d75692ac5..515b766e4 100644 --- a/Engine/source/gfx/video/theoraTextureObject.cpp +++ b/Engine/source/gfx/video/theoraTextureObject.cpp @@ -77,6 +77,7 @@ TheoraTextureObject::TheoraTextureObject() void TheoraTextureObject::initPersistFields() { + docsURL; addGroup( "Theora" ); addField( "theoraFile", TypeStringFilename, Offset( mFilename, TheoraTextureObject ), diff --git a/Engine/source/gui/3d/guiTSControl.cpp b/Engine/source/gui/3d/guiTSControl.cpp index 1ae6940b2..ba882278a 100644 --- a/Engine/source/gui/3d/guiTSControl.cpp +++ b/Engine/source/gui/3d/guiTSControl.cpp @@ -172,6 +172,7 @@ GuiTSCtrl::GuiTSCtrl() void GuiTSCtrl::initPersistFields() { + docsURL; addGroup( "Camera" ); addField("cameraZRot", TypeF32, Offset(mCameraZRot, GuiTSCtrl), diff --git a/Engine/source/gui/buttons/guiBitmapButtonCtrl.cpp b/Engine/source/gui/buttons/guiBitmapButtonCtrl.cpp index 3976bb4f4..ca51045ad 100644 --- a/Engine/source/gui/buttons/guiBitmapButtonCtrl.cpp +++ b/Engine/source/gui/buttons/guiBitmapButtonCtrl.cpp @@ -136,6 +136,7 @@ GuiBitmapButtonCtrl::GuiBitmapButtonCtrl() void GuiBitmapButtonCtrl::initPersistFields() { + docsURL; addGroup( "Bitmap" ); addProtectedField("Bitmap", TypeImageFilename, Offset(mBitmapName, GuiBitmapButtonCtrl), _setBitmapFieldData, &defaultProtectedGetFn, "Texture file to display on this button.\n" diff --git a/Engine/source/gui/buttons/guiButtonBaseCtrl.cpp b/Engine/source/gui/buttons/guiButtonBaseCtrl.cpp index b4232217f..e5efe0279 100644 --- a/Engine/source/gui/buttons/guiButtonBaseCtrl.cpp +++ b/Engine/source/gui/buttons/guiButtonBaseCtrl.cpp @@ -114,6 +114,7 @@ GuiButtonBaseCtrl::GuiButtonBaseCtrl() void GuiButtonBaseCtrl::initPersistFields() { + docsURL; addGroup( "Button" ); addField( "text", TypeCaseString, Offset(mButtonText, GuiButtonBaseCtrl), diff --git a/Engine/source/gui/buttons/guiIconButtonCtrl.cpp b/Engine/source/gui/buttons/guiIconButtonCtrl.cpp index 32b5be36b..c6d0a2e83 100644 --- a/Engine/source/gui/buttons/guiIconButtonCtrl.cpp +++ b/Engine/source/gui/buttons/guiIconButtonCtrl.cpp @@ -121,6 +121,7 @@ EndImplementEnumType; void GuiIconButtonCtrl::initPersistFields() { + docsURL; addField( "buttonMargin", TypePoint2I, Offset( mButtonMargin, GuiIconButtonCtrl ),"Margin area around the button.\n"); addProtectedField( "iconBitmap", TypeImageFilename, Offset( mBitmapName, GuiIconButtonCtrl ), &_setBitmapData, &defaultProtectedGetFn, "Bitmap file for the icon to display on the button.\n", AbstractClassRep::FIELD_HideInInspectors); diff --git a/Engine/source/gui/buttons/guiSwatchButtonCtrl.cpp b/Engine/source/gui/buttons/guiSwatchButtonCtrl.cpp index dea3e8535..08df9530f 100644 --- a/Engine/source/gui/buttons/guiSwatchButtonCtrl.cpp +++ b/Engine/source/gui/buttons/guiSwatchButtonCtrl.cpp @@ -71,6 +71,7 @@ GuiSwatchButtonCtrl::GuiSwatchButtonCtrl() void GuiSwatchButtonCtrl::initPersistFields() { + docsURL; addField("color", TypeColorF, Offset(mSwatchColor, GuiSwatchButtonCtrl), "The foreground color of GuiSwatchButtonCtrl"); addField( "gridBitmap", TypeRealString, Offset( mGridBitmap, GuiSwatchButtonCtrl ), "The bitmap used for the transparent grid" ); diff --git a/Engine/source/gui/buttons/guiToolboxButtonCtrl.cpp b/Engine/source/gui/buttons/guiToolboxButtonCtrl.cpp index c7f01d572..dc2c92d61 100644 --- a/Engine/source/gui/buttons/guiToolboxButtonCtrl.cpp +++ b/Engine/source/gui/buttons/guiToolboxButtonCtrl.cpp @@ -58,6 +58,7 @@ GuiToolboxButtonCtrl::GuiToolboxButtonCtrl() //------------------------------------- void GuiToolboxButtonCtrl::initPersistFields() { + docsURL; INITPERSISTFIELD_IMAGEASSET(NormalBitmap, GuiToolboxButtonCtrl, ""); INITPERSISTFIELD_IMAGEASSET(LoweredBitmap, GuiToolboxButtonCtrl, ""); INITPERSISTFIELD_IMAGEASSET(HoverBitmap, GuiToolboxButtonCtrl, ""); diff --git a/Engine/source/gui/containers/guiAutoScrollCtrl.cpp b/Engine/source/gui/containers/guiAutoScrollCtrl.cpp index bb3432bce..e657a6b5f 100644 --- a/Engine/source/gui/containers/guiAutoScrollCtrl.cpp +++ b/Engine/source/gui/containers/guiAutoScrollCtrl.cpp @@ -107,6 +107,7 @@ GuiAutoScrollCtrl::GuiAutoScrollCtrl() void GuiAutoScrollCtrl::initPersistFields() { + docsURL; addGroup( "Scrolling" ); addField( "scrollDirection", TYPEID< Direction >(), Offset( mDirection, GuiAutoScrollCtrl ), diff --git a/Engine/source/gui/containers/guiContainer.cpp b/Engine/source/gui/containers/guiContainer.cpp index 2f83ef1c7..0d471f6c9 100644 --- a/Engine/source/gui/containers/guiContainer.cpp +++ b/Engine/source/gui/containers/guiContainer.cpp @@ -75,6 +75,7 @@ GuiContainer::~GuiContainer() void GuiContainer::initPersistFields() { + docsURL; Con::setIntVariable("$DOCKING_NONE", Docking::dockNone); Con::setIntVariable("$DOCKING_CLIENT", Docking::dockClient); Con::setIntVariable("$DOCKING_TOP", Docking::dockTop); diff --git a/Engine/source/gui/containers/guiCtrlArrayCtrl.cpp b/Engine/source/gui/containers/guiCtrlArrayCtrl.cpp index 2e93a69cb..ab81a9d2f 100644 --- a/Engine/source/gui/containers/guiCtrlArrayCtrl.cpp +++ b/Engine/source/gui/containers/guiCtrlArrayCtrl.cpp @@ -53,6 +53,7 @@ GuiControlArrayControl::GuiControlArrayControl() void GuiControlArrayControl::initPersistFields() { + docsURL; addGroup( "Array" ); addField( "colCount", TypeS32, Offset(mCols, GuiControlArrayControl), diff --git a/Engine/source/gui/containers/guiDragAndDropCtrl.cpp b/Engine/source/gui/containers/guiDragAndDropCtrl.cpp index a4aebe34c..7503da072 100644 --- a/Engine/source/gui/containers/guiDragAndDropCtrl.cpp +++ b/Engine/source/gui/containers/guiDragAndDropCtrl.cpp @@ -164,6 +164,7 @@ GuiDragAndDropControl::GuiDragAndDropControl() : mDeleteOnMouseUp(true), mUseWho void GuiDragAndDropControl::initPersistFields() { + docsURL; addField( "deleteOnMouseUp", TypeBool, Offset( mDeleteOnMouseUp, GuiDragAndDropControl ), "If true, the control deletes itself when the left mouse button is released.\n\n" "If at this point, the drag&drop control still contains its payload, it will be deleted along with the control." ); diff --git a/Engine/source/gui/containers/guiDynamicCtrlArrayCtrl.cpp b/Engine/source/gui/containers/guiDynamicCtrlArrayCtrl.cpp index f66a14bb0..a9765bb4a 100644 --- a/Engine/source/gui/containers/guiDynamicCtrlArrayCtrl.cpp +++ b/Engine/source/gui/containers/guiDynamicCtrlArrayCtrl.cpp @@ -97,6 +97,7 @@ ConsoleDocClass( GuiDynamicCtrlArrayControl, void GuiDynamicCtrlArrayControl::initPersistFields() { + docsURL; addField( "colCount", TypeS32, Offset( mCols, GuiDynamicCtrlArrayControl ), "Number of columns the child controls have been arranged into. This " "value is calculated automatically when children are added, removed or " diff --git a/Engine/source/gui/containers/guiFormCtrl.cpp b/Engine/source/gui/containers/guiFormCtrl.cpp index 9397d4be7..c232b852a 100644 --- a/Engine/source/gui/containers/guiFormCtrl.cpp +++ b/Engine/source/gui/containers/guiFormCtrl.cpp @@ -79,6 +79,7 @@ bool GuiFormCtrl::_setHasMenu( void *object, const char *index, const char *data void GuiFormCtrl::initPersistFields() { + docsURL; addField("caption", TypeRealString, Offset(mCaption, GuiFormCtrl)); addField("contentLibrary",TypeString, Offset(mContentLibrary, GuiFormCtrl)); addField("content", TypeString, Offset(mContent, GuiFormCtrl)); diff --git a/Engine/source/gui/containers/guiFrameCtrl.cpp b/Engine/source/gui/containers/guiFrameCtrl.cpp index a756ca560..ea18b1a4e 100644 --- a/Engine/source/gui/containers/guiFrameCtrl.cpp +++ b/Engine/source/gui/containers/guiFrameCtrl.cpp @@ -85,6 +85,7 @@ EndImplementEnumType; //----------------------------------------------------------------------------- void GuiFrameSetCtrl::initPersistFields() { + docsURL; addField( "columns", TypeS32Vector, Offset(mColumnOffsets, GuiFrameSetCtrl), "A vector of column offsets (determines the width of each column)." ); @@ -1150,4 +1151,4 @@ RectSpacingI GuiFrameSetCtrl::getFramePadding(S32 index) return fd->mPadding; return RectSpacingI( 0, 0, 0, 0 ); -} \ No newline at end of file +} diff --git a/Engine/source/gui/containers/guiPaneCtrl.cpp b/Engine/source/gui/containers/guiPaneCtrl.cpp index f658c59f8..ccb01ad2c 100644 --- a/Engine/source/gui/containers/guiPaneCtrl.cpp +++ b/Engine/source/gui/containers/guiPaneCtrl.cpp @@ -78,6 +78,7 @@ GuiPaneControl::GuiPaneControl() void GuiPaneControl::initPersistFields() { + docsURL; addGroup( "Pane" ); addField("caption", TypeRealString, Offset(mCaption, GuiPaneControl), diff --git a/Engine/source/gui/containers/guiRolloutCtrl.cpp b/Engine/source/gui/containers/guiRolloutCtrl.cpp index 095a6a358..1df533d68 100644 --- a/Engine/source/gui/containers/guiRolloutCtrl.cpp +++ b/Engine/source/gui/containers/guiRolloutCtrl.cpp @@ -92,6 +92,7 @@ GuiRolloutCtrl::~GuiRolloutCtrl() void GuiRolloutCtrl::initPersistFields() { + docsURL; addGroup( "Rollout" ); addField( "caption", TypeRealString, Offset( mCaption, GuiRolloutCtrl ), diff --git a/Engine/source/gui/containers/guiScrollCtrl.cpp b/Engine/source/gui/containers/guiScrollCtrl.cpp index 43e2da663..8671b09a2 100644 --- a/Engine/source/gui/containers/guiScrollCtrl.cpp +++ b/Engine/source/gui/containers/guiScrollCtrl.cpp @@ -96,6 +96,7 @@ GuiScrollCtrl::GuiScrollCtrl() void GuiScrollCtrl::initPersistFields() { + docsURL; addGroup( "Scolling" ); addField( "willFirstRespond", TypeBool, Offset(mWillFirstRespond, GuiScrollCtrl)); diff --git a/Engine/source/gui/containers/guiSplitContainer.cpp b/Engine/source/gui/containers/guiSplitContainer.cpp index 59b2bb75f..ff7f609c0 100644 --- a/Engine/source/gui/containers/guiSplitContainer.cpp +++ b/Engine/source/gui/containers/guiSplitContainer.cpp @@ -113,6 +113,7 @@ GuiSplitContainer::GuiSplitContainer() void GuiSplitContainer::initPersistFields() { + docsURL; addGroup( "Splitter", "Options to configure split panels contained by this control" ); addField( "orientation", TYPEID< Orientation >(), Offset( mOrientation, GuiSplitContainer), diff --git a/Engine/source/gui/containers/guiStackCtrl.cpp b/Engine/source/gui/containers/guiStackCtrl.cpp index 3d587f8d1..e0ef13297 100644 --- a/Engine/source/gui/containers/guiStackCtrl.cpp +++ b/Engine/source/gui/containers/guiStackCtrl.cpp @@ -96,6 +96,7 @@ GuiStackControl::GuiStackControl() void GuiStackControl::initPersistFields() { + docsURL; addGroup( "Stacking" ); addField( "stackingType", TYPEID< StackingType >(), Offset(mStackingType, GuiStackControl), @@ -385,4 +386,4 @@ bool GuiStackControl::reOrder(SimObject* obj, SimObject* target) void GuiStackControl::childResized(GuiControl *child) { updatePanes(); -} \ No newline at end of file +} diff --git a/Engine/source/gui/containers/guiTabBookCtrl.cpp b/Engine/source/gui/containers/guiTabBookCtrl.cpp index 049d4dc7d..3a9c9c608 100644 --- a/Engine/source/gui/containers/guiTabBookCtrl.cpp +++ b/Engine/source/gui/containers/guiTabBookCtrl.cpp @@ -98,6 +98,7 @@ GuiTabBookCtrl::GuiTabBookCtrl() void GuiTabBookCtrl::initPersistFields() { + docsURL; addGroup( "TabBook" ); addField( "tabPosition", TYPEID< TabPosition >(), Offset( mTabPosition, GuiTabBookCtrl ), diff --git a/Engine/source/gui/containers/guiWindowCtrl.cpp b/Engine/source/gui/containers/guiWindowCtrl.cpp index b4fb08128..70549a3dd 100644 --- a/Engine/source/gui/containers/guiWindowCtrl.cpp +++ b/Engine/source/gui/containers/guiWindowCtrl.cpp @@ -131,6 +131,7 @@ GuiWindowCtrl::GuiWindowCtrl() void GuiWindowCtrl::initPersistFields() { + docsURL; addGroup( "Window" ); addField( "text", TypeRealString, Offset( mText, GuiWindowCtrl ), diff --git a/Engine/source/gui/controls/gui3DProjectionCtrl.cpp b/Engine/source/gui/controls/gui3DProjectionCtrl.cpp index 765b3f1f8..6599c31f2 100644 --- a/Engine/source/gui/controls/gui3DProjectionCtrl.cpp +++ b/Engine/source/gui/controls/gui3DProjectionCtrl.cpp @@ -70,7 +70,8 @@ Gui3DProjectionCtrl::Gui3DProjectionCtrl() } void Gui3DProjectionCtrl::initPersistFields() -{ +{ + docsURL; Parent::initPersistFields(); addGroup("3DProjection"); addField("pointWorld" , TypePoint3F , Offset(mPtWorld , Gui3DProjectionCtrl)); diff --git a/Engine/source/gui/controls/guiAnimBitmapCtrl.cpp b/Engine/source/gui/controls/guiAnimBitmapCtrl.cpp index 8500cd9b7..a098518e2 100644 --- a/Engine/source/gui/controls/guiAnimBitmapCtrl.cpp +++ b/Engine/source/gui/controls/guiAnimBitmapCtrl.cpp @@ -64,6 +64,7 @@ guiAnimBitmapCtrl::~guiAnimBitmapCtrl(void) } void guiAnimBitmapCtrl::initPersistFields() { + docsURL; addField("AnimTexTiling", TYPEID< Point2I >(), Offset(mAnimTexTiling, guiAnimBitmapCtrl), "@brief The number of frames, in rows and columns stored in textureName " "(when animateTexture is true).\n\n" diff --git a/Engine/source/gui/controls/guiBitmapBarCtrl.cpp b/Engine/source/gui/controls/guiBitmapBarCtrl.cpp index 5a2e480fb..d1f17d2d0 100644 --- a/Engine/source/gui/controls/guiBitmapBarCtrl.cpp +++ b/Engine/source/gui/controls/guiBitmapBarCtrl.cpp @@ -43,6 +43,7 @@ GuiBitmapBarCtrl::GuiBitmapBarCtrl(void) void GuiBitmapBarCtrl::initPersistFields() { + docsURL; addField("percent", TypeF32, Offset(mPercent, GuiBitmapBarCtrl), "% shown"); addField("vertical", TypeBool, Offset(mVertical, GuiBitmapBarCtrl), @@ -98,4 +99,4 @@ void GuiBitmapBarCtrl::onRender(Point2I offset, const RectI &updateRect) } renderChildControls(offset, updateRect); -} \ No newline at end of file +} diff --git a/Engine/source/gui/controls/guiBitmapCtrl.cpp b/Engine/source/gui/controls/guiBitmapCtrl.cpp index 7a1d8b4f2..0c34280e0 100644 --- a/Engine/source/gui/controls/guiBitmapCtrl.cpp +++ b/Engine/source/gui/controls/guiBitmapCtrl.cpp @@ -78,6 +78,7 @@ bool GuiBitmapCtrl::setBitmapName( void *object, const char *index, const char * void GuiBitmapCtrl::initPersistFields() { + docsURL; addGroup( "Bitmap" ); INITPERSISTFIELD_IMAGEASSET(Bitmap, GuiBitmapCtrl, The bitmap file to display in the control); diff --git a/Engine/source/gui/controls/guiColorPicker.cpp b/Engine/source/gui/controls/guiColorPicker.cpp index d0e3034b6..bed80df84 100644 --- a/Engine/source/gui/controls/guiColorPicker.cpp +++ b/Engine/source/gui/controls/guiColorPicker.cpp @@ -101,6 +101,7 @@ EndImplementEnumType; void GuiColorPickerCtrl::initPersistFields() { + docsURL; addGroup("ColorPicker"); addField("baseColor", TypeColorF, Offset(mBaseColor, GuiColorPickerCtrl)); addField("pickColor", TypeColorF, Offset(mPickColor, GuiColorPickerCtrl)); diff --git a/Engine/source/gui/controls/guiConsoleEditCtrl.cpp b/Engine/source/gui/controls/guiConsoleEditCtrl.cpp index d032b8766..2f31ffa6b 100644 --- a/Engine/source/gui/controls/guiConsoleEditCtrl.cpp +++ b/Engine/source/gui/controls/guiConsoleEditCtrl.cpp @@ -62,6 +62,7 @@ GuiConsoleEditCtrl::GuiConsoleEditCtrl() void GuiConsoleEditCtrl::initPersistFields() { + docsURL; addGroup("GuiConsoleEditCtrl"); addField("useSiblingScroller", TypeBool, Offset(mUseSiblingScroller, GuiConsoleEditCtrl)); endGroup("GuiConsoleEditCtrl"); diff --git a/Engine/source/gui/controls/guiConsoleTextCtrl.cpp b/Engine/source/gui/controls/guiConsoleTextCtrl.cpp index 5001663fd..20a80c8e8 100644 --- a/Engine/source/gui/controls/guiConsoleTextCtrl.cpp +++ b/Engine/source/gui/controls/guiConsoleTextCtrl.cpp @@ -46,6 +46,7 @@ GuiConsoleTextCtrl::~GuiConsoleTextCtrl() void GuiConsoleTextCtrl::initPersistFields() { + docsURL; addGroup("GuiConsoleTextCtrl"); addField("expression", TypeRealString, Offset(mConsoleExpression, GuiConsoleTextCtrl)); endGroup("GuiConsoleTextCtrl"); diff --git a/Engine/source/gui/controls/guiDecoyCtrl.cpp b/Engine/source/gui/controls/guiDecoyCtrl.cpp index 54ca105ae..f15b613db 100644 --- a/Engine/source/gui/controls/guiDecoyCtrl.cpp +++ b/Engine/source/gui/controls/guiDecoyCtrl.cpp @@ -65,6 +65,7 @@ GuiDecoyCtrl::~GuiDecoyCtrl() void GuiDecoyCtrl::initPersistFields() { + docsURL; addField("isDecoy", TypeBool, Offset(mIsDecoy, GuiDecoyCtrl), "Sets this control to decoy mode"); Parent::initPersistFields(); diff --git a/Engine/source/gui/controls/guiDirectoryFileListCtrl.cpp b/Engine/source/gui/controls/guiDirectoryFileListCtrl.cpp index 724c0c4e2..a23a016a9 100644 --- a/Engine/source/gui/controls/guiDirectoryFileListCtrl.cpp +++ b/Engine/source/gui/controls/guiDirectoryFileListCtrl.cpp @@ -51,6 +51,7 @@ GuiDirectoryFileListCtrl::GuiDirectoryFileListCtrl() void GuiDirectoryFileListCtrl::initPersistFields() { + docsURL; addProtectedField( "filePath", TypeString, Offset( mFilePath, GuiDirectoryFileListCtrl ), &_setFilePath, &defaultProtectedGetFn, "Path in game directory from which to list files." ); addProtectedField( "fileFilter", TypeString, Offset( mFilter, GuiDirectoryFileListCtrl ), diff --git a/Engine/source/gui/controls/guiFileTreeCtrl.cpp b/Engine/source/gui/controls/guiFileTreeCtrl.cpp index 3baff1b84..398d859af 100644 --- a/Engine/source/gui/controls/guiFileTreeCtrl.cpp +++ b/Engine/source/gui/controls/guiFileTreeCtrl.cpp @@ -73,6 +73,7 @@ GuiFileTreeCtrl::GuiFileTreeCtrl() void GuiFileTreeCtrl::initPersistFields() { + docsURL; addGroup( "File Tree" ); addField( "rootPath", TypeRealString, Offset( mRootPath, GuiFileTreeCtrl ), "Path in game directory that should be displayed in the control." ); addProtectedField( "fileFilter", TypeRealString, Offset( mFileFilter, GuiFileTreeCtrl ), diff --git a/Engine/source/gui/controls/guiGameListMenuCtrl.cpp b/Engine/source/gui/controls/guiGameListMenuCtrl.cpp index 7a9951087..839a58bed 100644 --- a/Engine/source/gui/controls/guiGameListMenuCtrl.cpp +++ b/Engine/source/gui/controls/guiGameListMenuCtrl.cpp @@ -1475,6 +1475,7 @@ IMPLEMENT_CALLBACK(GuiGameListMenuCtrl, onAxisEvent, void, (const char* device, void GuiGameListMenuCtrl::initPersistFields() { + docsURL; addField("debugRender", TypeBool, Offset(mDebugRender, GuiGameListMenuCtrl), "Enable debug rendering" ); @@ -1862,6 +1863,7 @@ ConsoleDocClass( GuiGameListMenuProfile, void GuiGameListMenuProfile::initPersistFields() { + docsURL; addField( "hitAreaUpperLeft", TypePoint2I, Offset(mHitAreaUpperLeft, GuiGameListMenuProfile), "Position of the upper left corner of the row hit area (relative to row's top left corner)" ); diff --git a/Engine/source/gui/controls/guiGameListOptionsCtrl.cpp b/Engine/source/gui/controls/guiGameListOptionsCtrl.cpp index cd5be7955..f4d40ebe6 100644 --- a/Engine/source/gui/controls/guiGameListOptionsCtrl.cpp +++ b/Engine/source/gui/controls/guiGameListOptionsCtrl.cpp @@ -446,6 +446,7 @@ ConsoleDocClass( GuiGameListOptionsCtrl, void GuiGameListOptionsCtrl::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -542,6 +543,7 @@ ConsoleDocClass( GuiGameListOptionsProfile, void GuiGameListOptionsProfile::initPersistFields() { + docsURL; addField( "columnSplit", TypeS32, Offset(mColumnSplit, GuiGameListOptionsProfile), "Padding between the leftmost edge of the control, and the row's left arrow." ); diff --git a/Engine/source/gui/controls/guiGameSettingsCtrl.cpp b/Engine/source/gui/controls/guiGameSettingsCtrl.cpp index 254d63634..04d39ca10 100644 --- a/Engine/source/gui/controls/guiGameSettingsCtrl.cpp +++ b/Engine/source/gui/controls/guiGameSettingsCtrl.cpp @@ -900,6 +900,7 @@ IMPLEMENT_CALLBACK(GuiGameSettingsCtrl, onAxisEvent, void, (const char* device, void GuiGameSettingsCtrl::initPersistFields() { + docsURL; INITPERSISTFIELD_IMAGEASSET(KeybindBitmap, GuiGameSettingsCtrl, "Bitmap used to display the bound key for this keybind option."); INITPERSISTFIELD_IMAGEASSET(PreviousBitmap, GuiGameSettingsCtrl, "Bitmap used for the previous button when in list mode."); INITPERSISTFIELD_IMAGEASSET(NextBitmap, GuiGameSettingsCtrl, "Bitmap used for the next button when in list mode."); diff --git a/Engine/source/gui/controls/guiGradientCtrl.cpp b/Engine/source/gui/controls/guiGradientCtrl.cpp index 3b5959ae8..324a488ab 100644 --- a/Engine/source/gui/controls/guiGradientCtrl.cpp +++ b/Engine/source/gui/controls/guiGradientCtrl.cpp @@ -232,6 +232,7 @@ GuiGradientCtrl::GuiGradientCtrl() //-------------------------------------------------------------------------- void GuiGradientCtrl::initPersistFields() { + docsURL; addGroup("ColorPicker"); addField("baseColor", TypeColorF, Offset(mBaseColor, GuiGradientCtrl)); addField("pickColor", TypeColorF, Offset(mPickColor, GuiGradientCtrl)); diff --git a/Engine/source/gui/controls/guiListBoxCtrl.cpp b/Engine/source/gui/controls/guiListBoxCtrl.cpp index 4835b6d40..8b69b89e8 100644 --- a/Engine/source/gui/controls/guiListBoxCtrl.cpp +++ b/Engine/source/gui/controls/guiListBoxCtrl.cpp @@ -176,6 +176,7 @@ GuiListBoxCtrl::~GuiListBoxCtrl() void GuiListBoxCtrl::initPersistFields() { + docsURL; addField( "allowMultipleSelections", TypeBool, Offset( mMultipleSelections, GuiListBoxCtrl), "If true, will allow the selection of multiple items in the listbox.\n"); addField( "fitParentWidth", TypeBool, Offset( mFitParentWidth, GuiListBoxCtrl), "If true, the width of the listbox will match the width of its parent control.\n"); addField( "colorBullet", TypeBool, Offset( mColorBullet, GuiListBoxCtrl), "If true, colored items will render a colored rectangular bullet next to the item text.\n"); diff --git a/Engine/source/gui/controls/guiMLTextCtrl.cpp b/Engine/source/gui/controls/guiMLTextCtrl.cpp index 1b1c3184f..d455e0ba7 100644 --- a/Engine/source/gui/controls/guiMLTextCtrl.cpp +++ b/Engine/source/gui/controls/guiMLTextCtrl.cpp @@ -285,6 +285,7 @@ GuiMLTextCtrl::~GuiMLTextCtrl() //-------------------------------------------------------------------------- void GuiMLTextCtrl::initPersistFields() { + docsURL; addGroup( "Text" ); addField("lineSpacing", TypeS32, Offset(mLineSpacingPixels, GuiMLTextCtrl), "The number of blank pixels to place between each line.\n"); diff --git a/Engine/source/gui/controls/guiMLTextEditCtrl.cpp b/Engine/source/gui/controls/guiMLTextEditCtrl.cpp index 771ae24ad..2877b1150 100644 --- a/Engine/source/gui/controls/guiMLTextEditCtrl.cpp +++ b/Engine/source/gui/controls/guiMLTextEditCtrl.cpp @@ -89,6 +89,7 @@ bool GuiMLTextEditCtrl::resize(const Point2I &newPosition, const Point2I &newExt //-------------------------------------------------------------------------- void GuiMLTextEditCtrl::initPersistFields() { + docsURL; addField( "escapeCommand", TypeString, Offset( mEscapeCommand, GuiMLTextEditCtrl ), "Script function to run whenever the 'escape' key is pressed when this control is in focus.\n"); Parent::initPersistFields(); } diff --git a/Engine/source/gui/controls/guiMaterialCtrl.cpp b/Engine/source/gui/controls/guiMaterialCtrl.cpp index 6d177767f..e55a74087 100644 --- a/Engine/source/gui/controls/guiMaterialCtrl.cpp +++ b/Engine/source/gui/controls/guiMaterialCtrl.cpp @@ -50,6 +50,7 @@ GuiMaterialCtrl::GuiMaterialCtrl() void GuiMaterialCtrl::initPersistFields() { + docsURL; addGroup( "Material" ); INITPERSISTFIELD_MATERIALASSET(Material, GuiMaterialCtrl, ""); addProtectedField( "materialName", TypeStringFilename, Offset( mMaterialName, GuiMaterialCtrl ), &GuiMaterialCtrl::_setMaterialData, &defaultProtectedGetFn, "", AbstractClassRep::FIELD_HideInInspectors ); diff --git a/Engine/source/gui/controls/guiPopUpCtrl.cpp b/Engine/source/gui/controls/guiPopUpCtrl.cpp index 2e0f022b5..695ddc3fb 100644 --- a/Engine/source/gui/controls/guiPopUpCtrl.cpp +++ b/Engine/source/gui/controls/guiPopUpCtrl.cpp @@ -297,6 +297,7 @@ GuiPopUpMenuCtrl::~GuiPopUpMenuCtrl() //------------------------------------------------------------------------------ void GuiPopUpMenuCtrl::initPersistFields(void) { + docsURL; addField("maxPopupHeight", TypeS32, Offset(mMaxPopupHeight, GuiPopUpMenuCtrl)); addField("sbUsesNAColor", TypeBool, Offset(mRenderScrollInNA, GuiPopUpMenuCtrl)); addField("reverseTextList", TypeBool, Offset(mReverseTextList, GuiPopUpMenuCtrl)); diff --git a/Engine/source/gui/controls/guiPopUpCtrlEx.cpp b/Engine/source/gui/controls/guiPopUpCtrlEx.cpp index e9a732a53..8fb0edf3a 100644 --- a/Engine/source/gui/controls/guiPopUpCtrlEx.cpp +++ b/Engine/source/gui/controls/guiPopUpCtrlEx.cpp @@ -349,6 +349,7 @@ GuiPopUpMenuCtrlEx::~GuiPopUpMenuCtrlEx() //------------------------------------------------------------------------------ void GuiPopUpMenuCtrlEx::initPersistFields(void) { + docsURL; addField("maxPopupHeight", TypeS32, Offset(mMaxPopupHeight, GuiPopUpMenuCtrlEx), "Length of menu when it extends"); addField("sbUsesNAColor", TypeBool, Offset(mRenderScrollInNA, GuiPopUpMenuCtrlEx), "Deprecated" "@internal"); addField("reverseTextList", TypeBool, Offset(mReverseTextList, GuiPopUpMenuCtrlEx), "Reverses text list if popup extends up, instead of down"); diff --git a/Engine/source/gui/controls/guiSliderCtrl.cpp b/Engine/source/gui/controls/guiSliderCtrl.cpp index 9c61aaf5e..5fc81d5f3 100644 --- a/Engine/source/gui/controls/guiSliderCtrl.cpp +++ b/Engine/source/gui/controls/guiSliderCtrl.cpp @@ -111,6 +111,7 @@ GuiSliderCtrl::GuiSliderCtrl() void GuiSliderCtrl::initPersistFields() { + docsURL; addGroup( "Slider" ); addField( "range", TypePoint2F, Offset( mRange, GuiSliderCtrl ), diff --git a/Engine/source/gui/controls/guiTabPageCtrl.cpp b/Engine/source/gui/controls/guiTabPageCtrl.cpp index b8c84ff0b..6604639ef 100644 --- a/Engine/source/gui/controls/guiTabPageCtrl.cpp +++ b/Engine/source/gui/controls/guiTabPageCtrl.cpp @@ -58,6 +58,7 @@ GuiTabPageCtrl::GuiTabPageCtrl(void) void GuiTabPageCtrl::initPersistFields() { + docsURL; addField( "fitBook", TypeBool, Offset( mFitBook, GuiTabPageCtrl ), "Determines whether to resize this page when it is added to the tab book. " "If true, the page will be resized according to the tab book extents and " diff --git a/Engine/source/gui/controls/guiTextCtrl.cpp b/Engine/source/gui/controls/guiTextCtrl.cpp index 8759e3973..00b2bac2c 100644 --- a/Engine/source/gui/controls/guiTextCtrl.cpp +++ b/Engine/source/gui/controls/guiTextCtrl.cpp @@ -89,6 +89,7 @@ DefineEngineMethod( GuiTextCtrl, setTextID, void, (const char* textID),, void GuiTextCtrl::initPersistFields() { + docsURL; addProtectedField("text", TypeCaseString, Offset(mInitialText, GuiTextCtrl), setText, getTextProperty, "The text to show on the control."); diff --git a/Engine/source/gui/controls/guiTextEditCtrl.cpp b/Engine/source/gui/controls/guiTextEditCtrl.cpp index 85f76a36a..ea30740b5 100644 --- a/Engine/source/gui/controls/guiTextEditCtrl.cpp +++ b/Engine/source/gui/controls/guiTextEditCtrl.cpp @@ -169,6 +169,7 @@ GuiTextEditCtrl::~GuiTextEditCtrl() void GuiTextEditCtrl::initPersistFields() { + docsURL; addProtectedField("placeholderText", TypeCaseString, Offset(mPlaceholderText, GuiTextEditCtrl), setPlaceholderText, getPlaceholderText, "The text to show on the control."); diff --git a/Engine/source/gui/controls/guiTextEditSliderBitmapCtrl.cpp b/Engine/source/gui/controls/guiTextEditSliderBitmapCtrl.cpp index c80221d73..bdc8c77e9 100644 --- a/Engine/source/gui/controls/guiTextEditSliderBitmapCtrl.cpp +++ b/Engine/source/gui/controls/guiTextEditSliderBitmapCtrl.cpp @@ -105,6 +105,7 @@ GuiTextEditSliderBitmapCtrl::~GuiTextEditSliderBitmapCtrl() void GuiTextEditSliderBitmapCtrl::initPersistFields() { + docsURL; addField("format", TypeString, Offset(mFormat, GuiTextEditSliderBitmapCtrl), "Character format type to place in the control.\n"); addField("range", TypePoint2F, Offset(mRange, GuiTextEditSliderBitmapCtrl), "Maximum vertical and horizontal range to allow in the control.\n"); addField("increment", TypeF32, Offset(mIncAmount, GuiTextEditSliderBitmapCtrl), "How far to increment the slider on each step.\n"); diff --git a/Engine/source/gui/controls/guiTextEditSliderCtrl.cpp b/Engine/source/gui/controls/guiTextEditSliderCtrl.cpp index 599678fc3..3b4bd605b 100644 --- a/Engine/source/gui/controls/guiTextEditSliderCtrl.cpp +++ b/Engine/source/gui/controls/guiTextEditSliderCtrl.cpp @@ -71,6 +71,7 @@ GuiTextEditSliderCtrl::~GuiTextEditSliderCtrl() void GuiTextEditSliderCtrl::initPersistFields() { + docsURL; addField("format", TypeString, Offset(mFormat, GuiTextEditSliderCtrl), "Character format type to place in the control.\n"); addField("range", TypePoint2F, Offset(mRange, GuiTextEditSliderCtrl), "Maximum vertical and horizontal range to allow in the control.\n"); addField("increment", TypeF32, Offset(mIncAmount, GuiTextEditSliderCtrl), "How far to increment the slider on each step.\n"); diff --git a/Engine/source/gui/controls/guiTextListCtrl.cpp b/Engine/source/gui/controls/guiTextListCtrl.cpp index 834e2d500..174687f79 100644 --- a/Engine/source/gui/controls/guiTextListCtrl.cpp +++ b/Engine/source/gui/controls/guiTextListCtrl.cpp @@ -130,6 +130,7 @@ GuiTextListCtrl::GuiTextListCtrl() void GuiTextListCtrl::initPersistFields() { + docsURL; addField("columns", TypeS32Vector, Offset(mColumnOffsets, GuiTextListCtrl), "A vector of column offsets. The number of values determines the number of columns in the table.\n" ); addField("fitParentWidth", TypeBool, Offset(mFitParentWidth, GuiTextListCtrl), "If true, the width of this control will match the width of its parent.\n"); addField("clipColumnText", TypeBool, Offset(mClipColumnText, GuiTextListCtrl), "If true, text exceeding a column's given width will get clipped.\n" ); diff --git a/Engine/source/gui/controls/guiTreeViewCtrl.cpp b/Engine/source/gui/controls/guiTreeViewCtrl.cpp index 986cfba71..fa6a6f73b 100644 --- a/Engine/source/gui/controls/guiTreeViewCtrl.cpp +++ b/Engine/source/gui/controls/guiTreeViewCtrl.cpp @@ -859,6 +859,7 @@ GuiTreeViewCtrl::~GuiTreeViewCtrl() void GuiTreeViewCtrl::initPersistFields() { + docsURL; addGroup( "TreeView" ); addField( "tabSize", TypeS32, Offset(mTabSize, GuiTreeViewCtrl)); diff --git a/Engine/source/gui/core/guiCanvas.cpp b/Engine/source/gui/core/guiCanvas.cpp index 721c3e6b2..19342b24d 100644 --- a/Engine/source/gui/core/guiCanvas.cpp +++ b/Engine/source/gui/core/guiCanvas.cpp @@ -201,6 +201,7 @@ bool GuiCanvas::setProtectedNumFences( void *object, const char *index, const ch void GuiCanvas::initPersistFields() { + docsURL; addGroup("Mouse Handling"); addField("alwaysHandleMouseButtons", TypeBool, Offset(mAlwaysHandleMouseButtons, GuiCanvas), "Deal with mouse buttons, even if the cursor is hidden." ); diff --git a/Engine/source/gui/core/guiControl.cpp b/Engine/source/gui/core/guiControl.cpp index 5f20c4302..f25c19130 100644 --- a/Engine/source/gui/core/guiControl.cpp +++ b/Engine/source/gui/core/guiControl.cpp @@ -252,6 +252,7 @@ void GuiControl::consoleInit() void GuiControl::initPersistFields() { + docsURL; addGroup( "Layout" ); addField("position", TypePoint2I, Offset(mBounds.point, GuiControl), diff --git a/Engine/source/gui/core/guiOffscreenCanvas.cpp b/Engine/source/gui/core/guiOffscreenCanvas.cpp index 47eb409a3..522882b14 100644 --- a/Engine/source/gui/core/guiOffscreenCanvas.cpp +++ b/Engine/source/gui/core/guiOffscreenCanvas.cpp @@ -27,6 +27,7 @@ GuiOffscreenCanvas::~GuiOffscreenCanvas() void GuiOffscreenCanvas::initPersistFields() { + docsURL; addField( "targetSize", TypePoint2I, Offset( mTargetSize, GuiOffscreenCanvas ),"" ); addField( "targetFormat", TypeGFXFormat, Offset( mTargetFormat, GuiOffscreenCanvas ), ""); addField( "targetName", TypeRealString, Offset( mTargetName, GuiOffscreenCanvas ), ""); diff --git a/Engine/source/gui/core/guiScriptNotifyControl.cpp b/Engine/source/gui/core/guiScriptNotifyControl.cpp index d756f562f..cfc7b61ca 100644 --- a/Engine/source/gui/core/guiScriptNotifyControl.cpp +++ b/Engine/source/gui/core/guiScriptNotifyControl.cpp @@ -67,6 +67,7 @@ GuiScriptNotifyCtrl::~GuiScriptNotifyCtrl() void GuiScriptNotifyCtrl::initPersistFields() { + docsURL; // Callbacks Group addGroup("Callbacks"); addField("notifyOnChildAdded", TypeBool, Offset( mOnChildAdded, GuiScriptNotifyCtrl ), "Enables/disables onChildAdded callback" ); diff --git a/Engine/source/gui/core/guiTypes.cpp b/Engine/source/gui/core/guiTypes.cpp index 1928f5dbc..4bbb3d8d0 100644 --- a/Engine/source/gui/core/guiTypes.cpp +++ b/Engine/source/gui/core/guiTypes.cpp @@ -88,6 +88,7 @@ GuiCursor::~GuiCursor() void GuiCursor::initPersistFields() { + docsURL; addField("hotSpot", TypePoint2I, Offset(mHotSpot, GuiCursor), "The location of the cursor's hot spot (which pixel carries the click)."); addField("renderOffset",TypePoint2F, Offset(mRenderOffset, GuiCursor), "Offset of the bitmap, where 0 signifies left edge of the bitmap, 1, the right. Similarly for the Y-component."); @@ -349,6 +350,7 @@ GuiControlProfile::~GuiControlProfile() void GuiControlProfile::initPersistFields() { + docsURL; addGroup( "Behavior" ); addField( "tab", TypeBool, Offset(mTabable, GuiControlProfile)); diff --git a/Engine/source/gui/editor/guiEaseViewCtrl.cpp b/Engine/source/gui/editor/guiEaseViewCtrl.cpp index ae97c36cb..c78d92266 100644 --- a/Engine/source/gui/editor/guiEaseViewCtrl.cpp +++ b/Engine/source/gui/editor/guiEaseViewCtrl.cpp @@ -49,6 +49,7 @@ GuiEaseViewCtrl::GuiEaseViewCtrl() void GuiEaseViewCtrl::initPersistFields() { + docsURL; Parent::initPersistFields(); addField("ease", TypeEaseF, Offset( mEase, GuiEaseViewCtrl ) ); diff --git a/Engine/source/gui/editor/guiEditCtrl.cpp b/Engine/source/gui/editor/guiEditCtrl.cpp index 6be77962c..e95857c8c 100644 --- a/Engine/source/gui/editor/guiEditCtrl.cpp +++ b/Engine/source/gui/editor/guiEditCtrl.cpp @@ -139,6 +139,7 @@ GuiEditCtrl::GuiEditCtrl() void GuiEditCtrl::initPersistFields() { + docsURL; addGroup( "Snapping" ); addField( "snapToControls", TypeBool, Offset( mSnapToControls, GuiEditCtrl ), "If true, edge and center snapping will work against controls." ); diff --git a/Engine/source/gui/editor/guiFilterCtrl.cpp b/Engine/source/gui/editor/guiFilterCtrl.cpp index 1be90b8e2..d331efbf0 100644 --- a/Engine/source/gui/editor/guiFilterCtrl.cpp +++ b/Engine/source/gui/editor/guiFilterCtrl.cpp @@ -50,6 +50,7 @@ GuiFilterCtrl::GuiFilterCtrl() void GuiFilterCtrl::initPersistFields() { + docsURL; addField("controlPoints", TypeS32, Offset(mControlPointRequest, GuiFilterCtrl), "Total number of control points in the spline curve." ); addField("filter", TypeF32Vector, Offset(mFilter, GuiFilterCtrl), diff --git a/Engine/source/gui/editor/guiGraphCtrl.cpp b/Engine/source/gui/editor/guiGraphCtrl.cpp index bc2a43542..551b737c9 100644 --- a/Engine/source/gui/editor/guiGraphCtrl.cpp +++ b/Engine/source/gui/editor/guiGraphCtrl.cpp @@ -102,6 +102,7 @@ GuiGraphCtrl::GuiGraphCtrl() void GuiGraphCtrl::initPersistFields() { + docsURL; addGroup( "Graph" ); addField( "centerY", TypeF32, Offset( mCenterY, GuiGraphCtrl ), diff --git a/Engine/source/gui/editor/guiImageList.cpp b/Engine/source/gui/editor/guiImageList.cpp index 3fc436ad4..d4cf2ec48 100644 --- a/Engine/source/gui/editor/guiImageList.cpp +++ b/Engine/source/gui/editor/guiImageList.cpp @@ -138,6 +138,7 @@ U32 GuiImageList::IndexFromPath ( const char* Path ) void GuiImageList::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/gui/editor/guiInspector.cpp b/Engine/source/gui/editor/guiInspector.cpp index 47d1e3c85..d14780a4b 100644 --- a/Engine/source/gui/editor/guiInspector.cpp +++ b/Engine/source/gui/editor/guiInspector.cpp @@ -66,6 +66,7 @@ GuiInspector::~GuiInspector() void GuiInspector::initPersistFields() { + docsURL; addGroup( "Inspector" ); addField( "dividerMargin", TypeS32, Offset( mDividerMargin, GuiInspector ) ); diff --git a/Engine/source/gui/editor/guiMenuBar.cpp b/Engine/source/gui/editor/guiMenuBar.cpp index 7f2b9484f..a8364c80d 100644 --- a/Engine/source/gui/editor/guiMenuBar.cpp +++ b/Engine/source/gui/editor/guiMenuBar.cpp @@ -1126,6 +1126,7 @@ void GuiMenuBar::onRemove() void GuiMenuBar::initPersistFields() { + docsURL; addField("padding", TypeS32, Offset( mPadding, GuiMenuBar ),"Extra padding to add to the bounds of the control.\n"); addField("menubarHeight", TypeS32, Offset(mMenubarHeight, GuiMenuBar), "Sets the height of the menubar when attached to the canvas.\n"); diff --git a/Engine/source/gui/editor/guiRectHandles.cpp b/Engine/source/gui/editor/guiRectHandles.cpp index 4090a0bbb..52a303673 100644 --- a/Engine/source/gui/editor/guiRectHandles.cpp +++ b/Engine/source/gui/editor/guiRectHandles.cpp @@ -53,6 +53,7 @@ GuiRectHandles::~GuiRectHandles() //-------------------------------------------------------------------------- void GuiRectHandles::initPersistFields() { + docsURL; addField("handleRect", TypeRectF, Offset(mHandleRect, GuiRectHandles), "RectF of handle's box." ); addField("handleSize", TypeS32, Offset(mHandleSize, GuiRectHandles), "Size of handles in pixels." ); addField("useCustomColor", TypeBool, Offset(mUseCustomColor, GuiRectHandles), "Use given custom color for handles." ); diff --git a/Engine/source/gui/editor/guiSeparatorCtrl.cpp b/Engine/source/gui/editor/guiSeparatorCtrl.cpp index 98eb41761..bb6b6c903 100644 --- a/Engine/source/gui/editor/guiSeparatorCtrl.cpp +++ b/Engine/source/gui/editor/guiSeparatorCtrl.cpp @@ -72,6 +72,7 @@ GuiSeparatorCtrl::GuiSeparatorCtrl() : GuiControl() //-------------------------------------------------------------------------- void GuiSeparatorCtrl::initPersistFields() { + docsURL; addField("caption", TypeRealString, Offset(mText, GuiSeparatorCtrl), "Optional text label to display." ); addField("type", TYPEID< separatorTypeOptions >(), Offset(mSeparatorType, GuiSeparatorCtrl), diff --git a/Engine/source/gui/editor/guiShapeEdPreview.cpp b/Engine/source/gui/editor/guiShapeEdPreview.cpp index 38d5e92b2..10cfaf28d 100644 --- a/Engine/source/gui/editor/guiShapeEdPreview.cpp +++ b/Engine/source/gui/editor/guiShapeEdPreview.cpp @@ -119,6 +119,7 @@ GuiShapeEdPreview::~GuiShapeEdPreview() void GuiShapeEdPreview::initPersistFields() { + docsURL; addGroup( "Rendering" ); addField( "editSun", TypeBool, Offset( mEditingSun, GuiShapeEdPreview ), "If true, dragging the gizmo will rotate the sun direction" ); diff --git a/Engine/source/gui/editor/popupMenu.cpp b/Engine/source/gui/editor/popupMenu.cpp index be160d08f..0de09e9f9 100644 --- a/Engine/source/gui/editor/popupMenu.cpp +++ b/Engine/source/gui/editor/popupMenu.cpp @@ -82,6 +82,7 @@ ConsoleDocClass( PopupMenu, //----------------------------------------------------------------------------- void PopupMenu::initPersistFields() { + docsURL; Parent::initPersistFields(); addField("barTitle", TypeCaseString, Offset(mBarTitle, PopupMenu), ""); diff --git a/Engine/source/gui/game/guiChunkedBitmapCtrl.cpp b/Engine/source/gui/game/guiChunkedBitmapCtrl.cpp index 90e940e07..4aab2a247 100644 --- a/Engine/source/gui/game/guiChunkedBitmapCtrl.cpp +++ b/Engine/source/gui/game/guiChunkedBitmapCtrl.cpp @@ -65,6 +65,7 @@ ConsoleDocClass( GuiChunkedBitmapCtrl, void GuiChunkedBitmapCtrl::initPersistFields() { + docsURL; addGroup("GuiChunkedBitmapCtrl"); INITPERSISTFIELD_IMAGEASSET(Bitmap, GuiChunkedBitmapCtrl, "This is the bitmap to render to the control."); diff --git a/Engine/source/gui/game/guiFadeinBitmapCtrl.cpp b/Engine/source/gui/game/guiFadeinBitmapCtrl.cpp index 85ac57dd4..f2820ae2c 100644 --- a/Engine/source/gui/game/guiFadeinBitmapCtrl.cpp +++ b/Engine/source/gui/game/guiFadeinBitmapCtrl.cpp @@ -87,6 +87,7 @@ GuiFadeinBitmapCtrl::GuiFadeinBitmapCtrl() void GuiFadeinBitmapCtrl::initPersistFields() { + docsURL; addGroup( "Fading" ); addField( "fadeColor", TypeColorF, Offset( mFadeColor, GuiFadeinBitmapCtrl ), diff --git a/Engine/source/gui/game/guiMessageVectorCtrl.cpp b/Engine/source/gui/game/guiMessageVectorCtrl.cpp index 2b2d12fc0..313b7a265 100644 --- a/Engine/source/gui/game/guiMessageVectorCtrl.cpp +++ b/Engine/source/gui/game/guiMessageVectorCtrl.cpp @@ -192,6 +192,7 @@ GuiMessageVectorCtrl::~GuiMessageVectorCtrl() //-------------------------------------------------------------------------- void GuiMessageVectorCtrl::initPersistFields() { + docsURL; addField("lineSpacing", TypeS32, Offset(mLineSpacingPixels, GuiMessageVectorCtrl)); addField("lineContinuedIndex", TypeS32, Offset(mLineContinuationIndent, GuiMessageVectorCtrl)); addField("allowedMatches", TypeString, Offset(mAllowedMatches, GuiMessageVectorCtrl), 16); diff --git a/Engine/source/gui/game/guiProgressBitmapCtrl.cpp b/Engine/source/gui/game/guiProgressBitmapCtrl.cpp index 0faf2a8e0..0d85213e1 100644 --- a/Engine/source/gui/game/guiProgressBitmapCtrl.cpp +++ b/Engine/source/gui/game/guiProgressBitmapCtrl.cpp @@ -131,6 +131,7 @@ GuiProgressBitmapCtrl::GuiProgressBitmapCtrl() void GuiProgressBitmapCtrl::initPersistFields() { + docsURL; INITPERSISTFIELD_IMAGEASSET(Bitmap, GuiProgressBitmapCtrl, "Bitmap file to use for rendering the progress bar.\n\n" "If the profile assigned to the control already has a bitmap assigned, this property need not be " "set in which case the bitmap from the profile is used."); diff --git a/Engine/source/gui/theora/guiTheoraCtrl.cpp b/Engine/source/gui/theora/guiTheoraCtrl.cpp index 31ee289a3..cb5722d85 100644 --- a/Engine/source/gui/theora/guiTheoraCtrl.cpp +++ b/Engine/source/gui/theora/guiTheoraCtrl.cpp @@ -82,6 +82,7 @@ GuiTheoraCtrl::GuiTheoraCtrl() void GuiTheoraCtrl::initPersistFields() { + docsURL; addGroup( "Playback"); addField( "theoraFile", TypeStringFilename, Offset( mFilename, GuiTheoraCtrl ), diff --git a/Engine/source/gui/utility/guiInputCtrl.cpp b/Engine/source/gui/utility/guiInputCtrl.cpp index 4c56f9133..f5f41b486 100644 --- a/Engine/source/gui/utility/guiInputCtrl.cpp +++ b/Engine/source/gui/utility/guiInputCtrl.cpp @@ -70,6 +70,7 @@ GuiInputCtrl::GuiInputCtrl() void GuiInputCtrl::initPersistFields() { + docsURL; addGroup("GuiInputCtrl"); addField("sendAxisEvents", TypeBool, Offset(mSendAxisEvents, GuiInputCtrl), "If true, onAxisEvent callbacks will be sent for SI_AXIS Move events (Default false)."); diff --git a/Engine/source/gui/utility/guiMouseEventCtrl.cpp b/Engine/source/gui/utility/guiMouseEventCtrl.cpp index 6c3024214..80c6c8360 100644 --- a/Engine/source/gui/utility/guiMouseEventCtrl.cpp +++ b/Engine/source/gui/utility/guiMouseEventCtrl.cpp @@ -293,6 +293,7 @@ void GuiMouseEventCtrl::sendMouseEvent(const char * name, const GuiEvent & event //------------------------------------------------------------------------------ void GuiMouseEventCtrl::initPersistFields() { + docsURL; addGroup( "Input" ); addField("lockMouse", TypeBool, Offset(mLockMouse, GuiMouseEventCtrl), @@ -365,4 +366,4 @@ void GuiMouseEventCtrl::onRightMouseUp(const GuiEvent & event) void GuiMouseEventCtrl::onRightMouseDragged(const GuiEvent & event) { sendMouseEvent("onRightMouseDragged", event); -} \ No newline at end of file +} diff --git a/Engine/source/gui/utility/guiRenderTargetVizCtrl.cpp b/Engine/source/gui/utility/guiRenderTargetVizCtrl.cpp index 6c1366afb..f957ba55b 100644 --- a/Engine/source/gui/utility/guiRenderTargetVizCtrl.cpp +++ b/Engine/source/gui/utility/guiRenderTargetVizCtrl.cpp @@ -78,6 +78,7 @@ bool GuiRenderTargetVizCtrl::onWake() void GuiRenderTargetVizCtrl::initPersistFields() { + docsURL; Parent::initPersistFields(); addField("RenderTargetName", TypeString, Offset(mTargetName, GuiRenderTargetVizCtrl), ""); diff --git a/Engine/source/gui/utility/messageVector.cpp b/Engine/source/gui/utility/messageVector.cpp index 97fd33382..d9669cc1e 100644 --- a/Engine/source/gui/utility/messageVector.cpp +++ b/Engine/source/gui/utility/messageVector.cpp @@ -425,6 +425,7 @@ MessageVector::~MessageVector() //-------------------------------------------------------------------------- void MessageVector::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/gui/worldEditor/editTSCtrl.cpp b/Engine/source/gui/worldEditor/editTSCtrl.cpp index fbe4ff090..4a219691c 100644 --- a/Engine/source/gui/worldEditor/editTSCtrl.cpp +++ b/Engine/source/gui/worldEditor/editTSCtrl.cpp @@ -219,6 +219,7 @@ void EditTSCtrl::onRender(Point2I offset, const RectI &updateRect) void EditTSCtrl::initPersistFields() { + docsURL; addGroup( "Grid" ); addField( "gridSize", TypeF32, Offset( mGridPlaneSize, EditTSCtrl ) ); diff --git a/Engine/source/gui/worldEditor/gizmo.cpp b/Engine/source/gui/worldEditor/gizmo.cpp index 7bfe554c4..200b036cb 100644 --- a/Engine/source/gui/worldEditor/gizmo.cpp +++ b/Engine/source/gui/worldEditor/gizmo.cpp @@ -240,6 +240,7 @@ bool GizmoProfile::onAdd() void GizmoProfile::initPersistFields() { + docsURL; addField( "alignment", TYPEID< GizmoAlignment >(), Offset(alignment, GizmoProfile ) ); addField( "mode", TYPEID< GizmoMode >(), Offset(mode, GizmoProfile ) ); @@ -371,6 +372,7 @@ void Gizmo::onRemove() void Gizmo::initPersistFields() { + docsURL; Parent::initPersistFields(); //addField( "profile",) diff --git a/Engine/source/gui/worldEditor/guiConvexShapeEditorCtrl.cpp b/Engine/source/gui/worldEditor/guiConvexShapeEditorCtrl.cpp index 5ed87fb0d..6344faa2a 100644 --- a/Engine/source/gui/worldEditor/guiConvexShapeEditorCtrl.cpp +++ b/Engine/source/gui/worldEditor/guiConvexShapeEditorCtrl.cpp @@ -113,7 +113,8 @@ void GuiConvexEditorCtrl::onRemove() } void GuiConvexEditorCtrl::initPersistFields() -{ +{ + docsURL; addField( "isDirty", TypeBool, Offset( mIsDirty, GuiConvexEditorCtrl ) ); addField( "materialName", TypeMaterialAssetId, Offset(mMaterialName, GuiConvexEditorCtrl) ); diff --git a/Engine/source/gui/worldEditor/guiDecalEditorCtrl.cpp b/Engine/source/gui/worldEditor/guiDecalEditorCtrl.cpp index 6420f5a00..5a2f545b2 100644 --- a/Engine/source/gui/worldEditor/guiDecalEditorCtrl.cpp +++ b/Engine/source/gui/worldEditor/guiDecalEditorCtrl.cpp @@ -76,6 +76,7 @@ bool GuiDecalEditorCtrl::onAdd() void GuiDecalEditorCtrl::initPersistFields() { + docsURL; addField( "currentDecalData", TYPEID< DecalData >(), Offset( mCurrentDecalData, GuiDecalEditorCtrl ) ); Parent::initPersistFields(); @@ -913,6 +914,7 @@ DICreateUndoAction::~DICreateUndoAction() void DICreateUndoAction::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -1001,6 +1003,7 @@ DIDeleteUndoAction::~DIDeleteUndoAction() void DIDeleteUndoAction::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -1089,6 +1092,7 @@ DBDeleteUndoAction::~DBDeleteUndoAction() void DBDeleteUndoAction::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -1198,6 +1202,7 @@ DBRetargetUndoAction::~DBRetargetUndoAction() void DBRetargetUndoAction::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/gui/worldEditor/guiMissionArea.cpp b/Engine/source/gui/worldEditor/guiMissionArea.cpp index a17b5a4ab..9302c12b0 100644 --- a/Engine/source/gui/worldEditor/guiMissionArea.cpp +++ b/Engine/source/gui/worldEditor/guiMissionArea.cpp @@ -87,6 +87,7 @@ GuiMissionAreaCtrl::~GuiMissionAreaCtrl() void GuiMissionAreaCtrl::initPersistFields() { + docsURL; addField( "squareBitmap", TypeBool, Offset(mSquareBitmap, GuiMissionAreaCtrl)); INITPERSISTFIELD_IMAGEASSET(HandleBitmap, GuiMissionAreaCtrl, "Bitmap for the mission area handles.\n"); diff --git a/Engine/source/gui/worldEditor/guiMissionAreaEditor.cpp b/Engine/source/gui/worldEditor/guiMissionAreaEditor.cpp index 91afea75e..a973a1f41 100644 --- a/Engine/source/gui/worldEditor/guiMissionAreaEditor.cpp +++ b/Engine/source/gui/worldEditor/guiMissionAreaEditor.cpp @@ -50,6 +50,7 @@ bool GuiMissionAreaEditorCtrl::onAdd() void GuiMissionAreaEditorCtrl::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/gui/worldEditor/guiTerrPreviewCtrl.cpp b/Engine/source/gui/worldEditor/guiTerrPreviewCtrl.cpp index 12699c7ca..9e0095253 100644 --- a/Engine/source/gui/worldEditor/guiTerrPreviewCtrl.cpp +++ b/Engine/source/gui/worldEditor/guiTerrPreviewCtrl.cpp @@ -81,6 +81,7 @@ bool GuiTerrPreviewCtrl::onAdd() void GuiTerrPreviewCtrl::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/gui/worldEditor/terrainActions.cpp b/Engine/source/gui/worldEditor/terrainActions.cpp index a6fbb5c21..f6ca18c13 100644 --- a/Engine/source/gui/worldEditor/terrainActions.cpp +++ b/Engine/source/gui/worldEditor/terrainActions.cpp @@ -779,6 +779,7 @@ TerrainSmoothAction::TerrainSmoothAction() void TerrainSmoothAction::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/gui/worldEditor/terrainEditor.cpp b/Engine/source/gui/worldEditor/terrainEditor.cpp index f95928a59..3eb896f28 100644 --- a/Engine/source/gui/worldEditor/terrainEditor.cpp +++ b/Engine/source/gui/worldEditor/terrainEditor.cpp @@ -2794,6 +2794,7 @@ DefineEngineMethod(TerrainEditor, getTerrainUnderWorldPoint, S32, (const char * void TerrainEditor::initPersistFields() { + docsURL; addGroup("Misc"); addField("isDirty", TypeBool, Offset(mIsDirty, TerrainEditor)); addField("isMissionDirty", TypeBool, Offset(mIsMissionDirty, TerrainEditor)); diff --git a/Engine/source/gui/worldEditor/undoActions.cpp b/Engine/source/gui/worldEditor/undoActions.cpp index 2f137bc72..a16f29719 100644 --- a/Engine/source/gui/worldEditor/undoActions.cpp +++ b/Engine/source/gui/worldEditor/undoActions.cpp @@ -47,6 +47,7 @@ MECreateUndoAction::~MECreateUndoAction() void MECreateUndoAction::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -132,6 +133,7 @@ MEDeleteUndoAction::~MEDeleteUndoAction() void MEDeleteUndoAction::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -238,6 +240,7 @@ InspectorFieldUndoAction::InspectorFieldUndoAction( const UTF8 *actionName ) void InspectorFieldUndoAction::initPersistFields() { + docsURL; addField( "inspectorGui", TYPEID< GuiInspector >(), Offset( mInspector, InspectorFieldUndoAction ) ); addField( "objectId", TypeS32, Offset( mObjId, InspectorFieldUndoAction ) ); addField( "fieldName", TypeString, Offset( mSlotName, InspectorFieldUndoAction ) ); diff --git a/Engine/source/gui/worldEditor/worldEditor.cpp b/Engine/source/gui/worldEditor/worldEditor.cpp index 56b6f94ce..385b7fa72 100644 --- a/Engine/source/gui/worldEditor/worldEditor.cpp +++ b/Engine/source/gui/worldEditor/worldEditor.cpp @@ -2781,6 +2781,7 @@ void WorldEditor::renderScene( const RectI &updateRect ) void WorldEditor::initPersistFields() { + docsURL; addGroup( "Grid" ); addField( "gridSnap", TypeBool, Offset( mGridSnap, WorldEditor ), diff --git a/Engine/source/gui/worldEditor/worldEditorSelection.cpp b/Engine/source/gui/worldEditor/worldEditorSelection.cpp index aa5a8e912..3d83ccb36 100644 --- a/Engine/source/gui/worldEditor/worldEditorSelection.cpp +++ b/Engine/source/gui/worldEditor/worldEditorSelection.cpp @@ -55,6 +55,7 @@ WorldEditorSelection::~WorldEditorSelection() void WorldEditorSelection::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/materials/customMaterialDefinition.cpp b/Engine/source/materials/customMaterialDefinition.cpp index 329ed59b1..f66273c41 100644 --- a/Engine/source/materials/customMaterialDefinition.cpp +++ b/Engine/source/materials/customMaterialDefinition.cpp @@ -81,6 +81,7 @@ CustomMaterial::CustomMaterial() //-------------------------------------------------------------------------- void CustomMaterial::initPersistFields() { + docsURL; addField("version", TypeF32, Offset(mVersion, CustomMaterial), "@brief Specifies pixel shader version for hardware.\n\n" "Valid pixel shader versions include 2.0, 3.0, etc. " diff --git a/Engine/source/materials/materialDefinition.cpp b/Engine/source/materials/materialDefinition.cpp index 29cc0420d..06e4907f4 100644 --- a/Engine/source/materials/materialDefinition.cpp +++ b/Engine/source/materials/materialDefinition.cpp @@ -245,6 +245,7 @@ Material::Material() void Material::initPersistFields() { + docsURL; addField("mapTo", TypeRealString, Offset(mMapTo, Material), "Used to map this material to the material name used by TSShape."); diff --git a/Engine/source/materials/shaderData.cpp b/Engine/source/materials/shaderData.cpp index d8f4befaf..8d8e8d103 100644 --- a/Engine/source/materials/shaderData.cpp +++ b/Engine/source/materials/shaderData.cpp @@ -71,6 +71,7 @@ ShaderData::ShaderData() void ShaderData::initPersistFields() { + docsURL; addField("DXVertexShaderFile", TypeStringFilename, Offset(mDXVertexShaderName, ShaderData), "@brief %Path to the DirectX vertex shader file to use for this ShaderData.\n\n" "It must contain only one program and no pixel shader, just the vertex shader." diff --git a/Engine/source/math/mathTypes.cpp b/Engine/source/math/mathTypes.cpp index 21a8d0bf5..5beb3f9b0 100644 --- a/Engine/source/math/mathTypes.cpp +++ b/Engine/source/math/mathTypes.cpp @@ -1011,6 +1011,11 @@ DefineEngineFunction( VectorOrthoBasis, MatrixF, ( AngAxisF aa ),, return mat; } +DefineEngineFunction(toEuler, VectorF, (MatrixF _in), , + "#Brief get the rotation of a matrix\n") +{ + return _in.getForwardVector(); +} //----------------------------------------------------------------------------- //ConsoleFunction(VectorRot, const char*, 3, 3, "(Vector3F, float) rotate a vector in 2d") diff --git a/Engine/source/module/moduleDefinition.cpp b/Engine/source/module/moduleDefinition.cpp index 795186aef..a280e48f1 100644 --- a/Engine/source/module/moduleDefinition.cpp +++ b/Engine/source/module/moduleDefinition.cpp @@ -79,6 +79,7 @@ mModuleId(StringTable->EmptyString()), void ModuleDefinition::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/module/moduleManager.cpp b/Engine/source/module/moduleManager.cpp index 515c4ba58..38685735d 100644 --- a/Engine/source/module/moduleManager.cpp +++ b/Engine/source/module/moduleManager.cpp @@ -142,6 +142,7 @@ void ModuleManager::onRemove() void ModuleManager::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/module/moduleMergeDefinition.cpp b/Engine/source/module/moduleMergeDefinition.cpp index 9172636e5..ef09a978f 100644 --- a/Engine/source/module/moduleMergeDefinition.cpp +++ b/Engine/source/module/moduleMergeDefinition.cpp @@ -41,6 +41,7 @@ ModuleMergeDefinition::ModuleMergeDefinition() : void ModuleMergeDefinition::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/navigation/coverPoint.cpp b/Engine/source/navigation/coverPoint.cpp index 9db870f18..18ececcd7 100644 --- a/Engine/source/navigation/coverPoint.cpp +++ b/Engine/source/navigation/coverPoint.cpp @@ -71,6 +71,7 @@ CoverPoint::~CoverPoint() //----------------------------------------------------------------------------- void CoverPoint::initPersistFields() { + docsURL; addGroup("CoverPoint"); addField("size", TYPEID(), Offset(mSize, CoverPoint), diff --git a/Engine/source/navigation/guiNavEditorCtrl.cpp b/Engine/source/navigation/guiNavEditorCtrl.cpp index 1847fa60e..bf164bc4b 100644 --- a/Engine/source/navigation/guiNavEditorCtrl.cpp +++ b/Engine/source/navigation/guiNavEditorCtrl.cpp @@ -97,6 +97,7 @@ bool GuiNavEditorCtrl::onAdd() void GuiNavEditorCtrl::initPersistFields() { + docsURL; addField("isDirty", TypeBool, Offset(mIsDirty, GuiNavEditorCtrl)); addField("spawnClass", TypeRealString, Offset(mSpawnClass, GuiNavEditorCtrl), diff --git a/Engine/source/navigation/navMesh.cpp b/Engine/source/navigation/navMesh.cpp index ca5053b85..ee685904b 100644 --- a/Engine/source/navigation/navMesh.cpp +++ b/Engine/source/navigation/navMesh.cpp @@ -260,6 +260,7 @@ FRangeValidator CornerAngle(0.0f, 90.0f); void NavMesh::initPersistFields() { + docsURL; addGroup("NavMesh Options"); addField("fileName", TypeString, Offset(mFileName, NavMesh), diff --git a/Engine/source/navigation/navPath.cpp b/Engine/source/navigation/navPath.cpp index d19c26237..4d41fedb7 100644 --- a/Engine/source/navigation/navPath.cpp +++ b/Engine/source/navigation/navPath.cpp @@ -188,6 +188,7 @@ IRangeValidator ValidIterations(1, S32_MAX); void NavPath::initPersistFields() { + docsURL; addGroup("NavPath"); addProtectedField("from", TypePoint3F, Offset(mFrom, NavPath), diff --git a/Engine/source/persistence/taml/taml.cpp b/Engine/source/persistence/taml/taml.cpp index 5ea8778c4..74beffe24 100644 --- a/Engine/source/persistence/taml/taml.cpp +++ b/Engine/source/persistence/taml/taml.cpp @@ -159,6 +159,7 @@ ImplementEnumType(_TamlFormatMode, void Taml::initPersistFields() { + docsURL; // Call parent. Parent::initPersistFields(); diff --git a/Engine/source/platform/nativeDialogs/fileDialog.cpp b/Engine/source/platform/nativeDialogs/fileDialog.cpp index 12e664765..237e19de1 100644 --- a/Engine/source/platform/nativeDialogs/fileDialog.cpp +++ b/Engine/source/platform/nativeDialogs/fileDialog.cpp @@ -133,6 +133,7 @@ FileDialog::~FileDialog() void FileDialog::initPersistFields() { + docsURL; addProtectedField("defaultPath", TypeString, Offset(mData.mDefaultPath, FileDialog), &setDefaultPath, &defaultProtectedGetFn, "The default directory path when the dialog is shown."); @@ -581,6 +582,7 @@ IMPLEMENT_CONOBJECT(OpenFileDialog); //----------------------------------------------------------------------------- void OpenFileDialog::initPersistFields() { + docsURL; addProtectedField("MustExist", TypeBool, Offset(mMustExist, OpenFileDialog), &setMustExist, &getMustExist, "True/False whether the file returned must exist or not"); addProtectedField("MultipleFiles", TypeBool, Offset(mMultipleFiles, OpenFileDialog), &setMultipleFiles, &getMultipleFiles, "True/False whether multiple files may be selected and returned or not"); @@ -703,6 +705,7 @@ IMPLEMENT_CONOBJECT(SaveFileDialog); //----------------------------------------------------------------------------- void SaveFileDialog::initPersistFields() { + docsURL; addProtectedField("OverwritePrompt", TypeBool, Offset(mOverwritePrompt, SaveFileDialog), &setOverwritePrompt, &getOverwritePrompt, "True/False whether the dialog should prompt before accepting an existing file name"); Parent::initPersistFields(); @@ -761,6 +764,7 @@ ConsoleDocClass(OpenFolderDialog, void OpenFolderDialog::initPersistFields() { + docsURL; addField("fileMustExist", TypeFilename, Offset(mMustExistInDir, OpenFolderDialog), "File that must be in selected folder for it to be valid"); Parent::initPersistFields(); diff --git a/Engine/source/postFx/postEffect.cpp b/Engine/source/postFx/postEffect.cpp index 84d283bda..f5513f848 100644 --- a/Engine/source/postFx/postEffect.cpp +++ b/Engine/source/postFx/postEffect.cpp @@ -522,6 +522,7 @@ PostEffect::~PostEffect() void PostEffect::initPersistFields() { + docsURL; addField( "shader", TypeRealString, Offset( mShaderName, PostEffect ), "Name of a GFXShaderData for this effect." ); diff --git a/Engine/source/renderInstance/forcedMaterialMeshMgr.cpp b/Engine/source/renderInstance/forcedMaterialMeshMgr.cpp index bf50a8ecd..454c14a0c 100644 --- a/Engine/source/renderInstance/forcedMaterialMeshMgr.cpp +++ b/Engine/source/renderInstance/forcedMaterialMeshMgr.cpp @@ -63,6 +63,7 @@ ForcedMaterialMeshMgr::~ForcedMaterialMeshMgr() void ForcedMaterialMeshMgr::initPersistFields() { + docsURL; addProtectedField("material", TYPEID< Material >(), Offset(mOverrideMaterial, ForcedMaterialMeshMgr), &_setOverrideMat, &_getOverrideMat, "Material used to draw all meshes in the render bin."); diff --git a/Engine/source/renderInstance/renderBinManager.cpp b/Engine/source/renderInstance/renderBinManager.cpp index a9f979679..dc57687cd 100644 --- a/Engine/source/renderInstance/renderBinManager.cpp +++ b/Engine/source/renderInstance/renderBinManager.cpp @@ -52,6 +52,7 @@ ConsoleDocClass( RenderBinManager, void RenderBinManager::initPersistFields() { + docsURL; addField( "binType", TypeRealString, Offset(mRenderInstType.mName, RenderBinManager), "Sets the render bin type which limits what render instances are added to this bin." ); diff --git a/Engine/source/renderInstance/renderFormatChanger.cpp b/Engine/source/renderInstance/renderFormatChanger.cpp index 104bf5bd2..5e9fe6e31 100644 --- a/Engine/source/renderInstance/renderFormatChanger.cpp +++ b/Engine/source/renderInstance/renderFormatChanger.cpp @@ -320,6 +320,7 @@ bool RenderFormatToken::isEnabled() const void RenderFormatToken::initPersistFields() { + docsURL; addProtectedField("format", TypeGFXFormat, Offset(mColorFormat, RenderFormatToken), &_setFmt, &defaultProtectedGetFn, "Sets the color buffer format for this token."); diff --git a/Engine/source/renderInstance/renderImposterMgr.cpp b/Engine/source/renderInstance/renderImposterMgr.cpp index ab547e4fc..f7bafe816 100644 --- a/Engine/source/renderInstance/renderImposterMgr.cpp +++ b/Engine/source/renderInstance/renderImposterMgr.cpp @@ -75,6 +75,7 @@ RenderImposterMgr::RenderImposterMgr( F32 renderOrder, F32 processAddOrder ) void RenderImposterMgr::initPersistFields() { + docsURL; GFXDevice::getDeviceEventSignal().notify( &RenderImposterMgr::_clearStats ); Con::addVariable( "$ImposterStats::rendered", TypeS32, &smRendered, "@internal" ); diff --git a/Engine/source/renderInstance/renderMeshMgr.cpp b/Engine/source/renderInstance/renderMeshMgr.cpp index ddf1e4508..14de5b838 100644 --- a/Engine/source/renderInstance/renderMeshMgr.cpp +++ b/Engine/source/renderInstance/renderMeshMgr.cpp @@ -72,6 +72,7 @@ void RenderMeshMgr::init() void RenderMeshMgr::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/renderInstance/renderObjectMgr.cpp b/Engine/source/renderInstance/renderObjectMgr.cpp index 75b1e29a4..79bcb05a0 100644 --- a/Engine/source/renderInstance/renderObjectMgr.cpp +++ b/Engine/source/renderInstance/renderObjectMgr.cpp @@ -49,6 +49,7 @@ RenderObjectMgr::RenderObjectMgr(RenderInstType riType, F32 renderOrder, F32 pro void RenderObjectMgr::initPersistFields() { + docsURL; Parent::initPersistFields(); } @@ -78,4 +79,4 @@ void RenderObjectMgr::render( SceneRenderState *state ) if ( ri->renderDelegate ) ri->renderDelegate( ri, state, mOverrideMat ); } -} \ No newline at end of file +} diff --git a/Engine/source/renderInstance/renderOcclusionMgr.cpp b/Engine/source/renderInstance/renderOcclusionMgr.cpp index 32c61398d..7c1c95d89 100644 --- a/Engine/source/renderInstance/renderOcclusionMgr.cpp +++ b/Engine/source/renderInstance/renderOcclusionMgr.cpp @@ -160,6 +160,7 @@ void RenderOcclusionMgr::consoleInit() void RenderOcclusionMgr::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/renderInstance/renderPassManager.cpp b/Engine/source/renderInstance/renderPassManager.cpp index f21e6dfcc..5c88041c7 100644 --- a/Engine/source/renderInstance/renderPassManager.cpp +++ b/Engine/source/renderInstance/renderPassManager.cpp @@ -123,6 +123,7 @@ RenderPassManager::RenderBinEventSignal& RenderPassManager::getRenderBinSignal() void RenderPassManager::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/renderInstance/renderPassStateToken.cpp b/Engine/source/renderInstance/renderPassStateToken.cpp index c00b05cdf..6a355bd60 100644 --- a/Engine/source/renderInstance/renderPassStateToken.cpp +++ b/Engine/source/renderInstance/renderPassStateToken.cpp @@ -86,6 +86,7 @@ static const char *_get_enable(void* obj, const char* data) void RenderPassStateToken::initPersistFields() { + docsURL; addProtectedField("enabled", TypeBool, 0, &_set_enable, &_get_enable, "Enables or disables this token."); Parent::initPersistFields(); } @@ -136,6 +137,7 @@ void RenderPassStateBin::sort() void RenderPassStateBin::initPersistFields() { + docsURL; addProtectedField( "stateToken", TYPEID< RenderPassStateToken >(), Offset( mStateToken, RenderPassStateBin ), _setStateToken, _getStateToken, ""); diff --git a/Engine/source/renderInstance/renderProbeMgr.cpp b/Engine/source/renderInstance/renderProbeMgr.cpp index 557d10a29..7f8a3dc96 100644 --- a/Engine/source/renderInstance/renderProbeMgr.cpp +++ b/Engine/source/renderInstance/renderProbeMgr.cpp @@ -258,6 +258,7 @@ void RenderProbeMgr::onRemove() void RenderProbeMgr::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/renderInstance/renderTerrainMgr.cpp b/Engine/source/renderInstance/renderTerrainMgr.cpp index 58bbe5e71..9319619db 100644 --- a/Engine/source/renderInstance/renderTerrainMgr.cpp +++ b/Engine/source/renderInstance/renderTerrainMgr.cpp @@ -71,6 +71,7 @@ RenderTerrainMgr::~RenderTerrainMgr() void RenderTerrainMgr::initPersistFields() { + docsURL; Con::addVariable( "RenderTerrainMgr::renderWireframe", TypeBool, &smRenderWireframe, "Used to enable wireframe rendering on terrain for debugging.\n" "@ingroup RenderBin\n" ); diff --git a/Engine/source/renderInstance/renderTexTargetBinManager.cpp b/Engine/source/renderInstance/renderTexTargetBinManager.cpp index d1a7e1bc8..54befcec6 100644 --- a/Engine/source/renderInstance/renderTexTargetBinManager.cpp +++ b/Engine/source/renderInstance/renderTexTargetBinManager.cpp @@ -96,6 +96,7 @@ EndImplementEnumType; void RenderTexTargetBinManager::initPersistFields() { + docsURL; // TOM_TODO: //addField( "targetScale", mTargetScale ); //addPropertyNOPS( "targetSizeType", mTargetSizeType)->setEnumTable(gSizeTypeEnumTable); diff --git a/Engine/source/scene/reflector.cpp b/Engine/source/scene/reflector.cpp index 8b52f4b03..b9f19fe08 100644 --- a/Engine/source/scene/reflector.cpp +++ b/Engine/source/scene/reflector.cpp @@ -95,6 +95,7 @@ ReflectorDesc::~ReflectorDesc() void ReflectorDesc::initPersistFields() { + docsURL; addGroup( "ReflectorDesc" ); addField( "texSize", TypeS32, Offset( texSize, ReflectorDesc ), diff --git a/Engine/source/scene/sceneObject.cpp b/Engine/source/scene/sceneObject.cpp index 131a10e1e..ae448b5f8 100644 --- a/Engine/source/scene/sceneObject.cpp +++ b/Engine/source/scene/sceneObject.cpp @@ -633,6 +633,7 @@ void SceneObject::setHidden( bool hidden ) void SceneObject::initPersistFields() { + docsURL; //Disabled temporarily /*addGroup("GameObject"); addField("GameObject", TypeGameObjectAssetPtr, Offset(mGameObjectAsset, SceneObject), "The asset Id used for the game object this entity is based on."); diff --git a/Engine/source/scene/simPath.cpp b/Engine/source/scene/simPath.cpp index 2aa17cd09..b726caa8e 100644 --- a/Engine/source/scene/simPath.cpp +++ b/Engine/source/scene/simPath.cpp @@ -171,6 +171,7 @@ Path::~Path() //-------------------------------------------------------------------------- void Path::initPersistFields() { + docsURL; addField("isLooping", TypeBool, Offset(mIsLooping, Path), "If this is true, the loop is closed, otherwise it is open.\n"); addField("Speed", TypeF32, Offset(mPathSpeed, Path), "Speed.\n"); addProtectedField("mPathShape", TYPEID< PathShapeData >(), Offset(mDataBlock, Path), @@ -421,6 +422,7 @@ EndImplementEnumType; void Marker::initPersistFields() { + docsURL; addGroup( "Misc" ); addField("seqNum", TypeS32, Offset(mSeqNum, Marker), "Marker position in sequence of markers on this path.\n"); addField("hitCommand", TypeCommand, Offset(mHitCommand, Marker), "The command to execute when a path follower reaches this marker."); diff --git a/Engine/source/scene/zones/sceneSimpleZone.cpp b/Engine/source/scene/zones/sceneSimpleZone.cpp index 49f6d565c..4fd14470d 100644 --- a/Engine/source/scene/zones/sceneSimpleZone.cpp +++ b/Engine/source/scene/zones/sceneSimpleZone.cpp @@ -55,6 +55,7 @@ SceneSimpleZone::SceneSimpleZone() void SceneSimpleZone::initPersistFields() { + docsURL; addGroup( "Lighting" ); addProtectedField( "useAmbientLightColor", TypeBool, Offset( mUseAmbientLightColor, SceneSimpleZone ), diff --git a/Engine/source/scene/zones/sceneZoneSpace.cpp b/Engine/source/scene/zones/sceneZoneSpace.cpp index ffee4de2a..e417900a9 100644 --- a/Engine/source/scene/zones/sceneZoneSpace.cpp +++ b/Engine/source/scene/zones/sceneZoneSpace.cpp @@ -69,6 +69,7 @@ void SceneZoneSpace::onSceneRemove() void SceneZoneSpace::initPersistFields() { + docsURL; addGroup( "Zoning" ); addProtectedField( "zoneGroup", TypeS32, Offset( mZoneGroup, SceneZoneSpace ), diff --git a/Engine/source/sfx/sfxAmbience.cpp b/Engine/source/sfx/sfxAmbience.cpp index fa1d9ed5b..ade60dd92 100644 --- a/Engine/source/sfx/sfxAmbience.cpp +++ b/Engine/source/sfx/sfxAmbience.cpp @@ -95,6 +95,7 @@ SFXAmbience::SFXAmbience() void SFXAmbience::initPersistFields() { + docsURL; addGroup( "Sound" ); addField( "environment", TypeSFXEnvironmentName, Offset( mEnvironment, SFXAmbience ), diff --git a/Engine/source/sfx/sfxController.cpp b/Engine/source/sfx/sfxController.cpp index 4946280ff..0de38ad39 100644 --- a/Engine/source/sfx/sfxController.cpp +++ b/Engine/source/sfx/sfxController.cpp @@ -95,6 +95,7 @@ SFXController::~SFXController() void SFXController::initPersistFields() { + docsURL; addGroup( "Debug" ); addField( "trace", TypeBool, Offset( mTrace, SFXController ), "If true, the controller logs its operation to the console.\n" diff --git a/Engine/source/sfx/sfxDescription.cpp b/Engine/source/sfx/sfxDescription.cpp index 8cd93b6b2..09e08be5c 100644 --- a/Engine/source/sfx/sfxDescription.cpp +++ b/Engine/source/sfx/sfxDescription.cpp @@ -213,6 +213,7 @@ SFXDescription::SFXDescription(const SFXDescription& other, bool temp_clone) void SFXDescription::initPersistFields() { + docsURL; addGroup( "Playback" ); addField( "sourceGroup", TypeSFXSourceName, Offset( mSourceGroup, SFXDescription ), diff --git a/Engine/source/sfx/sfxEnvironment.cpp b/Engine/source/sfx/sfxEnvironment.cpp index 780821719..a63ef5266 100644 --- a/Engine/source/sfx/sfxEnvironment.cpp +++ b/Engine/source/sfx/sfxEnvironment.cpp @@ -142,6 +142,7 @@ SFXEnvironment::SFXEnvironment() void SFXEnvironment::initPersistFields() { + docsURL; addGroup( "Reverb" ); addField("reverbDensity", TypeF32, Offset(mReverb.flDensity, SFXEnvironment), diff --git a/Engine/source/sfx/sfxParameter.cpp b/Engine/source/sfx/sfxParameter.cpp index 2ed4c3ac2..9386cbe79 100644 --- a/Engine/source/sfx/sfxParameter.cpp +++ b/Engine/source/sfx/sfxParameter.cpp @@ -119,6 +119,7 @@ SFXParameter::~SFXParameter() void SFXParameter::initPersistFields() { + docsURL; addGroup( "Sound" ); addProtectedField( "value", TypeF32, Offset( mValue, SFXParameter ), diff --git a/Engine/source/sfx/sfxPlayList.cpp b/Engine/source/sfx/sfxPlayList.cpp index e0da33835..4cc6a56e3 100644 --- a/Engine/source/sfx/sfxPlayList.cpp +++ b/Engine/source/sfx/sfxPlayList.cpp @@ -228,6 +228,7 @@ SFXPlayList::SFXPlayList() void SFXPlayList::initPersistFields() { + docsURL; addGroup( "Sound" ); addField( "random", TYPEID< ERandomMode >(), Offset( mRandomMode, SFXPlayList ), diff --git a/Engine/source/sfx/sfxProfile.cpp b/Engine/source/sfx/sfxProfile.cpp index 92c79e9e0..37a55053b 100644 --- a/Engine/source/sfx/sfxProfile.cpp +++ b/Engine/source/sfx/sfxProfile.cpp @@ -103,6 +103,7 @@ SFXProfile::SFXProfile( SFXDescription* desc, const String& filename, bool prelo void SFXProfile::initPersistFields() { + docsURL; addGroup( "Sound" ); addField( "filename", TypeStringFilename, Offset( mFilename, SFXProfile ), diff --git a/Engine/source/sfx/sfxSource.cpp b/Engine/source/sfx/sfxSource.cpp index ac8fd6d19..51e09d795 100644 --- a/Engine/source/sfx/sfxSource.cpp +++ b/Engine/source/sfx/sfxSource.cpp @@ -297,6 +297,7 @@ SFXSource::~SFXSource() void SFXSource::initPersistFields() { + docsURL; addGroup( "Sound" ); addProtectedField( "description", TypeSFXDescriptionName, Offset( mDescription, SFXSource ), diff --git a/Engine/source/sfx/sfxState.cpp b/Engine/source/sfx/sfxState.cpp index 555f03511..ea4e0716b 100644 --- a/Engine/source/sfx/sfxState.cpp +++ b/Engine/source/sfx/sfxState.cpp @@ -114,6 +114,7 @@ SFXState::SFXState() void SFXState::initPersistFields() { + docsURL; addGroup( "State" ); addField( "includedStates", TypeSFXStateName, Offset( mIncludedStates, SFXState ), diff --git a/Engine/source/sfx/sfxTrack.cpp b/Engine/source/sfx/sfxTrack.cpp index 6b395fe91..c7b8cac93 100644 --- a/Engine/source/sfx/sfxTrack.cpp +++ b/Engine/source/sfx/sfxTrack.cpp @@ -78,6 +78,7 @@ SFXTrack::SFXTrack(const SFXTrack& other, bool temp_clone) : SimDataBlock(other, void SFXTrack::initPersistFields() { + docsURL; addGroup( "Sound" ); addField( "description", TypeSFXDescriptionName, Offset( mDescription, SFXTrack ), diff --git a/Engine/source/shaderGen/customShaderFeature.cpp b/Engine/source/shaderGen/customShaderFeature.cpp index 25e2975b0..89869f691 100644 --- a/Engine/source/shaderGen/customShaderFeature.cpp +++ b/Engine/source/shaderGen/customShaderFeature.cpp @@ -69,6 +69,7 @@ CustomShaderFeatureData::~CustomShaderFeatureData() //----------------------------------------------------------------------------- void CustomShaderFeatureData::initPersistFields() { + docsURL; // SceneObject already handles exposing the transform Parent::initPersistFields(); } diff --git a/Engine/source/sim/netObject.cpp b/Engine/source/sim/netObject.cpp index 0a33379ec..2ed8f3d79 100644 --- a/Engine/source/sim/netObject.cpp +++ b/Engine/source/sim/netObject.cpp @@ -366,6 +366,7 @@ void NetObject::onCameraScopeQuery(NetConnection *cr, CameraScopeQuery* /*camInf void NetObject::initPersistFields() { + docsURL; Parent::initPersistFields(); } diff --git a/Engine/source/terrain/terrData.cpp b/Engine/source/terrain/terrData.cpp index 954ee6cac..b529ccb0b 100644 --- a/Engine/source/terrain/terrData.cpp +++ b/Engine/source/terrain/terrData.cpp @@ -1272,6 +1272,7 @@ void TerrainBlock::setScale( const VectorF &scale ) void TerrainBlock::initPersistFields() { + docsURL; addGroup( "Media" ); addProtectedField("terrainAsset", TypeTerrainAssetId, Offset(mTerrainAssetId, TerrainBlock), diff --git a/Engine/source/terrain/terrMaterial.cpp b/Engine/source/terrain/terrMaterial.cpp index f2558e4ec..bcc5b812f 100644 --- a/Engine/source/terrain/terrMaterial.cpp +++ b/Engine/source/terrain/terrMaterial.cpp @@ -92,6 +92,7 @@ TerrainMaterial::~TerrainMaterial() void TerrainMaterial::initPersistFields() { + docsURL; INITPERSISTFIELD_IMAGEASSET(DiffuseMap, TerrainMaterial,"Base Albedo stretched over the whole map"); addField( "diffuseSize", TypeF32, Offset( mDiffuseSize, TerrainMaterial ), "Used to scale the diffuse map to the material square" ); diff --git a/Engine/source/ts/tsShapeConstruct.cpp b/Engine/source/ts/tsShapeConstruct.cpp index 1a1e60da3..60d0752bd 100644 --- a/Engine/source/ts/tsShapeConstruct.cpp +++ b/Engine/source/ts/tsShapeConstruct.cpp @@ -202,6 +202,7 @@ bool TSShapeConstructor::addSequenceFromField(void* obj, const char* index, cons void TSShapeConstructor::initPersistFields() { + docsURL; addGroup("Media"); addField("baseShapeAsset", TypeShapeAssetId, Offset(mShapeAssetId, TSShapeConstructor), "Specifies the path to the DTS or DAE file to be operated on by this object.\n" diff --git a/Engine/source/util/messaging/messageForwarder.cpp b/Engine/source/util/messaging/messageForwarder.cpp index 0b4bf8fbd..14b06ac61 100644 --- a/Engine/source/util/messaging/messageForwarder.cpp +++ b/Engine/source/util/messaging/messageForwarder.cpp @@ -64,6 +64,7 @@ ConsoleDocClass( MessageForwarder, void MessageForwarder::initPersistFields() { + docsURL; addField("toQueue", TypeCaseString, Offset(mToQueue, MessageForwarder), "Name of queue to forward to"); Parent::initPersistFields(); diff --git a/Engine/source/util/undo.cpp b/Engine/source/util/undo.cpp index 3276e1875..39a8bb631 100644 --- a/Engine/source/util/undo.cpp +++ b/Engine/source/util/undo.cpp @@ -62,6 +62,7 @@ UndoAction::~UndoAction() //----------------------------------------------------------------------------- void UndoAction::initPersistFields() { + docsURL; addField("actionName", TypeRealString, Offset(mActionName, UndoAction), "A brief description of the action, for UI representation of this undo/redo action."); @@ -185,6 +186,7 @@ UndoManager::~UndoManager() //----------------------------------------------------------------------------- void UndoManager::initPersistFields() { + docsURL; addField("numLevels", TypeS32, Offset(mNumLevels, UndoManager), "Number of undo & redo levels."); // arrange for the default undo manager to exist. // UndoManager &def = getDefaultManager();