⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 modelbuilder.cpp

📁 骨骼动画....把魔兽模型解出的代码..
💻 CPP
📖 第 1 页 / 共 5 页
字号:
}


//+-----------------------------------------------------------------------------
//| Sets the attenuation start to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedLightAttenuationStart(INT LightId)
{
	MODEL_LIGHT* ModelLight;

	if(!Model.Data().LightContainer.ValidIndex(LightId)) return;
	ModelLight = Model.Data().LightContainer[LightId];

	ModelLight->Data().AttenuationStart = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the attenuation end to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedLightAttenuationEnd(INT LightId)
{
	MODEL_LIGHT* ModelLight;

	if(!Model.Data().LightContainer.ValidIndex(LightId)) return;
	ModelLight = Model.Data().LightContainer[LightId];

	ModelLight->Data().AttenuationEnd = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the color to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedLightColor(INT LightId)
{
	MODEL_LIGHT* ModelLight;

	if(!Model.Data().LightContainer.ValidIndex(LightId)) return;
	ModelLight = Model.Data().LightContainer[LightId];

	ModelLight->Data().Color = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the intensity to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedLightIntensity(INT LightId)
{
	MODEL_LIGHT* ModelLight;

	if(!Model.Data().LightContainer.ValidIndex(LightId)) return;
	ModelLight = Model.Data().LightContainer[LightId];

	ModelLight->Data().Intensity = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the ambient color to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedLightAmbientColor(INT LightId)
{
	MODEL_LIGHT* ModelLight;

	if(!Model.Data().LightContainer.ValidIndex(LightId)) return;
	ModelLight = Model.Data().LightContainer[LightId];

	ModelLight->Data().AmbientColor = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the ambient intensity to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedLightAmbientIntensity(INT LightId)
{
	MODEL_LIGHT* ModelLight;

	if(!Model.Data().LightContainer.ValidIndex(LightId)) return;
	ModelLight = Model.Data().LightContainer[LightId];

	ModelLight->Data().AmbientIntensity = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the visibility to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedLightVisibility(INT LightId)
{
	MODEL_LIGHT* ModelLight;

	if(!Model.Data().LightContainer.ValidIndex(LightId)) return;
	ModelLight = Model.Data().LightContainer[LightId];

	ModelLight->Data().Visibility = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the translation to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterTranslation(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().Translation = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the rotation to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterRotation(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().Rotation = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the scaling to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterScaling(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().Scaling = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the emission rate to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterEmissionRate(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().EmissionRate = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the gravity to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterGravity(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().Gravity = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the longitude to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterLongitude(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().Longitude = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the latitude to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterLatitude(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().Latitude = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the visibility to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterVisibility(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().Visibility = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the lifespan to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterParticleLifeSpan(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().ParticleLifeSpan = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the velocity to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitterParticleInitialVelocity(INT ParticleEmitterId)
{
	MODEL_PARTICLE_EMITTER* ModelParticleEmitter;

	if(!Model.Data().ParticleEmitterContainer.ValidIndex(ParticleEmitterId)) return;
	ModelParticleEmitter = Model.Data().ParticleEmitterContainer[ParticleEmitterId];

	ModelParticleEmitter->Data().ParticleInitialVelocity = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the translation to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitter2Translation(INT ParticleEmitter2Id)
{
	MODEL_PARTICLE_EMITTER_2* ModelParticleEmitter2;

	if(!Model.Data().ParticleEmitter2Container.ValidIndex(ParticleEmitter2Id)) return;
	ModelParticleEmitter2 = Model.Data().ParticleEmitter2Container[ParticleEmitter2Id];

	ModelParticleEmitter2->Data().Translation = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the rotation to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitter2Rotation(INT ParticleEmitter2Id)
{
	MODEL_PARTICLE_EMITTER_2* ModelParticleEmitter2;

	if(!Model.Data().ParticleEmitter2Container.ValidIndex(ParticleEmitter2Id)) return;
	ModelParticleEmitter2 = Model.Data().ParticleEmitter2Container[ParticleEmitter2Id];

	ModelParticleEmitter2->Data().Rotation = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the scaling to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitter2Scaling(INT ParticleEmitter2Id)
{
	MODEL_PARTICLE_EMITTER_2* ModelParticleEmitter2;

	if(!Model.Data().ParticleEmitter2Container.ValidIndex(ParticleEmitter2Id)) return;
	ModelParticleEmitter2 = Model.Data().ParticleEmitter2Container[ParticleEmitter2Id];

	ModelParticleEmitter2->Data().Scaling = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the speed to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitter2Speed(INT ParticleEmitter2Id)
{
	MODEL_PARTICLE_EMITTER_2* ModelParticleEmitter2;

	if(!Model.Data().ParticleEmitter2Container.ValidIndex(ParticleEmitter2Id)) return;
	ModelParticleEmitter2 = Model.Data().ParticleEmitter2Container[ParticleEmitter2Id];

	ModelParticleEmitter2->Data().Speed = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the variation to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitter2Variation(INT ParticleEmitter2Id)
{
	MODEL_PARTICLE_EMITTER_2* ModelParticleEmitter2;

	if(!Model.Data().ParticleEmitter2Container.ValidIndex(ParticleEmitter2Id)) return;
	ModelParticleEmitter2 = Model.Data().ParticleEmitter2Container[ParticleEmitter2Id];

	ModelParticleEmitter2->Data().Variation = CurrentInterpolator;
}


//+-----------------------------------------------------------------------------
//| Sets the latitude to the last created interpolator
//+-----------------------------------------------------------------------------
VOID MODEL_BUILDER::SetAnimatedParticleEmitter2Latitude(INT ParticleEmitter2Id)
{
	MODEL_PARTICLE_EMITTER_2* ModelParticleEmitter2;

	if(!Model.Data().ParticleEmitter2Container.ValidIndex(ParticleEmitter2Id)) return;
	ModelParticleEmitter2 = Model.Data().ParticleEmitter2Cont

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -