mirror of
https://github.com/minetest/irrlicht.git
synced 2025-06-28 06:20:21 +02:00
Avoid warning and make local variable lower-case.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6000 dfc29bdd-3216-0410-991c-e03cc46cb475
This commit is contained in:
56
examples/21.Quake3Explorer/Makefile
Normal file
56
examples/21.Quake3Explorer/Makefile
Normal file
@ -0,0 +1,56 @@
|
||||
# Makefile for Irrlicht Examples
|
||||
# It's usually sufficient to change just the target name and source file list
|
||||
# and be sure that CXX is set to a valid compiler
|
||||
|
||||
# Name of the executable created (.exe will be added automatically if necessary)
|
||||
Target := 21.Quake3Explorer
|
||||
# List of source files, separated by spaces
|
||||
Sources := main.cpp sound.cpp q3factory.cpp
|
||||
# Path to Irrlicht directory, should contain include/ and lib/
|
||||
IrrlichtHome := ../..
|
||||
# Path for the executable. Note that Irrlicht.dll should usually also be there for win32 systems
|
||||
BinPath = ../../bin/$(SYSTEM)
|
||||
|
||||
# general compiler settings (might need to be set when compiling the lib, too)
|
||||
CPPFLAGS += -I$(IrrlichtHome)/include -I/usr/X11R6/include
|
||||
ifndef NDEBUG
|
||||
CXXFLAGS += -g -Wall
|
||||
else
|
||||
CXXFLAGS += -O3
|
||||
endif
|
||||
|
||||
#default target is Linux
|
||||
all: all_linux
|
||||
|
||||
# target specific settings
|
||||
all_linux all_win32 static_win32: LDFLAGS += -L$(IrrlichtHome)/lib/$(SYSTEM) -lIrrlicht
|
||||
all_linux: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lXext -lX11 -lXcursor
|
||||
all_linux clean_linux: SYSTEM=Linux
|
||||
all_win32 clean_win32 static_win32: SYSTEM=Win32-gcc
|
||||
all_win32 clean_win32 static_win32: SUF=.exe
|
||||
static_win32: CPPFLAGS += -D_IRR_STATIC_LIB_
|
||||
all_win32: LDFLAGS += -lopengl32 -lm
|
||||
static_win32: LDFLAGS += -lgdi32 -lwinspool -lcomdlg32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lopengl32
|
||||
# name of the binary - only valid for targets which set SYSTEM
|
||||
DESTPATH = $(BinPath)/$(Target)$(SUF)
|
||||
|
||||
all_linux all_win32 static_win32:
|
||||
$(warning Building...)
|
||||
$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
|
||||
|
||||
clean: clean_linux clean_win32
|
||||
$(warning Cleaning...)
|
||||
|
||||
clean_linux clean_win32:
|
||||
@$(RM) $(DESTPATH)
|
||||
|
||||
.PHONY: all all_win32 static_win32 clean clean_linux clean_win32
|
||||
|
||||
#multilib handling
|
||||
ifeq ($(HOSTTYPE), x86_64)
|
||||
LIBSELECT=64
|
||||
endif
|
||||
#solaris real-time features
|
||||
ifeq ($(HOSTTYPE), sun4)
|
||||
LDFLAGS += -lrt
|
||||
endif
|
59
examples/21.Quake3Explorer/Quake3Explorer.cbp
Normal file
59
examples/21.Quake3Explorer/Quake3Explorer.cbp
Normal file
@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<CodeBlocks_project_file>
|
||||
<FileVersion major="1" minor="6" />
|
||||
<Project>
|
||||
<Option title="Irrlicht Example 21 Quake 3 Explorer" />
|
||||
<Option pch_mode="0" />
|
||||
<Option compiler="gcc" />
|
||||
<Build>
|
||||
<Target title="Linux">
|
||||
<Option platforms="Unix;" />
|
||||
<Option output="../../bin/Linux/Quake3Explorer" prefix_auto="0" extension_auto="0" />
|
||||
<Option type="1" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-g" />
|
||||
<Add option="-D_IRR_STATIC_LIB_" />
|
||||
</Compiler>
|
||||
<Linker>
|
||||
<Add library="Xxf86vm" />
|
||||
<Add library="X11" />
|
||||
<Add library="GL" />
|
||||
<Add directory="../../lib/Linux" />
|
||||
</Linker>
|
||||
</Target>
|
||||
<Target title="Windows">
|
||||
<Option platforms="Windows;" />
|
||||
<Option output="../../bin/Win32-gcc/Quake3Explorer" prefix_auto="0" extension_auto="1" />
|
||||
<Option type="1" />
|
||||
<Option compiler="gcc" />
|
||||
<Compiler>
|
||||
<Add option="-g" />
|
||||
</Compiler>
|
||||
<Linker>
|
||||
<Add directory="../../lib/Win32-gcc" />
|
||||
</Linker>
|
||||
</Target>
|
||||
</Build>
|
||||
<VirtualTargets>
|
||||
<Add alias="All" targets="Windows;Linux;" />
|
||||
</VirtualTargets>
|
||||
<Compiler>
|
||||
<Add option="-g" />
|
||||
<Add directory="../../include" />
|
||||
</Compiler>
|
||||
<Linker>
|
||||
<Add library="Irrlicht" />
|
||||
</Linker>
|
||||
<Unit filename="main.cpp" />
|
||||
<Unit filename="q3factory.cpp" />
|
||||
<Unit filename="q3factory.h" />
|
||||
<Unit filename="sound.cpp" />
|
||||
<Unit filename="sound.h" />
|
||||
<Extensions>
|
||||
<code_completion />
|
||||
<debugger />
|
||||
<envvars />
|
||||
</Extensions>
|
||||
</Project>
|
||||
</CodeBlocks_project_file>
|
132
examples/21.Quake3Explorer/Quake3Explorer.vcproj
Normal file
132
examples/21.Quake3Explorer/Quake3Explorer.vcproj
Normal file
@ -0,0 +1,132 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="7.10"
|
||||
Name="21.Quake3Explorer"
|
||||
ProjectGUID="{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
|
||||
Keyword="Win32Proj">
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"/>
|
||||
</Platforms>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory="Debug"
|
||||
IntermediateDirectory="Debug"
|
||||
ConfigurationType="1"
|
||||
CharacterSet="2">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="..\..\include"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
|
||||
MinimalRebuild="TRUE"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="5"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
Detect64BitPortabilityProblems="TRUE"
|
||||
DebugInformationFormat="4"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
OutputFile="..\..\bin\Win32-VisualStudio\21.Quake3MapExplorer.exe"
|
||||
LinkIncremental="1"
|
||||
AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
|
||||
GenerateDebugInformation="TRUE"
|
||||
ProgramDatabaseFile="$(OutDir)/Quake3MapShader.pdb"
|
||||
SubSystem="1"
|
||||
TargetMachine="1"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory="Release"
|
||||
IntermediateDirectory="Release"
|
||||
ConfigurationType="1"
|
||||
CharacterSet="2"
|
||||
WholeProgramOptimization="TRUE">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
AdditionalOptions="/QIfist /Oa"
|
||||
Optimization="3"
|
||||
GlobalOptimizations="TRUE"
|
||||
InlineFunctionExpansion="2"
|
||||
EnableIntrinsicFunctions="TRUE"
|
||||
FavorSizeOrSpeed="1"
|
||||
OmitFramePointers="TRUE"
|
||||
AdditionalIncludeDirectories="..\..\include"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
|
||||
RuntimeLibrary="4"
|
||||
BufferSecurityCheck="FALSE"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
Detect64BitPortabilityProblems="TRUE"
|
||||
DebugInformationFormat="0"
|
||||
CallingConvention="1"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
OutputFile="..\..\bin\Win32-VisualStudio\21.Quake3MapExplorer.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="TRUE"
|
||||
AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
|
||||
GenerateDebugInformation="FALSE"
|
||||
SubSystem="1"
|
||||
OptimizeReferences="2"
|
||||
EnableCOMDATFolding="2"
|
||||
TargetMachine="1"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"/>
|
||||
<Tool
|
||||
Name="VCManagedWrapperGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<File
|
||||
RelativePath=".\main.cpp">
|
||||
</File>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
@ -0,0 +1,302 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
5E34CC751B7F8EEF00F212E8 /* main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E34CC741B7F8EEF00F212E8 /* main.cpp */; };
|
||||
5E3A0F831C1108A100545D10 /* q3factory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E3A0F7F1C1108A100545D10 /* q3factory.cpp */; };
|
||||
5E3A0F841C1108A100545D10 /* sound.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E3A0F811C1108A100545D10 /* sound.cpp */; };
|
||||
5E8570B61B7F9A3200B267D2 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E8570B01B7F99F500B267D2 /* Cocoa.framework */; };
|
||||
5E8570B71B7F9A3200B267D2 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E8570B41B7F9A0700B267D2 /* IOKit.framework */; };
|
||||
5E8570B81B7F9A3200B267D2 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E8570B21B7F99FE00B267D2 /* OpenGL.framework */; };
|
||||
5E8570BF1B7F9D3A00B267D2 /* media in Resources */ = {isa = PBXBuildFile; fileRef = 5E8570BE1B7F9D3A00B267D2 /* media */; };
|
||||
5E8571181B7FBE8D00B267D2 /* libIrrlicht.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E34CC781B7F90A000F212E8 /* libIrrlicht.a */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
5E34CC511B7F8E6E00F212E8 /* 21.Quake3Explorer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = 21.Quake3Explorer.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
5E34CC741B7F8EEF00F212E8 /* main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = "<group>"; };
|
||||
5E34CC781B7F90A000F212E8 /* libIrrlicht.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libIrrlicht.a; path = ../../lib/OSX/libIrrlicht.a; sourceTree = "<group>"; };
|
||||
5E3A0F7F1C1108A100545D10 /* q3factory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = q3factory.cpp; sourceTree = "<group>"; };
|
||||
5E3A0F801C1108A100545D10 /* q3factory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = q3factory.h; sourceTree = "<group>"; };
|
||||
5E3A0F811C1108A100545D10 /* sound.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sound.cpp; sourceTree = "<group>"; };
|
||||
5E3A0F821C1108A100545D10 /* sound.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sound.h; sourceTree = "<group>"; };
|
||||
5E8570B01B7F99F500B267D2 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
|
||||
5E8570B21B7F99FE00B267D2 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; };
|
||||
5E8570B41B7F9A0700B267D2 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; };
|
||||
5E8570BE1B7F9D3A00B267D2 /* media */ = {isa = PBXFileReference; lastKnownFileType = folder; name = media; path = ../../media; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
5E34CC4E1B7F8E6E00F212E8 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
5E8570B61B7F9A3200B267D2 /* Cocoa.framework in Frameworks */,
|
||||
5E8570B71B7F9A3200B267D2 /* IOKit.framework in Frameworks */,
|
||||
5E8570B81B7F9A3200B267D2 /* OpenGL.framework in Frameworks */,
|
||||
5E8571181B7FBE8D00B267D2 /* libIrrlicht.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
5E34C6D81B7F4A0C00F212E8 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
5E34CC741B7F8EEF00F212E8 /* main.cpp */,
|
||||
5E3A0F7F1C1108A100545D10 /* q3factory.cpp */,
|
||||
5E3A0F801C1108A100545D10 /* q3factory.h */,
|
||||
5E3A0F811C1108A100545D10 /* sound.cpp */,
|
||||
5E3A0F821C1108A100545D10 /* sound.h */,
|
||||
5E34CC761B7F905600F212E8 /* Libraries */,
|
||||
5E34CC521B7F8E6E00F212E8 /* Products */,
|
||||
5E34CC771B7F906D00F212E8 /* Resources */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
5E34CC521B7F8E6E00F212E8 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
5E34CC511B7F8E6E00F212E8 /* 21.Quake3Explorer.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
5E34CC761B7F905600F212E8 /* Libraries */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
5E8570B01B7F99F500B267D2 /* Cocoa.framework */,
|
||||
5E8570B41B7F9A0700B267D2 /* IOKit.framework */,
|
||||
5E8570B21B7F99FE00B267D2 /* OpenGL.framework */,
|
||||
5E34CC781B7F90A000F212E8 /* libIrrlicht.a */,
|
||||
);
|
||||
name = Libraries;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
5E34CC771B7F906D00F212E8 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
5E8570BE1B7F9D3A00B267D2 /* media */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
5E34CC501B7F8E6E00F212E8 /* 21.Quake3Explorer */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 5E34CC701B7F8E6E00F212E8 /* Build configuration list for PBXNativeTarget "21.Quake3Explorer" */;
|
||||
buildPhases = (
|
||||
5E34CC4D1B7F8E6E00F212E8 /* Sources */,
|
||||
5E34CC4E1B7F8E6E00F212E8 /* Frameworks */,
|
||||
5E34CC4F1B7F8E6E00F212E8 /* Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = 21.Quake3Explorer;
|
||||
productName = 01.HelloWorld;
|
||||
productReference = 5E34CC511B7F8E6E00F212E8 /* 21.Quake3Explorer.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
5E34C6D91B7F4A0C00F212E8 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0710;
|
||||
TargetAttributes = {
|
||||
5E34CC501B7F8E6E00F212E8 = {
|
||||
CreatedOnToolsVersion = 6.1;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = 5E34C6DC1B7F4A0C00F212E8 /* Build configuration list for PBXProject "Quake3Explorer" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
Base,
|
||||
);
|
||||
mainGroup = 5E34C6D81B7F4A0C00F212E8;
|
||||
productRefGroup = 5E34CC521B7F8E6E00F212E8 /* Products */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
5E34CC501B7F8E6E00F212E8 /* 21.Quake3Explorer */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
5E34CC4F1B7F8E6E00F212E8 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
5E8570BF1B7F9D3A00B267D2 /* media in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
5E34CC4D1B7F8E6E00F212E8 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
5E3A0F831C1108A100545D10 /* q3factory.cpp in Sources */,
|
||||
5E3A0F841C1108A100545D10 /* sound.cpp in Sources */,
|
||||
5E34CC751B7F8EEF00F212E8 /* main.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
5E34C6DD1B7F4A0C00F212E8 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ENABLE_TESTABILITY = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
5E34C6DE1B7F4A0C00F212E8 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
5E34CC6C1B7F8E6E00F212E8 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "-";
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEPLOYMENT_LOCATION = YES;
|
||||
DSTROOT = "$(SRCROOT)/../../bin/OSX";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
"$(SRCROOT)/../../include",
|
||||
);
|
||||
INFOPLIST_FILE = "$(SRCROOT)/../../media/info_osx.plist";
|
||||
INSTALL_PATH = /;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(SRCROOT)/../../lib/OSX",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
5E34CC6D1B7F8E6E00F212E8 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "-";
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEPLOYMENT_LOCATION = YES;
|
||||
DSTROOT = "$(SRCROOT)/../../bin/OSX";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
"$(SRCROOT)/../../include",
|
||||
);
|
||||
INFOPLIST_FILE = "$(SRCROOT)/../../media/info_osx.plist";
|
||||
INSTALL_PATH = /;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(SRCROOT)/../../lib/OSX",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
5E34C6DC1B7F4A0C00F212E8 /* Build configuration list for PBXProject "Quake3Explorer" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
5E34C6DD1B7F4A0C00F212E8 /* Debug */,
|
||||
5E34C6DE1B7F4A0C00F212E8 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
5E34CC701B7F8E6E00F212E8 /* Build configuration list for PBXNativeTarget "21.Quake3Explorer" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
5E34CC6C1B7F8E6E00F212E8 /* Debug */,
|
||||
5E34CC6D1B7F8E6E00F212E8 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 5E34C6D91B7F4A0C00F212E8 /* Project object */;
|
||||
}
|
@ -0,0 +1,91 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0710"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "5E34CC501B7F8E6E00F212E8"
|
||||
BuildableName = "21.Quake3Explorer.app"
|
||||
BlueprintName = "21.Quake3Explorer"
|
||||
ReferencedContainer = "container:Quake3Explorer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "5E34CC501B7F8E6E00F212E8"
|
||||
BuildableName = "21.Quake3Explorer.app"
|
||||
BlueprintName = "21.Quake3Explorer"
|
||||
ReferencedContainer = "container:Quake3Explorer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "5E34CC501B7F8E6E00F212E8"
|
||||
BuildableName = "21.Quake3Explorer.app"
|
||||
BlueprintName = "21.Quake3Explorer"
|
||||
ReferencedContainer = "container:Quake3Explorer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "5E34CC501B7F8E6E00F212E8"
|
||||
BuildableName = "21.Quake3Explorer.app"
|
||||
BlueprintName = "21.Quake3Explorer"
|
||||
ReferencedContainer = "container:Quake3Explorer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
200
examples/21.Quake3Explorer/Quake3Explorer_vc10.vcxproj
Normal file
200
examples/21.Quake3Explorer/Quake3Explorer_vc10.vcxproj
Normal file
@ -0,0 +1,200 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>21.Quake3Explorer</ProjectName>
|
||||
<ProjectGuid>{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}</ProjectGuid>
|
||||
<RootNamespace>21.Quake3Explorer</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>FastCall</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>Cdecl</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="main.cpp" />
|
||||
<ClCompile Include="q3factory.cpp" />
|
||||
<ClCompile Include="sound.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="q3factory.h" />
|
||||
<ClInclude Include="sound.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
200
examples/21.Quake3Explorer/Quake3Explorer_vc11.vcxproj
Normal file
200
examples/21.Quake3Explorer/Quake3Explorer_vc11.vcxproj
Normal file
@ -0,0 +1,200 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>21.Quake3Explorer</ProjectName>
|
||||
<ProjectGuid>{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}</ProjectGuid>
|
||||
<RootNamespace>21.Quake3Explorer</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>Cdecl</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>FastCall</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="main.cpp" />
|
||||
<ClCompile Include="q3factory.cpp" />
|
||||
<ClCompile Include="sound.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="q3factory.h" />
|
||||
<ClInclude Include="sound.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
200
examples/21.Quake3Explorer/Quake3Explorer_vc12.vcxproj
Normal file
200
examples/21.Quake3Explorer/Quake3Explorer_vc12.vcxproj
Normal file
@ -0,0 +1,200 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>21.Quake3Explorer</ProjectName>
|
||||
<ProjectGuid>{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}</ProjectGuid>
|
||||
<RootNamespace>21.Quake3Explorer</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>FastCall</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>Cdecl</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="main.cpp" />
|
||||
<ClCompile Include="q3factory.cpp" />
|
||||
<ClCompile Include="sound.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="q3factory.h" />
|
||||
<ClInclude Include="sound.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
200
examples/21.Quake3Explorer/Quake3Explorer_vc14.vcxproj
Normal file
200
examples/21.Quake3Explorer/Quake3Explorer_vc14.vcxproj
Normal file
@ -0,0 +1,200 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>21.Quake3Explorer</ProjectName>
|
||||
<ProjectGuid>{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}</ProjectGuid>
|
||||
<RootNamespace>21.Quake3Explorer</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>FastCall</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>FastCall</CallingConvention>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="main.cpp" />
|
||||
<ClCompile Include="q3factory.cpp" />
|
||||
<ClCompile Include="sound.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="q3factory.h" />
|
||||
<ClInclude Include="sound.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
2189
examples/21.Quake3Explorer/main.cpp
Normal file
2189
examples/21.Quake3Explorer/main.cpp
Normal file
File diff suppressed because it is too large
Load Diff
824
examples/21.Quake3Explorer/q3factory.cpp
Normal file
824
examples/21.Quake3Explorer/q3factory.cpp
Normal file
@ -0,0 +1,824 @@
|
||||
/*!
|
||||
Model Factory.
|
||||
create the additional scenenodes for ( bullets, health... )
|
||||
|
||||
Defines the Entities for Quake3
|
||||
*/
|
||||
|
||||
#include <irrlicht.h>
|
||||
#include "q3factory.h"
|
||||
#include "sound.h"
|
||||
|
||||
using namespace irr;
|
||||
using namespace scene;
|
||||
using namespace gui;
|
||||
using namespace video;
|
||||
using namespace core;
|
||||
using namespace quake3;
|
||||
|
||||
//! This list is based on the original quake3.
|
||||
static const SItemElement Quake3ItemElement [] = {
|
||||
{ "item_health",
|
||||
{"models/powerups/health/medium_cross.md3",
|
||||
"models/powerups/health/medium_sphere.md3"},
|
||||
"sound/items/n_health.wav",
|
||||
"icons/iconh_yellow",
|
||||
"25 Health",
|
||||
25,
|
||||
HEALTH,
|
||||
SUB_NONE,
|
||||
SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
|
||||
},
|
||||
{ "item_health_large",
|
||||
"models/powerups/health/large_cross.md3",
|
||||
"models/powerups/health/large_sphere.md3",
|
||||
"sound/items/l_health.wav",
|
||||
"icons/iconh_red",
|
||||
"50 Health",
|
||||
50,
|
||||
HEALTH,
|
||||
SUB_NONE,
|
||||
SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
|
||||
},
|
||||
{
|
||||
"item_health_mega",
|
||||
"models/powerups/health/mega_cross.md3",
|
||||
"models/powerups/health/mega_sphere.md3",
|
||||
"sound/items/m_health.wav",
|
||||
"icons/iconh_mega",
|
||||
"Mega Health",
|
||||
100,
|
||||
HEALTH,
|
||||
SUB_NONE,
|
||||
SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
|
||||
},
|
||||
{
|
||||
"item_health_small",
|
||||
"models/powerups/health/small_cross.md3",
|
||||
"models/powerups/health/small_sphere.md3",
|
||||
"sound/items/s_health.wav",
|
||||
"icons/iconh_green",
|
||||
"5 Health",
|
||||
5,
|
||||
HEALTH,
|
||||
SUB_NONE,
|
||||
SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
|
||||
},
|
||||
{ "ammo_bullets",
|
||||
"models/powerups/ammo/machinegunam.md3",
|
||||
"",
|
||||
"sound/misc/am_pkup.wav",
|
||||
"icons/icona_machinegun",
|
||||
"Bullets",
|
||||
50,
|
||||
AMMO,
|
||||
MACHINEGUN,
|
||||
SPECIAL_SFX_BOUNCE,
|
||||
},
|
||||
{
|
||||
"ammo_cells",
|
||||
"models/powerups/ammo/plasmaam.md3",
|
||||
"",
|
||||
"sound/misc/am_pkup.wav",
|
||||
"icons/icona_plasma",
|
||||
"Cells",
|
||||
30,
|
||||
AMMO,
|
||||
PLASMAGUN,
|
||||
SPECIAL_SFX_BOUNCE
|
||||
},
|
||||
{ "ammo_rockets",
|
||||
"models/powerups/ammo/rocketam.md3",
|
||||
"",
|
||||
"",
|
||||
"icons/icona_rocket",
|
||||
"Rockets",
|
||||
5,
|
||||
AMMO,
|
||||
ROCKET_LAUNCHER,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"ammo_shells",
|
||||
"models/powerups/ammo/shotgunam.md3",
|
||||
"",
|
||||
"sound/misc/am_pkup.wav",
|
||||
"icons/icona_shotgun",
|
||||
"Shells",
|
||||
10,
|
||||
AMMO,
|
||||
SHOTGUN,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"ammo_slugs",
|
||||
"models/powerups/ammo/railgunam.md3",
|
||||
"",
|
||||
"sound/misc/am_pkup.wav",
|
||||
"icons/icona_railgun",
|
||||
"Slugs",
|
||||
10,
|
||||
AMMO,
|
||||
RAILGUN,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"item_armor_body",
|
||||
"models/powerups/armor/armor_red.md3",
|
||||
"",
|
||||
"sound/misc/ar2_pkup.wav",
|
||||
"icons/iconr_red",
|
||||
"Heavy Armor",
|
||||
100,
|
||||
ARMOR,
|
||||
SUB_NONE,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"item_armor_combat",
|
||||
"models/powerups/armor/armor_yel.md3",
|
||||
"",
|
||||
"sound/misc/ar2_pkup.wav",
|
||||
"icons/iconr_yellow",
|
||||
"Armor",
|
||||
50,
|
||||
ARMOR,
|
||||
SUB_NONE,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"item_armor_shard",
|
||||
"models/powerups/armor/shard.md3",
|
||||
"",
|
||||
"sound/misc/ar1_pkup.wav",
|
||||
"icons/iconr_shard",
|
||||
"Armor Shared",
|
||||
5,
|
||||
ARMOR,
|
||||
SUB_NONE,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_gauntlet",
|
||||
"models/weapons2/gauntlet/gauntlet.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_gauntlet",
|
||||
"Gauntlet",
|
||||
0,
|
||||
WEAPON,
|
||||
GAUNTLET,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_shotgun",
|
||||
"models/weapons2/shotgun/shotgun.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_shotgun",
|
||||
"Shotgun",
|
||||
10,
|
||||
WEAPON,
|
||||
SHOTGUN,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_machinegun",
|
||||
"models/weapons2/machinegun/machinegun.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_machinegun",
|
||||
"Machinegun",
|
||||
40,
|
||||
WEAPON,
|
||||
MACHINEGUN,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_grenadelauncher",
|
||||
"models/weapons2/grenadel/grenadel.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_grenade",
|
||||
"Grenade Launcher",
|
||||
10,
|
||||
WEAPON,
|
||||
GRENADE_LAUNCHER,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_rocketlauncher",
|
||||
"models/weapons2/rocketl/rocketl.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_rocket",
|
||||
"Rocket Launcher",
|
||||
10,
|
||||
WEAPON,
|
||||
ROCKET_LAUNCHER,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_lightning",
|
||||
"models/weapons2/lightning/lightning.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_lightning",
|
||||
"Lightning Gun",
|
||||
100,
|
||||
WEAPON,
|
||||
LIGHTNING,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_railgun",
|
||||
"models/weapons2/railgun/railgun.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_railgun",
|
||||
"Railgun",
|
||||
10,
|
||||
WEAPON,
|
||||
RAILGUN,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_plasmagun",
|
||||
"models/weapons2/plasma/plasma.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_plasma",
|
||||
"Plasma Gun",
|
||||
50,
|
||||
WEAPON,
|
||||
PLASMAGUN,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_bfg",
|
||||
"models/weapons2/bfg/bfg.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_bfg",
|
||||
"BFG10K",
|
||||
20,
|
||||
WEAPON,
|
||||
BFG,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
"weapon_grapplinghook",
|
||||
"models/weapons2/grapple/grapple.md3",
|
||||
"",
|
||||
"sound/misc/w_pkup.wav",
|
||||
"icons/iconw_grapple",
|
||||
"Grappling Hook",
|
||||
0,
|
||||
WEAPON,
|
||||
GRAPPLING_HOOK,
|
||||
SPECIAL_SFX_ROTATE
|
||||
},
|
||||
{
|
||||
0
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
||||
/*!
|
||||
*/
|
||||
const SItemElement * getItemElement ( const stringc& key )
|
||||
{
|
||||
const SItemElement *item = Quake3ItemElement;
|
||||
|
||||
while ( item->key )
|
||||
{
|
||||
if ( 0 == strcmp ( key.c_str(), item->key ) )
|
||||
return item;
|
||||
item += 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*!
|
||||
Quake3 Model Factory.
|
||||
Takes the mesh buffers and creates scenenodes for their associated shaders
|
||||
*/
|
||||
void Q3ShaderFactory ( Q3LevelLoadParameter &loadParam,
|
||||
IrrlichtDevice *device,
|
||||
IQ3LevelMesh* mesh,
|
||||
eQ3MeshIndex meshIndex,
|
||||
ISceneNode *parent,
|
||||
IMetaTriangleSelector *meta,
|
||||
bool showShaderName )
|
||||
{
|
||||
if ( 0 == mesh || 0 == device )
|
||||
return;
|
||||
|
||||
IMeshSceneNode* node = 0;
|
||||
ISceneManager* smgr = device->getSceneManager();
|
||||
ITriangleSelector * selector = 0;
|
||||
|
||||
// the additional mesh can be quite huge and is unoptimized
|
||||
// Save to cast to SMesh
|
||||
SMesh * additional_mesh = (SMesh*) mesh->getMesh ( meshIndex );
|
||||
if ( 0 == additional_mesh || additional_mesh->getMeshBufferCount() == 0)
|
||||
return;
|
||||
|
||||
char buf[128];
|
||||
if ( loadParam.verbose > 0 )
|
||||
{
|
||||
loadParam.startTime = device->getTimer()->getRealTime();
|
||||
if ( loadParam.verbose > 1 )
|
||||
{
|
||||
snprintf_irr(buf, 128, "q3shaderfactory start" );
|
||||
device->getLogger()->log( buf, ELL_INFORMATION);
|
||||
}
|
||||
}
|
||||
|
||||
IGUIFont *font = 0;
|
||||
if ( showShaderName )
|
||||
font = device->getGUIEnvironment()->getFont("fontlucida.png");
|
||||
|
||||
IVideoDriver *driver = device->getVideoDriver();
|
||||
|
||||
// create helper textures
|
||||
if ( 1 )
|
||||
{
|
||||
tTexArray tex;
|
||||
u32 pos = 0;
|
||||
getTextures ( tex, "$redimage $blueimage $whiteimage $checkerimage", pos,
|
||||
device->getFileSystem(), driver );
|
||||
}
|
||||
|
||||
s32 sceneNodeID = 0;
|
||||
for ( u32 i = 0; i!= additional_mesh->getMeshBufferCount (); ++i )
|
||||
{
|
||||
IMeshBuffer *meshBuffer = additional_mesh->getMeshBuffer ( i );
|
||||
const SMaterial &material = meshBuffer->getMaterial();
|
||||
|
||||
//! The ShaderIndex is stored in the second material parameter
|
||||
s32 shaderIndex = (s32) material.MaterialTypeParam2;
|
||||
|
||||
// the meshbuffer can be rendered without additional support, or it has no shader
|
||||
IShader *shader = (IShader *) mesh->getShader ( shaderIndex );
|
||||
|
||||
// no shader, or mapped to existing material
|
||||
if ( 0 == shader )
|
||||
{
|
||||
|
||||
#if 1
|
||||
// clone mesh
|
||||
SMesh * m = new SMesh ();
|
||||
m->addMeshBuffer ( meshBuffer );
|
||||
SMaterial &mat = m->getMeshBuffer( 0 )->getMaterial();
|
||||
if ( mat.getTexture( 0 ) == 0 )
|
||||
mat.setTexture ( 0, driver->getTexture ( "$blueimage" ) );
|
||||
if ( mat.getTexture( 1 ) == 0 )
|
||||
mat.setTexture ( 1, driver->getTexture ( "$redimage" ) );
|
||||
|
||||
IMesh * store = smgr->getMeshManipulator ()->createMeshWith2TCoords ( m );
|
||||
m->drop();
|
||||
|
||||
node = smgr->addMeshSceneNode ( store, parent, sceneNodeID );
|
||||
node->setAutomaticCulling ( scene::EAC_OFF );
|
||||
store->drop ();
|
||||
sceneNodeID += 1;
|
||||
#endif
|
||||
}
|
||||
else if ( 1 )
|
||||
{
|
||||
/*
|
||||
stringc s;
|
||||
dumpShader ( s, shader );
|
||||
printf ( s.c_str () );
|
||||
*/
|
||||
// create sceneNode
|
||||
node = smgr->addQuake3SceneNode ( meshBuffer, shader, parent, sceneNodeID );
|
||||
node->setAutomaticCulling ( scene::EAC_FRUSTUM_BOX );
|
||||
sceneNodeID += 1;
|
||||
}
|
||||
|
||||
// show Debug Shader Name
|
||||
if ( showShaderName && node )
|
||||
{
|
||||
swprintf_irr ( (wchar_t*) buf, 64, L"%hs:%d", node->getName(),node->getID() );
|
||||
smgr->addBillboardTextSceneNode(
|
||||
font,
|
||||
(wchar_t*) buf,
|
||||
node,
|
||||
dimension2d<f32>(80.0f, 8.0f),
|
||||
vector3df(0, 10, 0),
|
||||
sceneNodeID);
|
||||
sceneNodeID += 1;
|
||||
}
|
||||
|
||||
// create Portal Rendertargets
|
||||
if ( shader )
|
||||
{
|
||||
const SVarGroup *group = shader->getGroup(1);
|
||||
if ( group->isDefined( "surfaceparm", "portal" ) )
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
// add collision
|
||||
// find out if shader is marked as nonsolid
|
||||
u8 doCreate = meta !=0 ;
|
||||
|
||||
if ( shader )
|
||||
{
|
||||
const SVarGroup *group = shader->getGroup(1);
|
||||
if ( group->isDefined( "surfaceparm", "trans" )
|
||||
// || group->isDefined( "surfaceparm", "sky" )
|
||||
// || group->isDefined( "surfaceparm", "nonsolid" )
|
||||
)
|
||||
{
|
||||
if ( !group->isDefined( "surfaceparm", "metalsteps" ) )
|
||||
{
|
||||
doCreate = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( doCreate )
|
||||
{
|
||||
IMesh *m = 0;
|
||||
|
||||
//! controls if triangles are modified by the scenenode during runtime
|
||||
bool takeOriginal = true;
|
||||
|
||||
if ( takeOriginal )
|
||||
{
|
||||
m = new SMesh ();
|
||||
((SMesh*) m )->addMeshBuffer (meshBuffer);
|
||||
}
|
||||
else
|
||||
{
|
||||
m = node->getMesh();
|
||||
}
|
||||
|
||||
//selector = smgr->createOctreeTriangleSelector ( m, 0, 128 );
|
||||
selector = smgr->createTriangleSelector ( m, 0 );
|
||||
meta->addTriangleSelector ( selector );
|
||||
selector->drop ();
|
||||
|
||||
if ( takeOriginal )
|
||||
{
|
||||
delete m;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#if 0
|
||||
if ( meta )
|
||||
{
|
||||
selector = smgr->createOctreeTriangleSelector ( additional_mesh, 0 );
|
||||
meta->addTriangleSelector ( selector );
|
||||
selector->drop ();
|
||||
}
|
||||
#endif
|
||||
|
||||
if ( loadParam.verbose > 0 )
|
||||
{
|
||||
loadParam.endTime = device->getTimer()->getRealTime ();
|
||||
snprintf_irr(buf, 128, "q3shaderfactory needed %04d ms to create %d shader nodes",
|
||||
loadParam.endTime - loadParam.startTime,
|
||||
sceneNodeID
|
||||
);
|
||||
device->getLogger()->log(buf, ELL_INFORMATION);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*!
|
||||
create Items from Entity
|
||||
*/
|
||||
void Q3ModelFactory ( Q3LevelLoadParameter &loadParam,
|
||||
IrrlichtDevice *device,
|
||||
IQ3LevelMesh* masterMesh,
|
||||
ISceneNode *parent,
|
||||
bool showShaderName
|
||||
)
|
||||
{
|
||||
if ( 0 == masterMesh )
|
||||
return;
|
||||
|
||||
tQ3EntityList &entity = masterMesh->getEntityList ();
|
||||
ISceneManager* smgr = device->getSceneManager();
|
||||
|
||||
|
||||
char buf[128];
|
||||
const SVarGroup *group;
|
||||
IEntity search;
|
||||
s32 index;
|
||||
s32 lastIndex;
|
||||
|
||||
/*
|
||||
stringc s;
|
||||
FILE *f = 0;
|
||||
f = fopen ( "entity.txt", "wb" );
|
||||
for ( index = 0; (u32) index < entityList.size (); ++index )
|
||||
{
|
||||
const IEntity *entity = &entityList[ index ];
|
||||
s = entity->name;
|
||||
dumpShader ( s, entity );
|
||||
fwrite ( s.c_str(), 1, s.size(), f );
|
||||
}
|
||||
fclose ( f );
|
||||
*/
|
||||
IAnimatedMeshMD3* model;
|
||||
SMD3Mesh * mesh;
|
||||
const SMD3MeshBuffer *meshBuffer;
|
||||
IMeshSceneNode* node;
|
||||
ISceneNodeAnimator* anim;
|
||||
const IShader *shader;
|
||||
u32 pos;
|
||||
vector3df p;
|
||||
u32 nodeCount = 0;
|
||||
tTexArray textureArray;
|
||||
|
||||
IGUIFont *font = 0;
|
||||
if ( showShaderName )
|
||||
font = device->getGUIEnvironment()->getFont("fontlucida.png");
|
||||
|
||||
const SItemElement *itemElement;
|
||||
|
||||
// walk list
|
||||
for ( index = 0; (u32) index < entity.size(); ++index )
|
||||
{
|
||||
itemElement = getItemElement ( entity[index].name );
|
||||
if ( 0 == itemElement )
|
||||
continue;
|
||||
|
||||
pos = 0;
|
||||
p = getAsVector3df ( entity[index].getGroup(1)->get ( "origin" ), pos );
|
||||
|
||||
nodeCount += 1;
|
||||
for ( u32 g = 0; g < 2; ++g )
|
||||
{
|
||||
if ( 0 == itemElement->model[g] || itemElement->model[g][0] == 0 )
|
||||
continue;
|
||||
model = (IAnimatedMeshMD3*) smgr->getMesh( itemElement->model[g] );
|
||||
if ( 0 == model )
|
||||
continue;
|
||||
|
||||
mesh = model->getOriginalMesh();
|
||||
for ( u32 j = 0; j != mesh->Buffer.size (); ++j )
|
||||
{
|
||||
meshBuffer = mesh->Buffer[j];
|
||||
if ( 0 == meshBuffer )
|
||||
continue;
|
||||
|
||||
shader = masterMesh->getShader ( meshBuffer->Shader.c_str(), false );
|
||||
IMeshBuffer *final = model->getMesh(0)->getMeshBuffer(j);
|
||||
if ( shader )
|
||||
{
|
||||
//!TODO: Hack don't modify the vertexbuffer. make it better;-)
|
||||
final->getMaterial().ColorMask = 0;
|
||||
node = smgr->addQuake3SceneNode ( final, shader, parent );
|
||||
final->getMaterial().ColorMask = 15;
|
||||
}
|
||||
else
|
||||
{
|
||||
// clone mesh
|
||||
SMesh * m = new SMesh ();
|
||||
m->addMeshBuffer ( final );
|
||||
node = smgr->addMeshSceneNode ( m, parent );
|
||||
m->drop();
|
||||
}
|
||||
|
||||
if ( 0 == node )
|
||||
{
|
||||
snprintf_irr ( buf, 128, "q3ModelFactory shader %s failed", meshBuffer->Shader.c_str() );
|
||||
device->getLogger()->log ( buf );
|
||||
continue;
|
||||
}
|
||||
|
||||
// node was maybe centered by shaderscenenode
|
||||
node->setPosition ( p );
|
||||
node->setName ( meshBuffer->Shader );
|
||||
node->setAutomaticCulling ( scene::EAC_BOX );
|
||||
|
||||
// add special effects to node
|
||||
if ( itemElement->special & SPECIAL_SFX_ROTATE ||
|
||||
(g == 0 && itemElement->special & SPECIAL_SFX_ROTATE_1)
|
||||
)
|
||||
{
|
||||
anim = smgr->createRotationAnimator ( vector3df ( 0.f,
|
||||
2.f, 0.f ) );
|
||||
node->addAnimator ( anim );
|
||||
anim->drop ();
|
||||
}
|
||||
|
||||
if ( itemElement->special & SPECIAL_SFX_BOUNCE )
|
||||
{
|
||||
//anim = smgr->createFlyStraightAnimator (
|
||||
// p, p + vector3df ( 0.f, 60.f, 0.f ), 1000, true, true );
|
||||
anim = smgr->createFlyCircleAnimator (
|
||||
p + vector3df( 0.f, 20.f, 0.f ),
|
||||
20.f,
|
||||
0.005f,
|
||||
vector3df ( 1.f, 0.f, 0.f ),
|
||||
core::fract ( nodeCount * 0.05f ),
|
||||
1.f
|
||||
);
|
||||
node->addAnimator ( anim );
|
||||
anim->drop ();
|
||||
}
|
||||
}
|
||||
}
|
||||
// show name
|
||||
if ( showShaderName )
|
||||
{
|
||||
swprintf_irr ( (wchar_t*) buf, sizeof(buf) / 2, L"%hs", itemElement->key );
|
||||
smgr->addBillboardTextSceneNode(
|
||||
font,
|
||||
(wchar_t*) buf,
|
||||
parent,
|
||||
dimension2d<f32>(80.0f, 8.0f),
|
||||
p + vector3df(0, 30, 0),
|
||||
0);
|
||||
}
|
||||
}
|
||||
|
||||
// music
|
||||
search.name = "worldspawn";
|
||||
index = entity.binary_search_multi ( search, lastIndex );
|
||||
|
||||
if ( index >= 0 )
|
||||
{
|
||||
group = entity[ index ].getGroup(1);
|
||||
background_music ( group->get ( "music" ).c_str () );
|
||||
}
|
||||
|
||||
// music
|
||||
search.name = "worldspawn";
|
||||
index = entity.binary_search_multi ( search, lastIndex );
|
||||
|
||||
if ( index >= 0 )
|
||||
{
|
||||
group = entity[ index ].getGroup(1);
|
||||
background_music ( group->get ( "music" ).c_str () );
|
||||
}
|
||||
|
||||
//IAnimatedMesh* mesh = smgr->getMesh("../../media/sydney.md2");
|
||||
//IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode( mesh );
|
||||
|
||||
}
|
||||
|
||||
/*!
|
||||
so we need a good starting Position in the level.
|
||||
we can ask the Quake3 Loader for all entities with class_name "info_player_deathmatch"
|
||||
*/
|
||||
s32 Q3StartPosition ( IQ3LevelMesh* mesh,
|
||||
ICameraSceneNode* camera,
|
||||
s32 startposIndex,
|
||||
const vector3df &translation
|
||||
)
|
||||
{
|
||||
if ( 0 == mesh )
|
||||
return 0;
|
||||
|
||||
tQ3EntityList &entityList = mesh->getEntityList ();
|
||||
|
||||
IEntity search;
|
||||
search.name = "info_player_start"; // "info_player_deathmatch";
|
||||
|
||||
// find all entities in the multi-list
|
||||
s32 lastIndex;
|
||||
s32 index = entityList.binary_search_multi ( search, lastIndex );
|
||||
|
||||
if ( index < 0 )
|
||||
{
|
||||
search.name = "info_player_deathmatch";
|
||||
index = entityList.binary_search_multi ( search, lastIndex );
|
||||
}
|
||||
|
||||
if ( index < 0 )
|
||||
return 0;
|
||||
|
||||
index += core::clamp ( startposIndex, 0, lastIndex - index );
|
||||
|
||||
u32 parsepos;
|
||||
|
||||
const SVarGroup *group;
|
||||
group = entityList[ index ].getGroup(1);
|
||||
|
||||
parsepos = 0;
|
||||
vector3df pos = getAsVector3df ( group->get ( "origin" ), parsepos );
|
||||
pos += translation;
|
||||
|
||||
parsepos = 0;
|
||||
f32 angle = getAsFloat ( group->get ( "angle"), parsepos );
|
||||
|
||||
vector3df target ( 0.f, 0.f, 1.f );
|
||||
target.rotateXZBy ( angle - 90.f, vector3df () );
|
||||
|
||||
if ( camera )
|
||||
{
|
||||
camera->setPosition ( pos );
|
||||
camera->setTarget ( pos + target );
|
||||
//! New. FPSCamera and animators catches reset on animate 0
|
||||
camera->OnAnimate ( 0 );
|
||||
}
|
||||
return lastIndex - index + 1;
|
||||
}
|
||||
|
||||
|
||||
/*!
|
||||
gets a accumulated force on a given surface
|
||||
*/
|
||||
vector3df getGravity ( const c8 * surface )
|
||||
{
|
||||
if ( 0 == strcmp ( surface, "earth" ) ) return vector3df ( 0.f, -900.f, 0.f );
|
||||
if ( 0 == strcmp ( surface, "moon" ) ) return vector3df ( 0.f, -6.f , 0.f );
|
||||
if ( 0 == strcmp ( surface, "water" ) ) return vector3df ( 0.1f, -2.f, 0.f );
|
||||
if ( 0 == strcmp ( surface, "ice" ) ) return vector3df ( 0.2f, -9.f, 0.3f );
|
||||
|
||||
return vector3df ( 0.f, 0.f, 0.f );
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
Dynamically load the Irrlicht Library
|
||||
*/
|
||||
|
||||
#if defined(_IRR_WINDOWS_API_)
|
||||
#ifdef _MSC_VER
|
||||
#pragma comment(lib, "Irrlicht.lib")
|
||||
#endif
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
funcptr_createDevice load_createDevice ( const c8 * filename)
|
||||
{
|
||||
return (funcptr_createDevice) GetProcAddress ( LoadLibrary ( filename ), "createDevice" );
|
||||
}
|
||||
|
||||
funcptr_createDeviceEx load_createDeviceEx ( const c8 * filename)
|
||||
{
|
||||
return (funcptr_createDeviceEx) GetProcAddress ( LoadLibrary ( filename ), "createDeviceEx" );
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
// TODO: Dynamic Loading for other os
|
||||
funcptr_createDevice load_createDevice ( const c8 * filename)
|
||||
{
|
||||
return createDevice;
|
||||
}
|
||||
|
||||
funcptr_createDeviceEx load_createDeviceEx ( const c8 * filename)
|
||||
{
|
||||
return createDeviceEx;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/*
|
||||
get the current collision response camera animator
|
||||
*/
|
||||
ISceneNodeAnimatorCollisionResponse* camCollisionResponse( IrrlichtDevice * device )
|
||||
{
|
||||
ICameraSceneNode *camera = device->getSceneManager()->getActiveCamera();
|
||||
ISceneNodeAnimatorCollisionResponse *a = 0;
|
||||
|
||||
list<ISceneNodeAnimator*>::ConstIterator it = camera->getAnimators().begin();
|
||||
for (; it != camera->getAnimators().end(); ++it)
|
||||
{
|
||||
a = (ISceneNodeAnimatorCollisionResponse*) (*it);
|
||||
if ( a->getType() == ESNAT_COLLISION_RESPONSE )
|
||||
return a;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
//! internal Animation
|
||||
void setTimeFire ( TimeFire *t, u32 delta, u32 flags )
|
||||
{
|
||||
t->flags = flags;
|
||||
t->next = 0;
|
||||
t->delta = delta;
|
||||
}
|
||||
|
||||
|
||||
void checkTimeFire ( TimeFire *t, u32 listSize, u32 now )
|
||||
{
|
||||
u32 i;
|
||||
for ( i = 0; i < listSize; ++i )
|
||||
{
|
||||
if ( now < t[i].next )
|
||||
continue;
|
||||
|
||||
t[i].next = core::max_ ( now + t[i].delta, t[i].next + t[i].delta );
|
||||
t[i].flags |= FIRED;
|
||||
}
|
||||
}
|
149
examples/21.Quake3Explorer/q3factory.h
Normal file
149
examples/21.Quake3Explorer/q3factory.h
Normal file
@ -0,0 +1,149 @@
|
||||
/*!
|
||||
Model Factory.
|
||||
create the additional scenenodes for ( bullets, health... )
|
||||
|
||||
Defines the Entities for Quake3
|
||||
*/
|
||||
#ifndef __QUAKE3_FACTORY__H_INCLUDED__
|
||||
#define __QUAKE3_FACTORY__H_INCLUDED__
|
||||
|
||||
using namespace irr;
|
||||
using namespace scene;
|
||||
using namespace gui;
|
||||
using namespace video;
|
||||
using namespace core;
|
||||
using namespace quake3;
|
||||
using namespace io;
|
||||
|
||||
|
||||
|
||||
//! Defines to which group the entities belong
|
||||
enum eItemGroup
|
||||
{
|
||||
WEAPON,
|
||||
AMMO,
|
||||
ARMOR,
|
||||
HEALTH,
|
||||
POWERUP
|
||||
};
|
||||
|
||||
//! define a supgroup for the item. for e.q the Weapons
|
||||
enum eItemSubGroup
|
||||
{
|
||||
SUB_NONE = 0,
|
||||
GAUNTLET,
|
||||
MACHINEGUN,
|
||||
SHOTGUN,
|
||||
GRENADE_LAUNCHER,
|
||||
ROCKET_LAUNCHER,
|
||||
LIGHTNING,
|
||||
RAILGUN,
|
||||
PLASMAGUN,
|
||||
BFG,
|
||||
GRAPPLING_HOOK,
|
||||
NAILGUN,
|
||||
PROX_LAUNCHER,
|
||||
CHAINGUN,
|
||||
};
|
||||
|
||||
//! aplly a special effect to the shader
|
||||
enum eItemSpecialEffect
|
||||
{
|
||||
SPECIAL_SFX_NONE = 0,
|
||||
SPECIAL_SFX_ROTATE = 1,
|
||||
SPECIAL_SFX_BOUNCE = 2,
|
||||
SPECIAL_SFX_ROTATE_1 = 4,
|
||||
};
|
||||
|
||||
// a List for defining a model
|
||||
struct SItemElement
|
||||
{
|
||||
const c8 *key;
|
||||
const c8 *model[2];
|
||||
const c8 *sound;
|
||||
const c8 *icon;
|
||||
const c8 *pickup;
|
||||
s32 value;
|
||||
eItemGroup group;
|
||||
eItemSubGroup sub;
|
||||
u32 special;
|
||||
};
|
||||
|
||||
|
||||
//! Get's an entity based on it's key
|
||||
const SItemElement * getItemElement ( const stringc& key );
|
||||
|
||||
/*!
|
||||
Quake3 Model Factory.
|
||||
Takes the mesh buffers and creates scenenodes for their associated shaders
|
||||
*/
|
||||
void Q3ShaderFactory ( Q3LevelLoadParameter &loadParam,
|
||||
IrrlichtDevice *device,
|
||||
IQ3LevelMesh* mesh,
|
||||
eQ3MeshIndex meshIndex,
|
||||
ISceneNode *parent,
|
||||
IMetaTriangleSelector *meta,
|
||||
bool showShaderName
|
||||
);
|
||||
|
||||
|
||||
/*!
|
||||
Creates Model based on the entity list
|
||||
*/
|
||||
void Q3ModelFactory ( Q3LevelLoadParameter &loadParam,
|
||||
IrrlichtDevice *device,
|
||||
IQ3LevelMesh* masterMesh,
|
||||
ISceneNode *parent,
|
||||
bool showShaderName
|
||||
);
|
||||
|
||||
/*!
|
||||
so we need a good starting Position in the level.
|
||||
we can ask the Quake3 Loader for all entities with class_name "info_player_deathmatch"
|
||||
*/
|
||||
s32 Q3StartPosition ( IQ3LevelMesh* mesh,
|
||||
ICameraSceneNode* camera,
|
||||
s32 startposIndex,
|
||||
const vector3df &translation
|
||||
);
|
||||
/*!
|
||||
gets a accumulated force on a given surface
|
||||
*/
|
||||
vector3df getGravity ( const c8 * surface );
|
||||
|
||||
|
||||
/*
|
||||
Dynamically load the Irrlicht Library
|
||||
*/
|
||||
funcptr_createDevice load_createDevice ( const c8 * filename);
|
||||
funcptr_createDeviceEx load_createDeviceEx ( const c8 * filename);
|
||||
|
||||
|
||||
//! Macro for save Dropping an Element
|
||||
#define dropElement(x) if (x) { x->remove(); x = 0; }
|
||||
|
||||
|
||||
/*
|
||||
get the current collision respone camera animator
|
||||
*/
|
||||
ISceneNodeAnimatorCollisionResponse* camCollisionResponse( IrrlichtDevice * device );
|
||||
|
||||
//! internal Animation
|
||||
enum eTimeFireFlag
|
||||
{
|
||||
FIRED = 1,
|
||||
};
|
||||
|
||||
struct TimeFire
|
||||
{
|
||||
u32 flags;
|
||||
u32 next;
|
||||
u32 delta;
|
||||
};
|
||||
|
||||
void setTimeFire ( TimeFire *t, u32 delta, u32 flags = 0 );
|
||||
void checkTimeFire ( TimeFire *t, u32 listSize, u32 now );
|
||||
|
||||
#endif // __QUAKE3_FACTORY__H_INCLUDED__
|
||||
|
||||
|
98
examples/21.Quake3Explorer/sound.cpp
Normal file
98
examples/21.Quake3Explorer/sound.cpp
Normal file
@ -0,0 +1,98 @@
|
||||
/*!
|
||||
Sound Factory.
|
||||
provides a sound interface
|
||||
|
||||
*/
|
||||
|
||||
#include "sound.h"
|
||||
|
||||
|
||||
//#define USE_IRRKLANG
|
||||
|
||||
#ifdef USE_IRRKLANG
|
||||
|
||||
#include <irrKlang.h>
|
||||
#ifdef _MSC_VER
|
||||
#pragma comment (lib, "irrKlang.lib")
|
||||
#endif
|
||||
|
||||
using namespace irrklang;
|
||||
|
||||
struct soundfile: public IFileReader
|
||||
{
|
||||
soundfile ( io::IReadFile* f ): file (f ) {}
|
||||
virtual ~soundfile () { file->drop (); }
|
||||
|
||||
virtual ik_s32 read(void* buffer, ik_u32 sizeToRead) { return file->read ( buffer, sizeToRead ); }
|
||||
virtual bool seek(ik_s32 finalPos, bool relativeMovement = false) { return file->seek ( finalPos, relativeMovement ); }
|
||||
virtual ik_s32 getSize(){ return file->getSize (); }
|
||||
virtual ik_s32 getPos() {return file->getPos (); }
|
||||
virtual const ik_c8* getFileName() { return file->getFileName().c_str(); }
|
||||
io::IReadFile* file;
|
||||
};
|
||||
|
||||
struct klangFactory : public irrklang::IFileFactory
|
||||
{
|
||||
klangFactory ( IrrlichtDevice *device ) { Device = device; }
|
||||
|
||||
virtual irrklang::IFileReader* createFileReader(const ik_c8* filename)
|
||||
{
|
||||
io::IReadFile* file = Device->getFileSystem()->createAndOpenFile(filename);
|
||||
if ( 0 == file )
|
||||
return 0;
|
||||
|
||||
return new soundfile ( file );
|
||||
}
|
||||
|
||||
IrrlichtDevice *Device;
|
||||
};
|
||||
|
||||
ISoundEngine *engine = 0;
|
||||
ISound *backMusic = 0;
|
||||
|
||||
void sound_init ( IrrlichtDevice *device )
|
||||
{
|
||||
engine = createIrrKlangDevice ();
|
||||
if ( 0 == engine )
|
||||
return;
|
||||
|
||||
klangFactory *f = new klangFactory ( device );
|
||||
engine->addFileFactory ( f );
|
||||
}
|
||||
|
||||
void sound_shutdown ()
|
||||
{
|
||||
if ( backMusic )
|
||||
backMusic->drop ();
|
||||
|
||||
if ( engine )
|
||||
engine->drop ();
|
||||
}
|
||||
|
||||
void background_music ( const c8 * file )
|
||||
{
|
||||
if ( 0 == engine )
|
||||
return;
|
||||
|
||||
if ( backMusic )
|
||||
{
|
||||
backMusic->stop ();
|
||||
backMusic->drop ();
|
||||
}
|
||||
|
||||
backMusic = engine->play2D ( file, true, false, true );
|
||||
|
||||
if ( backMusic )
|
||||
{
|
||||
backMusic->setVolume ( 0.5f );
|
||||
}
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
void sound_init ( IrrlichtDevice *device ) {}
|
||||
void sound_shutdown () {}
|
||||
void background_music ( const c8 * file ) {}
|
||||
|
||||
#endif
|
||||
|
18
examples/21.Quake3Explorer/sound.h
Normal file
18
examples/21.Quake3Explorer/sound.h
Normal file
@ -0,0 +1,18 @@
|
||||
/*!
|
||||
Sound Factory.
|
||||
provides a sound interface
|
||||
|
||||
*/
|
||||
#ifndef __QUAKE3_SOUND__H_INCLUDED__
|
||||
#define __QUAKE3_SOUND__H_INCLUDED__
|
||||
|
||||
#include <irrlicht.h>
|
||||
|
||||
using namespace irr;
|
||||
|
||||
void sound_init ( IrrlichtDevice *device );
|
||||
void sound_shutdown ();
|
||||
void background_music ( const c8 * file );
|
||||
|
||||
|
||||
#endif // __QUAKE3_SOUND__H_INCLUDED__
|
Reference in New Issue
Block a user