diff options
author | David Walter Seikel | 2013-01-13 17:24:39 +1000 |
---|---|---|
committer | David Walter Seikel | 2013-01-13 17:24:39 +1000 |
commit | 393b5cd1dc438872af89d334ef6e5fcc59f27d47 (patch) | |
tree | 6a14521219942a08a1b95cb2f5a923a9edd60f63 /libraries/irrlicht-1.8/examples/16.Quake3MapShader | |
parent | Add a note about rasters suggested start up code. (diff) | |
download | SledjHamr-393b5cd1dc438872af89d334ef6e5fcc59f27d47.zip SledjHamr-393b5cd1dc438872af89d334ef6e5fcc59f27d47.tar.gz SledjHamr-393b5cd1dc438872af89d334ef6e5fcc59f27d47.tar.bz2 SledjHamr-393b5cd1dc438872af89d334ef6e5fcc59f27d47.tar.xz |
Added Irrlicht 1.8, but without all the Windows binaries.
Diffstat (limited to 'libraries/irrlicht-1.8/examples/16.Quake3MapShader')
9 files changed, 1436 insertions, 0 deletions
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Makefile b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Makefile new file mode 100644 index 0000000..952b309 --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Makefile | |||
@@ -0,0 +1,38 @@ | |||
1 | # Makefile for Irrlicht Examples | ||
2 | # It's usually sufficient to change just the target name and source file list | ||
3 | # and be sure that CXX is set to a valid compiler | ||
4 | Target = 16.Quake3MapShader | ||
5 | Sources = main.cpp | ||
6 | |||
7 | # general compiler settings | ||
8 | CPPFLAGS = -I../../include -I/usr/X11R6/include | ||
9 | CXXFLAGS = -O3 -ffast-math | ||
10 | #CXXFLAGS = -g -Wall | ||
11 | |||
12 | #default target is Linux | ||
13 | all: all_linux | ||
14 | |||
15 | ifeq ($(HOSTTYPE), x86_64) | ||
16 | LIBSELECT=64 | ||
17 | endif | ||
18 | |||
19 | # target specific settings | ||
20 | all_linux: LDFLAGS = -L/usr/X11R6/lib$(LIBSELECT) -L../../lib/Linux -lIrrlicht -lGL -lXxf86vm -lXext -lX11 -lXcursor | ||
21 | all_linux clean_linux: SYSTEM=Linux | ||
22 | all_win32: LDFLAGS = -L../../lib/Win32-gcc -lIrrlicht -lopengl32 -lm | ||
23 | all_win32 clean_win32: SYSTEM=Win32-gcc | ||
24 | all_win32 clean_win32: SUF=.exe | ||
25 | # name of the binary - only valid for targets which set SYSTEM | ||
26 | DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF) | ||
27 | |||
28 | all_linux all_win32: | ||
29 | $(warning Building...) | ||
30 | $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS) | ||
31 | |||
32 | clean: clean_linux clean_win32 | ||
33 | $(warning Cleaning...) | ||
34 | |||
35 | clean_linux clean_win32: | ||
36 | @$(RM) $(DESTPATH) | ||
37 | |||
38 | .PHONY: all all_win32 clean clean_linux clean_win32 | ||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.cbp b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.cbp new file mode 100644 index 0000000..6fc6bb3 --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.cbp | |||
@@ -0,0 +1,56 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | ||
2 | <CodeBlocks_project_file> | ||
3 | <FileVersion major="1" minor="6" /> | ||
4 | <Project> | ||
5 | <Option title="Irrlicht Example 16 Quake 3 Map Shader" /> | ||
6 | <Option pch_mode="0" /> | ||
7 | <Option compiler="gcc" /> | ||
8 | <Build> | ||
9 | <Target title="Windows"> | ||
10 | <Option platforms="Windows;" /> | ||
11 | <Option output="..\..\bin\Win32-gcc\Q3MapShader" prefix_auto="0" extension_auto="1" /> | ||
12 | <Option type="1" /> | ||
13 | <Option compiler="gcc" /> | ||
14 | <Compiler> | ||
15 | <Add option="-g" /> | ||
16 | </Compiler> | ||
17 | <Linker> | ||
18 | <Add directory="..\..\lib\Win32-gcc" /> | ||
19 | </Linker> | ||
20 | </Target> | ||
21 | <Target title="Linux"> | ||
22 | <Option platforms="Unix;" /> | ||
23 | <Option output="..\..\bin\Linux\Q3MapShader" prefix_auto="0" extension_auto="0" /> | ||
24 | <Option type="1" /> | ||
25 | <Option compiler="gcc" /> | ||
26 | <Compiler> | ||
27 | <Add option="-g" /> | ||
28 | <Add option="-D_IRR_STATIC_LIB_" /> | ||
29 | <Add directory="..\..\lib\Linux" /> | ||
30 | </Compiler> | ||
31 | <Linker> | ||
32 | <Add library="Xxf86vm" /> | ||
33 | <Add library="Xcursor" /> | ||
34 | <Add library="GL" /> | ||
35 | <Add directory="..\..\lib\Linux" /> | ||
36 | </Linker> | ||
37 | </Target> | ||
38 | </Build> | ||
39 | <VirtualTargets> | ||
40 | <Add alias="All" targets="Windows;Linux;" /> | ||
41 | </VirtualTargets> | ||
42 | <Compiler> | ||
43 | <Add option="-g" /> | ||
44 | <Add directory="..\..\include" /> | ||
45 | </Compiler> | ||
46 | <Linker> | ||
47 | <Add library="Irrlicht" /> | ||
48 | </Linker> | ||
49 | <Unit filename="main.cpp" /> | ||
50 | <Extensions> | ||
51 | <code_completion /> | ||
52 | <debugger /> | ||
53 | <envvars /> | ||
54 | </Extensions> | ||
55 | </Project> | ||
56 | </CodeBlocks_project_file> | ||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.dev b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.dev new file mode 100644 index 0000000..14ebb42 --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.dev | |||
@@ -0,0 +1,59 @@ | |||
1 | [Project] | ||
2 | FileName=example.dev | ||
3 | Name=Irrlicht Example 16 Quake3 Map Shader | ||
4 | UnitCount=1 | ||
5 | Type=1 | ||
6 | Ver=1 | ||
7 | ObjFiles= | ||
8 | Includes=..\..\include | ||
9 | Libs= | ||
10 | PrivateResource= | ||
11 | ResourceIncludes= | ||
12 | MakeIncludes= | ||
13 | Compiler= | ||
14 | CppCompiler= | ||
15 | Linker=../../lib/Win32-gcc/libIrrlicht.a_@@_ | ||
16 | IsCpp=1 | ||
17 | Icon= | ||
18 | ExeOutput=../../bin/Win32-gcc | ||
19 | ObjectOutput=obj | ||
20 | OverrideOutput=1 | ||
21 | OverrideOutputName=16.Quake3MapShader.exe | ||
22 | HostApplication= | ||
23 | Folders= | ||
24 | CommandLine= | ||
25 | IncludeVersionInfo=0 | ||
26 | SupportXPThemes=0 | ||
27 | CompilerSet=0 | ||
28 | CompilerSettings=0000000000000000000000 | ||
29 | UseCustomMakefile=0 | ||
30 | CustomMakefile= | ||
31 | |||
32 | [Unit1] | ||
33 | FileName=main.cpp | ||
34 | CompileCpp=1 | ||
35 | Folder=Projekt1 | ||
36 | Compile=1 | ||
37 | Link=1 | ||
38 | Priority=1000 | ||
39 | OverrideBuildCmd=0 | ||
40 | BuildCmd= | ||
41 | |||
42 | [VersionInfo] | ||
43 | Major=0 | ||
44 | Minor=1 | ||
45 | Release=1 | ||
46 | Build=1 | ||
47 | LanguageID=1033 | ||
48 | CharsetID=1252 | ||
49 | CompanyName= | ||
50 | FileVersion= | ||
51 | FileDescription=Irrlicht Engine example compiled using DevCpp and gcc | ||
52 | InternalName= | ||
53 | LegalCopyright= | ||
54 | LegalTrademarks= | ||
55 | OriginalFilename= | ||
56 | ProductName= | ||
57 | ProductVersion= | ||
58 | AutoIncBuildNr=0 | ||
59 | |||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.vcproj b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.vcproj new file mode 100644 index 0000000..de658b3 --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader.vcproj | |||
@@ -0,0 +1,133 @@ | |||
1 | <?xml version="1.0" encoding="Windows-1252"?> | ||
2 | <VisualStudioProject | ||
3 | ProjectType="Visual C++" | ||
4 | Version="7.10" | ||
5 | Name="16.Quake3MapShader" | ||
6 | ProjectGUID="{EB3B38EA-5CE7-4983-845B-880661E69D09}" | ||
7 | Keyword="Win32Proj"> | ||
8 | <Platforms> | ||
9 | <Platform | ||
10 | Name="Win32"/> | ||
11 | </Platforms> | ||
12 | <Configurations> | ||
13 | <Configuration | ||
14 | Name="Debug|Win32" | ||
15 | OutputDirectory="Debug" | ||
16 | IntermediateDirectory="Debug" | ||
17 | ConfigurationType="1" | ||
18 | CharacterSet="2"> | ||
19 | <Tool | ||
20 | Name="VCCLCompilerTool" | ||
21 | Optimization="0" | ||
22 | AdditionalIncludeDirectories="..\..\include" | ||
23 | PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS" | ||
24 | MinimalRebuild="TRUE" | ||
25 | BasicRuntimeChecks="3" | ||
26 | RuntimeLibrary="5" | ||
27 | UsePrecompiledHeader="0" | ||
28 | WarningLevel="3" | ||
29 | Detect64BitPortabilityProblems="TRUE" | ||
30 | DebugInformationFormat="4"/> | ||
31 | <Tool | ||
32 | Name="VCCustomBuildTool"/> | ||
33 | <Tool | ||
34 | Name="VCLinkerTool" | ||
35 | OutputFile="..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe" | ||
36 | LinkIncremental="0" | ||
37 | SuppressStartupBanner="TRUE" | ||
38 | AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio" | ||
39 | GenerateDebugInformation="TRUE" | ||
40 | ProgramDatabaseFile="$(OutDir)/Quake3MapShader.pdb" | ||
41 | SubSystem="1" | ||
42 | TargetMachine="1"/> | ||
43 | <Tool | ||
44 | Name="VCMIDLTool"/> | ||
45 | <Tool | ||
46 | Name="VCPostBuildEventTool"/> | ||
47 | <Tool | ||
48 | Name="VCPreBuildEventTool"/> | ||
49 | <Tool | ||
50 | Name="VCPreLinkEventTool"/> | ||
51 | <Tool | ||
52 | Name="VCResourceCompilerTool"/> | ||
53 | <Tool | ||
54 | Name="VCWebServiceProxyGeneratorTool"/> | ||
55 | <Tool | ||
56 | Name="VCXMLDataGeneratorTool"/> | ||
57 | <Tool | ||
58 | Name="VCWebDeploymentTool"/> | ||
59 | <Tool | ||
60 | Name="VCManagedWrapperGeneratorTool"/> | ||
61 | <Tool | ||
62 | Name="VCAuxiliaryManagedWrapperGeneratorTool"/> | ||
63 | </Configuration> | ||
64 | <Configuration | ||
65 | Name="Release|Win32" | ||
66 | OutputDirectory="Release" | ||
67 | IntermediateDirectory="Release" | ||
68 | ConfigurationType="1" | ||
69 | CharacterSet="2" | ||
70 | WholeProgramOptimization="TRUE"> | ||
71 | <Tool | ||
72 | Name="VCCLCompilerTool" | ||
73 | AdditionalOptions="/QIfist /Oa" | ||
74 | Optimization="3" | ||
75 | GlobalOptimizations="TRUE" | ||
76 | InlineFunctionExpansion="2" | ||
77 | EnableIntrinsicFunctions="TRUE" | ||
78 | FavorSizeOrSpeed="1" | ||
79 | OmitFramePointers="TRUE" | ||
80 | AdditionalIncludeDirectories="..\..\include" | ||
81 | PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" | ||
82 | RuntimeLibrary="4" | ||
83 | BufferSecurityCheck="FALSE" | ||
84 | UsePrecompiledHeader="0" | ||
85 | WarningLevel="3" | ||
86 | Detect64BitPortabilityProblems="TRUE" | ||
87 | DebugInformationFormat="0" | ||
88 | CallingConvention="1"/> | ||
89 | <Tool | ||
90 | Name="VCCustomBuildTool"/> | ||
91 | <Tool | ||
92 | Name="VCLinkerTool" | ||
93 | OutputFile="..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe" | ||
94 | LinkIncremental="0" | ||
95 | SuppressStartupBanner="TRUE" | ||
96 | AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio" | ||
97 | GenerateDebugInformation="FALSE" | ||
98 | SubSystem="1" | ||
99 | OptimizeReferences="2" | ||
100 | EnableCOMDATFolding="2" | ||
101 | TargetMachine="1"/> | ||
102 | <Tool | ||
103 | Name="VCMIDLTool"/> | ||
104 | <Tool | ||
105 | Name="VCPostBuildEventTool"/> | ||
106 | <Tool | ||
107 | Name="VCPreBuildEventTool"/> | ||
108 | <Tool | ||
109 | Name="VCPreLinkEventTool"/> | ||
110 | <Tool | ||
111 | Name="VCResourceCompilerTool"/> | ||
112 | <Tool | ||
113 | Name="VCWebServiceProxyGeneratorTool"/> | ||
114 | <Tool | ||
115 | Name="VCXMLDataGeneratorTool"/> | ||
116 | <Tool | ||
117 | Name="VCWebDeploymentTool"/> | ||
118 | <Tool | ||
119 | Name="VCManagedWrapperGeneratorTool"/> | ||
120 | <Tool | ||
121 | Name="VCAuxiliaryManagedWrapperGeneratorTool"/> | ||
122 | </Configuration> | ||
123 | </Configurations> | ||
124 | <References> | ||
125 | </References> | ||
126 | <Files> | ||
127 | <File | ||
128 | RelativePath=".\main.cpp"> | ||
129 | </File> | ||
130 | </Files> | ||
131 | <Globals> | ||
132 | </Globals> | ||
133 | </VisualStudioProject> | ||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc10.vcxproj b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc10.vcxproj new file mode 100644 index 0000000..ea09774 --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc10.vcxproj | |||
@@ -0,0 +1,190 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | <ItemGroup Label="ProjectConfigurations"> | ||
4 | <ProjectConfiguration Include="Debug|Win32"> | ||
5 | <Configuration>Debug</Configuration> | ||
6 | <Platform>Win32</Platform> | ||
7 | </ProjectConfiguration> | ||
8 | <ProjectConfiguration Include="Debug|x64"> | ||
9 | <Configuration>Debug</Configuration> | ||
10 | <Platform>x64</Platform> | ||
11 | </ProjectConfiguration> | ||
12 | <ProjectConfiguration Include="Release|Win32"> | ||
13 | <Configuration>Release</Configuration> | ||
14 | <Platform>Win32</Platform> | ||
15 | </ProjectConfiguration> | ||
16 | <ProjectConfiguration Include="Release|x64"> | ||
17 | <Configuration>Release</Configuration> | ||
18 | <Platform>x64</Platform> | ||
19 | </ProjectConfiguration> | ||
20 | </ItemGroup> | ||
21 | <PropertyGroup Label="Globals"> | ||
22 | <ProjectName>16.Quake3MapShader</ProjectName> | ||
23 | <ProjectGuid>{EB3B38EA-5CE7-4983-845B-880661E69D09}</ProjectGuid> | ||
24 | <RootNamespace>16.Quake3MapShader</RootNamespace> | ||
25 | <Keyword>Win32Proj</Keyword> | ||
26 | </PropertyGroup> | ||
27 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | ||
28 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> | ||
29 | <ConfigurationType>Application</ConfigurationType> | ||
30 | <CharacterSet>MultiByte</CharacterSet> | ||
31 | </PropertyGroup> | ||
32 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> | ||
33 | <ConfigurationType>Application</ConfigurationType> | ||
34 | <CharacterSet>MultiByte</CharacterSet> | ||
35 | </PropertyGroup> | ||
36 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> | ||
37 | <ConfigurationType>Application</ConfigurationType> | ||
38 | <CharacterSet>MultiByte</CharacterSet> | ||
39 | </PropertyGroup> | ||
40 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> | ||
41 | <ConfigurationType>Application</ConfigurationType> | ||
42 | <CharacterSet>MultiByte</CharacterSet> | ||
43 | </PropertyGroup> | ||
44 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | ||
45 | <ImportGroup Label="ExtensionSettings"> | ||
46 | </ImportGroup> | ||
47 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> | ||
48 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
49 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
50 | </ImportGroup> | ||
51 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> | ||
52 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
53 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
54 | </ImportGroup> | ||
55 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> | ||
56 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
57 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
58 | </ImportGroup> | ||
59 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> | ||
60 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
61 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
62 | </ImportGroup> | ||
63 | <PropertyGroup Label="UserMacros" /> | ||
64 | <PropertyGroup> | ||
65 | <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion> | ||
66 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir> | ||
67 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir> | ||
68 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> | ||
69 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> | ||
70 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir> | ||
71 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir> | ||
72 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> | ||
73 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> | ||
74 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
75 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
76 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> | ||
77 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> | ||
78 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> | ||
79 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> | ||
80 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
81 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
82 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> | ||
83 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> | ||
84 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> | ||
85 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> | ||
86 | </PropertyGroup> | ||
87 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> | ||
88 | <ClCompile> | ||
89 | <Optimization>Disabled</Optimization> | ||
90 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
91 | <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
92 | <MinimalRebuild>true</MinimalRebuild> | ||
93 | <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> | ||
94 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> | ||
95 | <PrecompiledHeader> | ||
96 | </PrecompiledHeader> | ||
97 | <WarningLevel>Level3</WarningLevel> | ||
98 | <DebugInformationFormat>EditAndContinue</DebugInformationFormat> | ||
99 | <CallingConvention>Cdecl</CallingConvention> | ||
100 | </ClCompile> | ||
101 | <Link> | ||
102 | <OutputFile>..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
103 | <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
104 | <GenerateDebugInformation>true</GenerateDebugInformation> | ||
105 | <SubSystem>Console</SubSystem> | ||
106 | <DataExecutionPrevention> | ||
107 | </DataExecutionPrevention> | ||
108 | </Link> | ||
109 | </ItemDefinitionGroup> | ||
110 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||
111 | <ClCompile> | ||
112 | <Optimization>Disabled</Optimization> | ||
113 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
114 | <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
115 | <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> | ||
116 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> | ||
117 | <PrecompiledHeader> | ||
118 | </PrecompiledHeader> | ||
119 | <WarningLevel>Level3</WarningLevel> | ||
120 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> | ||
121 | <CallingConvention>Cdecl</CallingConvention> | ||
122 | </ClCompile> | ||
123 | <Link> | ||
124 | <OutputFile>..\..\bin\Win64-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
125 | <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
126 | <GenerateDebugInformation>true</GenerateDebugInformation> | ||
127 | <SubSystem>Console</SubSystem> | ||
128 | <DataExecutionPrevention> | ||
129 | </DataExecutionPrevention> | ||
130 | </Link> | ||
131 | </ItemDefinitionGroup> | ||
132 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> | ||
133 | <ClCompile> | ||
134 | <IntrinsicFunctions>true</IntrinsicFunctions> | ||
135 | <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> | ||
136 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
137 | <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
138 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> | ||
139 | <BufferSecurityCheck>false</BufferSecurityCheck> | ||
140 | <PrecompiledHeader> | ||
141 | </PrecompiledHeader> | ||
142 | <WarningLevel>Level3</WarningLevel> | ||
143 | <DebugInformationFormat> | ||
144 | </DebugInformationFormat> | ||
145 | <CallingConvention>Cdecl</CallingConvention> | ||
146 | </ClCompile> | ||
147 | <Link> | ||
148 | <OutputFile>..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
149 | <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
150 | <GenerateDebugInformation>false</GenerateDebugInformation> | ||
151 | <SubSystem>Console</SubSystem> | ||
152 | <OptimizeReferences>true</OptimizeReferences> | ||
153 | <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
154 | <DataExecutionPrevention> | ||
155 | </DataExecutionPrevention> | ||
156 | </Link> | ||
157 | </ItemDefinitionGroup> | ||
158 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> | ||
159 | <ClCompile> | ||
160 | <IntrinsicFunctions>true</IntrinsicFunctions> | ||
161 | <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> | ||
162 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
163 | <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
164 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> | ||
165 | <BufferSecurityCheck>false</BufferSecurityCheck> | ||
166 | <PrecompiledHeader> | ||
167 | </PrecompiledHeader> | ||
168 | <WarningLevel>Level3</WarningLevel> | ||
169 | <DebugInformationFormat> | ||
170 | </DebugInformationFormat> | ||
171 | <CallingConvention>Cdecl</CallingConvention> | ||
172 | </ClCompile> | ||
173 | <Link> | ||
174 | <OutputFile>..\..\bin\Win64-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
175 | <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
176 | <GenerateDebugInformation>false</GenerateDebugInformation> | ||
177 | <SubSystem>Console</SubSystem> | ||
178 | <OptimizeReferences>true</OptimizeReferences> | ||
179 | <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
180 | <DataExecutionPrevention> | ||
181 | </DataExecutionPrevention> | ||
182 | </Link> | ||
183 | </ItemDefinitionGroup> | ||
184 | <ItemGroup> | ||
185 | <ClCompile Include="main.cpp" /> | ||
186 | </ItemGroup> | ||
187 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||
188 | <ImportGroup Label="ExtensionTargets"> | ||
189 | </ImportGroup> | ||
190 | </Project> \ No newline at end of file | ||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc11.vcxproj b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc11.vcxproj new file mode 100644 index 0000000..1bd3735 --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc11.vcxproj | |||
@@ -0,0 +1,194 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
3 | <ItemGroup Label="ProjectConfigurations"> | ||
4 | <ProjectConfiguration Include="Debug|Win32"> | ||
5 | <Configuration>Debug</Configuration> | ||
6 | <Platform>Win32</Platform> | ||
7 | </ProjectConfiguration> | ||
8 | <ProjectConfiguration Include="Debug|x64"> | ||
9 | <Configuration>Debug</Configuration> | ||
10 | <Platform>x64</Platform> | ||
11 | </ProjectConfiguration> | ||
12 | <ProjectConfiguration Include="Release|Win32"> | ||
13 | <Configuration>Release</Configuration> | ||
14 | <Platform>Win32</Platform> | ||
15 | </ProjectConfiguration> | ||
16 | <ProjectConfiguration Include="Release|x64"> | ||
17 | <Configuration>Release</Configuration> | ||
18 | <Platform>x64</Platform> | ||
19 | </ProjectConfiguration> | ||
20 | </ItemGroup> | ||
21 | <PropertyGroup Label="Globals"> | ||
22 | <ProjectName>16.Quake3MapShader</ProjectName> | ||
23 | <ProjectGuid>{EB3B38EA-5CE7-4983-845B-880661E69D09}</ProjectGuid> | ||
24 | <RootNamespace>16.Quake3MapShader</RootNamespace> | ||
25 | <Keyword>Win32Proj</Keyword> | ||
26 | </PropertyGroup> | ||
27 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | ||
28 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> | ||
29 | <ConfigurationType>Application</ConfigurationType> | ||
30 | <CharacterSet>MultiByte</CharacterSet> | ||
31 | <PlatformToolset>v110</PlatformToolset> | ||
32 | </PropertyGroup> | ||
33 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> | ||
34 | <ConfigurationType>Application</ConfigurationType> | ||
35 | <CharacterSet>MultiByte</CharacterSet> | ||
36 | <PlatformToolset>v110</PlatformToolset> | ||
37 | </PropertyGroup> | ||
38 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> | ||
39 | <ConfigurationType>Application</ConfigurationType> | ||
40 | <CharacterSet>MultiByte</CharacterSet> | ||
41 | <PlatformToolset>v110</PlatformToolset> | ||
42 | </PropertyGroup> | ||
43 | <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> | ||
44 | <ConfigurationType>Application</ConfigurationType> | ||
45 | <CharacterSet>MultiByte</CharacterSet> | ||
46 | <PlatformToolset>v110</PlatformToolset> | ||
47 | </PropertyGroup> | ||
48 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | ||
49 | <ImportGroup Label="ExtensionSettings"> | ||
50 | </ImportGroup> | ||
51 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> | ||
52 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
53 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
54 | </ImportGroup> | ||
55 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> | ||
56 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
57 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
58 | </ImportGroup> | ||
59 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> | ||
60 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
61 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
62 | </ImportGroup> | ||
63 | <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> | ||
64 | <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
65 | <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" /> | ||
66 | </ImportGroup> | ||
67 | <PropertyGroup Label="UserMacros" /> | ||
68 | <PropertyGroup> | ||
69 | <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion> | ||
70 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir> | ||
71 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir> | ||
72 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> | ||
73 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> | ||
74 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir> | ||
75 | <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir> | ||
76 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> | ||
77 | <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> | ||
78 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
79 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
80 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> | ||
81 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> | ||
82 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" /> | ||
83 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" /> | ||
84 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
85 | <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet> | ||
86 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> | ||
87 | <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> | ||
88 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" /> | ||
89 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> | ||
90 | </PropertyGroup> | ||
91 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> | ||
92 | <ClCompile> | ||
93 | <Optimization>Disabled</Optimization> | ||
94 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
95 | <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
96 | <MinimalRebuild>true</MinimalRebuild> | ||
97 | <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> | ||
98 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> | ||
99 | <PrecompiledHeader> | ||
100 | </PrecompiledHeader> | ||
101 | <WarningLevel>Level3</WarningLevel> | ||
102 | <DebugInformationFormat>EditAndContinue</DebugInformationFormat> | ||
103 | <CallingConvention>Cdecl</CallingConvention> | ||
104 | </ClCompile> | ||
105 | <Link> | ||
106 | <OutputFile>..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
107 | <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
108 | <GenerateDebugInformation>true</GenerateDebugInformation> | ||
109 | <SubSystem>Console</SubSystem> | ||
110 | <DataExecutionPrevention> | ||
111 | </DataExecutionPrevention> | ||
112 | </Link> | ||
113 | </ItemDefinitionGroup> | ||
114 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||
115 | <ClCompile> | ||
116 | <Optimization>Disabled</Optimization> | ||
117 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
118 | <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
119 | <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> | ||
120 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> | ||
121 | <PrecompiledHeader> | ||
122 | </PrecompiledHeader> | ||
123 | <WarningLevel>Level3</WarningLevel> | ||
124 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> | ||
125 | <CallingConvention>Cdecl</CallingConvention> | ||
126 | </ClCompile> | ||
127 | <Link> | ||
128 | <OutputFile>..\..\bin\Win64-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
129 | <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
130 | <GenerateDebugInformation>true</GenerateDebugInformation> | ||
131 | <SubSystem>Console</SubSystem> | ||
132 | <DataExecutionPrevention> | ||
133 | </DataExecutionPrevention> | ||
134 | </Link> | ||
135 | </ItemDefinitionGroup> | ||
136 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> | ||
137 | <ClCompile> | ||
138 | <IntrinsicFunctions>true</IntrinsicFunctions> | ||
139 | <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> | ||
140 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
141 | <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
142 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> | ||
143 | <BufferSecurityCheck>false</BufferSecurityCheck> | ||
144 | <PrecompiledHeader> | ||
145 | </PrecompiledHeader> | ||
146 | <WarningLevel>Level3</WarningLevel> | ||
147 | <DebugInformationFormat> | ||
148 | </DebugInformationFormat> | ||
149 | <CallingConvention>Cdecl</CallingConvention> | ||
150 | </ClCompile> | ||
151 | <Link> | ||
152 | <OutputFile>..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
153 | <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
154 | <GenerateDebugInformation>false</GenerateDebugInformation> | ||
155 | <SubSystem>Console</SubSystem> | ||
156 | <OptimizeReferences>true</OptimizeReferences> | ||
157 | <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
158 | <DataExecutionPrevention> | ||
159 | </DataExecutionPrevention> | ||
160 | </Link> | ||
161 | </ItemDefinitionGroup> | ||
162 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> | ||
163 | <ClCompile> | ||
164 | <IntrinsicFunctions>true</IntrinsicFunctions> | ||
165 | <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> | ||
166 | <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
167 | <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
168 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> | ||
169 | <BufferSecurityCheck>false</BufferSecurityCheck> | ||
170 | <PrecompiledHeader> | ||
171 | </PrecompiledHeader> | ||
172 | <WarningLevel>Level3</WarningLevel> | ||
173 | <DebugInformationFormat> | ||
174 | </DebugInformationFormat> | ||
175 | <CallingConvention>Cdecl</CallingConvention> | ||
176 | </ClCompile> | ||
177 | <Link> | ||
178 | <OutputFile>..\..\bin\Win64-VisualStudio\16.Quake3MapShader.exe</OutputFile> | ||
179 | <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
180 | <GenerateDebugInformation>false</GenerateDebugInformation> | ||
181 | <SubSystem>Console</SubSystem> | ||
182 | <OptimizeReferences>true</OptimizeReferences> | ||
183 | <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
184 | <DataExecutionPrevention> | ||
185 | </DataExecutionPrevention> | ||
186 | </Link> | ||
187 | </ItemDefinitionGroup> | ||
188 | <ItemGroup> | ||
189 | <ClCompile Include="main.cpp" /> | ||
190 | </ItemGroup> | ||
191 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||
192 | <ImportGroup Label="ExtensionTargets"> | ||
193 | </ImportGroup> | ||
194 | </Project> \ No newline at end of file | ||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc8.vcproj b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc8.vcproj new file mode 100644 index 0000000..65fc83c --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc8.vcproj | |||
@@ -0,0 +1,190 @@ | |||
1 | <?xml version="1.0" encoding="Windows-1252"?> | ||
2 | <VisualStudioProject | ||
3 | ProjectType="Visual C++" | ||
4 | Version="8.00" | ||
5 | Name="16.Quake3MapShader_vc8" | ||
6 | ProjectGUID="{EB3B38EA-5CE7-4983-845B-880661E69D09}" | ||
7 | Keyword="Win32Proj" | ||
8 | > | ||
9 | <Platforms> | ||
10 | <Platform | ||
11 | Name="Win32" | ||
12 | /> | ||
13 | </Platforms> | ||
14 | <ToolFiles> | ||
15 | </ToolFiles> | ||
16 | <Configurations> | ||
17 | <Configuration | ||
18 | Name="Debug|Win32" | ||
19 | OutputDirectory="Debug" | ||
20 | IntermediateDirectory="Debug" | ||
21 | ConfigurationType="1" | ||
22 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
23 | CharacterSet="2" | ||
24 | > | ||
25 | <Tool | ||
26 | Name="VCPreBuildEventTool" | ||
27 | /> | ||
28 | <Tool | ||
29 | Name="VCCustomBuildTool" | ||
30 | /> | ||
31 | <Tool | ||
32 | Name="VCXMLDataGeneratorTool" | ||
33 | /> | ||
34 | <Tool | ||
35 | Name="VCWebServiceProxyGeneratorTool" | ||
36 | /> | ||
37 | <Tool | ||
38 | Name="VCMIDLTool" | ||
39 | /> | ||
40 | <Tool | ||
41 | Name="VCCLCompilerTool" | ||
42 | Optimization="0" | ||
43 | AdditionalIncludeDirectories="..\..\include" | ||
44 | PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS" | ||
45 | MinimalRebuild="true" | ||
46 | BasicRuntimeChecks="3" | ||
47 | RuntimeLibrary="1" | ||
48 | UsePrecompiledHeader="0" | ||
49 | WarningLevel="3" | ||
50 | Detect64BitPortabilityProblems="true" | ||
51 | DebugInformationFormat="4" | ||
52 | /> | ||
53 | <Tool | ||
54 | Name="VCManagedResourceCompilerTool" | ||
55 | /> | ||
56 | <Tool | ||
57 | Name="VCResourceCompilerTool" | ||
58 | /> | ||
59 | <Tool | ||
60 | Name="VCPreLinkEventTool" | ||
61 | /> | ||
62 | <Tool | ||
63 | Name="VCLinkerTool" | ||
64 | OutputFile="..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe" | ||
65 | LinkIncremental="2" | ||
66 | AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio" | ||
67 | GenerateDebugInformation="true" | ||
68 | ProgramDatabaseFile="$(OutDir)/Quake3MapShader.pdb" | ||
69 | SubSystem="1" | ||
70 | TargetMachine="1" | ||
71 | /> | ||
72 | <Tool | ||
73 | Name="VCALinkTool" | ||
74 | /> | ||
75 | <Tool | ||
76 | Name="VCManifestTool" | ||
77 | /> | ||
78 | <Tool | ||
79 | Name="VCXDCMakeTool" | ||
80 | /> | ||
81 | <Tool | ||
82 | Name="VCBscMakeTool" | ||
83 | /> | ||
84 | <Tool | ||
85 | Name="VCFxCopTool" | ||
86 | /> | ||
87 | <Tool | ||
88 | Name="VCAppVerifierTool" | ||
89 | /> | ||
90 | <Tool | ||
91 | Name="VCWebDeploymentTool" | ||
92 | /> | ||
93 | <Tool | ||
94 | Name="VCPostBuildEventTool" | ||
95 | /> | ||
96 | </Configuration> | ||
97 | <Configuration | ||
98 | Name="Release|Win32" | ||
99 | OutputDirectory="Release" | ||
100 | IntermediateDirectory="Release" | ||
101 | ConfigurationType="1" | ||
102 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
103 | CharacterSet="2" | ||
104 | > | ||
105 | <Tool | ||
106 | Name="VCPreBuildEventTool" | ||
107 | /> | ||
108 | <Tool | ||
109 | Name="VCCustomBuildTool" | ||
110 | /> | ||
111 | <Tool | ||
112 | Name="VCXMLDataGeneratorTool" | ||
113 | /> | ||
114 | <Tool | ||
115 | Name="VCWebServiceProxyGeneratorTool" | ||
116 | /> | ||
117 | <Tool | ||
118 | Name="VCMIDLTool" | ||
119 | /> | ||
120 | <Tool | ||
121 | Name="VCCLCompilerTool" | ||
122 | EnableIntrinsicFunctions="true" | ||
123 | FavorSizeOrSpeed="1" | ||
124 | AdditionalIncludeDirectories="..\..\include" | ||
125 | PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" | ||
126 | RuntimeLibrary="0" | ||
127 | BufferSecurityCheck="false" | ||
128 | UsePrecompiledHeader="0" | ||
129 | WarningLevel="3" | ||
130 | Detect64BitPortabilityProblems="true" | ||
131 | DebugInformationFormat="0" | ||
132 | CallingConvention="1" | ||
133 | /> | ||
134 | <Tool | ||
135 | Name="VCManagedResourceCompilerTool" | ||
136 | /> | ||
137 | <Tool | ||
138 | Name="VCResourceCompilerTool" | ||
139 | /> | ||
140 | <Tool | ||
141 | Name="VCPreLinkEventTool" | ||
142 | /> | ||
143 | <Tool | ||
144 | Name="VCLinkerTool" | ||
145 | OutputFile="..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe" | ||
146 | LinkIncremental="0" | ||
147 | AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio" | ||
148 | GenerateDebugInformation="false" | ||
149 | SubSystem="1" | ||
150 | OptimizeReferences="2" | ||
151 | EnableCOMDATFolding="2" | ||
152 | TargetMachine="1" | ||
153 | /> | ||
154 | <Tool | ||
155 | Name="VCALinkTool" | ||
156 | /> | ||
157 | <Tool | ||
158 | Name="VCManifestTool" | ||
159 | /> | ||
160 | <Tool | ||
161 | Name="VCXDCMakeTool" | ||
162 | /> | ||
163 | <Tool | ||
164 | Name="VCBscMakeTool" | ||
165 | /> | ||
166 | <Tool | ||
167 | Name="VCFxCopTool" | ||
168 | /> | ||
169 | <Tool | ||
170 | Name="VCAppVerifierTool" | ||
171 | /> | ||
172 | <Tool | ||
173 | Name="VCWebDeploymentTool" | ||
174 | /> | ||
175 | <Tool | ||
176 | Name="VCPostBuildEventTool" | ||
177 | /> | ||
178 | </Configuration> | ||
179 | </Configurations> | ||
180 | <References> | ||
181 | </References> | ||
182 | <Files> | ||
183 | <File | ||
184 | RelativePath=".\main.cpp" | ||
185 | > | ||
186 | </File> | ||
187 | </Files> | ||
188 | <Globals> | ||
189 | </Globals> | ||
190 | </VisualStudioProject> | ||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc9.vcproj b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc9.vcproj new file mode 100644 index 0000000..a533ce0 --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/Quake3MapShader_vc9.vcproj | |||
@@ -0,0 +1,188 @@ | |||
1 | <?xml version="1.0" encoding="Windows-1252"?> | ||
2 | <VisualStudioProject | ||
3 | ProjectType="Visual C++" | ||
4 | Version="9,00" | ||
5 | Name="16.Quake3MapShader_vc9" | ||
6 | ProjectGUID="{EB3B38EA-5CE7-4983-845B-880661E69D09}" | ||
7 | RootNamespace="16.Quake3MapShader_vc9" | ||
8 | Keyword="Win32Proj" | ||
9 | TargetFrameworkVersion="131072" | ||
10 | > | ||
11 | <Platforms> | ||
12 | <Platform | ||
13 | Name="Win32" | ||
14 | /> | ||
15 | </Platforms> | ||
16 | <ToolFiles> | ||
17 | </ToolFiles> | ||
18 | <Configurations> | ||
19 | <Configuration | ||
20 | Name="Debug|Win32" | ||
21 | OutputDirectory="Debug" | ||
22 | IntermediateDirectory="Debug" | ||
23 | ConfigurationType="1" | ||
24 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
25 | CharacterSet="2" | ||
26 | > | ||
27 | <Tool | ||
28 | Name="VCPreBuildEventTool" | ||
29 | /> | ||
30 | <Tool | ||
31 | Name="VCCustomBuildTool" | ||
32 | /> | ||
33 | <Tool | ||
34 | Name="VCXMLDataGeneratorTool" | ||
35 | /> | ||
36 | <Tool | ||
37 | Name="VCWebServiceProxyGeneratorTool" | ||
38 | /> | ||
39 | <Tool | ||
40 | Name="VCMIDLTool" | ||
41 | /> | ||
42 | <Tool | ||
43 | Name="VCCLCompilerTool" | ||
44 | Optimization="0" | ||
45 | AdditionalIncludeDirectories="..\..\include" | ||
46 | PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS" | ||
47 | MinimalRebuild="true" | ||
48 | BasicRuntimeChecks="3" | ||
49 | RuntimeLibrary="1" | ||
50 | UsePrecompiledHeader="0" | ||
51 | WarningLevel="3" | ||
52 | DebugInformationFormat="4" | ||
53 | /> | ||
54 | <Tool | ||
55 | Name="VCManagedResourceCompilerTool" | ||
56 | /> | ||
57 | <Tool | ||
58 | Name="VCResourceCompilerTool" | ||
59 | /> | ||
60 | <Tool | ||
61 | Name="VCPreLinkEventTool" | ||
62 | /> | ||
63 | <Tool | ||
64 | Name="VCLinkerTool" | ||
65 | OutputFile="..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe" | ||
66 | LinkIncremental="2" | ||
67 | AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio" | ||
68 | GenerateDebugInformation="true" | ||
69 | ProgramDatabaseFile="$(OutDir)/Quake3MapShader.pdb" | ||
70 | SubSystem="1" | ||
71 | RandomizedBaseAddress="1" | ||
72 | DataExecutionPrevention="0" | ||
73 | TargetMachine="1" | ||
74 | /> | ||
75 | <Tool | ||
76 | Name="VCALinkTool" | ||
77 | /> | ||
78 | <Tool | ||
79 | Name="VCManifestTool" | ||
80 | /> | ||
81 | <Tool | ||
82 | Name="VCXDCMakeTool" | ||
83 | /> | ||
84 | <Tool | ||
85 | Name="VCBscMakeTool" | ||
86 | /> | ||
87 | <Tool | ||
88 | Name="VCFxCopTool" | ||
89 | /> | ||
90 | <Tool | ||
91 | Name="VCAppVerifierTool" | ||
92 | /> | ||
93 | <Tool | ||
94 | Name="VCPostBuildEventTool" | ||
95 | /> | ||
96 | </Configuration> | ||
97 | <Configuration | ||
98 | Name="Release|Win32" | ||
99 | OutputDirectory="Release" | ||
100 | IntermediateDirectory="Release" | ||
101 | ConfigurationType="1" | ||
102 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
103 | CharacterSet="2" | ||
104 | > | ||
105 | <Tool | ||
106 | Name="VCPreBuildEventTool" | ||
107 | /> | ||
108 | <Tool | ||
109 | Name="VCCustomBuildTool" | ||
110 | /> | ||
111 | <Tool | ||
112 | Name="VCXMLDataGeneratorTool" | ||
113 | /> | ||
114 | <Tool | ||
115 | Name="VCWebServiceProxyGeneratorTool" | ||
116 | /> | ||
117 | <Tool | ||
118 | Name="VCMIDLTool" | ||
119 | /> | ||
120 | <Tool | ||
121 | Name="VCCLCompilerTool" | ||
122 | EnableIntrinsicFunctions="true" | ||
123 | FavorSizeOrSpeed="1" | ||
124 | AdditionalIncludeDirectories="..\..\include" | ||
125 | PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" | ||
126 | RuntimeLibrary="0" | ||
127 | BufferSecurityCheck="false" | ||
128 | UsePrecompiledHeader="0" | ||
129 | WarningLevel="3" | ||
130 | DebugInformationFormat="0" | ||
131 | CallingConvention="1" | ||
132 | /> | ||
133 | <Tool | ||
134 | Name="VCManagedResourceCompilerTool" | ||
135 | /> | ||
136 | <Tool | ||
137 | Name="VCResourceCompilerTool" | ||
138 | /> | ||
139 | <Tool | ||
140 | Name="VCPreLinkEventTool" | ||
141 | /> | ||
142 | <Tool | ||
143 | Name="VCLinkerTool" | ||
144 | OutputFile="..\..\bin\Win32-VisualStudio\16.Quake3MapShader.exe" | ||
145 | LinkIncremental="0" | ||
146 | AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio" | ||
147 | GenerateDebugInformation="false" | ||
148 | SubSystem="1" | ||
149 | OptimizeReferences="2" | ||
150 | EnableCOMDATFolding="2" | ||
151 | RandomizedBaseAddress="1" | ||
152 | DataExecutionPrevention="0" | ||
153 | TargetMachine="1" | ||
154 | /> | ||
155 | <Tool | ||
156 | Name="VCALinkTool" | ||
157 | /> | ||
158 | <Tool | ||
159 | Name="VCManifestTool" | ||
160 | /> | ||
161 | <Tool | ||
162 | Name="VCXDCMakeTool" | ||
163 | /> | ||
164 | <Tool | ||
165 | Name="VCBscMakeTool" | ||
166 | /> | ||
167 | <Tool | ||
168 | Name="VCFxCopTool" | ||
169 | /> | ||
170 | <Tool | ||
171 | Name="VCAppVerifierTool" | ||
172 | /> | ||
173 | <Tool | ||
174 | Name="VCPostBuildEventTool" | ||
175 | /> | ||
176 | </Configuration> | ||
177 | </Configurations> | ||
178 | <References> | ||
179 | </References> | ||
180 | <Files> | ||
181 | <File | ||
182 | RelativePath=".\main.cpp" | ||
183 | > | ||
184 | </File> | ||
185 | </Files> | ||
186 | <Globals> | ||
187 | </Globals> | ||
188 | </VisualStudioProject> | ||
diff --git a/libraries/irrlicht-1.8/examples/16.Quake3MapShader/main.cpp b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/main.cpp new file mode 100644 index 0000000..1e5d55e --- /dev/null +++ b/libraries/irrlicht-1.8/examples/16.Quake3MapShader/main.cpp | |||
@@ -0,0 +1,388 @@ | |||
1 | /** Example 016 Quake3 Map Shader Support | ||
2 | |||
3 | This Tutorial shows how to load a Quake 3 map into the | ||
4 | engine, create a SceneNode for optimizing the speed of | ||
5 | rendering and how to create a user controlled camera. | ||
6 | |||
7 | Lets start like the HelloWorld example: We include | ||
8 | the irrlicht header files and an additional file to be able | ||
9 | to ask the user for a driver type using the console. | ||
10 | */ | ||
11 | #include <irrlicht.h> | ||
12 | #include "driverChoice.h" | ||
13 | |||
14 | /* | ||
15 | define which Quake3 Level should be loaded | ||
16 | */ | ||
17 | #define IRRLICHT_QUAKE3_ARENA | ||
18 | //#define ORIGINAL_QUAKE3_ARENA | ||
19 | //#define CUSTOM_QUAKE3_ARENA | ||
20 | //#define SHOW_SHADER_NAME | ||
21 | |||
22 | #ifdef ORIGINAL_QUAKE3_ARENA | ||
23 | #define QUAKE3_STORAGE_FORMAT addFolderFileArchive | ||
24 | #define QUAKE3_STORAGE_1 "/baseq3/" | ||
25 | #ifdef CUSTOM_QUAKE3_ARENA | ||
26 | #define QUAKE3_STORAGE_2 "/cf/" | ||
27 | #define QUAKE3_MAP_NAME "maps/cf.bsp" | ||
28 | #else | ||
29 | #define QUAKE3_MAP_NAME "maps/q3dm8.bsp" | ||
30 | #endif | ||
31 | #endif | ||
32 | |||
33 | #ifdef IRRLICHT_QUAKE3_ARENA | ||
34 | #define QUAKE3_STORAGE_FORMAT addFileArchive | ||
35 | #define QUAKE3_STORAGE_1 "../../media/map-20kdm2.pk3" | ||
36 | #define QUAKE3_MAP_NAME "maps/20kdm2.bsp" | ||
37 | #endif | ||
38 | |||
39 | using namespace irr; | ||
40 | using namespace scene; | ||
41 | |||
42 | /* | ||
43 | Again, to be able to use the Irrlicht.DLL file, we need to link with the | ||
44 | Irrlicht.lib. We could set this option in the project settings, but | ||
45 | to make it easy, we use a pragma comment lib: | ||
46 | */ | ||
47 | #ifdef _MSC_VER | ||
48 | #pragma comment(lib, "Irrlicht.lib") | ||
49 | #endif | ||
50 | |||
51 | |||
52 | /* | ||
53 | A class to produce a series of screenshots | ||
54 | */ | ||
55 | class CScreenShotFactory : public IEventReceiver | ||
56 | { | ||
57 | public: | ||
58 | |||
59 | CScreenShotFactory( IrrlichtDevice *device, const c8 * templateName, ISceneNode* node ) | ||
60 | : Device(device), Number(0), FilenameTemplate(templateName), Node(node) | ||
61 | { | ||
62 | FilenameTemplate.replace ( '/', '_' ); | ||
63 | FilenameTemplate.replace ( '\\', '_' ); | ||
64 | } | ||
65 | |||
66 | bool OnEvent(const SEvent& event) | ||
67 | { | ||
68 | // check if user presses the key F9 | ||
69 | if ((event.EventType == EET_KEY_INPUT_EVENT) && | ||
70 | event.KeyInput.PressedDown) | ||
71 | { | ||
72 | if (event.KeyInput.Key == KEY_F9) | ||
73 | { | ||
74 | video::IImage* image = Device->getVideoDriver()->createScreenShot(); | ||
75 | if (image) | ||
76 | { | ||
77 | c8 buf[256]; | ||
78 | snprintf(buf, 256, "%s_shot%04d.jpg", | ||
79 | FilenameTemplate.c_str(), | ||
80 | ++Number); | ||
81 | Device->getVideoDriver()->writeImageToFile(image, buf, 85 ); | ||
82 | image->drop(); | ||
83 | } | ||
84 | } | ||
85 | else | ||
86 | if (event.KeyInput.Key == KEY_F8) | ||
87 | { | ||
88 | if (Node->isDebugDataVisible()) | ||
89 | Node->setDebugDataVisible(scene::EDS_OFF); | ||
90 | else | ||
91 | Node->setDebugDataVisible(scene::EDS_BBOX_ALL); | ||
92 | } | ||
93 | } | ||
94 | return false; | ||
95 | } | ||
96 | |||
97 | private: | ||
98 | IrrlichtDevice *Device; | ||
99 | u32 Number; | ||
100 | core::stringc FilenameTemplate; | ||
101 | ISceneNode* Node; | ||
102 | }; | ||
103 | |||
104 | |||
105 | /* | ||
106 | Ok, lets start. | ||
107 | */ | ||
108 | |||
109 | int IRRCALLCONV main(int argc, char* argv[]) | ||
110 | { | ||
111 | /* | ||
112 | Like in the HelloWorld example, we create an IrrlichtDevice with | ||
113 | createDevice(). The difference now is that we ask the user to select | ||
114 | which hardware accelerated driver to use. The Software device would be | ||
115 | too slow to draw a huge Quake 3 map, but just for the fun of it, we make | ||
116 | this decision possible too. | ||
117 | */ | ||
118 | |||
119 | // ask user for driver | ||
120 | video::E_DRIVER_TYPE driverType=driverChoiceConsole(); | ||
121 | if (driverType==video::EDT_COUNT) | ||
122 | return 1; | ||
123 | |||
124 | // create device and exit if creation failed | ||
125 | const core::dimension2du videoDim(800,600); | ||
126 | |||
127 | IrrlichtDevice *device = createDevice(driverType, videoDim, 32, false ); | ||
128 | |||
129 | if (device == 0) | ||
130 | return 1; // could not create selected driver. | ||
131 | |||
132 | const char* mapname=0; | ||
133 | if (argc>2) | ||
134 | mapname = argv[2]; | ||
135 | else | ||
136 | mapname = QUAKE3_MAP_NAME; | ||
137 | |||
138 | /* | ||
139 | Get a pointer to the video driver and the SceneManager so that | ||
140 | we do not always have to write device->getVideoDriver() and | ||
141 | device->getSceneManager(). | ||
142 | */ | ||
143 | video::IVideoDriver* driver = device->getVideoDriver(); | ||
144 | scene::ISceneManager* smgr = device->getSceneManager(); | ||
145 | gui::IGUIEnvironment* gui = device->getGUIEnvironment(); | ||
146 | |||
147 | //! add our private media directory to the file system | ||
148 | device->getFileSystem()->addFileArchive("../../media/"); | ||
149 | |||
150 | /* | ||
151 | To display the Quake 3 map, we first need to load it. Quake 3 maps | ||
152 | are packed into .pk3 files, which are nothing other than .zip files. | ||
153 | So we add the .pk3 file to our FileSystem. After it was added, | ||
154 | we are able to read from the files in that archive as they would | ||
155 | directly be stored on disk. | ||
156 | */ | ||
157 | if (argc>2) | ||
158 | device->getFileSystem()->QUAKE3_STORAGE_FORMAT(argv[1]); | ||
159 | else | ||
160 | device->getFileSystem()->QUAKE3_STORAGE_FORMAT(QUAKE3_STORAGE_1); | ||
161 | #ifdef QUAKE3_STORAGE_2 | ||
162 | device->getFileSystem()->QUAKE3_STORAGE_FORMAT(QUAKE3_STORAGE_2); | ||
163 | #endif | ||
164 | |||
165 | // Quake3 Shader controls Z-Writing | ||
166 | smgr->getParameters()->setAttribute(scene::ALLOW_ZWRITE_ON_TRANSPARENT, true); | ||
167 | |||
168 | /* | ||
169 | Now we can load the mesh by calling getMesh(). We get a pointer returned | ||
170 | to a IAnimatedMesh. As you know, Quake 3 maps are not really animated, | ||
171 | they are only a huge chunk of static geometry with some materials | ||
172 | attached. Hence the IAnimated mesh consists of only one frame, | ||
173 | so we get the "first frame" of the "animation", which is our quake level | ||
174 | and create an Octree scene node with it, using addOctreeSceneNode(). | ||
175 | The Octree optimizes the scene a little bit, trying to draw only geometry | ||
176 | which is currently visible. An alternative to the Octree would be a | ||
177 | AnimatedMeshSceneNode, which would draw always the complete geometry of | ||
178 | the mesh, without optimization. Try it out: Write addAnimatedMeshSceneNode | ||
179 | instead of addOctreeSceneNode and compare the primitives drawn by the | ||
180 | video driver. (There is a getPrimitiveCountDrawed() method in the | ||
181 | IVideoDriver class). Note that this optimization with the Octree is only | ||
182 | useful when drawing huge meshes consisting of lots of geometry. | ||
183 | */ | ||
184 | scene::IQ3LevelMesh* const mesh = | ||
185 | (scene::IQ3LevelMesh*) smgr->getMesh(mapname); | ||
186 | |||
187 | /* | ||
188 | add the geometry mesh to the Scene ( polygon & patches ) | ||
189 | The Geometry mesh is optimised for faster drawing | ||
190 | */ | ||
191 | scene::ISceneNode* node = 0; | ||
192 | if (mesh) | ||
193 | { | ||
194 | scene::IMesh * const geometry = mesh->getMesh(quake3::E_Q3_MESH_GEOMETRY); | ||
195 | node = smgr->addOctreeSceneNode(geometry, 0, -1, 4096); | ||
196 | } | ||
197 | |||
198 | // create an event receiver for making screenshots | ||
199 | CScreenShotFactory screenshotFactory(device, mapname, node); | ||
200 | device->setEventReceiver(&screenshotFactory); | ||
201 | |||
202 | /* | ||
203 | now construct SceneNodes for each Shader | ||
204 | The Objects are stored in the quake mesh scene::E_Q3_MESH_ITEMS | ||
205 | and the Shader ID is stored in the MaterialParameters | ||
206 | mostly dark looking skulls and moving lava.. or green flashing tubes? | ||
207 | */ | ||
208 | if ( mesh ) | ||
209 | { | ||
210 | // the additional mesh can be quite huge and is unoptimized | ||
211 | const scene::IMesh * const additional_mesh = mesh->getMesh(quake3::E_Q3_MESH_ITEMS); | ||
212 | |||
213 | #ifdef SHOW_SHADER_NAME | ||
214 | gui::IGUIFont *font = device->getGUIEnvironment()->getFont("../../media/fontlucida.png"); | ||
215 | u32 count = 0; | ||
216 | #endif | ||
217 | |||
218 | for ( u32 i = 0; i!= additional_mesh->getMeshBufferCount(); ++i ) | ||
219 | { | ||
220 | const IMeshBuffer* meshBuffer = additional_mesh->getMeshBuffer(i); | ||
221 | const video::SMaterial& material = meshBuffer->getMaterial(); | ||
222 | |||
223 | // The ShaderIndex is stored in the material parameter | ||
224 | const s32 shaderIndex = (s32) material.MaterialTypeParam2; | ||
225 | |||
226 | // the meshbuffer can be rendered without additional support, or it has no shader | ||
227 | const quake3::IShader *shader = mesh->getShader(shaderIndex); | ||
228 | if (0 == shader) | ||
229 | { | ||
230 | continue; | ||
231 | } | ||
232 | |||
233 | // we can dump the shader to the console in its | ||
234 | // original but already parsed layout in a pretty | ||
235 | // printers way.. commented out, because the console | ||
236 | // would be full... | ||
237 | // quake3::dumpShader ( Shader ); | ||
238 | |||
239 | node = smgr->addQuake3SceneNode(meshBuffer, shader); | ||
240 | |||
241 | #ifdef SHOW_SHADER_NAME | ||
242 | count += 1; | ||
243 | core::stringw name( node->getName() ); | ||
244 | node = smgr->addBillboardTextSceneNode( | ||
245 | font, name.c_str(), node, | ||
246 | core::dimension2d<f32>(80.0f, 8.0f), | ||
247 | core::vector3df(0, 10, 0)); | ||
248 | #endif | ||
249 | } | ||
250 | } | ||
251 | |||
252 | /* | ||
253 | Now we only need a Camera to look at the Quake 3 map. And we want to | ||
254 | create a user controlled camera. There are some different cameras | ||
255 | available in the Irrlicht engine. For example the Maya Camera which can | ||
256 | be controlled comparable to the camera in Maya: Rotate with left mouse | ||
257 | button pressed, Zoom with both buttons pressed, translate with right | ||
258 | mouse button pressed. This could be created with | ||
259 | addCameraSceneNodeMaya(). But for this example, we want to create a | ||
260 | camera which behaves like the ones in first person shooter games (FPS). | ||
261 | */ | ||
262 | |||
263 | scene::ICameraSceneNode* camera = smgr->addCameraSceneNodeFPS(); | ||
264 | |||
265 | /* | ||
266 | so we need a good starting Position in the level. | ||
267 | we can ask the Quake3 Loader for all entities with class_name | ||
268 | "info_player_deathmatch" | ||
269 | we choose a random launch | ||
270 | */ | ||
271 | if ( mesh ) | ||
272 | { | ||
273 | quake3::tQ3EntityList &entityList = mesh->getEntityList(); | ||
274 | |||
275 | quake3::IEntity search; | ||
276 | search.name = "info_player_deathmatch"; | ||
277 | |||
278 | s32 index = entityList.binary_search(search); | ||
279 | if (index >= 0) | ||
280 | { | ||
281 | s32 notEndList; | ||
282 | do | ||
283 | { | ||
284 | const quake3::SVarGroup *group = entityList[index].getGroup(1); | ||
285 | |||
286 | u32 parsepos = 0; | ||
287 | const core::vector3df pos = | ||
288 | quake3::getAsVector3df(group->get("origin"), parsepos); | ||
289 | |||
290 | parsepos = 0; | ||
291 | const f32 angle = quake3::getAsFloat(group->get("angle"), parsepos); | ||
292 | |||
293 | core::vector3df target(0.f, 0.f, 1.f); | ||
294 | target.rotateXZBy(angle); | ||
295 | |||
296 | camera->setPosition(pos); | ||
297 | camera->setTarget(pos + target); | ||
298 | |||
299 | ++index; | ||
300 | /* | ||
301 | notEndList = ( index < (s32) entityList.size () && | ||
302 | entityList[index].name == search.name && | ||
303 | (device->getTimer()->getRealTime() >> 3 ) & 1 | ||
304 | ); | ||
305 | */ | ||
306 | notEndList = index == 2; | ||
307 | } while ( notEndList ); | ||
308 | } | ||
309 | } | ||
310 | |||
311 | /* | ||
312 | The mouse cursor needs not to be visible, so we make it invisible. | ||
313 | */ | ||
314 | |||
315 | device->getCursorControl()->setVisible(false); | ||
316 | |||
317 | // load the engine logo | ||
318 | gui->addImage(driver->getTexture("irrlichtlogo2.png"), | ||
319 | core::position2d<s32>(10, 10)); | ||
320 | |||
321 | // show the driver logo | ||
322 | const core::position2di pos(videoDim.Width - 128, videoDim.Height - 64); | ||
323 | |||
324 | switch ( driverType ) | ||
325 | { | ||
326 | case video::EDT_BURNINGSVIDEO: | ||
327 | gui->addImage(driver->getTexture("burninglogo.png"), pos); | ||
328 | break; | ||
329 | case video::EDT_OPENGL: | ||
330 | gui->addImage(driver->getTexture("opengllogo.png"), pos); | ||
331 | break; | ||
332 | case video::EDT_DIRECT3D8: | ||
333 | case video::EDT_DIRECT3D9: | ||
334 | gui->addImage(driver->getTexture("directxlogo.png"), pos); | ||
335 | break; | ||
336 | } | ||
337 | |||
338 | /* | ||
339 | We have done everything, so lets draw it. We also write the current | ||
340 | frames per second and the drawn primitives to the caption of the | ||
341 | window. The 'if (device->isWindowActive())' line is optional, but | ||
342 | prevents the engine render to set the position of the mouse cursor | ||
343 | after task switching when other program are active. | ||
344 | */ | ||
345 | int lastFPS = -1; | ||
346 | |||
347 | while(device->run()) | ||
348 | if (device->isWindowActive()) | ||
349 | { | ||
350 | driver->beginScene(true, true, video::SColor(255,20,20,40)); | ||
351 | smgr->drawAll(); | ||
352 | gui->drawAll(); | ||
353 | driver->endScene(); | ||
354 | |||
355 | int fps = driver->getFPS(); | ||
356 | //if (lastFPS != fps) | ||
357 | { | ||
358 | io::IAttributes * const attr = smgr->getParameters(); | ||
359 | core::stringw str = L"Q3 ["; | ||
360 | str += driver->getName(); | ||
361 | str += "] FPS:"; | ||
362 | str += fps; | ||
363 | str += " Cull:"; | ||
364 | str += attr->getAttributeAsInt("calls"); | ||
365 | str += "/"; | ||
366 | str += attr->getAttributeAsInt("culled"); | ||
367 | str += " Draw: "; | ||
368 | str += attr->getAttributeAsInt("drawn_solid"); | ||
369 | str += "/"; | ||
370 | str += attr->getAttributeAsInt("drawn_transparent"); | ||
371 | str += "/"; | ||
372 | str += attr->getAttributeAsInt("drawn_transparent_effect"); | ||
373 | |||
374 | device->setWindowCaption(str.c_str()); | ||
375 | lastFPS = fps; | ||
376 | } | ||
377 | } | ||
378 | |||
379 | /* | ||
380 | In the end, delete the Irrlicht device. | ||
381 | */ | ||
382 | device->drop(); | ||
383 | |||
384 | return 0; | ||
385 | } | ||
386 | |||
387 | /* | ||
388 | **/ | ||