Files
wagic/projects/mtg/template.vcproj
wagic.jeck d55fc91112 Jeck - [Requires JGE rebuild] Extensive cache improvements.
* Numerous cache fixes, reduced filesystem access.
 * Cache fails very gracefully. 
 * Cache is now a templated class, with individual caches per data-type.
 * Much easier to extend.
 * Extensively debugged. Try compiling with -DDEBUG_CACHE.
 * Caches limits can be set on a per-item basis.
 * hgeParticleSystemInfo are now cached, mana particles now fall back to defaults.
 * Samples are not cached, but track filesystem misses using the cache backbone. 
 * Avatars are cached. Default baka avatar is now baka.jpg, to prevent collision with player.

A note on the retrieval types: 
  RETRIEVE_MANAGE puts a resource into a seperate, managed resource list.
    Managed resources are guarenteed valid for the lifetime of the program. 
    Retrieving a managed quad promotes the associated texture to managed. Don't do that by mistake.
    Calls to Resources.Refresh() will attempt to reload managed resources in place.

  RETRIVE_LOCK (and by extension, RETRIEVE_VRAM), returns a resource after locking it.
    A resource may have many locks, and remains in cache until they are all released. 
    If the resource is managed, it returns it unmodified.

A note on quads:
Unlike all other RetrieveWhatever() functions, the default behavior for RetrieveQuad is RETRIEVE_LOCK. Worse, Release(JQuad*) is slow, and will /always/ release one lock from the associated texture.   

There's a long and complicated explanation for this, involving support for live relinking of textures to existing quads, but basically what it means is that we only use RetrieveQuad for quads we intend to store and later Release(). If a temporary quad is needed, the preferred method is to use NEW JQuad* and SAFE_DELETE with RetrieveTexture(). RetrieveTempQuad is also provided, but is only guaranteed until the next call to the cache.

Note that RetrieveCard has none of these problems.
2009-09-14 08:28:49 +00:00

930 lines
18 KiB
XML

