Merge pull request #162 from Azaezel/alph40_cleanups

Alph40 cleanups -uninitialized vars batch 1
This commit is contained in:
Areloch 2020-05-17 01:19:55 -05:00 committed by GitHub
commit b14a4af654
278 changed files with 982 additions and 401 deletions

View file

@ -103,7 +103,7 @@ EndImplementEnumType;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
ImageAsset::ImageAsset() : AssetBase(), mImage(nullptr), mUseMips(true), mIsHDRImage(false), mIsValidImage(false) ImageAsset::ImageAsset() : AssetBase(), mImage(nullptr), mUseMips(true), mIsHDRImage(false), mIsValidImage(false), mImageType(Albedo)
{ {
mImageFileName = StringTable->EmptyString(); mImageFileName = StringTable->EmptyString();
} }

View file

@ -36,6 +36,7 @@ CameraSpline::Knot::Knot()
mSpeed = 0.0f; mSpeed = 0.0f;
mType = NORMAL; mType = NORMAL;
mPath = SPLINE; mPath = SPLINE;
mDistance = 0.0f;
prev = NULL; next = NULL; prev = NULL; next = NULL;
}; };
@ -46,6 +47,7 @@ CameraSpline::Knot::Knot(const Knot &k)
mSpeed = k.mSpeed; mSpeed = k.mSpeed;
mType = k.mType; mType = k.mType;
mPath = k.mPath; mPath = k.mPath;
mDistance = k.mDistance;
prev = NULL; next = NULL; prev = NULL; next = NULL;
} }
@ -56,6 +58,7 @@ CameraSpline::Knot::Knot(const Point3F &p, const QuatF &r, F32 s, Knot::Type typ
mSpeed = s; mSpeed = s;
mType = type; mType = type;
mPath = path; mPath = path;
mDistance = 0.0f;
prev = NULL; next = NULL; prev = NULL; next = NULL;
} }

View file

@ -92,12 +92,12 @@ void ConvexShapeCollisionConvex::getFeatures( const MatrixF &mat, const VectorF
if ( pShape->mGeometry.points.empty() ) if ( pShape->mGeometry.points.empty() )
{ {
cf->material = 0; cf->material = 0;
cf->object = NULL; cf->mObject = NULL;
return; return;
} }
cf->material = 0; cf->material = 0;
cf->object = mObject; cf->mObject = mObject;
// Simple implementation... Add all Points, Edges and Faces. // Simple implementation... Add all Points, Edges and Faces.

View file

@ -50,7 +50,7 @@ protected:
public: public:
ConvexShapeCollisionConvex() { mType = ConvexShapeCollisionConvexType; } ConvexShapeCollisionConvex() { pShape = NULL; mType = ConvexShapeCollisionConvexType; }
ConvexShapeCollisionConvex( const ConvexShapeCollisionConvex& cv ) { ConvexShapeCollisionConvex( const ConvexShapeCollisionConvex& cv ) {
mType = ConvexShapeCollisionConvexType; mType = ConvexShapeCollisionConvexType;
@ -297,4 +297,4 @@ protected:
}; };
#endif // _CONVEXSHAPE_H_ #endif // _CONVEXSHAPE_H_

View file

@ -533,6 +533,8 @@ Debris::Debris()
mInitialTrans.identity(); mInitialTrans.identity();
mRadius = 0.2f; mRadius = 0.2f;
mStatic = false; mStatic = false;
mElasticity = 0.5f;
mFriction = 0.5f;
dMemset( mEmitterList, 0, sizeof( mEmitterList ) ); dMemset( mEmitterList, 0, sizeof( mEmitterList ) );

View file

@ -24,6 +24,23 @@
#include "T3D/decal/decalInstance.h" #include "T3D/decal/decalInstance.h"
#include "scene/sceneRenderState.h" #include "scene/sceneRenderState.h"
DecalInstance::DecalInstance()
: mDataBlock(NULL),
mRotAroundNormal(0.0f),
mSize(0.0f),
mCreateTime(0),
mVisibility(1.0f),
mLastAlpha(1.0f),
mTextureRectIdx(0),
mVerts(NULL),
mIndices(NULL),
mVertCount(0),
mIndxCount(0),
mFlags(0),
mRenderPriority(0),
mId(-1),
mCustomTex(NULL)
{}
void DecalInstance::getWorldMatrix( MatrixF *outMat, bool flip ) void DecalInstance::getWorldMatrix( MatrixF *outMat, bool flip )
{ {
outMat->setPosition( mPosition ); outMat->setPosition( mPosition );

View file

@ -87,7 +87,7 @@ class DecalInstance
/// Calculates the size of this decal onscreen in pixels, used for LOD. /// Calculates the size of this decal onscreen in pixels, used for LOD.
F32 calcPixelSize( U32 viewportHeight, const Point3F &cameraPos, F32 worldToScreenScaleY ) const; F32 calcPixelSize( U32 viewportHeight, const Point3F &cameraPos, F32 worldToScreenScaleY ) const;
DecalInstance() : mId(-1) {} DecalInstance();
}; };
#endif // _DECALINSTANCE_H_ #endif // _DECALINSTANCE_H_

View file

@ -238,6 +238,9 @@ ExplosionData::ExplosionData()
explosionScale.set(1.0f, 1.0f, 1.0f); explosionScale.set(1.0f, 1.0f, 1.0f);
playSpeed = 1.0f; playSpeed = 1.0f;
explosionShape = NULL;
explosionAnimation = -1;
dMemset( emitterList, 0, sizeof( emitterList ) ); dMemset( emitterList, 0, sizeof( emitterList ) );
dMemset( emitterIDList, 0, sizeof( emitterIDList ) ); dMemset( emitterIDList, 0, sizeof( emitterIDList ) );
dMemset( debrisList, 0, sizeof( debrisList ) ); dMemset( debrisList, 0, sizeof( debrisList ) );
@ -924,6 +927,7 @@ Explosion::Explosion()
ss_index = 0; ss_index = 0;
mDataBlock = 0; mDataBlock = 0;
soundProfile_clone = 0; soundProfile_clone = 0;
mRandomVal = 0;
} }
Explosion::~Explosion() Explosion::~Explosion()

View file

@ -286,6 +286,7 @@ fxFoliageReplicator::fxFoliageReplicator()
// Reset Foliage Count. // Reset Foliage Count.
mCurrentFoliageCount = 0; mCurrentFoliageCount = 0;
dMemset(&mFrustumRenderSet, 0, sizeof(mFrustumRenderSet));
// Reset Creation Area Angle Animation. // Reset Creation Area Angle Animation.
mCreationAreaAngle = 0; mCreationAreaAngle = 0;
@ -299,8 +300,15 @@ fxFoliageReplicator::fxFoliageReplicator()
// Reset Frame Serial ID. // Reset Frame Serial ID.
mFrameSerialID = 0; mFrameSerialID = 0;
mQuadTreeLevels = 0;
mNextAllocatedNodeIdx = 0;
mAlphaLookup = NULL; mAlphaLookup = NULL;
mFadeInGradient = 0.0f;
mFadeOutGradient = 0.0f;
mGlobalSwayPhase = 0.0f;
mGlobalSwayTimeRatio = 1.0f;
mGlobalLightPhase = 0.0f;
mGlobalLightTimeRatio = 1.0f;
mDirty = true; mDirty = true;
@ -317,6 +325,8 @@ fxFoliageReplicator::fxFoliageReplicator()
mFoliageShaderTrueBillboardSC = NULL; mFoliageShaderTrueBillboardSC = NULL;
mFoliageShaderGroundAlphaSC = NULL; mFoliageShaderGroundAlphaSC = NULL;
mFoliageShaderAmbientColorSC = NULL; mFoliageShaderAmbientColorSC = NULL;
mDiffuseTextureSC = NULL;
mAlphaMapTextureSC = NULL;
mShaderData = NULL; mShaderData = NULL;
} }

View file

@ -248,7 +248,7 @@ LightningData::LightningData()
strikeTextureNames[i] = NULL; strikeTextureNames[i] = NULL;
strikeTextures[i] = NULL; strikeTextures[i] = NULL;
} }
numThunders = 0;
mNumStrikeTextures = 0; mNumStrikeTextures = 0;
} }
@ -371,6 +371,7 @@ Lightning::Lightning()
mNetFlags.set(Ghostable|ScopeAlways); mNetFlags.set(Ghostable|ScopeAlways);
mTypeMask |= StaticObjectType|EnvironmentObjectType; mTypeMask |= StaticObjectType|EnvironmentObjectType;
mDataBlock = NULL;
mLastThink = 0; mLastThink = 0;
mStrikeListHead = NULL; mStrikeListHead = NULL;
@ -1033,6 +1034,16 @@ LightningBolt::LightningBolt()
elapsedTime = 0.0f; elapsedTime = 0.0f;
lifetime = 1.0f; lifetime = 1.0f;
startRender = false; startRender = false;
endPoint.zero();
width = 1;
numMajorNodes = 10;
maxMajorAngle = 30.0f;
numMinorNodes = 4;
maxMinorAngle = 15.0f;
fadeTime = 0.2f;
renderTime = 0.125;
dMemset(&mMajorNodes, 0, sizeof(mMajorNodes));
percentFade = 0.0f;
} }
//-------------------------------------------------------------------------- //--------------------------------------------------------------------------

