diff --git a/Sources/Tools/MaxComponent/plAnimObjInterface.h b/Sources/Tools/MaxComponent/plAnimObjInterface.h index e75c9b5b..5eca35b3 100644 --- a/Sources/Tools/MaxComponent/plAnimObjInterface.h +++ b/Sources/Tools/MaxComponent/plAnimObjInterface.h @@ -53,6 +53,8 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "hsTemplates.h" #include "plString.h" +class plKey; + class plAnimObjInterface { public: diff --git a/Sources/Tools/MaxPlasmaMtls/CMakeLists.txt b/Sources/Tools/MaxPlasmaMtls/CMakeLists.txt index 4dfa698f..4469ec94 100644 --- a/Sources/Tools/MaxPlasmaMtls/CMakeLists.txt +++ b/Sources/Tools/MaxPlasmaMtls/CMakeLists.txt @@ -8,12 +8,7 @@ include_directories("../../Plasma/PubUtilLib") include_directories("../../Plasma/PubUtilLib/inc") include_directories(${3dsm_INCLUDE_DIR}) -if(Bink_SDK_AVAILABLE) - include_directories(${Bink_INCLUDE_DIR}) -endif() - set(MaxPlasmaMtls_HEADERS - plBinkBitmap.h plBMSampler.h plDetailCurveCtrl.h plMaterialRefMsg.h @@ -88,7 +83,6 @@ set(MaxPlasmaMtls_SOURCES plBinkBitmap.cpp plBMSampler.cpp plDetailCurveCtrl.cpp - plDrawCurve.cpp plMtlImport.cpp Shaders.cpp ) @@ -120,6 +114,7 @@ set(MaxPlasmaMtls_SOURCES_Materials Materials/plPassMtlBase.cpp ) +use_precompiled_header(Pch.h Pch.cpp MaxPlasmaMtls_HEADERS MaxPlasmaMtls_SOURCES) add_library(MaxPlasmaMtls STATIC ${MaxPlasmaMtls_HEADERS} diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.cpp b/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.cpp index 45d1b29b..44403337 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.cpp @@ -40,11 +40,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plAngleAttenLayer.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#pragma hdrstop -#include "iparamb2.h" -#include "iparamm2.h" -#include "stdmat.h" +#include "plAngleAttenLayer.h" #include "../plBMSampler.h" #include "MaxMain/plPlasmaRefMsgs.h" @@ -147,6 +150,11 @@ plAngleAttenLayer::~plAngleAttenLayer() { } +void plAngleAttenLayer::GetClassName(TSTR& s) +{ + s = GetString(IDS_ANGLE_ATTEN_LAYER); +} + //From MtlBase void plAngleAttenLayer::Reset() { @@ -313,13 +321,13 @@ void plAngleAttenLayer::IChanged() void plAngleAttenLayer::ICacheCosines() { - fCosTransp0 = cosf(DegToRad(fParmsPB->GetFloat(kTranspAngle0))); - fCosOpaque0 = cosf(DegToRad(fParmsPB->GetFloat(kOpaqueAngle0))); + fCosTransp0 = cosf(hsDegreesToRadians(fParmsPB->GetFloat(kTranspAngle0))); + fCosOpaque0 = cosf(hsDegreesToRadians(fParmsPB->GetFloat(kOpaqueAngle0))); if( fParmsPB->GetInt(kDoubleFade) ) { - fCosTransp1 = cosf(DegToRad(fParmsPB->GetFloat(kTranspAngle1))); - fCosOpaque1 = cosf(DegToRad(fParmsPB->GetFloat(kOpaqueAngle1))); + fCosTransp1 = cosf(hsDegreesToRadians(fParmsPB->GetFloat(kTranspAngle1))); + fCosOpaque1 = cosf(hsDegreesToRadians(fParmsPB->GetFloat(kOpaqueAngle1))); } else { diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.h b/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.h index ee5ad80a..09520e7b 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.h +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plAngleAttenLayer.h @@ -43,12 +43,15 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef plAngleAttenLayer_inc #define plAngleAttenLayer_inc -#include "Max.h" -#include "../resource.h" #include "plPlasmaMAXLayer.h" +class Box3; +class Class_ID; class ClassDesc2; +class Interval; class IParamBlock2; +class ParamDlg; +class TexHandleMaker; ClassDesc2* GetAngleAttenLayerDesc(); @@ -126,7 +129,7 @@ public: //From Animatable Class_ID ClassID() { return ANGLE_ATTEN_LAYER_CLASS_ID; } SClass_ID SuperClassID() { return TEXMAP_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_ANGLE_ATTEN_LAYER); } + void GetClassName(TSTR& s); RefTargetHandle Clone( RemapDir &remap ); RefResult NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget, diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.cpp b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.cpp index 11527815..7fb4c402 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.cpp @@ -51,11 +51,15 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com /////////////////////////////////////////////////////////////////////////////// #include "HeadSpin.h" -#include "plDynamicEnvLayer.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#include +#pragma hdrstop -#include "iparamb2.h" -#include "iparamm2.h" -#include "stdmat.h" +#include "plDynamicEnvLayer.h" #include "../plBMSampler.h" #include "MaxMain/plPlasmaRefMsgs.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.h b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.h index 61a4b1e5..d1ee6187 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.h +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicEnvLayer.h @@ -53,12 +53,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plDynamicEnvLayer_h #define _plDynamicEnvLayer_h -#include "Max.h" #include "plPlasmaMAXLayer.h" -#include "../resource.h" class ClassDesc2; +class Interval; +class IMtlParams; class IParamBlock2; +class TexHandle; +class UVGen; ClassDesc2* GetDynamicEnvLayerDesc(); diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.cpp b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.cpp index 6202c42b..0a05aea4 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.cpp @@ -40,11 +40,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plDynamicTextLayer.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#pragma hdrstop -#include "iparamb2.h" -#include "iparamm2.h" -#include "stdmat.h" +#include "plDynamicTextLayer.h" #include "../plBMSampler.h" #include "MaxMain/plPlasmaRefMsgs.h" @@ -89,6 +92,11 @@ plDynamicTextLayer::~plDynamicTextLayer() IDiscardTexHandle(); } +void plDynamicTextLayer::GetClassName(TSTR& s) +{ + s = GetString(IDS_DYN_TEXT_LAYER); +} + //From MtlBase void plDynamicTextLayer::Reset() { diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.h b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.h index 7423e762..822df8d9 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.h +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plDynamicTextLayer.h @@ -53,8 +53,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plDynamicTextLayer_h #define _plDynamicTextLayer_h -#include "Max.h" -#include "../resource.h" #include "plPlasmaMAXLayer.h" class ClassDesc2; @@ -150,7 +148,7 @@ public: //From Animatable Class_ID ClassID() { return DYN_TEXT_LAYER_CLASS_ID; } SClass_ID SuperClassID() { return TEXMAP_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_DYN_TEXT_LAYER); } + void GetClassName(TSTR& s); RefTargetHandle Clone( RemapDir &remap ); RefResult NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget, diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.cpp b/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.cpp index 0bfb47b5..a173087c 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.cpp @@ -40,14 +40,16 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plLayerTex.h" +#include "hsWindows.h" +#include "../resource.h" -#include "iparamb2.h" -#include "iparamm2.h" -#include "stdmat.h" +#include +#include +#pragma hdrstop #include "../plBMSampler.h" -#include "../resource.h" + +#include "plLayerTex.h" #include "plLayerTexBitmapPB.h" #include "MaxMain/plPlasmaRefMsgs.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.h b/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.h index 066599e4..ce5a8bf5 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.h +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plLayerTex.h @@ -42,7 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef __PLMAXLAYER__H #define __PLMAXLAYER__H -#include "Max.h" #include "plPlasmaMAXLayer.h" class ClassDesc2; diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.cpp b/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.cpp index 9ce6812d..53eaa478 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.cpp @@ -40,12 +40,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" +#include "hsWindows.h" +#include "../resource.h" -#include "plMAXCameraLayer.h" +#include +#include +#pragma hdrstop -#include "iparamb2.h" -#include "iparamm2.h" -#include "stdmat.h" +#include "plMAXCameraLayer.h" #include "../plBMSampler.h" #include "MaxMain/plPlasmaRefMsgs.h" @@ -183,6 +185,11 @@ plMAXCameraLayer::~plMAXCameraLayer() { } +void plMAXCameraLayer::GetClassName(TSTR& s) +{ + s = GetString(IDS_MAX_CAMERA_LAYER); +} + //From MtlBase void plMAXCameraLayer::Reset() { diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.h b/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.h index 710d2dae..c9b02d8a 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.h +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plMAXCameraLayer.h @@ -42,8 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef plMAXCameraLayer_inc #define plMAXCameraLayer_inc -#include "Max.h" -#include "../resource.h" #include "plPlasmaMAXLayer.h" class ClassDesc2; @@ -114,7 +112,7 @@ public: //From Animatable Class_ID ClassID() { return MAX_CAMERA_LAYER_CLASS_ID; } SClass_ID SuperClassID() { return TEXMAP_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_MAX_CAMERA_LAYER); } + void GetClassName(TSTR& s); RefTargetHandle Clone( RemapDir &remap ); RefResult NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget, diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.cpp b/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.cpp index df5405c7..9a885ef2 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.cpp @@ -54,13 +54,17 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com /////////////////////////////////////////////////////////////////////////////// #include "HeadSpin.h" +#include "hsResMgr.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#include +#pragma hdrstop + #include "plPlasmaMAXLayer.h" -#include "stdmat.h" -#include "istdplug.h" -#include "iparamb2.h" -#include "iparamm2.h" -#include "../resource.h" #ifdef MAXASS_AVAILABLE #include "../../AssetMan/PublicInterface/MaxAssInterface.h" #endif @@ -69,7 +73,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "pnKeyedObject/hsKeyedObject.h" #include "pnMessage/plRefMsg.h" #include "plSurface/plLayerInterface.h" -#include "hsResMgr.h" //// Derived Types List /////////////////////////////////////////////////////// diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.h b/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.h index b2f6a565..b3fd10cd 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.h +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plPlasmaMAXLayer.h @@ -62,10 +62,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plPlasmaMAXLayer_h #define _plPlasmaMAXLayer_h -#include "Max.h" -#include "iparamm2.h" -#include "HeadSpin.h" - //// Derived Type Class IDs /////////////////////////////////////////////////// // If you create a new Plasma layer type, add a define for the class ID here // and also add the ID to the list in plPlasmaMAXLayer.cpp. @@ -79,18 +75,22 @@ const Class_ID MAX_CAMERA_LAYER_CLASS_ID( 0xfaf5ec7, 0x13d90d3f ); //// Class Definition ///////////////////////////////////////////////////////// -class plLayerInterface; -class plMaxNode; +class Bitmap; +class PBBitmap; +class plBitmapData; +class BitmapInfo; +class plBMSamplerData; +class plDynamicTextMap; class plErrorMsg; class plLayer; -class plDynamicTextMap; -class plBitmapData; -class plLocation; class plLayerConverter; class plLayerInterface; -class plBMSamplerData; -class jvUniqueId; class plLayerTargetContainer; +class plLocation; +class plMaxNode; +class Texmap; +class jvUniqueId; + class plPlasmaMAXLayer : public Texmap { friend class plLayerConverter; diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.cpp b/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.cpp index b61ec6a5..ae4bf06b 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.cpp @@ -40,11 +40,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plStaticEnvLayer.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#pragma hdrstop -#include "iparamb2.h" -#include "iparamm2.h" -#include "stdmat.h" +#include "plStaticEnvLayer.h" #include "../plBMSampler.h" #include "MaxMain/plPlasmaRefMsgs.h" @@ -98,6 +101,11 @@ plStaticEnvLayer::~plStaticEnvLayer() IDiscardTexHandle(); } +void plStaticEnvLayer::GetClassName(TSTR& s) +{ + s = GetString(IDS_STATIC_ENVMAP_LAYER); +} + //From MtlBase void plStaticEnvLayer::Reset() { @@ -553,24 +561,24 @@ Matrix3 plStaticEnvLayer::IGetViewTM( int i ) switch( i ) { case kTopFace: - m.RotateX( -PI ); + m.RotateX( -M_PI ); break; case kBottomFace: break; case kLeftFace: - m.RotateX( -.5f * PI ); - m.RotateY( -.5f * PI ); + m.RotateX( -.5f * M_PI ); + m.RotateY( -.5f * M_PI ); break; case kRightFace: - m.RotateX( -.5f * PI ); - m.RotateY( +.5f * PI ); + m.RotateX( -.5f * M_PI ); + m.RotateY( +.5f * M_PI ); break; case kFrontFace: - m.RotateX( -.5f * PI ); - m.RotateY( PI ); + m.RotateX( -.5f * M_PI ); + m.RotateY( M_PI ); break; case kBackFace: - m.RotateX( -.5f * PI ); + m.RotateX( -.5f * M_PI ); break; } return m; @@ -644,7 +652,7 @@ void plStaticEnvLayer::RenderCubicMap( INode *node ) vp.projType = PROJ_PERSPECTIVE; vp.hither = .001f; vp.yon = 1.0e30f; - vp.fov = PI/2.0f; + vp.fov = M_PI/2.0f; if( fBitmapPB->GetInt( kBmpUseMAXAtmosphere ) ) { vp.nearRange = 0; diff --git a/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.h b/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.h index f868f06f..f2c86bcf 100644 --- a/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.h +++ b/Sources/Tools/MaxPlasmaMtls/Layers/plStaticEnvLayer.h @@ -53,9 +53,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plStaticEnvLayer_h #define _plStaticEnvLayer_h -#include "Max.h" #include "plPlasmaMAXLayer.h" -#include "../resource.h" class ClassDesc2; class IParamBlock2; @@ -160,7 +158,7 @@ public: //From Animatable Class_ID ClassID() { return STATIC_ENV_LAYER_CLASS_ID; } SClass_ID SuperClassID() { return TEXMAP_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_STATIC_ENVMAP_LAYER); } + void GetClassName(TSTR& s); RefTargetHandle Clone( RemapDir &remap ); RefResult NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget, diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthConvert.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthConvert.cpp index 2cae1609..7fc2d34e 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthConvert.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthConvert.cpp @@ -46,19 +46,21 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com ////////////////////////////////////////////////////////////////////////////// #include "HeadSpin.h" -#include "plAnimStealthNode.h" -#include "plPassMtlBase.h" #include "../resource.h" #include "MaxMain/plMaxNode.h" +#include +#pragma hdrstop + +#include "plAnimStealthNode.h" +#include "plPassMtlBase.h" + #include "MaxComponent/plMaxAnimUtils.h" #include "MaxConvert/plConvert.h" #include "MaxConvert/hsMaterialConverter.h" #include "plSurface/hsGMaterial.h" #include "plSurface/plLayerAnimation.h" -#include "iparamm2.h" - //// Helpers ///////////////////////////////////////////////////////////////// diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.cpp index 1a1feebf..2035ac41 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.cpp @@ -49,15 +49,20 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com ////////////////////////////////////////////////////////////////////////////// #include "HeadSpin.h" +#include "pnKeyedObject/plKey.h" +#include "hsWindows.h" +#include +#include "../resource.h" + +#include "MaxMain/MaxCompat.h" +#include +#pragma hdrstop + #include "plAnimStealthNode.h" #include "plPassMtlBase.h" -#include "../resource.h" #include "MaxComponent/plMaxAnimUtils.h" #include "MaxComponent/plPickNodeBase.h" -#include "MaxMain/MaxCompat.h" - -#include "iparamm2.h" extern TCHAR *GetString( int id ); extern HINSTANCE hInstance; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.h b/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.h index d6991acb..4d26f193 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plAnimStealthNode.h @@ -51,12 +51,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plAnimStealthNode_h #define _plAnimStealthNode_h -#include "Max.h" -#include "iparamb2.h" -#include "iparamm2.h" - -#include "HeadSpin.h" -#include "pnKeyedObject/plKey.h" #include "MaxComponent/plAnimObjInterface.h" #include "MaxComponent/plMaxAnimUtils.h" @@ -67,11 +61,13 @@ extern HINSTANCE hInstance; #define REFMSG_NOTETRACK_ADDED REFMSG_USER + 1 -class plPassMtlBase; -class NoteTrack; -class plMaxNode; -class plErrorMsg; class plAnimTimeConvert; +class plErrorMsg; +class plKey; +class plMaxNode; +class INode; +class NoteTrack; +class plPassMtlBase; //// Class Def /////////////////////////////////////////////////////////////// diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp index 3b2b7ebb..6843004f 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.cpp @@ -40,19 +40,23 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plBumpMtl.h" +#include "pnKeyedObject/plKey.h" +#include "hsWindows.h" #include "../resource.h" -//extern ClassDesc2* GetMaxLayerDesc(); -#include "../Shaders.h" -#include "plBumpMtlBasicPB.h" +#include "MaxMain/MaxCompat.h" +#include +#include +#include +#pragma hdrstop -#include "iparamm2.h" +#include "../Shaders.h" +#include "plBumpMtl.h" +#include "plBumpMtlBasicPB.h" #include "../Layers/plLayerTex.h" #include "../Layers/plStaticEnvLayer.h" #include "MaxMain/plPlasmaRefMsgs.h" -#include "MaxMain/MaxCompat.h" extern HINSTANCE hInstance; @@ -89,6 +93,11 @@ plBumpMtl::plBumpMtl(BOOL loading) : plPassMtlBase( loading ) IVerifyStealthPresent(ENTIRE_ANIMATION_NAME); } +void plBumpMtl::GetClassName(TSTR& s) +{ + s = GetString(IDS_BUMP_MTL); +} + ParamDlg* plBumpMtl::CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp) { fIMtlParams = imp; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.h b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.h index 308e9050..b9edafef 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtl.h @@ -42,10 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef PL_BUMPMTL_H #define PL_BUMPMTL_H -#include "Max.h" -#include "iparamb2.h" - -#include "../resource.h" #include "plPassMtlBase.h" #define BUMP_MTL_CLASS_ID Class_ID(0x4dbf7b0a, 0x92226de) @@ -77,7 +73,7 @@ public: //From Animatable Class_ID ClassID() { return BUMP_MTL_CLASS_ID; } SClass_ID SuperClassID() { return MATERIAL_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_BUMP_MTL); } + void GetClassName(TSTR& s); ParamDlg *CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp); void Update(TimeValue t, Interval& valid); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlAnimPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlAnimPBDec.h index b7d6054f..0c4951c6 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlAnimPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlAnimPBDec.h @@ -41,8 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plBumpMtl.h" #include "plPassBaseParamIDs.h" -#include "../resource.h" -#include "iparamm2.h" #include "plPassAnimDlgProc.h" #include "plAnimStealthNode.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlBasicPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlBasicPBDec.h index 95630326..e180bdd0 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlBasicPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plBumpMtlBasicPBDec.h @@ -41,8 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plBumpMtl.h" #include "plBumpMtlBasicPB.h" -#include "../resource.h" -#include "iparamm2.h" class BumpBasicDlgProc : public ParamMap2UserDlgProc { diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.cpp index 74e98f87..686af313 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.cpp @@ -40,15 +40,21 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ -#include "plClothingMtl.h" +#include "HeadSpin.h" +#include "hsWindows.h" +#include #include "../resource.h" -#include "../Shaders.h" -#include "iparamm2.h" +#include +#include +#pragma hdrstop + +#include "plClothingMtl.h" + +#include "../Shaders.h" #include "MaxMain/plPlasmaRefMsgs.h" #include "../plBMSampler.h" -#include "stdmat.h" #include "../Layers/plLayerTex.h" #include "../Layers/plLayerTexBitmapPB.h" #include "plAvatar/plClothingLayout.h" @@ -136,6 +142,11 @@ plClothingMtl::plClothingMtl(BOOL loading) : fBasicPB(NULL) fBasicPB->SetValue(ParamID(kThumbnail), 0, new plLayerTex); } +void plClothingMtl::GetClassName(TSTR& s) +{ + s = GetString(IDS_CLOTHING_MTL); +} + void plClothingMtl::Reset() { fIValid.SetEmpty(); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.h b/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.h index 89f14dc0..5d9bf4a4 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtl.h @@ -42,16 +42,13 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef PL_CLOTHINGMTL_H #define PL_CLOTHINGMTL_H -#include "HeadSpin.h" -#include "Max.h" -#include "iparamb2.h" -#include "../resource.h" #include "hsTemplates.h" class Bitmap; class plClothingItem; class plMaxNode; class plClothingElement; +class Texmap; #define CLOTHING_MTL_CLASS_ID Class_ID(0x792c6de4, 0x1f952b65) @@ -151,7 +148,7 @@ public: //From Animatable Class_ID ClassID() { return CLOTHING_MTL_CLASS_ID; } SClass_ID SuperClassID() { return MATERIAL_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_CLOTHING_MTL); } + void GetClassName(TSTR& s); ParamDlg *CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp); void Update(TimeValue t, Interval& valid); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtlPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtlPBDec.h index 10023c0f..b1a8c706 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtlPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plClothingMtlPBDec.h @@ -39,11 +39,10 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com Mead, WA 99021 *==LICENSE==*/ -//#include "plClothingMtl.h" + #ifdef MAXASS_AVAILABLE #include "../../AssetMan/PublicInterface/AssManBaseTypes.h" #endif -#include "max.h" class plClothingEditBox { diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.cpp index ec4c2532..4092d645 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.cpp @@ -40,9 +40,15 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#pragma hdrstop + #include "plCompositeMtl.h" #include "plPassMtl.h" -//#include "plCompositeMtlPB.h" #include "plCompositeMtlDlg.h" class plCompositeClassDesc : public ClassDesc2 @@ -90,6 +96,11 @@ plCompositeMtl::plCompositeMtl(BOOL loading) : fPassesPB(NULL) } } +void plCompositeMtl::GetClassName(TSTR& s) +{ + s = GetString(IDS_COMP_MTL); +} + void plCompositeMtl::Reset() { fIValid.SetEmpty(); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.h b/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.h index aa4f00c8..d7b14cb5 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtl.h @@ -42,11 +42,9 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef __PLCOMPMTL__H #define __PLCOMPMTL__H -#include "Max.h" -#include "../resource.h" -#include "istdplug.h" -#include "iparamb2.h" -#include "iparamm2.h" +class Interval; +class Mtl; +class IParamBlock2; extern TCHAR *GetString(int id); extern HINSTANCE hInstance; @@ -135,7 +133,7 @@ public: //From Animatable Class_ID ClassID() { return COMP_MTL_CLASS_ID; } SClass_ID SuperClassID() { return MATERIAL_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_COMP_MTL); } + void GetClassName(TSTR& s); RefTargetHandle Clone(RemapDir &remap); RefResult NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget, diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtlDlg.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtlDlg.cpp index 78984289..3170bc7b 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtlDlg.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plCompositeMtlDlg.cpp @@ -40,13 +40,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "max.h" -#include "MaxIcon.h" - +#include "hsWindows.h" #include "../resource.h" + +#include +#include +#pragma hdrstop + #include "plCompositeMtl.h" -//#include "plCompositeMtlPB.h" -//#include "plMaxLayer.h" #include "plCompositeMtlDlg.h" struct LayerID diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp index 49488fa7..b4eae76b 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.cpp @@ -40,9 +40,17 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plDecalMtl.h" +#include "hsWindows.h" #include "../resource.h" -//extern ClassDesc2* GetMaxLayerDesc(); + +#include "MaxMain/MaxCompat.h" +#include +#include +#include +#pragma hdrstop + +#include "plDecalMtl.h" + #include "../Shaders.h" #include "MaxComponent/plMaxAnimUtils.h" @@ -50,8 +58,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "plDecalMtlBasicPB.h" #include "plDecalMtlLayersPB.h" -#include "iparamm2.h" - #include "../Layers/plLayerTex.h" #include "../Layers/plStaticEnvLayer.h" #include "MaxMain/plPlasmaRefMsgs.h" @@ -96,6 +102,11 @@ plDecalMtl::plDecalMtl(BOOL loading) : plPassMtlBase( loading ) IVerifyStealthPresent(ENTIRE_ANIMATION_NAME); } +void plDecalMtl::GetClassName(TSTR& s) +{ + s = GetString(IDS_DECAL_MTL); +} + ParamDlg* plDecalMtl::CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp) { fIMtlParams = imp; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.h b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.h index 4f924a78..4267c2f2 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtl.h @@ -42,10 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef PL_DECALMTL_H #define PL_DECALMTL_H -#include "Max.h" -#include "iparamb2.h" - -#include "../resource.h" #include "plPassMtlBase.h" #define DECAL_MTL_CLASS_ID Class_ID(0x691d2257, 0x419d629e) @@ -82,7 +78,7 @@ public: //From Animatable Class_ID ClassID() { return DECAL_MTL_CLASS_ID; } SClass_ID SuperClassID() { return MATERIAL_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_DECAL_MTL); } + void GetClassName(TSTR& s); ParamDlg *CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp); void Update(TimeValue t, Interval& valid); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlAnimPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlAnimPBDec.h index 8b612c2b..945a5f87 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlAnimPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlAnimPBDec.h @@ -41,8 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plDecalMtl.h" #include "plPassBaseParamIDs.h" -#include "../resource.h" -#include "iparamm2.h" #include "plPassAnimDlgProc.h" #include "plAnimStealthNode.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlBasicPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlBasicPBDec.h index ab863892..63fffcf1 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlBasicPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlBasicPBDec.h @@ -41,8 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plDecalMtl.h" #include "plDecalMtlBasicPB.h" -#include "../resource.h" -#include "iparamm2.h" class DecalBasicPBAccessor; extern DecalBasicPBAccessor basicAccessor; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlLayersPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlLayersPBDec.h index d8d28da4..e2b5e2a9 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlLayersPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plDecalMtlLayersPBDec.h @@ -41,9 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plDecalMtl.h" #include "plDecalMtlLayersPB.h" -#include "../resource.h" - -#include "iparamm2.h" #include "../Layers/plLayerTex.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.cpp index 3739c6ca..a0b61471 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.cpp @@ -40,6 +40,13 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#pragma hdrstop + #include "plMultipassMtl.h" #include "plPassMtl.h" #include "plMultipassMtlPB.h" @@ -72,6 +79,11 @@ plMultipassMtl::plMultipassMtl(BOOL loading) : fPassesPB(NULL) SetNumSubMtls(1); } +void plMultipassMtl::GetClassName(TSTR& s) +{ + s = GetString(IDS_MULTI_MTL); +} + void plMultipassMtl::Reset() { fIValid.SetEmpty(); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.h b/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.h index ebc0b70b..0c2d928b 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtl.h @@ -42,12 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef __PLMAXMTL__H #define __PLMAXMTL__H -#include "Max.h" -#include "../resource.h" -#include "istdplug.h" -#include "iparamb2.h" -#include "iparamm2.h" - extern TCHAR *GetString(int id); extern HINSTANCE hInstance; @@ -108,7 +102,7 @@ public: //From Animatable Class_ID ClassID() { return MULTIMTL_CLASS_ID; } SClass_ID SuperClassID() { return MATERIAL_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_MULTI_MTL); } + void GetClassName(TSTR& s); RefTargetHandle Clone(RemapDir &remap); RefResult NotifyRefChanged(Interval changeInt, RefTargetHandle hTarget, diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtlDlg.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtlDlg.cpp index facc3966..a7ad56b0 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtlDlg.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plMultipassMtlDlg.cpp @@ -40,13 +40,16 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "max.h" -#include "MaxIcon.h" - +#include "hsWindows.h" #include "../resource.h" + +#include +#include +#include +#pragma hdrstop + #include "plMultipassMtl.h" #include "plMultipassMtlPB.h" -//#include "plMaxLayer.h" #include "plMultipassMtlDlg.h" struct LayerID diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.cpp index fdd2c142..21b43191 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.cpp @@ -51,13 +51,15 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com ////////////////////////////////////////////////////////////////////////////// #include "HeadSpin.h" -#include "plNoteTrackWatcher.h" -#include "plPassMtlBase.h" - -#include "iparamm2.h" - +#include "hsWindows.h" #include "../resource.h" +#include +#include +#pragma hdrstop + +#include "plNoteTrackWatcher.h" +#include "plPassMtlBase.h" //// Watcher Class Desc ////////////////////////////////////////////////////// diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.h b/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.h index 1aec216b..ba29e969 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plNoteTrackWatcher.h @@ -53,12 +53,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plNoteTrackWatcher_h #define _plNoteTrackWatcher_h -#include "Max.h" -#include "iparamb2.h" -#include "iparamm2.h" - -#include "HeadSpin.h" - extern TCHAR *GetString(int id); extern HINSTANCE hInstance; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp index 0cbe27b9..9f45ec06 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.cpp @@ -40,16 +40,18 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plParticleMtl.h" +#include "hsWindows.h" #include "../resource.h" -//extern ClassDesc2* GetMaxLayerDesc(); -#include "../Shaders.h" -#include "iparamm2.h" +#include +#include +#pragma hdrstop + +#include "plParticleMtl.h" +#include "../Shaders.h" #include "MaxMain/plPlasmaRefMsgs.h" #include "../plBMSampler.h" -#include "stdmat.h" #include "../Layers/plLayerTex.h" #include "../Layers/plLayerTexBitmapPB.h" #include "MaxMain/MaxCompat.h" @@ -110,6 +112,11 @@ plParticleMtl::plParticleMtl(BOOL loading) : fBasicPB(NULL)//, fBM(NULL), fUVGen //fUVGen = GetNewDefaultUVGen(); } +void plParticleMtl::GetClassName(TSTR& s) +{ + s = GetString(IDS_PARTICLE_MTL); +} + void plParticleMtl::Reset() { fIValid.SetEmpty(); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.h b/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.h index 2316034f..ee130462 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plParticleMtl.h @@ -42,12 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef PL_PARTICLEMTL_H #define PL_PARTICLEMTL_H -#include "Max.h" -//#include "istdplug.h" -#include "iparamb2.h" -//#include "iparamm2.h" -#include "../resource.h" - class Bitmap; #define PARTICLE_MTL_CLASS_ID Class_ID(0x26df05ff, 0x60660749) @@ -121,7 +115,7 @@ public: //From Animatable Class_ID ClassID() { return PARTICLE_MTL_CLASS_ID; } SClass_ID SuperClassID() { return MATERIAL_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_PARTICLE_MTL); } + void GetClassName(TSTR& s); ParamDlg *CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp); void Update(TimeValue t, Interval& valid); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.cpp index a0cefab5..353bec80 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.cpp @@ -46,12 +46,17 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com ////////////////////////////////////////////////////////////////////////////// #include "HeadSpin.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#pragma hdrstop + #include "plPassAnimDlgProc.h" #include "plPassBaseParamIDs.h" #include "MaxComponent/plNotetrackAnim.h" -#include "../resource.h" -#include "iparamm2.h" #include "plAnimStealthNode.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.h b/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.h index 241c66ec..50ba0633 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassAnimDlgProc.h @@ -49,10 +49,11 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #define _plPassAnimDlgProc_h #include "plPassMtlBase.h" -#include "iparamm2.h" class plAnimStealthNode; +class Interval; class IParamMap2; +class ReferenceTarget; class plPassAnimDlgProc : public ParamMap2UserDlgProc, public plMtlChangeCallback { diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp index 306b5eb6..dcf4ef24 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.cpp @@ -40,9 +40,16 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "plPassMtl.h" +#include "hsBitVector.h" +#include "hsWindows.h" #include "../resource.h" -//extern ClassDesc2* GetMaxLayerDesc(); + +#include "MaxMain/MaxCompat.h" +#include +#include +#pragma hdrstop + +#include "plPassMtl.h" #include "../Shaders.h" #include "MaxComponent/plMaxAnimUtils.h" @@ -50,13 +57,8 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "plPassMtlBasicPB.h" #include "plPassMtlLayersPB.h" -#include "iparamm2.h" - #include "../Layers/plLayerTex.h" #include "../Layers/plStaticEnvLayer.h" -#include "MaxMain/MaxCompat.h" - -#include "hsBitVector.h" extern HINSTANCE hInstance; @@ -103,6 +105,11 @@ plPassMtl::~plPassMtl() { } +void plPassMtl::GetClassName(TSTR& s) +{ + s = GetString(IDS_PASS_MTL); +} + ParamDlg* plPassMtl::CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp) { fIMtlParams = imp; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.h b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.h index 8e37a0fd..1faf21b7 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtl.h @@ -42,12 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef PL_PASSMTL_H #define PL_PASSMTL_H -#include "Max.h" -//#include "istdplug.h" -#include "iparamb2.h" -//#include "iparamm2.h" - -#include "../resource.h" #include "plPassMtlBase.h" #include "hsTemplates.h" @@ -85,7 +79,7 @@ public: //From Animatable Class_ID ClassID() { return PASS_MTL_CLASS_ID; } SClass_ID SuperClassID() { return MATERIAL_CLASS_ID; } - void GetClassName(TSTR& s) { s = GetString(IDS_PASS_MTL); } + void GetClassName(TSTR& s); ParamDlg *CreateParamDlg(HWND hwMtlEdit, IMtlParams *imp); void Update(TimeValue t, Interval& valid); diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlAnimPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlAnimPBDec.h index 7367eff1..7a8e4f1f 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlAnimPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlAnimPBDec.h @@ -41,8 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plPassMtl.h" #include "plPassBaseParamIDs.h" -#include "../resource.h" -#include "iparamm2.h" #include "plPassAnimDlgProc.h" #include "plAnimStealthNode.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.cpp b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.cpp index eaca018c..fca882e5 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.cpp @@ -47,11 +47,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #include "HeadSpin.h" #include "hsBitVector.h" - -#include "Max.h" -#include "iparamb2.h" -#include "notify.h" -#include "notetrck.h" +#include "hsWindows.h" +#include "../resource.h" + +#include +#include +#include +#include +#pragma hdrstop #include "plPassMtlBase.h" #include "plPassBaseParamIDs.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.h b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.h index a0ec2bb6..a9c08f46 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBase.h @@ -43,8 +43,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #define PL_PASSMTLBASE_H #include "hsTemplates.h" -#include "Max.h" -#include "iparamb2.h" #include "plInterp/plAnimEaseTypes.h" class plNoteTrackWatcher; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBasicPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBasicPBDec.h index dae8f6a3..f83bfa83 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBasicPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlBasicPBDec.h @@ -41,8 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plPassMtl.h" #include "plPassMtlBasicPB.h" -#include "../resource.h" -#include "iparamm2.h" class PassBasicPBAccessor; extern PassBasicPBAccessor basicAccessor; diff --git a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlLayersPBDec.h b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlLayersPBDec.h index e123c9e5..31f05d7f 100644 --- a/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlLayersPBDec.h +++ b/Sources/Tools/MaxPlasmaMtls/Materials/plPassMtlLayersPBDec.h @@ -41,9 +41,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "plPassMtl.h" #include "plPassMtlLayersPB.h" -#include "../resource.h" - -#include "iparamm2.h" #include "../Layers/plLayerTex.h" diff --git a/Sources/Tools/MaxPlasmaMtls/Pch.cpp b/Sources/Tools/MaxPlasmaMtls/Pch.cpp new file mode 100644 index 00000000..683039de --- /dev/null +++ b/Sources/Tools/MaxPlasmaMtls/Pch.cpp @@ -0,0 +1,51 @@ +/*==LICENSE==* + +CyanWorlds.com Engine - MMOG client, server and tools +Copyright (C) 2011 Cyan Worlds, Inc. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . + +Additional permissions under GNU GPL version 3 section 7 + +If you modify this Program, or any covered work, by linking or +combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK, +NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent +JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK +(or a modified version of those libraries), +containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA, +PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG +JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the +licensors of this Program grant you additional +permission to convey the resulting work. Corresponding Source for a +non-source form of such a combination shall include the source code for +the parts of OpenSSL and IJG JPEG Library used as well as that of the covered +work. + +You can contact Cyan Worlds, Inc. by email legal@cyan.com + or by snail mail at: + Cyan Worlds, Inc. + 14617 N Newport Hwy + Mead, WA 99021 + +*==LICENSE==*/ + +#include "Pch.h" + +/** + * \file Pch.cpp + * \brief Precompiled Header object for MaxPlasmaMtls + * + * This file prompts MSVC to generate a PCH file for the MaxPlasmaMtls project. It + * has no function if precompiled headers are disabled in cmake. + */ diff --git a/Sources/Tools/MaxPlasmaMtls/Pch.h b/Sources/Tools/MaxPlasmaMtls/Pch.h new file mode 100644 index 00000000..58990f75 --- /dev/null +++ b/Sources/Tools/MaxPlasmaMtls/Pch.h @@ -0,0 +1,81 @@ +/*==LICENSE==* + +CyanWorlds.com Engine - MMOG client, server and tools +Copyright (C) 2011 Cyan Worlds, Inc. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . + +Additional permissions under GNU GPL version 3 section 7 + +If you modify this Program, or any covered work, by linking or +combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK, +NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent +JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK +(or a modified version of those libraries), +containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA, +PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG +JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the +licensors of this Program grant you additional +permission to convey the resulting work. Corresponding Source for a +non-source form of such a combination shall include the source code for +the parts of OpenSSL and IJG JPEG Library used as well as that of the covered +work. + +You can contact Cyan Worlds, Inc. by email legal@cyan.com + or by snail mail at: + Cyan Worlds, Inc. + 14617 N Newport Hwy + Mead, WA 99021 + +*==LICENSE==*/ + +#ifndef _MaxPlasmaMtls_Pch_inc_ +#define _MaxPlasmaMtls_Pch_inc_ + +/** + * \file Pch.h + * \brief Precompiled Header for MaxPlasmaMtls + */ + +// Core Plasma +#include "HeadSpin.h" +#include "hsBitVector.h" +#include "pnKeyedObject/plKey.h" +#include "hsResMgr.h" + +// Windoze +#include "hsWindows.h" +#include +#include + +// MaxMain +#include "MaxMain/plMaxNode.h" +#include "MaxMain/MaxCompat.h" + +// Misc 3dsm SDK +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// Local +#include "resource.h" + +#endif // _MaxPlasmaMtls_Pch_inc_ \ No newline at end of file diff --git a/Sources/Tools/MaxPlasmaMtls/Shaders.cpp b/Sources/Tools/MaxPlasmaMtls/Shaders.cpp index 8f376a6d..9177dec9 100644 --- a/Sources/Tools/MaxPlasmaMtls/Shaders.cpp +++ b/Sources/Tools/MaxPlasmaMtls/Shaders.cpp @@ -39,9 +39,12 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com Mead, WA 99021 *==LICENSE==*/ + #include "HeadSpin.h" -#include "max.h" -//#include "mtlhdr.h" +#include "hsWindows.h" +#include +#pragma hdrstop + #include "Shaders.h" //=========================================================================== diff --git a/Sources/Tools/MaxPlasmaMtls/Shaders.h b/Sources/Tools/MaxPlasmaMtls/Shaders.h index 20066b9d..4d317e59 100644 --- a/Sources/Tools/MaxPlasmaMtls/Shaders.h +++ b/Sources/Tools/MaxPlasmaMtls/Shaders.h @@ -42,6 +42,10 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef __SHADERS_H #define __SHADERS_H +class AColor; +class Color; +class Point3; +class ShadeContext; class Shader; //=========================================================================== @@ -93,7 +97,7 @@ public: shin_str = shineStr; } float EvalHilite(float x) { - return shin_str*(float)pow((double)cos(x*PI),(double)fs); + return shin_str*(float)pow((double)cos(x*M_PI),(double)fs); } }; @@ -112,7 +116,7 @@ public: shin_str = shineStr; } float EvalHilite(float x) { - return shin_str*(float)pow((double)cos(x*PI),(double)fs); + return shin_str*(float)pow((double)cos(x*M_PI),(double)fs); } }; @@ -144,7 +148,7 @@ public: shin_str = shineStr; } float EvalHilite(float x) { - return shin_str*(float)pow((double)cos(x*PI),(double)fs); + return shin_str*(float)pow((double)cos(x*M_PI),(double)fs); } }; diff --git a/Sources/Tools/MaxPlasmaMtls/plBMSampler.cpp b/Sources/Tools/MaxPlasmaMtls/plBMSampler.cpp index 849c5923..3619b05e 100644 --- a/Sources/Tools/MaxPlasmaMtls/plBMSampler.cpp +++ b/Sources/Tools/MaxPlasmaMtls/plBMSampler.cpp @@ -40,13 +40,14 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com *==LICENSE==*/ #include "HeadSpin.h" -#include "max.h" -#include "texutil.h" -#include "iparamb2.h" - +#include "hsWindows.h" #include -#include "bmmlib.h" -#include "bitmap.h" + +#include +#include +#include +#include +#pragma hdrstop #include "Layers/plPlasmaMAXLayer.h" #include "plBMSampler.h" diff --git a/Sources/Tools/MaxPlasmaMtls/plBMSampler.h b/Sources/Tools/MaxPlasmaMtls/plBMSampler.h index ae2c4ea9..264eba80 100644 --- a/Sources/Tools/MaxPlasmaMtls/plBMSampler.h +++ b/Sources/Tools/MaxPlasmaMtls/plBMSampler.h @@ -42,9 +42,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plBMSampler_h #define _plBMSampler_h -#include "max.h" -#include "imtl.h" - class plPlasmaMAXLayer; class plBMSamplerData diff --git a/Sources/Tools/MaxPlasmaMtls/plBinkBitmap.cpp b/Sources/Tools/MaxPlasmaMtls/plBinkBitmap.cpp new file mode 100644 index 00000000..ae499a18 --- /dev/null +++ b/Sources/Tools/MaxPlasmaMtls/plBinkBitmap.cpp @@ -0,0 +1,68 @@ +/*==LICENSE==* + +CyanWorlds.com Engine - MMOG client, server and tools +Copyright (C) 2011 Cyan Worlds, Inc. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . + +Additional permissions under GNU GPL version 3 section 7 + +If you modify this Program, or any covered work, by linking or +combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK, +NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent +JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK +(or a modified version of those libraries), +containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA, +PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG +JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the +licensors of this Program grant you additional +permission to convey the resulting work. Corresponding Source for a +non-source form of such a combination shall include the source code for +the parts of OpenSSL and IJG JPEG Library used as well as that of the covered +work. + +You can contact Cyan Worlds, Inc. by email legal@cyan.com + or by snail mail at: + Cyan Worlds, Inc. + 14617 N Newport Hwy + Mead, WA 99021 + +*==LICENSE==*/ + +#include "HeadSpin.h" +#include "hsWindows.h" +#include +#pragma hdrstop + +class BinkClassDesc : public ClassDesc2 +{ +public: + int IsPublic() { return 1; } + void* Create(BOOL loading=FALSE) + { + hsAssert(false, "bink layers removed due to license issues"); + return nil; + } + + const TCHAR* ClassName() { return "Bink"; } + SClass_ID SuperClassID() { return BMM_IO_CLASS_ID; } + Class_ID ClassID() { return Class_ID(0x71c75c3c, 0x206f480e); } + const TCHAR* Category() { return "Bitmap I/O"; } +}; + +static BinkClassDesc BinkDesc; +ClassDesc2* GetBinkClassDesc() +{ + return &BinkDesc; +} diff --git a/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.cpp b/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.cpp index 159b8975..6027492f 100644 --- a/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.cpp +++ b/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.cpp @@ -59,8 +59,12 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com /////////////////////////////////////////////////////////////////////////////// #include "HeadSpin.h" -#include "plDetailCurveCtrl.h" +#include "hsWindows.h" + #include "resource.h" +#pragma hdrstop + +#include "plDetailCurveCtrl.h" //// Static Stuff ///////////////////////////////////////////////////////////// diff --git a/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.h b/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.h index f268cd15..e18e6380 100644 --- a/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.h +++ b/Sources/Tools/MaxPlasmaMtls/plDetailCurveCtrl.h @@ -61,10 +61,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plDetailCurveCtrl_h #define _plDetailCurveCtrl_h -#include "Max.h" -#include "resource.h" - - #define GET_DETAIL_CURVE_CTRL( dlg, id ) (GetDlgItem( dlg, id ) ? (plDetailCurveCtrl *)GetWindowLong( GetDlgItem( dlg, id ), GWL_USERDATA ) : NULL ) // Message to parent to let it know a point got dragged. lParam = pointer to control, wParam = 1 if start point, 0 if end point diff --git a/Sources/Tools/MaxPlasmaMtls/plDrawCurve.cpp b/Sources/Tools/MaxPlasmaMtls/plDrawCurve.cpp deleted file mode 100644 index 7adba54c..00000000 --- a/Sources/Tools/MaxPlasmaMtls/plDrawCurve.cpp +++ /dev/null @@ -1,99 +0,0 @@ -/*==LICENSE==* - -CyanWorlds.com Engine - MMOG client, server and tools -Copyright (C) 2011 Cyan Worlds, Inc. - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . - -Additional permissions under GNU GPL version 3 section 7 - -If you modify this Program, or any covered work, by linking or -combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK, -NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent -JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK -(or a modified version of those libraries), -containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA, -PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG -JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the -licensors of this Program grant you additional -permission to convey the resulting work. Corresponding Source for a -non-source form of such a combination shall include the source code for -the parts of OpenSSL and IJG JPEG Library used as well as that of the covered -work. - -You can contact Cyan Worlds, Inc. by email legal@cyan.com - or by snail mail at: - Cyan Worlds, Inc. - 14617 N Newport Hwy - Mead, WA 99021 - -*==LICENSE==*/ -#if 0 - int ybot, ytop, ylast, i, iy; - HPEN linePen = (HPEN)GetStockObject(WHITE_PEN); - HPEN fgPen = CreatePen(PS_SOLID,0,GetSysColor(COLOR_BTNFACE)); - HPEN bgPen = CreatePen(PS_SOLID,0,GetSysColor(COLOR_BTNSHADOW)); - int width = rect.w() - 4; - int height = rect.h() - 4; - int miplevel = 0; - const float depth = 9; - float detailDropoffStart = theHsMaxLayer->GetDetailDropoffStart(curTime) * depth; - float detailDropoffStop = theHsMaxLayer->GetDetailDropoffStop(curTime) * depth; - float detailMax = theHsMaxLayer->GetDetailMax(curTime); - float detailMin = theHsMaxLayer->GetDetailMin(curTime); - int nextmip = 1; - - ytop = rect.top + 2; - ybot = ytop + height; - ylast = -1; - - for (i=0; i < width; i++) { - if (i==nextmip) { - miplevel++; - nextmip *= 2; - } - - int ix = i + rect.left + 2; - - float alpha = (miplevel - detailDropoffStart) * (detailMin - detailMax) / (detailDropoffStop - detailDropoffStart) - + detailMax; - - if (alpha > detailMax) - alpha = detailMax; - - if (alpha < detailMin) - alpha = detailMin; - - iy = (int)(ybot - alpha * height); - - SelectPen(hdc, fgPen); - VertLine(hdc, ix, ybot, iy); - - if (iy-1 > ytop) { - // Fill in above curve - SelectPen(hdc,bgPen); - VertLine(hdc, ix, ytop, iy-1); - } - if (ylast>=0) { - SelectPen(hdc,linePen); - VertLine(hdc, ix-1, iy-1, ylast); - } - - ylast = iy; - } - SelectObject( hdc, linePen ); - DeleteObject(fgPen); - DeleteObject(bgPen); - WhiteRect3D(hdc, rect, 1); -#endif \ No newline at end of file diff --git a/Sources/Tools/MaxPlasmaMtls/plMtlImport.h b/Sources/Tools/MaxPlasmaMtls/plMtlImport.h index 3738c838..653ad4a8 100644 --- a/Sources/Tools/MaxPlasmaMtls/plMtlImport.h +++ b/Sources/Tools/MaxPlasmaMtls/plMtlImport.h @@ -42,8 +42,7 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com #ifndef _plMtlImport_h #define _plMtlImport_h -#include "Max.h" -#include "iparamb2.h" +class ClassDesc2; namespace plPlasmaMtlImport {