<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="mtg"
ProjectGUID="{53024371-2293-4D40-8ECF-FCB470B50DA1}"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Release|Win32"
OutputDirectory=".\Release"
IntermediateDirectory=".\Release"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName=".\Release/template.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="../../JGE/include;../../JGE/Dependencies/include"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
PrecompiledHeaderFile=".\Release/template.pch"
AssemblerListingLocation=".\Release/"
ObjectFile=".\Release/"
ProgramDataBaseFileName=".\Release/"
WarningLevel="3"
SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="NDEBUG"
Culture="3081"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib libpng.lib fmodvc.lib zdll.lib jge.lib libjpeg-static-mt.lib freetype.lib"
OutputFile="bin/template.exe"
LinkIncremental="1"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\JGE\Dependencies\lib,..\..\JGE\lib\win"
IgnoreDefaultLibraryNames="LIBCD,LIBCMT"
ProgramDatabaseFile=".\Release/template.pdb"
SubSystem="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
SuppressStartupBanner="true"
OutputFile=".\Release/template.bsc"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Debug|Win32"
OutputDirectory=".\Debug"
IntermediateDirectory=".\Debug"
ConfigurationType="1"
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
UseOfMFC="0"
ATLMinimizesCRunTimeLibraryUsage="false"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName=".\Debug/template.tlb"
HeaderFileName=""
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../JGE/include;../../JGE/Dependencies/include"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
PrecompiledHeaderFile=".\Debug/template.pch"
AssemblerListingLocation=".\Debug/"
ObjectFile=".\Debug/"
ProgramDataBaseFileName=".\Debug/"
WarningLevel="3"
SuppressStartupBanner="true"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
PreprocessorDefinitions="_DEBUG"
Culture="3081"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="odbc32.lib odbccp32.lib libpngd.lib fmodvc.lib jge_debug.lib libjpeg-static-mt-debug.lib freetype.lib"
OutputFile="bin/template.exe"
LinkIncremental="2"
SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\JGE\Dependencies\lib,..\..\JGE\lib\win"
IgnoreDefaultLibraryNames="LIBCD,LIBC,MSVCRT,LIBCMTD"
GenerateDebugInformation="true"
ProgramDatabaseFile=".\Debug/template.pdb"
SubSystem="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
SuppressStartupBanner="true"
OutputFile=".\Debug/template.bsc"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
>
<File
RelativePath=".\src\ActionElement.cpp"
>
</File>
<File
RelativePath=".\src\ActionLayer.cpp"
>
</File>
<File
RelativePath=".\src\ActionStack.cpp"
>
</File>
<File
RelativePath=".\src\AIMomirPlayer.cpp"
>
</File>
<File
RelativePath=".\src\AIPlayer.cpp"
>
</File>
<File
RelativePath=".\src\AIStats.cpp"
>
</File>
<File
RelativePath=".\src\Blocker.cpp"
>
</File>
<File
RelativePath=".\src\CardDescriptor.cpp"
>
</File>
<File
RelativePath=".\src\CardDisplay.cpp"
>
</File>
<File
RelativePath=".\src\CardGui.cpp"
>
</File>
<File
RelativePath=".\src\CardSelector.cpp"
>
</File>
<File
RelativePath=".\src\ConstraintResolver.cpp"
>
</File>
<File
RelativePath=".\src\Counters.cpp"
>
</File>
<File
RelativePath=".\src\Credits.cpp"
>
</File>
<File
RelativePath=".\src\Damage.cpp"
>
</File>
<File
RelativePath=".\src\DamagerDamaged.cpp"
>
</File>
<File
RelativePath=".\src\DeckDataWrapper.cpp"
>
</File>
<File
RelativePath=".\src\DeckStats.cpp"
>
</File>
<File
RelativePath=".\src\DuelLayers.cpp"
>
</File>
<File
RelativePath=".\src\ExtraCost.cpp"
>
</File>
<File
RelativePath="src\GameApp.cpp"
>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
</File>
<File
RelativePath="src\GameLauncher.cpp"
>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories=""
PreprocessorDefinitions=""
/>
</FileConfiguration>
</File>
<File
RelativePath=".\src\GameObserver.cpp"
>
</File>
<File
RelativePath=".\src\GameOptions.cpp"
>
</File>
<File
RelativePath=".\src\GameState.cpp"
>
</File>
<File
RelativePath=".\src\GameStateDeckViewer.cpp"
>
</File>
<File
RelativePath=".\src\GameStateDuel.cpp"
>
</File>
<File
RelativePath=".\src\GameStateMenu.cpp"
>
</File>
<File
RelativePath=".\src\GameStateOptions.cpp"
>
</File>
<File
RelativePath=".\src\GameStateShop.cpp"
>
</File>
<File
RelativePath=".\src\GuiAvatars.cpp"
>
</File>
<File
RelativePath=".\src\GuiBackground.cpp"
>
</File>
<File
RelativePath=".\src\GuiCardsController.cpp"
>
</File>
<File
RelativePath=".\src\GuiCombat.cpp"
>
</File>
<File
RelativePath=".\src\GuiFrame.cpp"
>
</File>
<File
RelativePath=".\src\GuiHand.cpp"
>
</File>
<File
RelativePath=".\src\GuiLayers.cpp"
>
</File>
<File
RelativePath=".\src\GuiMana.cpp"
>
</File>
<File
RelativePath=".\src\GuiPhaseBar.cpp"
>
</File>
<File
RelativePath=".\src\GuiPlay.cpp"
>
</File>
<File
RelativePath=".\src\GuiStatic.cpp"
>
</File>
<File
RelativePath=".\src\Logger.cpp"
>
</File>
<File
RelativePath=".\src\ManaCost.cpp"
>
</File>
<File
RelativePath=".\src\ManaCostHybrid.cpp"
>
</File>
<File
RelativePath=".\src\MenuItem.cpp"
>
</File>
<File
RelativePath=".\src\MTGAbility.cpp"
>
</File>
<File
RelativePath=".\src\MTGCard.cpp"
>
</File>
<File
RelativePath=".\src\MTGCardInstance.cpp"
>
</File>
<File
RelativePath=".\src\MTGDeck.cpp"
>
</File>
<File
RelativePath=".\src\MTGDefinitions.cpp"
>
</File>
<File
RelativePath=".\src\MTGGamePhase.cpp"
>
</File>
<File
RelativePath=".\src\MTGGameZones.cpp"
>
</File>
<File
RelativePath=".\src\MTGRules.cpp"
>
</File>
<File
RelativePath=".\src\OptionItem.cpp"
>
</File>
<File
RelativePath=".\src\PhaseRing.cpp"
>
</File>
<File
RelativePath=".\src\Player.cpp"
>
</File>
<File
RelativePath=".\src\PlayerData.cpp"
>
</File>
<File
RelativePath=".\src\PlayGuiObject.cpp"
>
</File>
<File
RelativePath=".\src\PlayGuiObjectController.cpp"
>
</File>
<File
RelativePath=".\src\Pos.cpp"
>
</File>
<File
RelativePath=".\src\PriceList.cpp"
>
</File>
<File
RelativePath=".\src\ReplacementEffects.cpp"
>
</File>
<File
RelativePath=".\src\ShopItem.cpp"
>
</File>
<File
RelativePath=".\src\SimpleMenu.cpp"
>
</File>
<File
RelativePath=".\src\SimpleMenuItem.cpp"
>
</File>
<File
RelativePath=".\src\SimplePad.cpp"
>
</File>
<File
RelativePath=".\src\Subtypes.cpp"
>
</File>
<File
RelativePath=".\src\TargetChooser.cpp"
>
</File>
<File
RelativePath=".\src\TargetsList.cpp"
>
</File>
<File
RelativePath=".\src\TestSuiteAI.cpp"
>
</File>
<File
RelativePath=".\src\TextScroller.cpp"
>
</File>
<File
RelativePath=".\src\Token.cpp"
>
</File>
<File
RelativePath=".\src\Translate.cpp"
>
</File>
<File
RelativePath=".\src\Trash.cpp"
>
</File>
<File
RelativePath=".\src\utils.cpp"
>
</File>
<File
RelativePath=".\src\WEvent.cpp"
>
</File>
<File
RelativePath=".\src\WCachedResource.cpp"
>
</File>
<File
RelativePath=".\src\WResourceManager.cpp"
>
</File>
</Filter>
<Filter
Name="Misc"
>
<File
RelativePath="Makefile"
>
</File>
<File
RelativePath=".\Makefile.1xx"
>
</File>
<File
RelativePath=".\Makefile.3xx"
>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl"
>
<File
RelativePath=".\include\ActionElement.h"
>
</File>
<File
RelativePath=".\include\ActionLayer.h"
>
</File>
<File
RelativePath=".\include\ActionStack.h"
>
</File>
<File
RelativePath=".\include\AIMomirPlayer.h"
>
</File>
<File
RelativePath=".\include\AIPlayer.h"
>
</File>
<File
RelativePath=".\include\AIStats.h"
>
</File>
<File
RelativePath=".\include\AllAbilities.h"
>
</File>
<File
RelativePath=".\include\Blocker.h"
>
</File>
<File
RelativePath=".\include\CardDescriptor.h"
>
</File>
<File
RelativePath=".\include\CardDisplay.h"
>
</File>
<File
RelativePath=".\include\CardEffect.h"
>
</File>
<File
RelativePath=".\include\CardGui.h"
>
</File>
<File
RelativePath=".\include\CardSelector.h"
>
</File>
<File
RelativePath=".\include\config.h"
>
</File>
<File
RelativePath=".\include\ConstraintResolver.h"
>
</File>
<File
RelativePath=".\include\Counters.h"
>
</File>
<File
RelativePath=".\include\Credits.h"
>
</File>
<File
RelativePath=".\include\Damage.h"
>
</File>
<File
RelativePath=".\include\DamagerDamaged.h"
>
</File>
<File
RelativePath=".\include\DeckDataWrapper.h"
>
</File>
<File
RelativePath=".\include\DeckStats.h"
>
</File>
<File
RelativePath=".\include\DuelLayers.h"
>
</File>
<File
RelativePath=".\include\Effects.h"
>
</File>
<File
RelativePath=".\include\ExtraCost.h"
>
</File>
<File
RelativePath=".\include\GameApp.h"
>
</File>
<File
RelativePath=".\include\GameObserver.h"
>
</File>
<File
RelativePath=".\include\GameOptions.h"
>
</File>
<File
RelativePath=".\include\GameState.h"
>
</File>
<File
RelativePath=".\include\GameStateDeckViewer.h"
>
</File>
<File
RelativePath=".\include\GameStateDuel.h"
>
</File>
<File
RelativePath=".\include\GameStateMenu.h"
>
</File>
<File
RelativePath=".\include\GameStateOptions.h"
>
</File>
<File
RelativePath=".\include\GameStateShop.h"
>
</File>
<File
RelativePath=".\include\GuiAvatars.h"
>
</File>
<File
RelativePath=".\include\GuiBackground.h"
>
</File>
<File
RelativePath=".\include\GuiCardsController.h"
>
</File>
<File
RelativePath=".\include\GuiCombat.h"
>
</File>
<File
RelativePath=".\include\GuiFrame.h"
>
</File>
<File
RelativePath=".\include\GuiHand.h"
>
</File>
<File
RelativePath=".\include\GuiLayers.h"
>
</File>
<File
RelativePath=".\include\GuiMana.h"
>
</File>
<File
RelativePath=".\include\GuiPhaseBar.h"
>
</File>
<File
RelativePath=".\include\GuiPlay.h"
>
</File>
<File
RelativePath=".\include\GuiStatic.h"
>
</File>
<File
RelativePath=".\include\Logger.h"
>
</File>
<File
RelativePath=".\include\Manacost.h"
>
</File>
<File
RelativePath=".\include\ManaCostHybrid.h"
>
</File>
<File
RelativePath=".\include\MenuItem.h"
>
</File>
<File
RelativePath=".\include\MTGAbility.h"
>
</File>
<File
RelativePath=".\include\MTGCard.h"
>
</File>
<File
RelativePath=".\include\MTGCardInstance.h"
>
</File>
<File
RelativePath=".\include\MTGDeck.h"
>
</File>
<File
RelativePath=".\include\MTGDefinitions.h"
>
</File>
<File
RelativePath=".\include\MTGGamePhase.h"
>
</File>
<File
RelativePath=".\include\MTGGameZones.h"
>
</File>
<File
RelativePath=".\include\MTGRules.h"
>
</File>
<File
RelativePath=".\include\OptionItem.h"
>
</File>
<File
RelativePath=".\include\OSD.h"
>
</File>
<File
RelativePath=".\include\PhaseRing.h"
>
</File>
<File
RelativePath=".\include\Player.h"
>
</File>
<File
RelativePath=".\include\PlayerData.h"
>
</File>
<File
RelativePath=".\include\PlayGuiObject.h"
>
</File>
<File
RelativePath=".\include\PlayGuiObjectController.h"
>
</File>
<File
RelativePath=".\include\Pos.h"
>
</File>
<File
RelativePath=".\include\PriceList.h"
>
</File>
<File
RelativePath=".\include\ReplacementEffects.h"
>
</File>
<File
RelativePath=".\include\ShopItem.h"
>
</File>
<File
RelativePath=".\include\SimpleMenu.h"
>
</File>
<File
RelativePath=".\include\SimpleMenuItem.h"
>
</File>
<File
RelativePath=".\include\SimplePad.h"
>
</File>
<File
RelativePath=".\include\Subtypes.h"
>
</File>
<File
RelativePath=".\include\Targetable.h"
>
</File>
<File
RelativePath=".\include\TargetChooser.h"
>
</File>
<File
RelativePath=".\include\TargetsList.h"
>
</File>
<File
RelativePath=".\include\TestSuiteAI.h"
>
</File>
<File
RelativePath=".\include\TextScroller.h"
>
</File>
<File
RelativePath=".\include\Token.h"
>
</File>
<File
RelativePath=".\include\Translate.h"
>
</File>
<File
RelativePath=".\include\Trash.h"
>
</File>
<File
RelativePath=".\include\utils.h"
>
</File>
<File
RelativePath=".\include\WEvent.h"
>
</File>
<File
RelativePath=".\include\WResourceManager.h"
>
</File>
<File
RelativePath=".\include\WCachedResource.h"
>
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>