View file

@ -846,6 +846,7 @@ ParticleEmitterData::ParticleEmitterData(const ParticleEmitterData& other, bool
textureName = other.textureName; textureName = other.textureName;
textureHandle = other.textureHandle; // -- TextureHandle loads using textureName textureHandle = other.textureHandle; // -- TextureHandle loads using textureName
highResOnly = other.highResOnly; highResOnly = other.highResOnly;
glow = other.glow;
renderReflection = other.renderReflection; renderReflection = other.renderReflection;
fade_color = other.fade_color; fade_color = other.fade_color;
fade_size = other.fade_size; fade_size = other.fade_size;
@ -965,7 +966,7 @@ ParticleEmitter::ParticleEmitter()
pos_pe.set(0,0,0); pos_pe.set(0,0,0);
sort_priority = 0; sort_priority = 0;
mDataBlock = 0; mDataBlock = 0;
std::fill_n(sizes, ParticleData::PDC_NUM_KEYS, 0.0f);
#if defined(AFX_CAP_PARTICLE_POOLS) #if defined(AFX_CAP_PARTICLE_POOLS)
pool = 0; pool = 0;
#endif #endif

View file

@ -170,6 +170,7 @@ void RibbonData::unpackData(BitStream* stream)
// //
Ribbon::Ribbon() Ribbon::Ribbon()
{ {
mDataBlock = NULL;
mTypeMask |= StaticObjectType; mTypeMask |= StaticObjectType;
VECTOR_SET_ASSOCIATION(mSegmentPoints); VECTOR_SET_ASSOCIATION(mSegmentPoints);

View file

@ -37,9 +37,6 @@ class RibbonNodeData : public GameBaseData
{ {
typedef GameBaseData Parent; typedef GameBaseData Parent;
public:
F32 timeMultiple;
public: public:
RibbonNodeData(); RibbonNodeData();
~RibbonNodeData(); ~RibbonNodeData();

View file

@ -309,6 +309,7 @@ Splash::Splash()
mDelayMS = 0; mDelayMS = 0;
mCurrMS = 0; mCurrMS = 0;
mRandAngle = 0;
mEndingMS = 1000; mEndingMS = 1000;
mActive = false; mActive = false;
mRadius = 0.0; mRadius = 0.0;
@ -319,7 +320,8 @@ Splash::Splash()
mElapsedTime = 0.0; mElapsedTime = 0.0;
mInitialNormal.set( 0.0, 0.0, 1.0 ); mInitialNormal.set( 0.0, 0.0, 1.0 );
mFade = 0;
mFog = 0;
// Only allocated client side. // Only allocated client side.
mNetFlags.set( IsGhost ); mNetFlags.set( IsGhost );
} }

View file

@ -254,6 +254,7 @@ GameBase::GameBase()
mTicksSinceLastMove = 0; mTicksSinceLastMove = 0;
mIsAiControlled = false; mIsAiControlled = false;
#endif #endif
mCameraFov = 90.f;
} }
GameBase::~GameBase() GameBase::~GameBase()

View file

@ -26,6 +26,7 @@
MoveList::MoveList() MoveList::MoveList()
{ {
mConnection = NULL;
mControlMismatch = false; mControlMismatch = false;
reset(); reset();
} }

View file

@ -61,6 +61,8 @@ GuiMaterialPreview::GuiMaterialPreview()
// By default don't do dynamic reflection // By default don't do dynamic reflection
// updates for this viewport. // updates for this viewport.
mReflectPriority = 0.0f; mReflectPriority = 0.0f;
mMountedModel = NULL;
mSkinTag = 0;
} }
GuiMaterialPreview::~GuiMaterialPreview() GuiMaterialPreview::~GuiMaterialPreview()

View file

