Skip to content
Snippets Groups Projects
Commit 6d9249bc authored by Tazpn's avatar Tazpn
Browse files

0.2.9

  -----   
o Exporter
  - Add BSX flags for NIF exports when animation is involved for Oblivion.
  - Worked around what appears to be a bug in the Bezier Scale controller.
  - Change time intervals when exporting MW style animation.
  - Fixed bug with missing reference in Footer in MW exported .KF files.
  - Call routine to apply skin offsets to Skin data (required for MW?)

o Importer

  - Invoke Max Script in Max 5 so that we can import Note Tracks
parent 751de4a5
No related branches found
No related tags found
No related merge requests found
MaxPlugins 0.2.8
MaxPlugins 0.2.9
================
......@@ -32,6 +32,18 @@
Change log
----------
0.2.9
-----
o Exporter
- Add BSX flags for NIF exports when animation is involved for Oblivion.
- Worked around what appears to be a bug in the Bezier Scale controller.
- Change time intervals when exporting MW style animation.
- Fixed bug with missing reference in Footer in MW exported .KF files.
- Call routine to apply skin offsets to Skin data (required for MW?)
o Importer
- Invoke Max Script in Max 5 so that we can import Note Tracks
0.2.8
-----
o Exporter
......
......@@ -109,3 +109,29 @@ void npSetProp(INode *node, const TSTR &prop, const Vector3 &value)
}
bool npGetProp(INode *node, const TSTR &prop, TSTR &value, TSTR def)
{
bool ret;
if (node)
{
if (!node->GetUserPropString(prop, value))
{
value = def;
ret = false;
}
else
ret = true;
}
else
{
value = def;
ret = false;
}
return ret;
}
void npSetProp(INode *node, const TSTR &prop, const TSTR& value)
{
if (node)
node->SetUserPropString(prop, value);
}
\ No newline at end of file
......@@ -11,6 +11,7 @@ using Niflib::Vector3;
#define NP_HVK_MASS _T("Mass")
#define NP_HVK_FRICTION _T("Friction")
#define NP_HVK_RESTITUTION _T("Ellasticity")
#define NP_HVK_PROXY_GEOM _T("Proxy_Geometry")
#define NP_HVK_MASS_OLD _T("np_hvk_mass")
#define NP_HVK_FRICTION_OLD _T("np_hvk_frict")
......@@ -19,9 +20,10 @@ using Niflib::Vector3;
/* default values */
#define NP_DEFAULT_HVK_EMPTY 3.402823466e+38F
#define NP_DEFAULT_HVK_MASS 0
#define NP_DEFAULT_HVK_MASS 0.0f
#define NP_DEFAULT_HVK_FRICTION 0.3f
#define NP_DEFAULT_HVK_RESTITUTION 0.3f
#define NP_DEFAULT_PROXY_GEOM _T("")
// Custom Properties
......@@ -82,4 +84,7 @@ void npSetProp(INode *node, const TSTR &prop, float value);
bool npGetProp(INode *node, const TSTR &prop, Vector3 &value, const Vector3 def=Vector3(0,0,0));
void npSetProp(INode *node, const TSTR &prop, const Vector3 &value);
bool npGetProp(INode *node, const TSTR &prop, TSTR &value, TSTR def=TSTR());
void npSetProp(INode *node, const TSTR &prop, const TSTR& value);
#endif // __NIFPLUGINS_H__
......@@ -24,6 +24,9 @@ HISTORY:
# include <cs/BipedApi.h>
# include <cs/OurExp.h>
#endif
#include "maxscrpt\Strings.h"
#include "maxscrpt\Parser.h"
using namespace std;
using namespace Niflib;
......@@ -1007,4 +1010,64 @@ void FixNormals(vector<Triangle>& tris, vector<Vector3>& verts, vector<Vector3>&
std::swap(tri.v3, tri.v2);
}
}
}
\ No newline at end of file
}
static Value* LocalExecuteScript(CharStream* source, bool *res) {
*res = true;
init_thread_locals();
push_alloc_frame();
three_typed_value_locals(Parser* parser, Value* code, Value* result);
CharStream* out = thread_local(current_stdout);
vl.parser = new Parser (out);
try {
source->flush_whitespace();
while (!source->at_eos()) {
vl.code = vl.parser->compile(source);
vl.result = vl.code->eval()->get_heap_ptr();
source->flush_whitespace();
}
source->close();
} catch (...) {
*res = false;
}
if (vl.result == NULL)
vl.result = &ok;
pop_alloc_frame();
return_value(vl.result);
}
// CallMaxscript
// Send the string to maxscript
//
void CallMaxscript(const TCHAR *s)
{
static bool script_initialized = false;
if (!script_initialized) {
init_MAXScript();
script_initialized = TRUE;
}
init_thread_locals();
push_alloc_frame();
two_typed_value_locals(StringStream* ss, Value* result);
vl.ss = new StringStream ( const_cast<TCHAR*>(s) );
bool res = false;
try {
vl.result = LocalExecuteScript(vl.ss,&res);
} catch (...) {
res = false;
}
thread_local(current_result) = vl.result;
thread_local(current_locals_frame) = vl.link;
pop_alloc_frame();
}
......@@ -58,6 +58,9 @@ struct AnimationExport
Control *GetTMController(INode* node);
NiTimeControllerRef exportController(INode *node, Interval range, bool setTM );
bool GetTextKeys(INode *node, vector<StringKey>& textKeys);
Interval GetTimeRange(INode *n);
void GetTimeRange(Control *n, Interval& range);
Exporter &ne;
Interval range;
......@@ -99,17 +102,22 @@ bool GetTextKeys(INode *node, vector<StringKey>& textKeys, Interval range)
if (wildmatch("start*", key->note)) {
stringlist args = TokenizeCommandLine(key->note, true);
if (args.empty()) continue;
range.SetStart( key->time );
for (stringlist::iterator itr = args.begin(); itr != args.end(); ++itr) {
if (strmatch("-name", *itr)) {
if (++itr == args.end()) break;
}
}
} else if ( wildmatch("end*", key->note) ) {
range.SetEnd( key->time );
stop = true;
}
if (range.Empty()) {
range.SetInstant(key->time);
} else {
if (key->time < range.Start())
range.SetStart(key->time);
if (key->time > range.End())
range.SetEnd(key->time);
}
StringKey strkey;
strkey.time = FrameToTime( Interval(range.Start(), key->time).Duration()-1 );
strkey.data = key->note;
......@@ -548,6 +556,84 @@ Control *AnimationExport::GetTMController(INode *n)
return c;
}
void AnimationExport::GetTimeRange(Control *c, Interval& range)
{
if (IKeyControl *ikeys = GetKeyControlInterface(c)){
int n = ikeys->GetNumKeys();
for (int i=0; i<n; ++i){
AnyKey buf; IKey *key = (IKey*)buf;
ikeys->GetKey(i, key);
if (range.Empty()) {
range.SetInstant(key->time);
} else {
if (key->time < range.Start())
range.SetStart(key->time);
if (key->time > range.End())
range.SetEnd(key->time);
}
}
}
}
Interval AnimationExport::GetTimeRange(INode *node)
{
Interval range;
range.SetEmpty();
int nTracks = node->NumNoteTracks();
// Populate Text keys and Sequence information from note tracks
for (int i=0; i<nTracks; ++i) {
if ( NoteTrack *nt = node->GetNoteTrack(i) ) {
if ( nt->ClassID() == Class_ID(NOTETRACK_CLASS_ID,0) ) {
DefNoteTrack *defNT = (DefNoteTrack *)nt;
if ( defNT->NumKeys() > 0 ) {
for (int j=0, m=defNT->keys.Count(); j<m; ++j) {
NoteKey* key = defNT->keys[j];
if (range.Empty()) {
range.SetInstant(key->time);
} else {
if (key->time < range.Start())
range.SetStart(key->time);
if (key->time > range.End())
range.SetEnd(key->time);
}
}
}
}
}
}
if (Control* c = node->GetTMController())
{
GetTimeRange(c, range);
#if VERSION_3DSMAX > ((5000<<16)+(15<<8)+0) // Version 5
if (Control *sc = c->GetWController()) {
GetTimeRange(sc, range);
if (sc != c) GetTimeRange(sc, range);
}
#endif
if (Control *sc = c->GetXController()) {
if (sc != c) GetTimeRange(sc, range);
}
if (Control *sc = c->GetYController()) {
if (sc != c) GetTimeRange(sc, range);
}
if (Control *sc = c->GetZController()) {
if (sc != c) GetTimeRange(sc, range);
}
if (Control *sc = c->GetRotationController()) {
if (sc != c) GetTimeRange(sc, range);
}
if (Control *sc = c->GetPositionController()) {
if (sc != c) GetTimeRange(sc, range);
}
if (Control *sc = c->GetScaleController()) {
if (sc != c) GetTimeRange(sc, range);
}
}
return range;
}
NiTimeControllerRef Exporter::CreateController(INode *node, Interval range)
{
AnimationExport ae(*this);
......@@ -570,6 +656,12 @@ NiTimeControllerRef AnimationExport::exportController(INode *node, Interval rang
{
bool skip = false;
NiTimeControllerRef timeControl;
if (range.Empty())
{
range = GetTimeRange(node);
if (range.Empty())
return timeControl;
}
ne.ProgressUpdate(Exporter::Animation, FormatText("'%s' Animation", node->GetName()));
......@@ -816,6 +908,14 @@ NiTimeControllerRef AnimationExport::exportController(INode *node, Interval rang
vector<FloatKey> keys;
data->SetScaleType(QUADRATIC_KEY);
nkeys += GetKeys<FloatKey, IBezFloatKey>(c, keys, range);
// I think max has a bug in the Bezier Scale control w.r.t. the keycontroller.
float timeOffset = -FrameToTime(range.Start());
for (int i=0, n=keys.size(); i<n; ++i) {
FloatKey k = InterpKey<FloatKey>(c, TimeToFrame(keys[i].time-timeOffset), timeOffset);
keys[i].data = k.data;
}
data->SetScaleKeys(keys);
} else if (c->ClassID() == Class_ID(TCBINTERP_SCALE_CLASS_ID,0)) {
vector<FloatKey> keys;
......
......@@ -78,27 +78,36 @@ Exporter::Result Exporter::doExport(NiNodeRef &root, INode *node)
{
CalcBoundingBox(node, mBoundingBox);
if (mSkeletonOnly && mIsBethesda)
if (mIsBethesda)
{
BSBoundRef bsb = CreateNiObject<BSBound>();
bsb->SetName("BBX");
bsb->SetCenter( TOVECTOR3(mBoundingBox.Center()) );
bsb->SetDimensions( TOVECTOR3(mBoundingBox.Width() / 2.0f) );
root->AddExtraData(DynamicCast<NiExtraData>(bsb));
if (mSkeletonOnly)
{
BSBoundRef bsb = CreateNiObject<BSBound>();
bsb->SetName("BBX");
bsb->SetCenter( TOVECTOR3(mBoundingBox.Center()) );
bsb->SetDimensions( TOVECTOR3(mBoundingBox.Width() / 2.0f) );
root->AddExtraData(DynamicCast<NiExtraData>(bsb));
BSXFlagsRef bsx = CreateNiObject<BSXFlags>();
bsx->SetName("BSX");
bsx->SetFlags( 0x00000007 );
root->AddExtraData(DynamicCast<NiExtraData>(bsx));
}
else if (mExportCollision && mIsBethesda)
{
BSXFlagsRef bsx = CreateNiObject<BSXFlags>();
bsx->SetName("BSX");
bsx->SetFlags( 0x00000002 );
root->AddExtraData(DynamicCast<NiExtraData>(bsx));
BSXFlagsRef bsx = CreateNiObject<BSXFlags>();
bsx->SetName("BSX");
bsx->SetFlags( 0x00000007 );
root->AddExtraData(DynamicCast<NiExtraData>(bsx));
}
else if (mExportType != NIF_WO_ANIM)
{
BSXFlagsRef bsx = CreateNiObject<BSXFlags>();
bsx->SetName("BSX");
bsx->SetFlags( 0x00000003 );
root->AddExtraData(DynamicCast<NiExtraData>(bsx));
}
else if (mExportCollision)
{
BSXFlagsRef bsx = CreateNiObject<BSXFlags>();
bsx->SetName("BSX");
bsx->SetFlags( 0x00000002 );
root->AddExtraData(DynamicCast<NiExtraData>(bsx));
}
}
exportUPB(root, node);
}
......@@ -205,6 +214,7 @@ Exporter::Result Exporter::doExport(NiNodeRef &root, INode *node)
removeUnreferencedBones(mNiRoot);
if (mSortNodesToEnd)
sortNodes(mNiRoot);
ApplyAllSkinOffsets(StaticCast<NiAVObject>(mNiRoot));
root = mNiRoot;
return Ok;
}
......@@ -230,9 +240,6 @@ Exporter::Result Exporter::exportNodes(NiNodeRef &parent, INode *node)
SClass_ID scid = node->SuperClassID();
Class_ID ncid = node->ClassID();
TSTR nodeClass; node->GetClassName(nodeClass);
// For some unusual reason, bones named Helper are converted to Meshes and
// lose their Bone properties except a new node named Bone seem to show up
if (node->IsBoneShowing())
newParent = exportBone(nodeParent, node);
else if (os.obj && os.obj->SuperClassID()==GEOMOBJECT_CLASS_ID)
......
......@@ -241,6 +241,7 @@ public:
NiNodeRef createAccumNode(NiNodeRef parent, INode *node);
int countNodes(INode *node);
bool isSkeletonRoot(INode *node);
void ApplyAllSkinOffsets( NiAVObjectRef & root );
/* Progress Bar stuff */
enum ProgressSection
......
......@@ -131,7 +131,7 @@ NiNodeRef Exporter::makeNode(NiNodeRef &parent, INode *maxNode, bool local)
// Normal Embedded Animation
if (mExportType == NIF_WO_KF)
CreateController(maxNode, mI->GetAnimRange());
CreateController(maxNode, Interval());
parent->AddChild(DynamicCast<NiAVObject>(node));
return node;
......@@ -507,4 +507,21 @@ bool Exporter::isSkeletonRoot(INode *node)
}
return false;
}
\ No newline at end of file
}
void Exporter::ApplyAllSkinOffsets( NiAVObjectRef & root ) {
NiGeometryRef niGeom = DynamicCast<NiGeometry>(root);
if ( niGeom != NULL && niGeom->IsSkin() == true ) {
niGeom->ApplySkinOffset();
}
NiNodeRef niNode = DynamicCast<NiNode>(root);
if ( niNode != NULL ) {
//Call this function on all children
vector<NiAVObjectRef> children = niNode->GetChildren();
for ( unsigned i = 0; i < children.size(); ++i ) {
ApplyAllSkinOffsets( children[i] );
}
}
}
\ No newline at end of file
......@@ -7,6 +7,7 @@
#include <functional>
#include <string>
#include <sstream>
#include <set>
#include "Max.h"
#include "resource.h"
......
......@@ -371,6 +371,7 @@ bool NifImporter::AddNoteTracks(float time, string name, string target, NiTextKe
}
#else // Version 5
extern void CallMaxscript(const TCHAR *s);
TSTR script;
script +=
"fn getActorManager obj = (\n"
......@@ -421,10 +422,8 @@ bool NifImporter::AddNoteTracks(float time, string name, string target, NiTextKe
} else {
script += FormatText("addNoteKey nt (%d/ticksPerFrame) \"%s\"\n", t, (*itr).data.c_str());
}
//NoteKey *key = new NoteKey(TimeToFrame(time + (*itr).time), (*itr).data.c_str(), 0);
//nt->keys.Append(1, &key);
}
CallMaxscript(script);
//ExecuteMAXScriptScript(script, TRUE, NULL);
#endif
}
......
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="NifPlugins"
ProjectGUID="{466F2D3E-2663-4583-A05C-128683677617}"
RootNamespace="NifPlugins"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Release - Max 6|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)\"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
WholeProgramOptimization="0"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
CommandLine=""
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax6\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES"
StringPooling="true"
ExceptionHandling="2"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib niflib.lib"
OutputFile="C:\3dsmax6\plugins\NifPlugins.dlu"
LinkIncremental="1"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax6\maxsdk\lib;..\niflib\lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
SetChecksum="true"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="set MaxRootDir=$(TargetDir)\..&#x0D;&#x0A;if exist &quot;%MaxRootDir%\plugcfg&quot; (&#x0D;&#x0A;if not exist &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot; (&#x0D;&#x0A;copy &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot;&#x0D;&#x0A;)&#x0D;&#x0A;)&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifPlugins_Readme.txt&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(TargetPath)&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;"
/>
</Configuration>
<Configuration
Name="Debug - Max 6|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
Optimization="0"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax6\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES;USE_UNSUPPORTED_CODE"
GeneratePreprocessedFile="0"
MinimalRebuild="true"
ExceptionHandling="2"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib niflibd.lib"
OutputFile="C:\3dsmax6\plugins\NifPlugins.dlu"
LinkIncremental="2"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax6\maxsdk\lib;..\niflib\lib"
IgnoreDefaultLibraryNames="msvcrtd.lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine=""
/>
</Configuration>
<Configuration
Name="Release - Max 7|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)\"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
WholeProgramOptimization="0"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
CommandLine=""
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax7\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES;USE_BIPED"
StringPooling="true"
ExceptionHandling="2"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib niflib.lib"
OutputFile="C:\3dsmax7\plugins\NifPlugins.dlu"
LinkIncremental="1"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax7\maxsdk\lib;..\niflib\lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
SetChecksum="true"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="set MaxRootDir=$(TargetDir)\..&#x0D;&#x0A;if exist &quot;%MaxRootDir%\plugcfg&quot; (&#x0D;&#x0A;if not exist &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot; (&#x0D;&#x0A;copy &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot;&#x0D;&#x0A;)&#x0D;&#x0A;)&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifPlugins_Readme.txt&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(TargetPath)&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;"
/>
</Configuration>
<Configuration
Name="Debug - Max 7|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
Optimization="0"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax7\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES;USE_UNSUPPORTED_CODE;USE_BIPED"
GeneratePreprocessedFile="0"
ExceptionHandling="2"
RuntimeLibrary="1"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib niflibd.lib"
OutputFile="C:\3dsmax7\plugins\NifPlugins.dlu"
LinkIncremental="2"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax7\maxsdk\lib;..\niflib\lib"
IgnoreDefaultLibraryNames="msvcrtd.lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine=""
/>
</Configuration>
<Configuration
Name="Release - Max 8|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)\"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
WholeProgramOptimization="0"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
CommandLine=""
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax8\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES;USE_BIPED"
StringPooling="true"
ExceptionHandling="2"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib niflib.lib"
OutputFile="C:\3dsmax8\plugins\NifPlugins.dlu"
LinkIncremental="1"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax8\maxsdk\lib;..\niflib\lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
SetChecksum="true"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="set MaxRootDir=$(TargetDir)\..&#x0D;&#x0A;if exist &quot;%MaxRootDir%\plugcfg&quot; (&#x0D;&#x0A;if not exist &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot; (&#x0D;&#x0A;copy &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot;&#x0D;&#x0A;)&#x0D;&#x0A;)&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifPlugins_Readme.txt&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(TargetPath)&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;"
/>
</Configuration>
<Configuration
Name="Debug - Max 8|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
Optimization="0"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax8\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES;USE_UNSUPPORTED_CODE;USE_BIPED"
GeneratePreprocessedFile="0"
MinimalRebuild="true"
ExceptionHandling="2"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib niflib_debug.lib"
OutputFile="C:\3dsmax8\plugins\NifPlugins.dlu"
LinkIncremental="2"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax8\maxsdk\lib;..\niflib\lib"
IgnoreDefaultLibraryNames="msvcrtd.lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine=""
/>
</Configuration>
<Configuration
Name="Debug - Max 5|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
Optimization="0"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax5\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES;USE_UNSUPPORTED_CODE"
GeneratePreprocessedFile="0"
MinimalRebuild="true"
ExceptionHandling="2"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
DisableSpecificWarnings="4244;4018"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib"
OutputFile="C:\3dsmax5\plugins\NifPlugins.dlu"
LinkIncremental="2"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax5\maxsdk\lib;..\niflib\lib"
IgnoreDefaultLibraryNames="msvcrtd.lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine=""
/>
</Configuration>
<Configuration
Name="Release - Max 5|Win32"
OutputDirectory="$(SolutionDir)Staging\$(ConfigurationName)\"
IntermediateDirectory="$(SolutionDir)Temp\$(ProjectName)\$(ConfigurationName)"
ConfigurationType="2"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
WholeProgramOptimization="0"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
CommandLine=""
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)NifPlugins.tlb"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/LD /Zm200 /FI&quot;$(ProjectDir)NifPlugins\pch.h&quot;"
InlineFunctionExpansion="2"
AdditionalIncludeDirectories="C:\3dsmax5\maxsdk\include;..\niflib\include;..\niflib;.\NifCommon"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;USE_NIFLIB_TEMPLATE_HELPERS;_USE_MATH_DEFINES"
StringPooling="true"
ExceptionHandling="2"
RuntimeLibrary="0"
EnableFunctionLevelLinking="true"
ForceConformanceInForLoopScope="false"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="$(ProjectDir)NifPlugins\pch.h"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG;NIFPLUGINS"
Culture="1033"
AdditionalIncludeDirectories=".\NifCommon"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386"
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib shlwapi.lib core.lib geom.lib gfx.lib mesh.lib maxutil.lib maxscrpt.lib paramblk2.lib bmm.lib niflib.lib"
OutputFile="C:\3dsmax5\plugins\NifPlugins.dlu"
LinkIncremental="1"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="C:\3dsmax5\maxsdk\lib;..\niflib\lib"
ModuleDefinitionFile=".\NifPlugins\NifPlugins.def"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(IntDir)\$(TargetName).pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
SetChecksum="true"
BaseAddress="0x16860000"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine="set MaxRootDir=$(TargetDir)\..&#x0D;&#x0A;if exist &quot;%MaxRootDir%\plugcfg&quot; (&#x0D;&#x0A;if not exist &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot; (&#x0D;&#x0A;copy &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;%MaxRootDir%\plugcfg\MaxNifTools.ini&quot;&#x0D;&#x0A;)&#x0D;&#x0A;)&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifPlugins_Readme.txt&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(ProjectDir)MaxNifTools.ini&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;xcopy /D /Y /I &quot;$(TargetPath)&quot; &quot;$(OutDir)&quot;&#x0D;&#x0A;"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="NifProps"
>
<Filter
Name="Header Files"
>
<File
RelativePath=".\NifProps\bhkRigidBodyInterface.h"
>
</File>
<File
RelativePath=".\NifProps\NifProps.h"
>
</File>
<File
RelativePath=".\NifProps\NifStrings.h"
>
</File>
<File
RelativePath=".\NifProps\resource.h"
>
</File>
</Filter>
<Filter
Name="Source Files"
>
<File
RelativePath=".\NifProps\bhkCapsuleObj.cpp"
>
</File>
<File
RelativePath=".\NifProps\bhkRigidBodyInterface.cpp"
>
</File>
<File
RelativePath=".\NifProps\bhkSphereObj.cpp"
>
</File>
<File
RelativePath=".\NifProps\NifProps.cpp"
>
</File>
</Filter>
<Filter
Name="Resource Files"
>
<File
RelativePath=".\NifProps\NifProps.rc"
>
</File>
</Filter>
</Filter>
<Filter
Name="NifFurniture"
>
<Filter
Name="Header Files"
>
<File
RelativePath=".\NifFurniture\FurnitureMarkers.h"
>
</File>
<File
RelativePath=".\NifFurniture\NifFurniture.h"
>
</File>
<File
RelativePath=".\NifFurniture\resource.h"
>
</File>
</Filter>
<Filter
Name="Source Files"
>
<File
RelativePath=".\NifFurniture\NifFurniture.cpp"
>
</File>
</Filter>
<Filter
Name="Resource Files"
>
<File
RelativePath=".\NifFurniture\NifFurniture.rc"
>
</File>
</Filter>
</Filter>
<Filter
Name="NifExport"
>
<Filter
Name="Header Files"
>
<File
RelativePath=".\NifExport\Exporter.h"
>
</File>
<File
RelativePath=".\NifExport\NifExport.h"
>
</File>
<File
RelativePath=".\NifExport\pch.h"
>
</File>
<File
RelativePath=".\NifExport\resource.h"
>
</File>
</Filter>
<Filter
Name="Source Files"
>
<File
RelativePath=".\NifExport\Animation.cpp"
>
</File>
<File
RelativePath=".\NifExport\Coll.cpp"
>
</File>
<File
RelativePath=".\NifExport\Config.cpp"
>
</File>
<File
RelativePath=".\NifExport\Exporter.cpp"
>
</File>
<File
RelativePath=".\NifExport\KfExport.cpp"
>
</File>
<File
RelativePath=".\NifExport\Mesh.cpp"
>
</File>
<File
RelativePath=".\NifExport\MtlTex.cpp"
>
</File>
<File
RelativePath=".\NifExport\NifExport.cpp"
>
</File>
<File
RelativePath=".\NifExport\Strips.cpp"
>
</File>
<File
RelativePath=".\NifExport\Util.cpp"
>
</File>
</Filter>
<Filter
Name="Resource Files"
>
<File
RelativePath=".\NifExport\NifExport.rc"
>
</File>
</Filter>
</Filter>
<Filter
Name="NifCommon"
>
<Filter
Name="Header Files"
>
<File
RelativePath=".\NifCommon\AnimKey.h"
>
</File>
<File
RelativePath=".\NifCommon\AppSettings.h"
>
</File>
<File
RelativePath=".\NifCommon\Hyperlinks.h"
>
</File>
<File
RelativePath=".\NifCommon\IniSection.h"
>
</File>
<File
RelativePath=".\NifCommon\MAX_Mem.h"
>
</File>
<File
RelativePath=".\NifCommon\MAX_MemDirect.h"
>
</File>
<File
RelativePath=".\NifCommon\NifGui.h"
>
</File>
<File
RelativePath=".\NifCommon\NifPlugins.h"
>
</File>
<File
RelativePath=".\NifCommon\NifVersion.h"
>
</File>
<File
RelativePath=".\NifCommon\niutils.h"
>
</File>
<File
RelativePath=".\NifCommon\objectParams.h"
>
</File>
<File
RelativePath=".\NifCommon\pch.h"
>
</File>
</Filter>
<Filter
Name="Source Files"
>
<File
RelativePath=".\NifCommon\AnimKey.cpp"
>
</File>
<File
RelativePath=".\NifCommon\AppSettings.cpp"
>
</File>
<File
RelativePath=".\NifCommon\Hyperlinks.cpp"
>
</File>
<File
RelativePath=".\NifCommon\NifGui.cpp"
>
</File>
<File
RelativePath=".\NifCommon\NifPlugins.cpp"
>
</File>
<File
RelativePath=".\NifCommon\niutils.cpp"
>
</File>
</Filter>
<Filter
Name="Resource Files"
>
</Filter>
</Filter>
<Filter
Name="NifPlugins"
>
<File
RelativePath=".\NifPlugins\DllEntry.cpp"
>
<FileConfiguration
Name="Release - Max 6|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 6|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
<FileConfiguration
Name="Release - Max 7|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 7|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
<FileConfiguration
Name="Release - Max 8|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 8|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 5|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
<FileConfiguration
Name="Release - Max 5|Win32"
>
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)\$(InputName)1.obj"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
/>
</FileConfiguration>
</File>
<File
RelativePath=".\NifPlugins\NifPlugins.rc"
>
</File>
<File
RelativePath=".\NifPlugins\pch.cpp"
>
<FileConfiguration
Name="Release - Max 6|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 6|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release - Max 7|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 7|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release - Max 8|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 8|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug - Max 5|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release - Max 5|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
</File>
<File
RelativePath=".\NifPlugins\pch.h"
>
</File>
</Filter>
<Filter
Name="NifImport"
>
<Filter
Name="Header Files"
>
<File
RelativePath=".\NifImport\resource.h"
>
</File>
<File
RelativePath=".\NifImport\stdafx.h"
>
</File>
</Filter>
<Filter
Name="Importer"
>
<File
RelativePath=".\NifImport\BaseImporter.h"
>
</File>
<File
RelativePath=".\NifImport\ImportAnimation.cpp"
>
</File>
<File
RelativePath=".\NifImport\ImportCollision.cpp"
>
</File>
<File
RelativePath=".\NifImport\ImportLights.cpp"
>
</File>
<File
RelativePath=".\NifImport\ImportMeshAndSkin.cpp"
>
</File>
<File
RelativePath=".\NifImport\ImportMtlAndTex.cpp"
>
</File>
<File
RelativePath=".\NifImport\ImportSkeleton.cpp"
>
</File>
<File
RelativePath=".\NifImport\KfDialog.cpp"
>
</File>
<File
RelativePath=".\NifImport\KFImporter.cpp"
>
</File>
<File
RelativePath=".\NifImport\KFImporter.h"
>
</File>
<File
RelativePath=".\NifImport\KFMImporter.cpp"
>
</File>
<File
RelativePath=".\NifImport\KFMImporter.h"
>
</File>
<File
RelativePath=".\NifImport\MaxNifImport.cpp"
>
</File>
<File
RelativePath=".\NifImport\MaxNifImport.h"
>
</File>
<File
RelativePath=".\NifImport\NifDialog.cpp"
>
</File>
<File
RelativePath=".\NifImport\NIFImport.cpp"
>
</File>
<File
RelativePath=".\NifImport\NIFImporter.h"
>
</File>
</Filter>
<Filter
Name="Resource Files"
>
<File
RelativePath=".\NifImport\MaxNifImport.rc"
>
</File>
</Filter>
</Filter>
<File
RelativePath=".\NifPlugins\resource.h"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment