From f3c787c1dc0e8b271da05a72f54160736b60bee0 Mon Sep 17 00:00:00 2001 From: Branan Purvine-Riley Date: Sat, 29 Oct 2011 20:22:41 -0700 Subject: [PATCH] Fixes for building on max2012 --- .../Tools/MaxComponent/plAudioComponents.cpp | 3 ++- .../Tools/MaxComponent/plClusterComponent.cpp | 9 ++++++++ .../MaxComponent/plParticleComponents.cpp | 23 ++++++++++--------- Sources/Tools/MaxConvert/hsConverterUtils.cpp | 15 ++++++++++++ Sources/Tools/MaxMain/MaxCompat.h | 14 +++++++++++ Sources/Tools/MaxMain/main.cpp | 2 +- Sources/Tools/MaxMain/plMaxNode.cpp | 20 ++++++++-------- Sources/Tools/MaxPlasmaLights/DLLEntry.cpp | 4 +++- .../MaxPlasmaLights/plRealTimeLightBase.h | 12 +++++----- .../MaxPlasmaMtls/Materials/plBumpMtl.cpp | 3 ++- .../MaxPlasmaMtls/Materials/plDecalMtl.cpp | 11 +++++---- .../MaxPlasmaMtls/Materials/plParticleMtl.cpp | 11 +++++---- .../MaxPlasmaMtls/Materials/plPassMtl.cpp | 11 +++++---- 13 files changed, 92 insertions(+), 46 deletions(-) diff --git a/Sources/Tools/MaxComponent/plAudioComponents.cpp b/Sources/Tools/MaxComponent/plAudioComponents.cpp index edd7ff36..9959738d 100644 --- a/Sources/Tools/MaxComponent/plAudioComponents.cpp +++ b/Sources/Tools/MaxComponent/plAudioComponents.cpp @@ -71,6 +71,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "MaxConvert/hsControlConverter.h" #include "plInterp/plController.h" #include "MaxMain/plMaxNode.h" +#include "MaxMain/MaxCompat.h" #include "pnKeyedObject/plKey.h" //Physics Related @@ -924,7 +925,7 @@ hsBool plBaseSoundEmitterComponent::AddToAnim( plAGAnim *anim, plMaxNode *node end = anim->GetEnd(); } - ctl = cc.MakeScalarController( fCompPB->GetController( (ParamID)kSoundVolumeSlider ), node, start, end ); + ctl = cc.MakeScalarController( GetParamBlock2Controller(fCompPB, (ParamID)kSoundVolumeSlider ), node, start, end ); if( ctl != nil ) { // Better only do this when the sound component is applied to only one object... diff --git a/Sources/Tools/MaxComponent/plClusterComponent.cpp b/Sources/Tools/MaxComponent/plClusterComponent.cpp index fdaaa968..b329fca9 100644 --- a/Sources/Tools/MaxComponent/plClusterComponent.cpp +++ b/Sources/Tools/MaxComponent/plClusterComponent.cpp @@ -75,6 +75,10 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include +#if MAX_VERSION_MAJOR >= 13 +#include +#endif + ///////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////// // Start with the component bookkeeping song and dance. @@ -564,8 +568,13 @@ void plClusterComponent::Select() nodeTab.Append(1, &clust); } } +#if MAX_VERSION_MAJOR <= 12 GetCOREInterface()->RemoveNamedSelSet(TSTR(GetINode()->GetName())); GetCOREInterface()->AddNewNamedSelSet(nodeTab, TSTR(GetINode()->GetName())); +#else + INamedSelectionSetManager::GetInstance()->RemoveNamedSelSet(TSTR(GetINode()->GetName())); + INamedSelectionSetManager::GetInstance()->AddNewNamedSelSet(nodeTab, TSTR(GetINode()->GetName())); +#endif } void plClusterComponent::Clear() diff --git a/Sources/Tools/MaxComponent/plParticleComponents.cpp b/Sources/Tools/MaxComponent/plParticleComponents.cpp index 093d2546..d1e8332f 100644 --- a/Sources/Tools/MaxComponent/plParticleComponents.cpp +++ b/Sources/Tools/MaxComponent/plParticleComponents.cpp @@ -72,6 +72,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "plInterp/hsInterp.h" #include "plInterp/plAnimEaseTypes.h" #include "MaxMain/plMaxNode.h" +#include "MaxMain/MaxCompat.h" #include "pnKeyedObject/plKey.h" #include "plSurface/hsGMaterial.h" #include "plPipeline/plGBufferGroup.h" @@ -222,7 +223,7 @@ hsBool plParticleCoreComponent::Convert(plMaxNode *node, plErrorMsg *pErrMsg) // Need to do this even when immortal, so that maxTotalParticles is computed correctly. partLifeMin = fUserInput.fLifeMin; partLifeMax = fUserInput.fLifeMax; - plLeafController *ppsCtl = cc.MakeScalarController(fCompPB->GetController(ParamID(kPPS)), node); + plLeafController *ppsCtl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kPPS)), node); if (ppsCtl != nil && ppsCtl->GetLength() > 0) { // Simulate just the birth across the curve and record the max @@ -529,7 +530,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) if (fCompPB->GetInt(kGenType) != kGenOnePerVertex) { - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kLifeMin)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kLifeMin)), node, start, end); if (ctl != nil) { plParticleLifeMinApplicator *app = TRACKED_NEW plParticleLifeMinApplicator(); @@ -538,7 +539,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) result = true; } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kLifeMax)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kLifeMax)), node, start, end); if (ctl != nil) { plParticleLifeMaxApplicator *app = TRACKED_NEW plParticleLifeMaxApplicator(); @@ -547,7 +548,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) result = true; } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kPPS)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kPPS)), node, start, end); if (ctl != nil) { plParticlePPSApplicator *app = TRACKED_NEW plParticlePPSApplicator(); @@ -556,7 +557,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) result = true; } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kConeAngle)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kConeAngle)), node, start, end); if (ctl != nil) { plParticleAngleApplicator *app = TRACKED_NEW plParticleAngleApplicator(); @@ -565,7 +566,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) result = true; } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kVelocityMin)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kVelocityMin)), node, start, end); if (ctl != nil) { plParticleVelMinApplicator *app = TRACKED_NEW plParticleVelMinApplicator(); @@ -574,7 +575,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) result = true; } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kVelocityMax)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kVelocityMax)), node, start, end); if (ctl != nil) { plParticleVelMaxApplicator *app = TRACKED_NEW plParticleVelMaxApplicator(); @@ -584,7 +585,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) } /* - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kGravity)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kGravity)), node, start, end); if (ctl != nil) { plParticleGravityApplicator *app = TRACKED_NEW plParticleGravityApplicator(); @@ -592,7 +593,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) result = true; } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kDrag)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kDrag)), node, start, end); if (ctl != nil) { plParticleDragApplicator *app = TRACKED_NEW plParticleDragApplicator(); @@ -602,7 +603,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) */ } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kScaleMin)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kScaleMin)), node, start, end); if (ctl != nil) { plParticleScaleMinApplicator *app = TRACKED_NEW plParticleScaleMinApplicator(); @@ -611,7 +612,7 @@ hsBool plParticleCoreComponent::AddToAnim(plAGAnim *anim, plMaxNode *node) result = true; } - ctl = cc.MakeScalarController(fCompPB->GetController(ParamID(kScaleMax)), node, start, end); + ctl = cc.MakeScalarController(GetParamBlock2Controller(fCompPB, ParamID(kScaleMax)), node, start, end); if (ctl != nil) { plParticleScaleMaxApplicator *app = TRACKED_NEW plParticleScaleMaxApplicator(); diff --git a/Sources/Tools/MaxConvert/hsConverterUtils.cpp b/Sources/Tools/MaxConvert/hsConverterUtils.cpp index 79936936..1c03866a 100644 --- a/Sources/Tools/MaxConvert/hsConverterUtils.cpp +++ b/Sources/Tools/MaxConvert/hsConverterUtils.cpp @@ -64,6 +64,12 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "pnKeyedObject/plKey.h" #include "pnKeyedObject/hsKeyedObject.h" +#include "MaxMain/MaxCompat.h" + +#if MAX_VERSION_MAJOR >= 13 +#include +#endif + const char hsConverterUtils::fTagSeps[] = " ,\t\n=:;"; extern UserPropMgr gUserPropMgr; @@ -416,11 +422,20 @@ Int32 hsConverterUtils::FindNamedSelSetFromName(const char *name) { hsGuardBegin("hsConverterUtils::FindNamedSelSetFromName"); + #if MAX_VERSION_MAJOR <= 12 for (Int32 i=0; iGetNumNamedSelSets(); i++) { if (!_stricmp(name, fInterface->GetNamedSelSetName(i))) return (i); } + #else + INamedSelectionSetManager* selSetMgr = INamedSelectionSetManager::GetInstance(); + for (Int32 i=0; iGetNumNamedSelSets(); i++) + { + if (!_stricmp(name, selSetMgr->GetNamedSelSetName(i))) + return (i); + } + #endif return (-1); hsGuardEnd; diff --git a/Sources/Tools/MaxMain/MaxCompat.h b/Sources/Tools/MaxMain/MaxCompat.h index 2500e73e..36702273 100644 --- a/Sources/Tools/MaxMain/MaxCompat.h +++ b/Sources/Tools/MaxMain/MaxCompat.h @@ -70,4 +70,18 @@ typedef TCHAR MCHAR; maxObject->DoEnumDependents(proc); #endif //MAX_VERSION_MAJOR +#if MAX_VERSION_MAJOR <= 13 +#define GetParamBlock2Controller(pb, id) pb->GetController(id) +#define SetParamBlock2Controller(pb, id, tab, ctl) pb->SetController(id, tab, ctl) +#else +#define GetParamBlock2Controller(pb, id) pb->GetControllerByID(id) +#define SetParamBlock2Controller(pb, id, tab, ctl) pb->SetControllerByID(id, tab, ctl) +#endif // MAX_VERSION_MAJOR + +#if MAX_VERSION_MAJOR <= 11 // max 2009. Just a guess, really. 2010 doesn't need this function. +#define INIT_CUSTOM_CONTROLLS(instance) InitCustomControls(instance) +#else +#define INIT_CUSTOM_CONTROLS(instance) +#endif + #endif // _PLASMA_MAXCOMPAT_H \ No newline at end of file diff --git a/Sources/Tools/MaxMain/main.cpp b/Sources/Tools/MaxMain/main.cpp index aa31bcf9..45afc05b 100644 --- a/Sources/Tools/MaxMain/main.cpp +++ b/Sources/Tools/MaxMain/main.cpp @@ -154,7 +154,7 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL,ULONG fdwReason,LPVOID lpvReserved) controlsInit = TRUE; // jaguar controls - InitCustomControls(hInstance); + INIT_CUSTOM_CONTROLS(hInstance); // initialize Chicago controls InitCommonControls(); diff --git a/Sources/Tools/MaxMain/plMaxNode.cpp b/Sources/Tools/MaxMain/plMaxNode.cpp index 3ff99ef0..e51b6426 100644 --- a/Sources/Tools/MaxMain/plMaxNode.cpp +++ b/Sources/Tools/MaxMain/plMaxNode.cpp @@ -2945,19 +2945,19 @@ bool plMaxNode::IsAnimatedLight() hsControlConverter& cc = hsControlConverter::Instance(); // Is the color animated? - Control *colorCtl = pb->GetController( ParamID( plRTLightBase::kLightColor ) ); + Control *colorCtl = GetParamBlock2Controller(pb, ParamID( plRTLightBase::kLightColor ) ); if (colorCtl && cc.HasKeyTimes(colorCtl)) return true; // Is the specularity animated? - Control *specCtl = pb->GetController( ParamID( plRTLightBase::kSpecularColorSwatch ) ); + Control *specCtl = GetParamBlock2Controller(pb, ParamID( plRTLightBase::kSpecularColorSwatch ) ); if (specCtl && cc.HasKeyTimes(specCtl)) return true; // Is the attenuation animated? (Spot and Omni lights only) if (cid == RTSPOT_LIGHT_CLASSID || cid == RTOMNI_LIGHT_CLASSID) { - Control *falloffCtl = pb->GetController( ParamID( plRTLightBase::kAttenMaxFalloffEdit ) ); + Control *falloffCtl = GetParamBlock2Controller(pb, ParamID( plRTLightBase::kAttenMaxFalloffEdit ) ); if (falloffCtl && cc.HasKeyTimes(falloffCtl)) return true; } @@ -2965,11 +2965,11 @@ bool plMaxNode::IsAnimatedLight() // Is the cone animated? (Spot only) if (cid == RTSPOT_LIGHT_CLASSID) { - Control *innerCtl = pb->GetController( ParamID( plRTLightBase::kHotSpot ) ); + Control *innerCtl = GetParamBlock2Controller(pb, ParamID( plRTLightBase::kHotSpot ) ); if (innerCtl && cc.HasKeyTimes(innerCtl)) return true; - Control *outerCtl = pb->GetController( ParamID( plRTLightBase::kFallOff ) ); + Control *outerCtl = GetParamBlock2Controller(pb, ParamID( plRTLightBase::kFallOff ) ); if (outerCtl && cc.HasKeyTimes(outerCtl)) return true; } @@ -2982,7 +2982,7 @@ void plMaxNode::GetRTLightAttenAnim(IParamBlock2* ProperPB, plAGAnim *anim) { if( ProperPB->GetInt(plRTLightBase::kUseAttenuationBool, TimeValue(0)) ) { - Control* falloffCtl = ProperPB->GetController(ParamID(plRTLightBase::kAttenMaxFalloffEdit)); + Control* falloffCtl = GetParamBlock2Controller(ProperPB, ParamID(plRTLightBase::kAttenMaxFalloffEdit)); if( falloffCtl ) { plLeafController* subCtl; @@ -3118,8 +3118,8 @@ void plMaxNode::IAdjustRTColorByIntensity(plController* ctl, IParamBlock2* Prope void plMaxNode::GetRTLightColAnim(IParamBlock2* ProperPB, plAGAnim *anim) { Control* ambientCtl = nil; // Ambient not currently supported - Control* colorCtl = ProperPB->GetController(ParamID(plRTLightBase::kLightColor)); - Control* specCtl = ProperPB->GetController(ParamID(plRTLightBase::kSpecularColorSwatch)); + Control* colorCtl = GetParamBlock2Controller(ProperPB, ParamID(plRTLightBase::kLightColor)); + Control* specCtl = GetParamBlock2Controller(ProperPB, ParamID(plRTLightBase::kSpecularColorSwatch)); plPointControllerChannel *chan; if( ambientCtl ) @@ -3184,8 +3184,8 @@ void plMaxNode::GetRTLightColAnim(IParamBlock2* ProperPB, plAGAnim *anim) void plMaxNode::GetRTConeAnim(IParamBlock2* ProperPB, plAGAnim *anim) { - Control* innerCtl = ProperPB->GetController(ParamID(plRTLightBase::kHotSpot)); - Control* outerCtl = ProperPB->GetController(ParamID(plRTLightBase::kFallOff)); + Control* innerCtl = GetParamBlock2Controller(ProperPB, ParamID(plRTLightBase::kHotSpot)); + Control* outerCtl = GetParamBlock2Controller(ProperPB, ParamID(plRTLightBase::kFallOff)); plScalarControllerChannel *chan; if( innerCtl ) diff --git a/Sources/Tools/MaxPlasmaLights/DLLEntry.cpp b/Sources/Tools/MaxPlasmaLights/DLLEntry.cpp index 994dcbee..760585fb 100644 --- a/Sources/Tools/MaxPlasmaLights/DLLEntry.cpp +++ b/Sources/Tools/MaxPlasmaLights/DLLEntry.cpp @@ -48,6 +48,8 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "pnKeyedObject/pnKeyedObjectCreatable.h" #include "pnNetCommon/pnNetCommonCreatable.h" +#include "MaxMain/MaxCompat.h" + #include "plSurface/plLayerInterface.h" REGISTER_NONCREATABLE( plLayerInterface ); @@ -69,7 +71,7 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL,ULONG fdwReason,LPVOID lpvReserved) controlsInit = TRUE; // Note: InitCustomControls is deprecated // New versions of 3dsm do this for us :) - InitCustomControls(hInstance); // Initialize MAX's custom controls + INIT_CUSTOM_CONTROLS(hInstance); // Initialize MAX's custom controls InitCommonControls(); // Initialize Win95 controls } diff --git a/Sources/Tools/MaxPlasmaLights/plRealTimeLightBase.h b/Sources/Tools/MaxPlasmaLights/plRealTimeLightBase.h index 385e64c8..a1aa749a 100644 --- a/Sources/Tools/MaxPlasmaLights/plRealTimeLightBase.h +++ b/Sources/Tools/MaxPlasmaLights/plRealTimeLightBase.h @@ -491,12 +491,12 @@ public: BOOL GetAttenNearDisplay() {return false;} ExclList& GetExclusionList() {return exclList;} void SetExclusionList(ExclList & a) {} - BOOL SetHotSpotControl(Control* a) {fLightPB->SetController(ParamID(kHotSpot),0, a); return true;} - BOOL SetFalloffControl(Control* a) {fLightPB->SetController(ParamID(kFallOff),0, a); return true;} - Control* GetHotSpotControl() {return fLightPB->GetController(ParamID(kHotSpot));} - Control* GetFalloffControl() {return fLightPB->GetController(ParamID(kFallOff));} - BOOL SetColorControl(Control * a) {fLightPB->SetController(ParamID(kLightColor),0, a); return true;} - Control* GetColorControl() {return fLightPB->GetController(ParamID(kLightColor)); } + BOOL SetHotSpotControl(Control* a) {SetParamBlock2Controller(fLightPB, ParamID(kHotSpot),0, a); return true;} + BOOL SetFalloffControl(Control* a) {SetParamBlock2Controller(fLightPB, ParamID(kFallOff),0, a); return true;} + Control* GetHotSpotControl() {return GetParamBlock2Controller(fLightPB, ParamID(kHotSpot));} + Control* GetFalloffControl() {return GetParamBlock2Controller(fLightPB, ParamID(kFallOff));} + BOOL SetColorControl(Control * a) {SetParamBlock2Controller(fLightPB, ParamID(kLightColor),0, a); return true;} + Control* GetColorControl() {return GetParamBlock2Controller(fLightPB, ParamID(kLightColor)); } BOOL GetDecayType() { return fLightPB->GetInt(kAttenTypeRadio, 0) + 1;} //Offset for the radio. void SetDecayType(BOOL onOff) {if (!onOff) return; else {fLightPB->SetValue(kAttenTypeRadio, 0, ((int) onOff - 1)); return;} } diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp index 195ccd1b..2d9415a9 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp @@ -52,6 +52,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "../Layers/plLayerTex.h" #include "../Layers/plStaticEnvLayer.h" #include "MaxMain/plPlasmaRefMsgs.h" +#include "MaxMain/MaxCompat.h" extern HINSTANCE hInstance; @@ -665,7 +666,7 @@ Control *plBumpMtl::GetPreshadeColorController() { return nil; } Control *plBumpMtl::GetAmbColorController() { return nil; } Control *plBumpMtl::GetOpacityController() { return nil; } Control *plBumpMtl::GetSpecularColorController() { return nil; } -Control *plBumpMtl::GetRuntimeColorController() { return fBasicPB->GetController(ParamID(kBumpBasRunColor)); } +Control *plBumpMtl::GetRuntimeColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kBumpBasRunColor)); } // Layer block Texmap *plBumpMtl::GetBaseLayer() { return fBasicPB->GetTexmap(kBumpBasLayer); } diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp index 8f35d50b..f0040c5f 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp @@ -55,6 +55,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "../Layers/plLayerTex.h" #include "../Layers/plStaticEnvLayer.h" #include "MaxMain/plPlasmaRefMsgs.h" +#include "MaxMain/MaxCompat.h" extern HINSTANCE hInstance; @@ -782,13 +783,13 @@ int plDecalMtl::GetEmissive() { return fBasicPB->GetInt(kDecalBasEmissive); int plDecalMtl::GetUseSpec() { return fBasicPB->GetInt(kDecalBasUseSpec); } int plDecalMtl::GetShine() { return fBasicPB->GetInt(kDecalBasShine); } Color plDecalMtl::GetSpecularColor() { return fBasicPB->GetColor(kDecalBasSpecColor); } -Control *plDecalMtl::GetPreshadeColorController() { return fBasicPB->GetController(ParamID(kDecalBasColor)); } -Control *plDecalMtl::GetAmbColorController() { return fBasicPB->GetController(ParamID(kDecalBasColorAmb)); } -Control *plDecalMtl::GetOpacityController() { return fBasicPB->GetController(ParamID(kDecalBasOpacity)); } -Control *plDecalMtl::GetSpecularColorController() { return fBasicPB->GetController(ParamID(kDecalBasSpecColor)); } +Control *plDecalMtl::GetPreshadeColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kDecalBasColor)); } +Control *plDecalMtl::GetAmbColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kDecalBasColorAmb)); } +Control *plDecalMtl::GetOpacityController() { return GetParamBlock2Controller(fBasicPB, ParamID(kDecalBasOpacity)); } +Control *plDecalMtl::GetSpecularColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kDecalBasSpecColor)); } int plDecalMtl::GetDiffuseColorLock() { return fBasicPB->GetInt(kDecalBasDiffuseLock); } Color plDecalMtl::GetRuntimeColor() { return fBasicPB->GetColor(kDecalBasRunColor); } -Control *plDecalMtl::GetRuntimeColorController() { return fBasicPB->GetController(ParamID(kDecalBasRunColor)); } +Control *plDecalMtl::GetRuntimeColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kDecalBasRunColor)); } // Layer block Texmap *plDecalMtl::GetBaseLayer() { return fLayersPB->GetTexmap(kDecalLayBase); } diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp index 68dc0e97..fe0f8e2e 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp @@ -52,6 +52,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "stdmat.h" #include "../Layers/plLayerTex.h" #include "../Layers/plLayerTexBitmapPB.h" +#include "MaxMain/MaxCompat.h" extern HINSTANCE hInstance; @@ -629,8 +630,8 @@ Interval plParticleMtl::DisplacementValidity(TimeValue t) return iv; } -Control *plParticleMtl::GetAmbColorController() { return fBasicPB->GetController(ParamID(kColorAmb)); } -Control *plParticleMtl::GetColorController() { return fBasicPB->GetController(ParamID(kColor)); } -Control *plParticleMtl::GetOpacityController() { return fBasicPB->GetController(ParamID(kOpacity)); } -Control *plParticleMtl::GetWidthController() { return fBasicPB->GetController(ParamID(kWidth)); } -Control *plParticleMtl::GetHeightController() { return fBasicPB->GetController(ParamID(kHeight)); } +Control *plParticleMtl::GetAmbColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kColorAmb)); } +Control *plParticleMtl::GetColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kColor)); } +Control *plParticleMtl::GetOpacityController() { return GetParamBlock2Controller(fBasicPB, ParamID(kOpacity)); } +Control *plParticleMtl::GetWidthController() { return GetParamBlock2Controller(fBasicPB, ParamID(kWidth)); } +Control *plParticleMtl::GetHeightController() { return GetParamBlock2Controller(fBasicPB, ParamID(kHeight)); } diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp index d2a25468..9bdad591 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp @@ -54,6 +54,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "../Layers/plLayerTex.h" #include "../Layers/plStaticEnvLayer.h" +#include "MaxMain/MaxCompat.h" #include "hsBitVector.h" @@ -847,11 +848,11 @@ int plPassMtl::GetShine() { return fBasicPB->GetInt(kPassBasShine); } Color plPassMtl::GetSpecularColor() { return fBasicPB->GetColor(kPassBasSpecColor); } int plPassMtl::GetDiffuseColorLock() { return fBasicPB->GetInt(kPassBasDiffuseLock); } Color plPassMtl::GetRuntimeColor() { return fBasicPB->GetColor(kPassBasRunColor); } -Control *plPassMtl::GetPreshadeColorController() { return fBasicPB->GetController(ParamID(kPassBasColor)); } -Control *plPassMtl::GetAmbColorController() { return fBasicPB->GetController(ParamID(kPassBasColorAmb)); } -Control *plPassMtl::GetOpacityController() { return fBasicPB->GetController(ParamID(kPassBasOpacity)); } -Control *plPassMtl::GetSpecularColorController() { return fBasicPB->GetController(ParamID(kPassBasSpecColor)); } -Control *plPassMtl::GetRuntimeColorController() { return fBasicPB->GetController(ParamID(kPassBasRunColor)); } +Control *plPassMtl::GetPreshadeColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kPassBasColor)); } +Control *plPassMtl::GetAmbColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kPassBasColorAmb)); } +Control *plPassMtl::GetOpacityController() { return GetParamBlock2Controller(fBasicPB, ParamID(kPassBasOpacity)); } +Control *plPassMtl::GetSpecularColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kPassBasSpecColor)); } +Control *plPassMtl::GetRuntimeColorController() { return GetParamBlock2Controller(fBasicPB, ParamID(kPassBasRunColor)); } // Layer block Texmap *plPassMtl::GetBaseLayer() { return fLayersPB->GetTexmap(kPassLayBase); }