@ -43,6 +43,7 @@ ConsoleDocClass( PhysicsForce,
PhysicsForce::PhysicsForce() PhysicsForce::PhysicsForce()
: :
mWorld( NULL ), mWorld( NULL ),
mForce(0.0f),
mPhysicsTick( false ), mPhysicsTick( false ),
mBody( NULL ) mBody( NULL )
{ {

View file

@ -311,6 +311,11 @@ PlayerData::PlayerData()
jumpEnergyDrain = 0.0f; jumpEnergyDrain = 0.0f;
minJumpEnergy = 0.0f; minJumpEnergy = 0.0f;
jumpSurfaceAngle = 78.0f; jumpSurfaceAngle = 78.0f;
jumpSurfaceCos = mCos(mDegToRad(jumpSurfaceAngle));
for (U32 i = 0; i < NumRecoilSequences; i++)
recoilSequence[i] = -1;
jumpDelay = 30; jumpDelay = 30;
minJumpSpeed = 500.0f; minJumpSpeed = 500.0f;
maxJumpSpeed = 2.0f * minJumpSpeed; maxJumpSpeed = 2.0f * minJumpSpeed;
@ -370,6 +375,9 @@ PlayerData::PlayerData()
actionCount = 0; actionCount = 0;
lookAction = 0; lookAction = 0;
dMemset(spineNode, 0, sizeof(spineNode));
pickupDelta = 0.0f;
// size of bounding box // size of bounding box
boxSize.set(1.0f, 1.0f, 2.3f); boxSize.set(1.0f, 1.0f, 2.3f);

View file

@ -253,6 +253,7 @@ RigidShapeData::RigidShapeData()
dustEmitter = NULL; dustEmitter = NULL;
dustID = 0; dustID = 0;
triggerDustHeight = 3.0;
dustHeight = 1.0; dustHeight = 1.0;
dMemset( splashEmitterList, 0, sizeof( splashEmitterList ) ); dMemset( splashEmitterList, 0, sizeof( splashEmitterList ) );

View file

@ -3571,7 +3571,7 @@ Point3F ShapeBaseConvex::support(const VectorF& v) const
void ShapeBaseConvex::getFeatures(const MatrixF& mat, const VectorF& n, ConvexFeature* cf) void ShapeBaseConvex::getFeatures(const MatrixF& mat, const VectorF& n, ConvexFeature* cf)
{ {
cf->material = 0; cf->material = 0;
cf->object = mObject; cf->mObject = mObject;
TSShape::ConvexHullAccelerator* pAccel = TSShape::ConvexHullAccelerator* pAccel =
pShapeBase->mShapeInstance->getShape()->getAccelerator(pShapeBase->mDataBlock->collisionDetails[hullId]); pShapeBase->mShapeInstance->getShape()->getAccelerator(pShapeBase->mDataBlock->collisionDetails[hullId]);

View file

@ -111,7 +111,7 @@ class ShapeBaseConvex : public Convex
Box3F box; Box3F box;
public: public:
ShapeBaseConvex() { mType = ShapeBaseConvexType; nodeTransform = 0; } ShapeBaseConvex() :pShapeBase(NULL), transform(NULL), hullId(NULL), nodeTransform(0) { mType = ShapeBaseConvexType; }
ShapeBaseConvex(const ShapeBaseConvex& cv) { ShapeBaseConvex(const ShapeBaseConvex& cv) {
mObject = cv.mObject; mObject = cv.mObject;
pShapeBase = cv.pShapeBase; pShapeBase = cv.pShapeBase;

View file

@ -134,6 +134,8 @@ ShapeBaseImageData::StateData::StateData()
recoil = NoRecoil; recoil = NoRecoil;
sound = 0; sound = 0;
emitter = NULL; emitter = NULL;
shapeSequence = NULL;
shapeSequenceScale = true;
script = 0; script = 0;
ignoreLoadedForReady = false; ignoreLoadedForReady = false;
@ -1396,6 +1398,7 @@ ShapeBase::MountedImage::MountedImage()
dataBlock = 0; dataBlock = 0;
nextImage = InvalidImagePtr; nextImage = InvalidImagePtr;
delayTime = 0; delayTime = 0;
rDT = 0.0f;
ammo = false; ammo = false;
target = false; target = false;
triggerDown = false; triggerDown = false;
@ -1408,6 +1411,7 @@ ShapeBase::MountedImage::MountedImage()
motion = false; motion = false;
lightStart = 0; lightStart = 0;
lightInfo = NULL; lightInfo = NULL;
dMemset(emitter, 0, sizeof(emitter));
for (U32 i=0; i<ShapeBaseImageData::MaxGenericTriggers; ++i) for (U32 i=0; i<ShapeBaseImageData::MaxGenericTriggers; ++i)
{ {

View file

@ -1486,7 +1486,7 @@ void TSStaticPolysoupConvex::getPolyList(AbstractPolyList* list)
void TSStaticPolysoupConvex::getFeatures(const MatrixF& mat, const VectorF& n, ConvexFeature* cf) void TSStaticPolysoupConvex::getFeatures(const MatrixF& mat, const VectorF& n, ConvexFeature* cf)
{ {
cf->material = 0; cf->material = 0;
cf->object = mObject; cf->mObject = mObject;
// For a tetrahedron this is pretty easy... first // For a tetrahedron this is pretty easy... first
// convert everything into world space. // convert everything into world space.

View file

@ -119,6 +119,7 @@ AITurretShapeData::AITurretShapeData()
} }
isAnimated = false; isAnimated = false;
statesLoaded = false; statesLoaded = false;
fireState = -1;
} }
void AITurretShapeData::initPersistFields() void AITurretShapeData::initPersistFields()

View file

@ -114,17 +114,21 @@ TurretShapeData::TurretShapeData()
headingNode = -1; headingNode = -1;
pitchNode = -1; pitchNode = -1;
U32 i = 0;
for (U32 i=0; i<NumMirrorDirectionNodes; ++i) for (i=0; i<NumMirrorDirectionNodes; ++i)
{ {
pitchNodes[i] = -1; pitchNodes[i] = -1;
headingNodes[i] = -1; headingNodes[i] = -1;
} }
for (U32 i=0; i<ShapeBase::MaxMountedImages; ++i) for (i=0; i<ShapeBase::MaxMountedImages; ++i)
{ {
weaponMountNode[i] = -1; weaponMountNode[i] = -1;
} }
for (i = 0; i < NumRecoilSequences;i++)
recoilSequence[i] = -1;
pitchSequence = -1;
headingSequence = -1;
} }
void TurretShapeData::initPersistFields() void TurretShapeData::initPersistFields()
@ -284,6 +288,8 @@ TurretShape::TurretShape()
// For the Item class // For the Item class
mSubclassItemHandlesScene = true; mSubclassItemHandlesScene = true;
mRecoilThread = NULL;
mImageStateThread = NULL;
} }
TurretShape::~TurretShape() TurretShape::~TurretShape()

View file

@ -322,6 +322,7 @@ ConsoleDocClass( FlyingVehicle,
FlyingVehicle::FlyingVehicle() FlyingVehicle::FlyingVehicle()
{ {
mDataBlock = NULL;
mSteering.set(0,0); mSteering.set(0,0);
mThrottle = 0; mThrottle = 0;
mJetting = false; mJetting = false;
@ -332,6 +333,10 @@ FlyingVehicle::FlyingVehicle()
mBackMaintainOn = false; mBackMaintainOn = false;
mBottomMaintainOn = false; mBottomMaintainOn = false;
createHeightOn = false; createHeightOn = false;
mCeilingFactor = 1.0f;
mThrustDirection = FlyingVehicle::ThrustForward;
for (U32 i=0;i< JetAnimCount;i++)
mJetSeq[i] = -1;
for (S32 i = 0; i < JetAnimCount; i++) for (S32 i = 0; i < JetAnimCount; i++)
mJetThread[i] = 0; mJetThread[i] = 0;

View file

@ -77,7 +77,6 @@ struct FlyingVehicleData: public VehicleData {
// Initialized in preload // Initialized in preload
ClippedPolyList rigidBody; ClippedPolyList rigidBody;
S32 surfaceCount;
F32 maxSpeed; F32 maxSpeed;
enum JetNodes { enum JetNodes {

View file

@ -139,6 +139,7 @@ HoverVehicleData::HoverVehicleData()
dustTrailID = 0; dustTrailID = 0;
dustTrailOffset.set( 0.0f, 0.0f, 0.0f ); dustTrailOffset.set( 0.0f, 0.0f, 0.0f );
dustTrailFreqMod = 15.0f; dustTrailFreqMod = 15.0f;
maxThrustSpeed = 0;
triggerTrailHeight = 2.5f; triggerTrailHeight = 2.5f;
floatingGravMag = 1; floatingGravMag = 1;
@ -436,24 +437,29 @@ void HoverVehicleData::unpackData(BitStream* stream)
// //
HoverVehicle::HoverVehicle() HoverVehicle::HoverVehicle()
{ {
mDataBlock = NULL;
// Todo: ScopeAlways? // Todo: ScopeAlways?
mNetFlags.set(Ghostable); mNetFlags.set(Ghostable);
mFloating = false; mFloating = false;
mForwardThrust = 0; mThrustLevel = 0.0f;
mReverseThrust = 0; mForwardThrust = 0.0f;
mLeftThrust = 0; mReverseThrust = 0.0f;
mRightThrust = 0; mLeftThrust = 0.0f;
mRightThrust = 0.0f;
mJetSound = NULL; mJetSound = NULL;
mEngineSound = NULL; mEngineSound = NULL;
mFloatSound = NULL; mFloatSound = NULL;
mThrustDirection = HoverVehicle::ThrustForward;
mDustTrailEmitter = NULL; mDustTrailEmitter = NULL;
mBackMaintainOn = false; mBackMaintainOn = false;
for (S32 i = 0; i < JetAnimCount; i++) for (S32 i = 0; i < JetAnimCount; i++)
mJetThread[i] = 0; {
mJetSeq[i] = -1;
mJetThread[i] = NULL;
}
} }
HoverVehicle::~HoverVehicle() HoverVehicle::~HoverVehicle()

View file

@ -304,7 +304,7 @@ WheeledVehicleData::WheeledVehicleData()
brakeLightSequence = -1; brakeLightSequence = -1;
steeringSequence = -1; steeringSequence = -1;
wheelCount = 0; wheelCount = 0;
dMemset(&wheel, 0, sizeof(wheel));
for (S32 i = 0; i < MaxSounds; i++) for (S32 i = 0; i < MaxSounds; i++)
sound[i] = 0; sound[i] = 0;
} }

View file

@ -29,7 +29,9 @@ IMPLEMENT_CONOBJECT( VSpawnSphereSpawnTargetTrack );
VSpawnSphereSpawnTargetTrack::VSpawnSphereSpawnTargetTrack( void ) VSpawnSphereSpawnTargetTrack::VSpawnSphereSpawnTargetTrack( void )
{ {
setLabel( "SpawnTargetTrack" ); mDespawnOnStop = false;
mDespawnOnLoop = false;
setLabel( "SpawnTargetTrack" );
} }
void VSpawnSphereSpawnTargetTrack::initPersistFields( void ) void VSpawnSphereSpawnTargetTrack::initPersistFields( void )
@ -152,4 +154,4 @@ void VSpawnSphereSpawnTargetTrack::despawnTargets( void )
// Delete the Object. // Delete the Object.
object->deleteObject(); object->deleteObject();
} }
} }

View file

@ -49,7 +49,8 @@ VActorPhysicsController::VActorPhysicsController( void ) :
mControlState( k_NullControlState ), mControlState( k_NullControlState ),
mMoveState( k_NullMove ), mMoveState( k_NullMove ),
mVelocity( VectorF::Zero ), mVelocity( VectorF::Zero ),
mGravity( 0.f, 0.f, -9.8f ) mGravity( 0.f, 0.f, -9.8f ),
mOnGround(false)
{ {
// Void. // Void.
} }
@ -1274,4 +1275,4 @@ void VActorPhysicsController::unpackUpdate( NetConnection *pConnection, BitStrea
// Apply. // Apply.
setPosition( position ); setPosition( position );
} }
} }

View file

@ -199,7 +199,7 @@ private:
public: public:
VPathEditorEditPathAction( const UTF8 *pName = "" ) : VPathEditorEditPathAction( const UTF8 *pName = "" ) :
UndoAction( pName ) UndoAction( pName ), mEditor(NULL), mPath(NULL)
{ {
// Void. // Void.
}; };
@ -218,9 +218,11 @@ private:
public: public:
VPathEditorEditNodeAction( const UTF8 *pName = "" ) : VPathEditorEditNodeAction( const UTF8 *pName = "" ) :
UndoAction( pName ) UndoAction( pName ), mEditor(NULL), mPath(NULL), mNodeIndex(0), mNodeWeight(0.0f)
{ {
// Void. // Void.
mNodeOrientation.Type = VPathNode::k_OrientationFree;
mNodeOrientation.Point = Point3F(0.0f, 0.0f, 0.0f);
}; };
VPathEditor *mEditor; VPathEditor *mEditor;
@ -290,4 +292,4 @@ namespace Utility
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
#endif // _VT_VPATHEDITOR_H_ #endif // _VT_VPATHEDITOR_H_

View file

@ -147,8 +147,6 @@ public:
DECLARE_CATEGORY("AFX"); DECLARE_CATEGORY("AFX");
private: // 3POV SECTION private: // 3POV SECTION
U32 mBlockers_mask_3pov;
void cam_update_3pov(F32 dt, bool on_server); void cam_update_3pov(F32 dt, bool on_server);
bool avoid_blocked_view(const Point3F& start, const Point3F& end, Point3F& newpos); bool avoid_blocked_view(const Point3F& start, const Point3F& end, Point3F& newpos);
bool test_blocked_line(const Point3F& start, const Point3F& end); bool test_blocked_line(const Point3F& start, const Point3F& end);

View file

@ -1904,6 +1904,9 @@ afxEffectConstraint::afxEffectConstraint(afxConstraintMgr* mgr)
{ {
mEffect_name = ST_NULLSTRING; mEffect_name = ST_NULLSTRING;
mEffect = 0; mEffect = 0;
mClip_tag = 0;
mIs_death_clip = false;
mLock_tag = 0;
} }
afxEffectConstraint::afxEffectConstraint(afxConstraintMgr* mgr, StringTableEntry effect_name) afxEffectConstraint::afxEffectConstraint(afxConstraintMgr* mgr, StringTableEntry effect_name)
@ -1911,6 +1914,9 @@ afxEffectConstraint::afxEffectConstraint(afxConstraintMgr* mgr, StringTableEntry
{ {
mEffect_name = effect_name; mEffect_name = effect_name;
mEffect = 0; mEffect = 0;
mClip_tag = 0;
mIs_death_clip = false;
mLock_tag = 0;
} }
afxEffectConstraint::~afxEffectConstraint() afxEffectConstraint::~afxEffectConstraint()

View file

@ -98,6 +98,7 @@ afxEffectVector::afxEffectVector()
mOn_server = false; mOn_server = false;
mTotal_fx_dur = 0; mTotal_fx_dur = 0;
mAfter_life = 0; mAfter_life = 0;
mPhrase_dur = 0;
} }
afxEffectVector::~afxEffectVector() afxEffectVector::~afxEffectVector()

View file

@ -298,8 +298,6 @@ protected:
bool mIn_scope; bool mIn_scope;
bool mIs_aborted; bool mIs_aborted;
U8 mEffect_flags;
afxXM_Base* mXfm_modifiers[MAX_XFM_MODIFIERS]; afxXM_Base* mXfm_modifiers[MAX_XFM_MODIFIERS];
F32 mLive_scale_factor; F32 mLive_scale_factor;

View file

@ -168,13 +168,14 @@ afxMagicMissileData::afxMagicMissileData()
impactForce = 0.0f; impactForce = 0.0f;
armingDelay = 0; armingDelay = 0;
fadeDelay = 20000 / 32;
lifetime = 20000 / 32;
activateSeq = -1; activateSeq = -1;
maintainSeq = -1; maintainSeq = -1;
*/ */
lifetime = 20000 / 32;
fadeDelay = 20000 / 32;
gravityMod = 1.0; gravityMod = 1.0;
/* From stock Projectile code... /* From stock Projectile code...
bounceElasticity = 0.999f; bounceElasticity = 0.999f;

View file

@ -58,6 +58,10 @@ afxZodiacGroundPlaneRenderer::afxZodiacGroundPlaneRenderer()
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacGroundPlaneRenderer::afxZodiacGroundPlaneRenderer(F32 renderOrder, F32 processAddOrder) afxZodiacGroundPlaneRenderer::afxZodiacGroundPlaneRenderer(F32 renderOrder, F32 processAddOrder)
@ -66,6 +70,10 @@ afxZodiacGroundPlaneRenderer::afxZodiacGroundPlaneRenderer(F32 renderOrder, F32
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacGroundPlaneRenderer::~afxZodiacGroundPlaneRenderer() afxZodiacGroundPlaneRenderer::~afxZodiacGroundPlaneRenderer()

View file

@ -58,6 +58,10 @@ afxZodiacMeshRoadRenderer::afxZodiacMeshRoadRenderer()
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacMeshRoadRenderer::afxZodiacMeshRoadRenderer(F32 renderOrder, F32 processAddOrder) afxZodiacMeshRoadRenderer::afxZodiacMeshRoadRenderer(F32 renderOrder, F32 processAddOrder)
@ -66,6 +70,10 @@ afxZodiacMeshRoadRenderer::afxZodiacMeshRoadRenderer(F32 renderOrder, F32 proces
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacMeshRoadRenderer::~afxZodiacMeshRoadRenderer() afxZodiacMeshRoadRenderer::~afxZodiacMeshRoadRenderer()

View file

@ -58,6 +58,10 @@ afxZodiacPolysoupRenderer::afxZodiacPolysoupRenderer()
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacPolysoupRenderer::afxZodiacPolysoupRenderer(F32 renderOrder, F32 processAddOrder) afxZodiacPolysoupRenderer::afxZodiacPolysoupRenderer(F32 renderOrder, F32 processAddOrder)
@ -66,6 +70,10 @@ afxZodiacPolysoupRenderer::afxZodiacPolysoupRenderer(F32 renderOrder, F32 proces
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacPolysoupRenderer::~afxZodiacPolysoupRenderer() afxZodiacPolysoupRenderer::~afxZodiacPolysoupRenderer()

View file

@ -68,6 +68,10 @@ afxZodiacTerrainRenderer::afxZodiacTerrainRenderer()
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacTerrainRenderer::afxZodiacTerrainRenderer(F32 renderOrder, F32 processAddOrder) afxZodiacTerrainRenderer::afxZodiacTerrainRenderer(F32 renderOrder, F32 processAddOrder)
@ -76,6 +80,10 @@ afxZodiacTerrainRenderer::afxZodiacTerrainRenderer(F32 renderOrder, F32 processA
if (!master) if (!master)
master = this; master = this;
shader_initialized = false; shader_initialized = false;
zodiac_shader = NULL;
shader_consts = NULL;
projection_sc = NULL;
color_sc = NULL;
} }
afxZodiacTerrainRenderer::~afxZodiacTerrainRenderer() afxZodiacTerrainRenderer::~afxZodiacTerrainRenderer()

View file

@ -105,6 +105,11 @@ afxModelData::afxModelData(const afxModelData& other, bool temp_clone) : GameBas
customAmbientForSelfIllumination = other.customAmbientForSelfIllumination; customAmbientForSelfIllumination = other.customAmbientForSelfIllumination;
customAmbientLighting = other.customAmbientLighting; customAmbientLighting = other.customAmbientLighting;
shadowEnable = other.shadowEnable; shadowEnable = other.shadowEnable;
shadowSize = other.shadowSize;
shadowMaxVisibleDistance = other.shadowMaxVisibleDistance;
shadowProjectionDistance = other.shadowProjectionDistance;
shadowSphereAdjust = other.shadowSphereAdjust;
} }
afxModelData::~afxModelData() afxModelData::~afxModelData()
@ -360,7 +365,7 @@ afxModel::afxModel()
fade_amt = 1.0f; fade_amt = 1.0f;
is_visible = true; is_visible = true;
sort_priority = 0; sort_priority = 0;
mDataBlock = NULL;
mNetFlags.set( IsGhost ); mNetFlags.set( IsGhost );
} }

View file

@ -133,6 +133,7 @@ afxMooring::afxMooring()
chor_id = 0; chor_id = 0;
hookup_with_chor = false; hookup_with_chor = false;
ghost_cons_name = ST_NULLSTRING; ghost_cons_name = ST_NULLSTRING;
mDataBlock = NULL;
} }
afxMooring::afxMooring(U32 networking, U32 chor_id, StringTableEntry cons_name) afxMooring::afxMooring(U32 networking, U32 chor_id, StringTableEntry cons_name)
@ -160,6 +161,7 @@ afxMooring::afxMooring(U32 networking, U32 chor_id, StringTableEntry cons_name)
this->chor_id = chor_id; this->chor_id = chor_id;
hookup_with_chor = false; hookup_with_chor = false;
this->ghost_cons_name = cons_name; this->ghost_cons_name = cons_name;
mDataBlock = NULL;
} }
afxMooring::~afxMooring() afxMooring::~afxMooring()
@ -275,4 +277,4 @@ void afxMooring::onRemove()
Parent::onRemove(); Parent::onRemove();
} }
//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~//

View file

@ -687,6 +687,7 @@ bool afxParticleEmitterDiscData::preload(bool server, String &errorStr)
afxParticleEmitter::afxParticleEmitter() afxParticleEmitter::afxParticleEmitter()
{ {
mDataBlock = NULL;
pe_vector.set(0,0,1); pe_vector.set(0,0,1);
pe_vector_norm.set(0,0,1); pe_vector_norm.set(0,0,1);
tpaths.clear(); tpaths.clear();
@ -1086,6 +1087,7 @@ void afxParticleEmitter::emitParticlesExt(const MatrixF& xfm, const Point3F& poi
afxParticleEmitterVector::afxParticleEmitterVector() afxParticleEmitterVector::afxParticleEmitterVector()
{ {
mDataBlock = NULL;
} }
afxParticleEmitterVector::~afxParticleEmitterVector() afxParticleEmitterVector::~afxParticleEmitterVector()
@ -1151,6 +1153,7 @@ void afxParticleEmitterVector::sub_preCompute(const MatrixF& mat)
afxParticleEmitterCone::afxParticleEmitterCone() afxParticleEmitterCone::afxParticleEmitterCone()
{ {
mDataBlock = NULL;
cone_v.set(0,0,1); cone_v.set(0,0,1);
cone_s0.set(0,0,1); cone_s0.set(0,0,1);
cone_s1.set(0,0,1); cone_s1.set(0,0,1);
@ -1266,6 +1269,7 @@ void afxParticleEmitterCone::sub_preCompute(const MatrixF& mat)
afxParticleEmitterPath::afxParticleEmitterPath() afxParticleEmitterPath::afxParticleEmitterPath()
{ {
mDataBlock = NULL;
epaths.clear(); epaths.clear();
epath_mults.clear(); epath_mults.clear();
n_epath_points = 0; n_epath_points = 0;
@ -1521,6 +1525,7 @@ void afxParticleEmitterPath::groundConformPoint(Point3F& point, const MatrixF& m
afxParticleEmitterDisc::afxParticleEmitterDisc() afxParticleEmitterDisc::afxParticleEmitterDisc()
{ {
mDataBlock = NULL;
disc_v.set(0,0,1); disc_v.set(0,0,1);
disc_r.set(1,0,0); disc_r.set(1,0,0);
} }

View file

@ -122,6 +122,7 @@ ConsoleDocClass( afxStaticShape,
afxStaticShape::afxStaticShape() afxStaticShape::afxStaticShape()
{ {
mDataBlock = NULL;
mAFX_data = 0; mAFX_data = 0;
mIs_visible = true; mIs_visible = true;
mChor_id = 0; mChor_id = 0;
@ -238,4 +239,4 @@ void afxStaticShape::prepRenderImage(SceneRenderState* state)
Parent::prepRenderImage(state); Parent::prepRenderImage(state);
} }
//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~//

View file

@ -114,6 +114,7 @@ afxZodiacData::afxZodiacData()
grade_range_user.set(0.0f, 45.0f); grade_range_user.set(0.0f, 45.0f);
afxZodiacData::convertGradientRangeFromDegrees(grade_range, grade_range_user); afxZodiacData::convertGradientRangeFromDegrees(grade_range, grade_range_user);
inv_grade_range = false; inv_grade_range = false;
zflags = 0;
} }
afxZodiacData::afxZodiacData(const afxZodiacData& other, bool temp_clone) : GameBaseData(other, temp_clone) afxZodiacData::afxZodiacData(const afxZodiacData& other, bool temp_clone) : GameBaseData(other, temp_clone)

View file

@ -61,7 +61,7 @@ afxZodiacPlaneData::afxZodiacPlaneData()
color.set(1,1,1,1); color.set(1,1,1,1);
blend_flags = BLEND_NORMAL; blend_flags = BLEND_NORMAL;
respect_ori_cons = false; respect_ori_cons = false;
zflags = 0;
double_sided = true; double_sided = true;
face_dir = FACES_UP; face_dir = FACES_UP;
use_full_xfm = false; use_full_xfm = false;
@ -310,4 +310,4 @@ void afxZodiacPlane::onRemove()
Parent::onRemove(); Parent::onRemove();
} }
//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~// //~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~//

View file

@ -75,6 +75,7 @@ afxEA_PhraseEffect::afxEA_PhraseEffect()
{ {
phrase_fx_data = 0; phrase_fx_data = 0;
active_phrases = &_phrases_a; active_phrases = &_phrases_a;
last_trigger_mask = 0;
} }
afxEA_PhraseEffect::~afxEA_PhraseEffect() afxEA_PhraseEffect::~afxEA_PhraseEffect()

View file

@ -60,7 +60,7 @@ class afxF_Drag : public afxForce
typedef afxForce Parent; typedef afxForce Parent;
private: private:
afxF_DragData* datablock; afxF_DragData* mDatablock;
F32 air_friction_constant; F32 air_friction_constant;
public: public:
@ -149,13 +149,14 @@ afxForceData* afxF_DragData::cloneAndPerformSubstitutions(const SimObject* owner
afxF_Drag::afxF_Drag() : afxForce() afxF_Drag::afxF_Drag() : afxForce()
{ {
mDatablock = NULL;
air_friction_constant = 1.0f; air_friction_constant = 1.0f;
} }
bool afxF_Drag::onNewDataBlock(afxForceData* dptr, bool reload) bool afxF_Drag::onNewDataBlock(afxForceData* dptr, bool reload)
{ {
datablock = dynamic_cast<afxF_DragData*>(dptr); mDatablock = dynamic_cast<afxF_DragData*>(dptr);
if (!datablock || !Parent::onNewDataBlock(dptr, reload)) if (!mDatablock || !Parent::onNewDataBlock(dptr, reload))
return false; return false;
return true; return true;
@ -163,9 +164,9 @@ bool afxF_Drag::onNewDataBlock(afxForceData* dptr, bool reload)
void afxF_Drag::start() void afxF_Drag::start()
{ {
air_friction_constant = 0.5f * datablock->drag_coefficient air_friction_constant = 0.5f * mDatablock->drag_coefficient
* datablock->air_density * mDatablock->air_density
* datablock->cross_sectional_area; * mDatablock->cross_sectional_area;
//Con::printf("Air Friction: %f", air_friction_constant); //Con::printf("Air Friction: %f", air_friction_constant);
} }

View file

@ -58,7 +58,7 @@ class afxF_Gravity : public afxForce
typedef afxForce Parent; typedef afxForce Parent;
private: private:
afxF_GravityData* datablock; afxF_GravityData* mDatablock;
public: public:
/*C*/ afxF_Gravity(); /*C*/ afxF_Gravity();
@ -133,12 +133,13 @@ afxForceData* afxF_GravityData::cloneAndPerformSubstitutions(const SimObject* ow
afxF_Gravity::afxF_Gravity() : afxForce() afxF_Gravity::afxF_Gravity() : afxForce()
{ {
mDatablock = NULL;
} }
bool afxF_Gravity::onNewDataBlock(afxForceData* dptr, bool reload) bool afxF_Gravity::onNewDataBlock(afxForceData* dptr, bool reload)
{ {
datablock = dynamic_cast<afxF_GravityData*>(dptr); mDatablock = dynamic_cast<afxF_GravityData*>(dptr);
if (!datablock || !Parent::onNewDataBlock(dptr, reload)) if (!mDatablock || !Parent::onNewDataBlock(dptr, reload))
return false; return false;
return true; return true;
@ -146,7 +147,7 @@ bool afxF_Gravity::onNewDataBlock(afxForceData* dptr, bool reload)
Point3F afxF_Gravity::evaluate(Point3F pos, Point3F v, F32 mass) Point3F afxF_Gravity::evaluate(Point3F pos, Point3F v, F32 mass)
{ {
return Point3F(0,0,-datablock->gravity)*mass; return Point3F(0,0,-mDatablock->gravity)*mass;
} }

View file

@ -29,6 +29,8 @@
afxAnimCurve::afxAnimCurve() : usable( false ), final_value( 0.0f ), start_value( 0.0f ) afxAnimCurve::afxAnimCurve() : usable( false ), final_value( 0.0f ), start_value( 0.0f )
{ {
evaluator = new afxHermiteEval(); evaluator = new afxHermiteEval();
final_time = 0.0f;
start_time = 0.0f;
} }
afxAnimCurve::~afxAnimCurve() afxAnimCurve::~afxAnimCurve()
@ -277,4 +279,4 @@ void afxAnimCurve::printKey( int index )
{ {
Key &k = keys[index]; Key &k = keys[index];
Con::printf( "%f: %f", k.time, k.value ); Con::printf( "%f: %f", k.time, k.value );
} }

View file

@ -27,7 +27,7 @@
#include "afx/util/afxCurveEval.h" #include "afx/util/afxCurveEval.h"
#include "afx/util/afxCurve3D.h" #include "afx/util/afxCurve3D.h"
afxCurve3D::afxCurve3D() : usable( false ), default_vector( 0, 0, 0 ) afxCurve3D::afxCurve3D() : usable( false ), default_vector( 0, 0, 0 ), flip(false)
{ {
evaluator = new afxHermiteEval(); evaluator = new afxHermiteEval();
} }
@ -329,4 +329,4 @@ void afxCurve3D::print()
Con::printf( "%f: %f %f %f", p.parameter, p.point.x, p.point.y, p.point.z ); Con::printf( "%f: %f %f %f", p.parameter, p.point.x, p.point.y, p.point.z );
} }
Con::printf( "---------------------------------" ); Con::printf( "---------------------------------" );
} }

View file

@ -29,7 +29,7 @@
#include "afx/util/afxPath3D.h" #include "afx/util/afxPath3D.h"
afxPath3D::afxPath3D() : mStart_time(0), mNum_points(0), mLoop_type(LOOP_CONSTANT) afxPath3D::afxPath3D() : mStart_time(0), mNum_points(0), mLoop_type(LOOP_CONSTANT), mEnd_time(0.0f)
{ {
} }

View file

@ -114,12 +114,22 @@ ConsoleDocClass( HTTPObject,
//-------------------------------------- //--------------------------------------
HTTPObject::HTTPObject() HTTPObject::HTTPObject()
: mParseState(ParsingStatusLine),
mTotalBytes(0),
mBytesRemaining(0),
mStatus(0),
mVersion(0.0f),
mContentLength(0),
mChunkedEncoding(false),
mChunkSize(0),
mContentType(""),
mHostName(NULL),
mPath(NULL),
mQuery(NULL),
mPost(NULL),
mBufferSave(NULL),
mBufferSaveSize(0)
{ {
mHostName = 0;
mPath = 0;
mQuery = 0;
mPost = 0;
mBufferSave = 0;
} }
HTTPObject::~HTTPObject() HTTPObject::~HTTPObject()

View file

@ -80,6 +80,7 @@ struct ServerInfo
statusString = NULL; statusString = NULL;
infoString = NULL; infoString = NULL;
version = 0; version = 0;
dMemset(&address, '\0', sizeof(NetAddress));
ping = 0; ping = 0;
cpuSpeed = 0; cpuSpeed = 0;
isFavorite = false; isFavorite = false;

View file

@ -85,7 +85,7 @@ inline bool isOnPlane(const Point3F& p,PlaneF& plane)
void BoxConvex::getFeatures(const MatrixF& mat,const VectorF& n, ConvexFeature* cf) void BoxConvex::getFeatures(const MatrixF& mat,const VectorF& n, ConvexFeature* cf)
{ {
cf->material = 0; cf->material = 0;
cf->object = mObject; cf->mObject = mObject;
S32 v = 0; S32 v = 0;
v += (n.x >= 0)? 1: 0; v += (n.x >= 0)? 1: 0;

View file

@ -49,7 +49,7 @@ class ClippedPolyList : public AbstractPolyList
public: public:
struct Vertex { struct Vertex {
Point3F point; Point3F point;
U32 mask; U32 mask = 0;
}; };
struct Poly { struct Poly {
@ -61,6 +61,8 @@ public:
U32 vertexCount; U32 vertexCount;
U32 surfaceKey; U32 surfaceKey;
U32 polyFlags; U32 polyFlags;
Poly() :object(NULL), material(NULL), vertexStart(0), vertexCount(0), surfaceKey(0), polyFlags(0) {}
~Poly() {}
}; };
/// ??? /// ???

View file

@ -65,7 +65,11 @@ struct Collision
object( NULL ), object( NULL ),
material( NULL ), material( NULL ),
generateTexCoord(false), generateTexCoord(false),
texCoord(-1.0f, -1.0f) texCoord(-1.0f, -1.0f),
face(0),
faceDot(0.0f),
distance(0)
{ {
} }
}; };

View file

@ -48,6 +48,9 @@ class ConcretePolyList : public AbstractPolyList
Poly() Poly()
{ {
vertexStart = 0;
vertexCount = 0;
surfaceKey = 0;
object = NULL; object = NULL;
material = NULL; material = NULL;
} }

View file

@ -52,7 +52,9 @@ F32 sqrDistanceEdges(const Point3F& start0,
CollisionState::CollisionState() CollisionState::CollisionState()
{ {
mLista = mListb = 0; mB = mA = NULL;
mDist = 0.0f;
mListb = mLista = 0;
} }
CollisionState::~CollisionState() CollisionState::~CollisionState()
@ -85,7 +87,7 @@ F32 CollisionState::distance(const MatrixF& a2w, const MatrixF& b2w, const F32 d
void ConvexFeature::reset() void ConvexFeature::reset()
{ {
material = NULL; material = NULL;
object = NULL; mObject = NULL;
mVertexList.clear(); mVertexList.clear();
mEdgeList.clear(); mEdgeList.clear();
mFaceList.clear(); mFaceList.clear();
@ -114,7 +116,7 @@ bool ConvexFeature::collide(ConvexFeature& cf,CollisionList* cList, F32 tol)
{ {
Collision &col = (*cList)[cList->getCount() - 1]; Collision &col = (*cList)[cList->getCount() - 1];
col.material = cf.material; col.material = cf.material;
col.object = cf.object; col.object = cf.mObject;
} }
vert++; vert++;
} }
@ -167,7 +169,7 @@ void ConvexFeature::testVertex(const Point3F& v,CollisionList* cList,bool flip,
if (flip) if (flip)
info.normal.neg(); info.normal.neg();
info.material = material; info.material = material;
info.object = object; info.object = mObject;
info.distance = distance; info.distance = distance;
} }
} }
@ -213,7 +215,7 @@ void ConvexFeature::testEdge(ConvexFeature* cf,const Point3F& s1, const Point3F&
info.normal = normal; info.normal = normal;
info.distance = distance; info.distance = distance;
info.material = material; info.material = material;
info.object = object; info.object = mObject;
} }
} }
@ -282,6 +284,7 @@ CollisionWorkingList::CollisionWorkingList()
{ {
wLink.mPrev = wLink.mNext = this; wLink.mPrev = wLink.mNext = this;
rLink.mPrev = rLink.mNext = this; rLink.mPrev = rLink.mNext = this;
mConvex = NULL;
} }
void CollisionWorkingList::wLinkAfter(CollisionWorkingList* ptr) void CollisionWorkingList::wLinkAfter(CollisionWorkingList* ptr)
@ -340,6 +343,8 @@ Convex::Convex()
{ {
mNext = mPrev = this; mNext = mPrev = this;
mTag = 0; mTag = 0;
mObject = NULL;
mType = ConvexType::BoxConvexType;
} }
Convex::~Convex() Convex::~Convex()
@ -418,7 +423,7 @@ Point3F Convex::support(const VectorF&) const
void Convex::getFeatures(const MatrixF&,const VectorF&,ConvexFeature* f) void Convex::getFeatures(const MatrixF&,const VectorF&,ConvexFeature* f)
{ {
f->object = NULL; f->mObject = NULL;
} }
const MatrixF& Convex::getTransform() const const MatrixF& Convex::getTransform() const

View file

@ -56,10 +56,10 @@ public:
Vector<Edge> mEdgeList; Vector<Edge> mEdgeList;
Vector<Face> mFaceList; Vector<Face> mFaceList;
BaseMatInstance* material; BaseMatInstance* material;
SceneObject* object; SceneObject* mObject;
ConvexFeature() ConvexFeature()
: mVertexList(64), mEdgeList(128), mFaceList(64), material( 0 ) : mVertexList(64), mEdgeList(128), mFaceList(64), material( 0 ), mObject(NULL)
{ {
VECTOR_SET_ASSOCIATION(mVertexList); VECTOR_SET_ASSOCIATION(mVertexList);
VECTOR_SET_ASSOCIATION(mEdgeList); VECTOR_SET_ASSOCIATION(mEdgeList);

View file

@ -46,6 +46,13 @@ S32 gBadSpots = 0;
DepthSortList::DepthSortList() DepthSortList::DepthSortList()
{ {
mBase = 0;
mBasePoly = NULL;
mBaseNormal = NULL;
mBaseDot = 0.0f;
mBaseYMax = 0.0f;
mMaxTouched = 0;
mBaseExtents = NULL;
VECTOR_SET_ASSOCIATION(mPolyExtentsList); VECTOR_SET_ASSOCIATION(mPolyExtentsList);
VECTOR_SET_ASSOCIATION(mPolyIndexList); VECTOR_SET_ASSOCIATION(mPolyIndexList);
} }

View file

@ -47,6 +47,7 @@ ExtrudedPolyList::ExtrudedPolyList()
mPolyPlaneList.reserve(64); mPolyPlaneList.reserve(64);
mPlaneList.reserve(64); mPlaneList.reserve(64);
mCollisionList = 0; mCollisionList = 0;
dMemset(&mPoly, 0, sizeof(mPoly));
} }
ExtrudedPolyList::~ExtrudedPolyList() ExtrudedPolyList::~ExtrudedPolyList()

View file

@ -56,13 +56,15 @@ class ExtrudedPolyList: public AbstractPolyList
public: public:
struct Vertex { struct Vertex {
Point3F point; Point3F point;
U32 mask; U32 mask = 0;
}; };
struct Poly { struct Poly {
PlaneF plane; PlaneF plane;
SceneObject* object; SceneObject* object;
BaseMatInstance* material; BaseMatInstance* material;
Poly() : object(NULL), material(NULL) {}
~Poly() {}
}; };
struct ExtrudedFace { struct ExtrudedFace {
@ -75,6 +77,8 @@ public:
F32 time; F32 time;
Point3F point; Point3F point;
F32 height; F32 height;
ExtrudedFace(): active(false), maxDistance(0.0f), planeMask(0), faceDot(0.0f), faceShift(0.0f), time(0.0f), height(0.0f) {}
~ExtrudedFace() {}
}; };
typedef Vector<ExtrudedFace> ExtrudedList; typedef Vector<ExtrudedFace> ExtrudedList;
@ -92,7 +96,6 @@ public:
PlaneList mPlaneList; PlaneList mPlaneList;
VectorF mVelocity; VectorF mVelocity;
VectorF mNormalVelocity; VectorF mNormalVelocity;
F32 mFaceShift;
Poly mPoly; Poly mPoly;
// Returned info // Returned info

View file

@ -46,6 +46,19 @@ S32 num_irregularities = 0;
GjkCollisionState::GjkCollisionState() GjkCollisionState::GjkCollisionState()
{ {
mBits = 0;
mAll_bits = 0;
U32 x, y;
for (x = 0; x < 16; x++)
for (y = 0; y < 4; y++)
mDet[x][y] = 0.0f;
for (x = 0; x < 4; x++)
for (y = 0; y < 4; y++)
mDP[x][y] = 0.0f;
mLast = 0;
mLast_bit = 0;
mA = mB = 0; mA = mB = 0;
} }

View file

@ -88,7 +88,9 @@ class OptimizedPolyList : public AbstractPolyList
Poly() Poly()
: plane( -1 ), : plane( -1 ),
material( NULL ), material( NULL ),
vertexStart(0),
vertexCount( 0 ), vertexCount( 0 ),
surfaceKey(0),
object( NULL ), object( NULL ),
type( TriangleFan ) type( TriangleFan )
{ {

View file

@ -37,6 +37,7 @@ PlaneExtractorPolyList::PlaneExtractorPolyList()
{ {
VECTOR_SET_ASSOCIATION(mVertexList); VECTOR_SET_ASSOCIATION(mVertexList);
VECTOR_SET_ASSOCIATION(mPolyPlaneList); VECTOR_SET_ASSOCIATION(mPolyPlaneList);
mPlaneList = NULL;
} }
PlaneExtractorPolyList::~PlaneExtractorPolyList() PlaneExtractorPolyList::~PlaneExtractorPolyList()

View file

@ -76,6 +76,7 @@ public:
Collision() Collision()
{ {
object = NULL; object = NULL;
material = NULL;
distance = 0.0; distance = 0.0;
} }
}; };

View file

@ -142,6 +142,7 @@ StmtNode::StmtNode()
{ {
mNext = NULL; mNext = NULL;
dbgFileName = CodeBlock::smCurrentParser->getCurrentFile(); dbgFileName = CodeBlock::smCurrentParser->getCurrentFile();
dbgLineNumber = 0;
} }
void StmtNode::setPackage(StringTableEntry) void StmtNode::setPackage(StringTableEntry)

View file

@ -56,6 +56,9 @@ CodeBlock::CodeBlock()
name = NULL; name = NULL;
fullPath = NULL; fullPath = NULL;
modPath = NULL; modPath = NULL;
codeSize = 0;
lineBreakPairCount = 0;
nextFile = NULL;
} }
CodeBlock::~CodeBlock() CodeBlock::~CodeBlock()

View file

@ -224,6 +224,9 @@ CodeInterpreter::CodeInterpreter(CodeBlock *cb) :
mSaveCodeBlock(nullptr), mSaveCodeBlock(nullptr),
mCurrentInstruction(0) mCurrentInstruction(0)
{ {
dMemset(&mExec, 0, sizeof(mExec));
dMemset(&mObjectCreationStack, 0, sizeof(mObjectCreationStack));
dMemset(&mNSDocBlockClass, 0, sizeof(mNSDocBlockClass));
} }
CodeInterpreter::~CodeInterpreter() CodeInterpreter::~CodeInterpreter()

View file

@ -317,7 +317,7 @@ protected:
U32 addr; ///< Address to patch U32 addr; ///< Address to patch
U32 value; ///< Value to place at addr U32 value; ///< Value to place at addr
PatchEntry() { ; } PatchEntry(): addr(0), value(0) { ; }
PatchEntry(U32 a, U32 v) : addr(a), value(v) { ; } PatchEntry(U32 a, U32 v) : addr(a), value(v) { ; }
} PatchEntry; } PatchEntry;

View file

@ -475,7 +475,7 @@ Dictionary::Entry::Entry(StringTableEntry in_name)
nextEntry = NULL; nextEntry = NULL;
mUsage = NULL; mUsage = NULL;
mIsConstant = false; mIsConstant = false;
mNext = NULL;
// NOTE: This is data inside a nameless // NOTE: This is data inside a nameless
// union, so we don't need to init the rest. // union, so we don't need to init the rest.
value.init(); value.init();
@ -856,6 +856,7 @@ ExprEvalState::ExprEvalState()
stack.reserve(64); stack.reserve(64);
mShouldReset = false; mShouldReset = false;
mResetLocked = false; mResetLocked = false;
copyVariable = NULL;
} }
ExprEvalState::~ExprEvalState() ExprEvalState::~ExprEvalState()
@ -927,6 +928,15 @@ Namespace::Entry::Entry()
mUsage = NULL; mUsage = NULL;
mHeader = NULL; mHeader = NULL;
mNamespace = NULL; mNamespace = NULL;
cb.mStringCallbackFunc = NULL;
mFunctionLineNumber = 0;
mFunctionName = StringTable->EmptyString();
mFunctionOffset = 0;
mMinArgs = 0;
mMaxArgs = 0;
mNext = NULL;
mPackage = StringTable->EmptyString();
mToolOnly = false;
} }
void Namespace::Entry::clear() void Namespace::Entry::clear()
@ -959,6 +969,7 @@ Namespace::Namespace()
mHashSequence = 0; mHashSequence = 0;
mRefCountToParent = 0; mRefCountToParent = 0;
mClassRep = 0; mClassRep = 0;
lastUsage = NULL;
} }
Namespace::~Namespace() Namespace::~Namespace()

View file

@ -306,6 +306,7 @@ public:
nextEntry = NULL; nextEntry = NULL;
mUsage = NULL; mUsage = NULL;
mIsConstant = false; mIsConstant = false;
mNext = NULL;
value.init(); value.init();
} }

View file

@ -220,7 +220,21 @@ public:
: Parent( sizeof( void* ), conIdPtr, typeName ) : Parent( sizeof( void* ), conIdPtr, typeName )
{ {
VECTOR_SET_ASSOCIATION( mFieldList ); VECTOR_SET_ASSOCIATION( mFieldList );
mCategory = StringTable->EmptyString();
mClassGroupMask = 0;
std::fill_n(mClassId, NetClassGroupsCount, -1);
mClassName = StringTable->EmptyString();
mClassSizeof = 0;
mClassType = 0;
mDescription = StringTable->EmptyString();
#ifdef TORQUE_NET_STATS
dMemset(mDirtyMaskFrequency, 0, sizeof(mDirtyMaskFrequency));
dMemset(mDirtyMaskTotal, 0, sizeof(mDirtyMaskTotal));
#endif
mDynamicGroupExpand = false;
mNamespace = NULL;
mNetEventDir = 0;
nextClass = NULL;
parentClass = NULL; parentClass = NULL;
mIsRenderEnabled = true; mIsRenderEnabled = true;
mIsSelectionEnabled = true; mIsSelectionEnabled = true;
@ -496,6 +510,7 @@ public:
validator( NULL ), validator( NULL ),
setDataFn( NULL ), setDataFn( NULL ),
getDataFn( NULL ), getDataFn( NULL ),
writeDataFn(NULL),
networkMask(0) networkMask(0)
{ {
doNotSubstitute = keepClearSubsOnly = false; doNotSubstitute = keepClearSubsOnly = false;

View file

@ -1190,7 +1190,7 @@ public:
ConsoleValueRef _exec(); ConsoleValueRef _exec();
ConsoleValueRef _execLater(SimConsoleThreadExecEvent *evt); ConsoleValueRef _execLater(SimConsoleThreadExecEvent *evt);
_BaseEngineConsoleCallbackHelper() {;} _BaseEngineConsoleCallbackHelper(): mThis(NULL), mInitialArgc(0), mArgc(0), mCallbackName(StringTable->EmptyString()){;}
}; };

View file

@ -123,6 +123,7 @@ class EngineExport : public StaticEngineObject
: mExportName( "" ), : mExportName( "" ),
mExportKind( EngineExportKindScope ), mExportKind( EngineExportKindScope ),
mExportScope( NULL ), mExportScope( NULL ),
mDocString(""),
mNextExport( NULL ) {} mNextExport( NULL ) {}
}; };
@ -165,7 +166,7 @@ class EngineExportScope : public EngineExport
private: private:
/// Constructor for the global scope. /// Constructor for the global scope.
EngineExportScope() {} EngineExportScope():mExports(NULL){}
}; };

View file

@ -53,7 +53,7 @@ void*& _USERDATA( EngineObject* object )
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
EngineObject::EngineObject() EngineObject::EngineObject()
: mEngineObjectUserData( NULL ) : mEngineObjectPool(NULL), mEngineObjectUserData( NULL )
{ {
#ifdef TORQUE_DEBUG #ifdef TORQUE_DEBUG
// Add to instance list. // Add to instance list.

View file

@ -58,6 +58,7 @@ EngineTypeInfo::EngineTypeInfo( const char* typeName, EngineExportScope* scope,
mEnumTable( NULL ), mEnumTable( NULL ),
mFieldTable( NULL ), mFieldTable( NULL ),
mPropertyTable( NULL ), mPropertyTable( NULL ),
mArgumentTypeTable(NULL),
mSuperType( NULL ), mSuperType( NULL ),
mNext( smFirst ) mNext( smFirst )
{ {

View file

@ -55,6 +55,7 @@ ConsoleDocClass( SimDataBlock,
SimDataBlock::SimDataBlock() SimDataBlock::SimDataBlock()
{ {
modifiedKey = 0;
setModDynamicFields(true); setModDynamicFields(true);
setModStaticFields(true); setModStaticFields(true);
} }

View file

@ -31,6 +31,8 @@ SimNameDictionary::SimNameDictionary()
{ {
#ifndef USE_NEW_SIMDICTIONARY #ifndef USE_NEW_SIMDICTIONARY
hashTable = NULL; hashTable = NULL;
hashTableSize = DefaultTableSize;
hashEntryCount = 0;
#endif #endif
mutex = Mutex::createMutex(); mutex = Mutex::createMutex();
} }

View file

@ -62,7 +62,7 @@ public:
/// of addition to the list. /// of addition to the list.
SimObject *destObject; ///< Object on which this event will be applied. SimObject *destObject; ///< Object on which this event will be applied.
SimEvent() { destObject = NULL; } SimEvent() { nextEvent = NULL; startTime = 0; time = 0; sequenceCount = 0; destObject = NULL; }
virtual ~SimEvent() {} ///< Destructor virtual ~SimEvent() {} ///< Destructor
/// ///
/// A dummy virtual destructor is required /// A dummy virtual destructor is required

View file

@ -47,7 +47,7 @@ class SimFieldDictionary
public: public:
struct Entry struct Entry
{ {
Entry() : type(NULL) {}; Entry() : slotName(StringTable->EmptyString()), value(NULL), next(NULL), type(NULL) {};
StringTableEntry slotName; StringTableEntry slotName;
char *value; char *value;
@ -112,4 +112,4 @@ public:
}; };
#endif // _SIMFIELDDICTIONARY_H_ #endif // _SIMFIELDDICTIONARY_H_

View file

@ -1382,6 +1382,7 @@ SimObject::SimObject(const SimObject& other, bool temp_clone)
nextIdObject = other.nextIdObject; nextIdObject = other.nextIdObject;
mGroup = other.mGroup; mGroup = other.mGroup;
mFlags = other.mFlags; mFlags = other.mFlags;
mProgenitorFile = other.mProgenitorFile;
mCopySource = other.mCopySource; mCopySource = other.mCopySource;
mFieldDictionary = other.mFieldDictionary; mFieldDictionary = other.mFieldDictionary;
//mIdString = other.mIdString; // special treatment (see below) //mIdString = other.mIdString; // special treatment (see below)

View file

@ -30,7 +30,12 @@ StringStack::StringStack()
mBuffer = NULL; mBuffer = NULL;
mArgBufferSize = 0; mArgBufferSize = 0;
mArgBuffer = NULL; mArgBuffer = NULL;
for (U32 i = 0; i < MaxArgs; i++)
mArgV[i] = "";
dMemset(mFrameOffsets, 0, sizeof(mFrameOffsets));
dMemset(mStartOffsets, 0, sizeof(mStartOffsets));
mNumFrames = 0; mNumFrames = 0;
mArgc = 0;
mStart = 0; mStart = 0;
mLen = 0; mLen = 0;
mStartStackSize = 0; mStartStackSize = 0;
@ -232,6 +237,7 @@ mStackPos(0)
mStack[i].init(); mStack[i].init();
mStack[i].type = ConsoleValue::TypeInternalString; mStack[i].type = ConsoleValue::TypeInternalString;
} }
dMemset(mStackFrames, 0, sizeof(mStackFrames));
} }
ConsoleValueStack::~ConsoleValueStack() ConsoleValueStack::~ConsoleValueStack()

View file

@ -88,6 +88,9 @@ TelnetConsole::TelnetConsole()
mAcceptPort = -1; mAcceptPort = -1;
mClientList = NULL; mClientList = NULL;
mRemoteEchoEnabled = false; mRemoteEchoEnabled = false;
dStrncpy(mTelnetPassword, "", PasswordMaxLength);
dStrncpy(mListenPassword, "", PasswordMaxLength);
} }
TelnetConsole::~TelnetConsole() TelnetConsole::~TelnetConsole()

View file

@ -78,6 +78,7 @@ class TelnetConsole
S32 state; ///< State of the client. S32 state; ///< State of the client.
/// @see TelnetConsole::State /// @see TelnetConsole::State
TelnetClient *nextClient; TelnetClient *nextClient;
TelnetClient() { dStrncpy(curLine, "", Con::MaxLineLength); curPos = 0; state = 0; nextClient = NULL; }
}; };
TelnetClient *mClientList; TelnetClient *mClientList;
TelnetConsole(); TelnetConsole();

View file

@ -163,6 +163,9 @@ TelnetDebugger::TelnetDebugger()
mProgramPaused = false; mProgramPaused = false;
mWaitForClient = false; mWaitForClient = false;
dStrncpy(mDebuggerPassword, "", PasswordMaxLength);
dStrncpy(mLineBuffer, "", sizeof(mLineBuffer));
// Add the version number in a global so that // Add the version number in a global so that
// scripts can detect the presence of the // scripts can detect the presence of the
// "enhanced" debugger features. // "enhanced" debugger features.

View file

@ -27,7 +27,8 @@ class TypeValidator
{ {
public: public:
S32 fieldIndex; S32 fieldIndex;
TypeValidator() : fieldIndex(0) {}
~TypeValidator() {}
/// Prints a console error message for the validator. /// Prints a console error message for the validator.
/// ///
/// The message is prefaced with with: /// The message is prefaced with with:

View file

@ -203,7 +203,7 @@ public:
class StockColorItem class StockColorItem
{ {
private: private:
StockColorItem() {} StockColorItem():mColorName("") {}
public: public:
StockColorItem( const char* pName, const U8 red, const U8 green, const U8 blue, const U8 alpha = 255 ) StockColorItem( const char* pName, const U8 red, const U8 green, const U8 blue, const U8 alpha = 255 )
@ -529,6 +529,7 @@ inline void ColorI::set(const Hsb& color)
red = (U32)((((F64)r) / 100) * 255); red = (U32)((((F64)r) / 100) * 255);
green = (U32)((((F64)g) / 100) * 255); green = (U32)((((F64)g) / 100) * 255);
blue = (U32)((((F64)b) / 100) * 255); blue = (U32)((((F64)b) / 100) * 255);
alpha = 255;
} }
// This is a subfunction of HSLtoRGB // This is a subfunction of HSLtoRGB

View file

@ -295,6 +295,7 @@ public:
AssertFatal( count > 0, "Allocating a FrameTemp with less than one instance" ); \ AssertFatal( count > 0, "Allocating a FrameTemp with less than one instance" ); \
mWaterMark = FrameAllocator::getWaterMark(); \ mWaterMark = FrameAllocator::getWaterMark(); \
mMemory = reinterpret_cast<type *>( FrameAllocator::alloc( sizeof( type ) * count ) ); \ mMemory = reinterpret_cast<type *>( FrameAllocator::alloc( sizeof( type ) * count ) ); \
mNumObjectsInMemory = 0; \
} \ } \
template<>\ template<>\
inline FrameTemp<type>::~FrameTemp() \ inline FrameTemp<type>::~FrameTemp() \

View file

@ -48,9 +48,9 @@ class OggTheoraFrame : public RawData
typedef RawData Parent; typedef RawData Parent;
OggTheoraFrame() {} OggTheoraFrame() :mFrameNumber(0), mFrameTime(0), mFrameDuration(0) {}
OggTheoraFrame( S8* data, U32 size, bool ownMemory = false ) OggTheoraFrame( S8* data, U32 size, bool ownMemory = false )
: Parent( data, size, ownMemory ) {} : Parent( data, size, ownMemory ), mFrameNumber(0), mFrameTime(0), mFrameDuration(0) {}
/// Serial number of this frame in the stream. /// Serial number of this frame in the stream.
U32 mFrameNumber; U32 mFrameNumber;

View file

@ -31,6 +31,7 @@
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
FileStream::FileStream() FileStream::FileStream()
{ {
dMemset(mBuffer, 0, sizeof(mBuffer));
// initialize the file stream // initialize the file stream
init(); init();
} }

View file

@ -38,6 +38,8 @@
StringBufferManager() StringBufferManager()
{ {
request8 = 0.0;
request16 = 0.0;
VECTOR_SET_ASSOCIATION( strings ); VECTOR_SET_ASSOCIATION( strings );
} }

View file

@ -335,6 +335,7 @@ class Journal
struct FuncDecl { struct FuncDecl {
FuncDecl* next; FuncDecl* next;
Id id; Id id;
FuncDecl() :next(NULL), id(0){}
virtual ~FuncDecl() {} virtual ~FuncDecl() {}
virtual bool match(VoidPtr,VoidMethod) const = 0; virtual bool match(VoidPtr,VoidMethod) const = 0;
virtual Functor* create() const = 0; virtual Functor* create() const = 0;

View file

@ -29,6 +29,7 @@
#include "platform/types.h" #include "platform/types.h"
#endif #endif
#include <string.h>
template< class T > class Vector; template< class T > class Vector;
@ -244,7 +245,7 @@ public:
_dynamicSize( 0 ), _dynamicSize( 0 ),
_len( 0 ) _len( 0 )
{ {
_fixedBuffer[0] = '\0'; strncpy(_fixedBuffer, "", 2048);
} }
StrFormat(const char *formatStr, va_list args) StrFormat(const char *formatStr, va_list args)
@ -269,7 +270,7 @@ public:
void reset() void reset()
{ {
_len = 0; _len = 0;
_fixedBuffer[0] = '\0'; strncpy(_fixedBuffer, "", 2048);
} }
/// Copy the formatted string into the output buffer which must be at least size() characters. /// Copy the formatted string into the output buffer which must be at least size() characters.

View file

@ -141,7 +141,7 @@ private:
{ {
Link* next; Link* next;
Link* prev; Link* prev;
Link() {} Link(): next(NULL), prev(NULL) {}
Link(Link* p,Link* n): next(n),prev(p) {} Link(Link* p,Link* n): next(n),prev(p) {}
}; };

View file

@ -76,7 +76,7 @@ protected:
void insert(DelegateLink* node, F32 order); void insert(DelegateLink* node, F32 order);
void unlink(); void unlink();
DelegateLink() :next(NULL), prev(NULL), mOrder(0) {}
virtual ~DelegateLink() {} virtual ~DelegateLink() {}
}; };

View file

@ -87,8 +87,11 @@ VolumetricFogRTManager::VolumetricFogRTManager()
setGlobalBounds(); setGlobalBounds();
mTypeMask |= EnvironmentObjectType; mTypeMask |= EnvironmentObjectType;
mNetFlags.set(IsGhost); mNetFlags.set(IsGhost);
mPlatformWindow = NULL;
mIsInitialized = false; mIsInitialized = false;
mNumFogObjects = 0; mNumFogObjects = 0;
mWidth = 0;
mHeight = 0;
} }
VolumetricFogRTManager::~VolumetricFogRTManager() VolumetricFogRTManager::~VolumetricFogRTManager()
@ -291,4 +294,4 @@ DefineEngineFunction(SetFogVolumeQuality, S32, (U32 new_quality), ,
if (VFRTM == NULL) if (VFRTM == NULL)
return -1; return -1;
return VFRTM->setQuality(new_quality); return VFRTM->setQuality(new_quality);
} }

Some files were not shown because too many files have changed in this diff Show more