aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/others/irrlicht-1.8.1/examples/08.SpecialFX
diff options
context:
space:
mode:
Diffstat (limited to 'src/others/irrlicht-1.8.1/examples/08.SpecialFX')
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.cbp54
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/main.cpp308
-rw-r--r--src/others/irrlicht-1.8.1/examples/08.SpecialFX/tutorial.html278
10 files changed, 1827 insertions, 0 deletions
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/Makefile b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/Makefile
new file mode 100644
index 0000000..05b68ec
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/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
4Target = 08.SpecialFX
5Sources = main.cpp
6
7# general compiler settings
8CPPFLAGS = -I../../include -I/usr/X11R6/include
9CXXFLAGS = -O3 -ffast-math
10#CXXFLAGS = -g -Wall
11
12#default target is Linux
13all: all_linux
14
15ifeq ($(HOSTTYPE), x86_64)
16LIBSELECT=64
17endif
18
19# target specific settings
20all_linux: LDFLAGS = -L/usr/X11R6/lib$(LIBSELECT) -L../../lib/Linux -lIrrlicht -lGL -lXxf86vm -lXext -lX11 -lXcursor
21all_linux clean_linux: SYSTEM=Linux
22all_win32: LDFLAGS = -L../../lib/Win32-gcc -lIrrlicht -lopengl32 -lm
23all_win32 clean_win32: SYSTEM=Win32-gcc
24all_win32 clean_win32: SUF=.exe
25# name of the binary - only valid for targets which set SYSTEM
26DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF)
27
28all_linux all_win32:
29 $(warning Building...)
30 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
31
32clean: clean_linux clean_win32
33 $(warning Cleaning...)
34
35clean_linux clean_win32:
36 @$(RM) $(DESTPATH)
37
38.PHONY: all all_win32 clean clean_linux clean_win32
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.cbp b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.cbp
new file mode 100644
index 0000000..05243f4
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.cbp
@@ -0,0 +1,54 @@
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 08 Special Effects" />
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\SpecialFX" 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\SpeciaFX" prefix_auto="0" extension_auto="0" />
24 <Option type="1" />
25 <Option compiler="gcc" />
26 <Compiler>
27 <Add option="-g" />
28 </Compiler>
29 <Linker>
30 <Add library="Xxf86vm" />
31 <Add library="Xcursor" />
32 <Add library="GL" />
33 <Add directory="..\..\lib\Linux" />
34 </Linker>
35 </Target>
36 </Build>
37 <VirtualTargets>
38 <Add alias="All" targets="Windows;Linux;" />
39 </VirtualTargets>
40 <Compiler>
41 <Add option="-g" />
42 <Add directory="..\..\include" />
43 </Compiler>
44 <Linker>
45 <Add library="Irrlicht" />
46 </Linker>
47 <Unit filename="main.cpp" />
48 <Extensions>
49 <code_completion />
50 <debugger />
51 <envvars />
52 </Extensions>
53 </Project>
54</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.dev b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.dev
new file mode 100644
index 0000000..b2c2f26
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 08 Special Effects
4UnitCount=1
5Type=1
6Ver=1
7ObjFiles=
8Includes=..\..\include
9Libs=
10PrivateResource=
11ResourceIncludes=
12MakeIncludes=
13Compiler=
14CppCompiler=
15Linker=../../lib/Win32-gcc/libIrrlicht.a_@@_
16IsCpp=1
17Icon=
18ExeOutput=../../bin/Win32-gcc
19ObjectOutput=obj
20OverrideOutput=1
21OverrideOutputName=08.SpecialFX.exe
22HostApplication=
23Folders=
24CommandLine=
25IncludeVersionInfo=0
26SupportXPThemes=0
27CompilerSet=0
28CompilerSettings=0000000000000000000000
29UseCustomMakefile=0
30CustomMakefile=
31
32[Unit1]
33FileName=main.cpp
34CompileCpp=1
35Folder=Projekt1
36Compile=1
37Link=1
38Priority=1000
39OverrideBuildCmd=0
40BuildCmd=
41
42[VersionInfo]
43Major=0
44Minor=1
45Release=1
46Build=1
47LanguageID=1033
48CharsetID=1252
49CompanyName=
50FileVersion=
51FileDescription=Irrlicht Engine example compiled using DevCpp and gcc
52InternalName=
53LegalCopyright=
54LegalTrademarks=
55OriginalFilename=
56ProductName=
57ProductVersion=
58AutoIncBuildNr=0
59
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.vcproj b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.vcproj
new file mode 100644
index 0000000..e22266e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX.vcproj
@@ -0,0 +1,163 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="08.SpecialFx"
6 ProjectGUID="{8553D1C8-6AE6-423E-A2D5-1016804AE67C}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Release|Win32"
16 OutputDirectory=".\Release"
17 IntermediateDirectory=".\Release"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="2"
25 InlineFunctionExpansion="1"
26 AdditionalIncludeDirectories="..\..\include"
27 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
28 StringPooling="TRUE"
29 RuntimeLibrary="4"
30 EnableFunctionLevelLinking="TRUE"
31 UsePrecompiledHeader="2"
32 PrecompiledHeaderFile=".\Release/SpecialFX.pch"
33 AssemblerListingLocation=".\Release/"
34 ObjectFile=".\Release/"
35 ProgramDataBaseFileName=".\Release/"
36 WarningLevel="3"
37 SuppressStartupBanner="TRUE"
38 CompileAs="0"/>
39 <Tool
40 Name="VCCustomBuildTool"/>
41 <Tool
42 Name="VCLinkerTool"
43 OutputFile="..\..\bin\Win32-VisualStudio\08.SpecialFx.exe"
44 LinkIncremental="0"
45 SuppressStartupBanner="TRUE"
46 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
47 ProgramDatabaseFile=".\Release/SpecialFx.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Release/SpecialFX.tlb"
53 HeaderFileName=""/>
54 <Tool
55 Name="VCPostBuildEventTool"/>
56 <Tool
57 Name="VCPreBuildEventTool"/>
58 <Tool
59 Name="VCPreLinkEventTool"/>
60 <Tool
61 Name="VCResourceCompilerTool"
62 PreprocessorDefinitions="NDEBUG"
63 Culture="3079"/>
64 <Tool
65 Name="VCWebServiceProxyGeneratorTool"/>
66 <Tool
67 Name="VCXMLDataGeneratorTool"/>
68 <Tool
69 Name="VCWebDeploymentTool"/>
70 <Tool
71 Name="VCManagedWrapperGeneratorTool"/>
72 <Tool
73 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
74 </Configuration>
75 <Configuration
76 Name="Debug|Win32"
77 OutputDirectory=".\Debug"
78 IntermediateDirectory=".\Debug"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="0"
86 AdditionalIncludeDirectories="..\..\include"
87 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
88 BasicRuntimeChecks="3"
89 RuntimeLibrary="5"
90 UsePrecompiledHeader="2"
91 PrecompiledHeaderFile=".\Debug/SpecialFX.pch"
92 AssemblerListingLocation=".\Debug/"
93 ObjectFile=".\Debug/"
94 ProgramDataBaseFileName=".\Debug/"
95 WarningLevel="3"
96 SuppressStartupBanner="TRUE"
97 DebugInformationFormat="4"
98 CompileAs="0"/>
99 <Tool
100 Name="VCCustomBuildTool"/>
101 <Tool
102 Name="VCLinkerTool"
103 OutputFile="..\..\bin\Win32-VisualStudio\08.SpecialFx.exe"
104 LinkIncremental="0"
105 SuppressStartupBanner="TRUE"
106 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
107 GenerateDebugInformation="TRUE"
108 ProgramDatabaseFile=".\Debug/SpecialFx.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Debug/SpecialFX.tlb"
114 HeaderFileName=""/>
115 <Tool
116 Name="VCPostBuildEventTool"/>
117 <Tool
118 Name="VCPreBuildEventTool"/>
119 <Tool
120 Name="VCPreLinkEventTool"/>
121 <Tool
122 Name="VCResourceCompilerTool"
123 PreprocessorDefinitions="_DEBUG"
124 Culture="3079"/>
125 <Tool
126 Name="VCWebServiceProxyGeneratorTool"/>
127 <Tool
128 Name="VCXMLDataGeneratorTool"/>
129 <Tool
130 Name="VCWebDeploymentTool"/>
131 <Tool
132 Name="VCManagedWrapperGeneratorTool"/>
133 <Tool
134 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
135 </Configuration>
136 </Configurations>
137 <References>
138 </References>
139 <Files>
140 <File
141 RelativePath="main.cpp">
142 <FileConfiguration
143 Name="Release|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="2"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""/>
149 </FileConfiguration>
150 <FileConfiguration
151 Name="Debug|Win32">
152 <Tool
153 Name="VCCLCompilerTool"
154 Optimization="0"
155 AdditionalIncludeDirectories=""
156 PreprocessorDefinitions=""
157 BasicRuntimeChecks="3"/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc10.vcxproj
new file mode 100644
index 0000000..c46d1c0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc10.vcxproj
@@ -0,0 +1,231 @@
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>08.SpecialFX</ProjectName>
23 <ProjectGuid>{C869BF55-B9D6-4980-BC92-60FA0CF8411A}</ProjectGuid>
24 <RootNamespace>SpecialFX</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
43 <ConfigurationType>Application</ConfigurationType>
44 <UseOfMfc>false</UseOfMfc>
45 <CharacterSet>MultiByte</CharacterSet>
46 </PropertyGroup>
47 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
48 <ImportGroup Label="ExtensionSettings">
49 </ImportGroup>
50 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
51 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
52 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
53 </ImportGroup>
54 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
55 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
56 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
57 </ImportGroup>
58 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
59 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
60 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
61 </ImportGroup>
62 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
63 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
64 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
65 </ImportGroup>
66 <PropertyGroup Label="UserMacros" />
67 <PropertyGroup>
68 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
73 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
74 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
75 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
76 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
77 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
78 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
79 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
80 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
81 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
82 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
83 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
84 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
85 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
86 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
87 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
88 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
89 </PropertyGroup>
90 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Release/SpecialFX.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>MaxSpeed</Optimization>
98 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
99 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
100 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
101 <StringPooling>true</StringPooling>
102 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
103 <FunctionLevelLinking>true</FunctionLevelLinking>
104 <PrecompiledHeader>
105 </PrecompiledHeader>
106 <WarningLevel>Level3</WarningLevel>
107 </ClCompile>
108 <ResourceCompile>
109 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
110 <Culture>0x0c07</Culture>
111 </ResourceCompile>
112 <Link>
113 <OutputFile>..\..\bin\Win32-VisualStudio\08.SpecialFx.exe</OutputFile>
114 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
121 <Midl>
122 <TypeLibraryName>.\Release/SpecialFX.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>MaxSpeed</Optimization>
128 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
129 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
130 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
131 <StringPooling>true</StringPooling>
132 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
133 <FunctionLevelLinking>true</FunctionLevelLinking>
134 <PrecompiledHeader>
135 </PrecompiledHeader>
136 <WarningLevel>Level3</WarningLevel>
137 </ClCompile>
138 <ResourceCompile>
139 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
140 <Culture>0x0c07</Culture>
141 </ResourceCompile>
142 <Link>
143 <OutputFile>..\..\bin\Win64-VisualStudio\08.SpecialFx.exe</OutputFile>
144 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Debug/SpecialFX.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>Disabled</Optimization>
158 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
159 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
160 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
161 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
162 <PrecompiledHeader>
163 </PrecompiledHeader>
164 <WarningLevel>Level3</WarningLevel>
165 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
166 </ClCompile>
167 <ResourceCompile>
168 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
169 <Culture>0x0c07</Culture>
170 </ResourceCompile>
171 <Link>
172 <OutputFile>..\..\bin\Win32-VisualStudio\08.SpecialFx.exe</OutputFile>
173 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
174 <GenerateDebugInformation>true</GenerateDebugInformation>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
181 <Midl>
182 <TypeLibraryName>.\Debug/SpecialFX.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>Disabled</Optimization>
188 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
189 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
190 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
191 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
192 <PrecompiledHeader>
193 </PrecompiledHeader>
194 <WarningLevel>Level3</WarningLevel>
195 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
196 </ClCompile>
197 <ResourceCompile>
198 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
199 <Culture>0x0c07</Culture>
200 </ResourceCompile>
201 <Link>
202 <OutputFile>..\..\bin\Win64-VisualStudio\08.SpecialFx.exe</OutputFile>
203 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
204 <GenerateDebugInformation>true</GenerateDebugInformation>
205 <SubSystem>Console</SubSystem>
206 <DataExecutionPrevention>
207 </DataExecutionPrevention>
208 </Link>
209 </ItemDefinitionGroup>
210 <ItemGroup>
211 <ClCompile Include="main.cpp">
212 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
213 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
214 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
215 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
216 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
217 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
218 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
219 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
220 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
221 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
222 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
223 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
224 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
225 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
226 </ClCompile>
227 </ItemGroup>
228 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
229 <ImportGroup Label="ExtensionTargets">
230 </ImportGroup>
231</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc11.vcxproj
new file mode 100644
index 0000000..3e2e1c0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc11.vcxproj
@@ -0,0 +1,235 @@
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>08.SpecialFX</ProjectName>
23 <ProjectGuid>{C869BF55-B9D6-4980-BC92-60FA0CF8411A}</ProjectGuid>
24 <RootNamespace>SpecialFX</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 <PlatformToolset>v110</PlatformToolset>
32 </PropertyGroup>
33 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
34 <ConfigurationType>Application</ConfigurationType>
35 <UseOfMfc>false</UseOfMfc>
36 <CharacterSet>MultiByte</CharacterSet>
37 <PlatformToolset>v110</PlatformToolset>
38 </PropertyGroup>
39 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
40 <ConfigurationType>Application</ConfigurationType>
41 <UseOfMfc>false</UseOfMfc>
42 <CharacterSet>MultiByte</CharacterSet>
43 <PlatformToolset>v110</PlatformToolset>
44 </PropertyGroup>
45 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
46 <ConfigurationType>Application</ConfigurationType>
47 <UseOfMfc>false</UseOfMfc>
48 <CharacterSet>MultiByte</CharacterSet>
49 <PlatformToolset>v110</PlatformToolset>
50 </PropertyGroup>
51 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
52 <ImportGroup Label="ExtensionSettings">
53 </ImportGroup>
54 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
55 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
56 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
57 </ImportGroup>
58 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
59 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
60 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
61 </ImportGroup>
62 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
63 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
64 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
65 </ImportGroup>
66 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
67 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
68 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
69 </ImportGroup>
70 <PropertyGroup Label="UserMacros" />
71 <PropertyGroup>
72 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
73 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
74 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
75 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
76 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
77 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
81 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
82 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
83 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
84 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
85 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
86 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
87 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
88 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
89 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
90 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
91 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
92 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
93 </PropertyGroup>
94 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Release/SpecialFX.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>MaxSpeed</Optimization>
102 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
103 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
104 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
105 <StringPooling>true</StringPooling>
106 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
107 <FunctionLevelLinking>true</FunctionLevelLinking>
108 <PrecompiledHeader>
109 </PrecompiledHeader>
110 <WarningLevel>Level3</WarningLevel>
111 </ClCompile>
112 <ResourceCompile>
113 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
114 <Culture>0x0c07</Culture>
115 </ResourceCompile>
116 <Link>
117 <OutputFile>..\..\bin\Win32-VisualStudio\08.SpecialFx.exe</OutputFile>
118 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
125 <Midl>
126 <TypeLibraryName>.\Release/SpecialFX.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>MaxSpeed</Optimization>
132 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
133 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
134 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
135 <StringPooling>true</StringPooling>
136 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
137 <FunctionLevelLinking>true</FunctionLevelLinking>
138 <PrecompiledHeader>
139 </PrecompiledHeader>
140 <WarningLevel>Level3</WarningLevel>
141 </ClCompile>
142 <ResourceCompile>
143 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
144 <Culture>0x0c07</Culture>
145 </ResourceCompile>
146 <Link>
147 <OutputFile>..\..\bin\Win64-VisualStudio\08.SpecialFx.exe</OutputFile>
148 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Debug/SpecialFX.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>Disabled</Optimization>
162 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
163 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
164 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
165 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
166 <PrecompiledHeader>
167 </PrecompiledHeader>
168 <WarningLevel>Level3</WarningLevel>
169 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
170 </ClCompile>
171 <ResourceCompile>
172 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
173 <Culture>0x0c07</Culture>
174 </ResourceCompile>
175 <Link>
176 <OutputFile>..\..\bin\Win32-VisualStudio\08.SpecialFx.exe</OutputFile>
177 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
178 <GenerateDebugInformation>true</GenerateDebugInformation>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
185 <Midl>
186 <TypeLibraryName>.\Debug/SpecialFX.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>Disabled</Optimization>
192 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
193 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
194 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
195 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
196 <PrecompiledHeader>
197 </PrecompiledHeader>
198 <WarningLevel>Level3</WarningLevel>
199 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
200 </ClCompile>
201 <ResourceCompile>
202 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
203 <Culture>0x0c07</Culture>
204 </ResourceCompile>
205 <Link>
206 <OutputFile>..\..\bin\Win64-VisualStudio\08.SpecialFx.exe</OutputFile>
207 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
208 <GenerateDebugInformation>true</GenerateDebugInformation>
209 <SubSystem>Console</SubSystem>
210 <DataExecutionPrevention>
211 </DataExecutionPrevention>
212 </Link>
213 </ItemDefinitionGroup>
214 <ItemGroup>
215 <ClCompile Include="main.cpp">
216 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
217 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
218 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
219 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
220 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
221 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
222 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
223 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
224 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
225 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
226 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
227 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
228 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
229 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
230 </ClCompile>
231 </ItemGroup>
232 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
233 <ImportGroup Label="ExtensionTargets">
234 </ImportGroup>
235</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc8.vcproj
new file mode 100644
index 0000000..21dd96f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc8.vcproj
@@ -0,0 +1,231 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8.00"
5 Name="08.SpecialFX_vc8"
6 ProjectGUID="{C869BF55-B9D6-4980-BC92-60FA0CF8411A}"
7 RootNamespace="SpecialFX_vc8"
8 >
9 <Platforms>
10 <Platform
11 Name="Win32"
12 />
13 </Platforms>
14 <ToolFiles>
15 </ToolFiles>
16 <Configurations>
17 <Configuration
18 Name="Release|Win32"
19 OutputDirectory=".\Release"
20 IntermediateDirectory=".\Release"
21 ConfigurationType="1"
22 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
23 UseOfMFC="0"
24 ATLMinimizesCRunTimeLibraryUsage="false"
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 TypeLibraryName=".\Release/SpecialFX.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="2"
47 InlineFunctionExpansion="1"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
50 StringPooling="true"
51 RuntimeLibrary="0"
52 EnableFunctionLevelLinking="true"
53 UsePrecompiledHeader="0"
54 PrecompiledHeaderFile=".\Release/SpecialFX.pch"
55 AssemblerListingLocation=".\Release/"
56 ObjectFile=".\Release/"
57 ProgramDataBaseFileName=".\Release/"
58 WarningLevel="3"
59 SuppressStartupBanner="true"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="NDEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\08.SpecialFx.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 ProgramDatabaseFile=".\Release/SpecialFx.pdb"
80 SubSystem="1"
81 TargetMachine="1"
82 />
83 <Tool
84 Name="VCALinkTool"
85 />
86 <Tool
87 Name="VCManifestTool"
88 />
89 <Tool
90 Name="VCXDCMakeTool"
91 />
92 <Tool
93 Name="VCBscMakeTool"
94 />
95 <Tool
96 Name="VCFxCopTool"
97 />
98 <Tool
99 Name="VCAppVerifierTool"
100 />
101 <Tool
102 Name="VCWebDeploymentTool"
103 />
104 <Tool
105 Name="VCPostBuildEventTool"
106 />
107 </Configuration>
108 <Configuration
109 Name="Debug|Win32"
110 OutputDirectory=".\Debug"
111 IntermediateDirectory=".\Debug"
112 ConfigurationType="1"
113 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
114 UseOfMFC="0"
115 ATLMinimizesCRunTimeLibraryUsage="false"
116 CharacterSet="2"
117 >
118 <Tool
119 Name="VCPreBuildEventTool"
120 />
121 <Tool
122 Name="VCCustomBuildTool"
123 />
124 <Tool
125 Name="VCXMLDataGeneratorTool"
126 />
127 <Tool
128 Name="VCWebServiceProxyGeneratorTool"
129 />
130 <Tool
131 Name="VCMIDLTool"
132 TypeLibraryName=".\Debug/SpecialFX.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="0"
138 AdditionalIncludeDirectories="..\..\include"
139 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
140 BasicRuntimeChecks="3"
141 RuntimeLibrary="1"
142 UsePrecompiledHeader="0"
143 PrecompiledHeaderFile=".\Debug/SpecialFX.pch"
144 AssemblerListingLocation=".\Debug/"
145 ObjectFile=".\Debug/"
146 ProgramDataBaseFileName=".\Debug/"
147 WarningLevel="3"
148 SuppressStartupBanner="true"
149 DebugInformationFormat="4"
150 CompileAs="0"
151 />
152 <Tool
153 Name="VCManagedResourceCompilerTool"
154 />
155 <Tool
156 Name="VCResourceCompilerTool"
157 PreprocessorDefinitions="_DEBUG"
158 Culture="3079"
159 />
160 <Tool
161 Name="VCPreLinkEventTool"
162 />
163 <Tool
164 Name="VCLinkerTool"
165 OutputFile="..\..\bin\Win32-VisualStudio\08.SpecialFx.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/SpecialFx.pdb"
171 SubSystem="1"
172 TargetMachine="1"
173 />
174 <Tool
175 Name="VCALinkTool"
176 />
177 <Tool
178 Name="VCManifestTool"
179 />
180 <Tool
181 Name="VCXDCMakeTool"
182 />
183 <Tool
184 Name="VCBscMakeTool"
185 />
186 <Tool
187 Name="VCFxCopTool"
188 />
189 <Tool
190 Name="VCAppVerifierTool"
191 />
192 <Tool
193 Name="VCWebDeploymentTool"
194 />
195 <Tool
196 Name="VCPostBuildEventTool"
197 />
198 </Configuration>
199 </Configurations>
200 <References>
201 </References>
202 <Files>
203 <File
204 RelativePath="main.cpp"
205 >
206 <FileConfiguration
207 Name="Release|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="2"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Debug|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="0"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 BasicRuntimeChecks="3"
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc9.vcproj
new file mode 100644
index 0000000..29763e5
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/SpecialFX_vc9.vcproj
@@ -0,0 +1,230 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9.00"
5 Name="08.SpecialFX_vc9"
6 ProjectGUID="{C869BF55-B9D6-4980-BC92-60FA0CF8411A}"
7 RootNamespace="SpecialFX_vc9"
8 TargetFrameworkVersion="131072"
9 >
10 <Platforms>
11 <Platform
12 Name="Win32"
13 />
14 </Platforms>
15 <ToolFiles>
16 </ToolFiles>
17 <Configurations>
18 <Configuration
19 Name="Release|Win32"
20 OutputDirectory=".\Release"
21 IntermediateDirectory=".\Release"
22 ConfigurationType="1"
23 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
24 UseOfMFC="0"
25 ATLMinimizesCRunTimeLibraryUsage="false"
26 CharacterSet="2"
27 >
28 <Tool
29 Name="VCPreBuildEventTool"
30 />
31 <Tool
32 Name="VCCustomBuildTool"
33 />
34 <Tool
35 Name="VCXMLDataGeneratorTool"
36 />
37 <Tool
38 Name="VCWebServiceProxyGeneratorTool"
39 />
40 <Tool
41 Name="VCMIDLTool"
42 TypeLibraryName=".\Release/SpecialFX.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="2"
48 InlineFunctionExpansion="1"
49 AdditionalIncludeDirectories="..\..\include"
50 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
51 StringPooling="true"
52 RuntimeLibrary="0"
53 EnableFunctionLevelLinking="true"
54 UsePrecompiledHeader="0"
55 PrecompiledHeaderFile=".\Release/SpecialFX.pch"
56 AssemblerListingLocation=".\Release/"
57 ObjectFile=".\Release/"
58 ProgramDataBaseFileName=".\Release/"
59 WarningLevel="3"
60 SuppressStartupBanner="true"
61 CompileAs="0"
62 />
63 <Tool
64 Name="VCManagedResourceCompilerTool"
65 />
66 <Tool
67 Name="VCResourceCompilerTool"
68 PreprocessorDefinitions="NDEBUG"
69 Culture="3079"
70 />
71 <Tool
72 Name="VCPreLinkEventTool"
73 />
74 <Tool
75 Name="VCLinkerTool"
76 OutputFile="..\..\bin\Win32-VisualStudio\08.SpecialFx.exe"
77 LinkIncremental="0"
78 SuppressStartupBanner="true"
79 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
80 ProgramDatabaseFile=".\Release/SpecialFx.pdb"
81 SubSystem="1"
82 RandomizedBaseAddress="1"
83 DataExecutionPrevention="0"
84 TargetMachine="1"
85 />
86 <Tool
87 Name="VCALinkTool"
88 />
89 <Tool
90 Name="VCManifestTool"
91 />
92 <Tool
93 Name="VCXDCMakeTool"
94 />
95 <Tool
96 Name="VCBscMakeTool"
97 />
98 <Tool
99 Name="VCFxCopTool"
100 />
101 <Tool
102 Name="VCAppVerifierTool"
103 />
104 <Tool
105 Name="VCPostBuildEventTool"
106 />
107 </Configuration>
108 <Configuration
109 Name="Debug|Win32"
110 OutputDirectory=".\Debug"
111 IntermediateDirectory=".\Debug"
112 ConfigurationType="1"
113 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
114 UseOfMFC="0"
115 ATLMinimizesCRunTimeLibraryUsage="false"
116 CharacterSet="2"
117 >
118 <Tool
119 Name="VCPreBuildEventTool"
120 />
121 <Tool
122 Name="VCCustomBuildTool"
123 />
124 <Tool
125 Name="VCXMLDataGeneratorTool"
126 />
127 <Tool
128 Name="VCWebServiceProxyGeneratorTool"
129 />
130 <Tool
131 Name="VCMIDLTool"
132 TypeLibraryName=".\Debug/SpecialFX.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="0"
138 AdditionalIncludeDirectories="..\..\include"
139 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
140 BasicRuntimeChecks="3"
141 RuntimeLibrary="1"
142 UsePrecompiledHeader="0"
143 PrecompiledHeaderFile=".\Debug/SpecialFX.pch"
144 AssemblerListingLocation=".\Debug/"
145 ObjectFile=".\Debug/"
146 ProgramDataBaseFileName=".\Debug/"
147 WarningLevel="3"
148 SuppressStartupBanner="true"
149 DebugInformationFormat="4"
150 CompileAs="0"
151 />
152 <Tool
153 Name="VCManagedResourceCompilerTool"
154 />
155 <Tool
156 Name="VCResourceCompilerTool"
157 PreprocessorDefinitions="_DEBUG"
158 Culture="3079"
159 />
160 <Tool
161 Name="VCPreLinkEventTool"
162 />
163 <Tool
164 Name="VCLinkerTool"
165 OutputFile="..\..\bin\Win32-VisualStudio\08.SpecialFx.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/SpecialFx.pdb"
171 SubSystem="1"
172 RandomizedBaseAddress="1"
173 DataExecutionPrevention="0"
174 TargetMachine="1"
175 />
176 <Tool
177 Name="VCALinkTool"
178 />
179 <Tool
180 Name="VCManifestTool"
181 />
182 <Tool
183 Name="VCXDCMakeTool"
184 />
185 <Tool
186 Name="VCBscMakeTool"
187 />
188 <Tool
189 Name="VCFxCopTool"
190 />
191 <Tool
192 Name="VCAppVerifierTool"
193 />
194 <Tool
195 Name="VCPostBuildEventTool"
196 />
197 </Configuration>
198 </Configurations>
199 <References>
200 </References>
201 <Files>
202 <File
203 RelativePath="main.cpp"
204 >
205 <FileConfiguration
206 Name="Release|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="2"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 />
214 </FileConfiguration>
215 <FileConfiguration
216 Name="Debug|Win32"
217 >
218 <Tool
219 Name="VCCLCompilerTool"
220 Optimization="0"
221 AdditionalIncludeDirectories=""
222 PreprocessorDefinitions=""
223 BasicRuntimeChecks="3"
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/main.cpp b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/main.cpp
new file mode 100644
index 0000000..d8f32f7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/main.cpp
@@ -0,0 +1,308 @@
1/** Example 008 SpecialFX
2
3This tutorials describes how to do special effects. It shows how to use stencil
4buffer shadows, the particle system, billboards, dynamic light, and the water
5surface scene node.
6
7We start like in some tutorials before. Please note that this time, the
8'shadows' flag in createDevice() is set to true, for we want to have a dynamic
9shadow casted from an animated character. If this example runs too slow,
10set it to false. The Irrlicht Engine checks if your hardware doesn't support
11the stencil buffer, and disables shadows by itself, but just in case the demo
12runs slow on your hardware.
13*/
14
15#include <irrlicht.h>
16#include <iostream>
17#include "driverChoice.h"
18
19using namespace irr;
20
21#ifdef _MSC_VER
22#pragma comment(lib, "Irrlicht.lib")
23#endif
24
25int main()
26{
27 // ask if user would like shadows
28 char i;
29 printf("Please press 'y' if you want to use realtime shadows.\n");
30
31 std::cin >> i;
32
33 const bool shadows = (i == 'y');
34
35 // ask user for driver
36 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
37 if (driverType==video::EDT_COUNT)
38 return 1;
39
40
41 /*
42 Create device and exit if creation failed. We make the stencil flag
43 optional to avoid slow screen modes for runs without shadows.
44 */
45
46 IrrlichtDevice *device =
47 createDevice(driverType, core::dimension2d<u32>(640, 480),
48 16, false, shadows);
49
50 if (device == 0)
51 return 1; // could not create selected driver.
52
53 video::IVideoDriver* driver = device->getVideoDriver();
54 scene::ISceneManager* smgr = device->getSceneManager();
55
56 /*
57 For our environment, we load a .3ds file. It is a small room I modelled
58 with Anim8or and exported into the 3ds format because the Irrlicht
59 Engine does not support the .an8 format. I am a very bad 3d graphic
60 artist, and so the texture mapping is not very nice in this model.
61 Luckily I am a better programmer than artist, and so the Irrlicht
62 Engine is able to create a cool texture mapping for me: Just use the
63 mesh manipulator and create a planar texture mapping for the mesh. If
64 you want to see the mapping I made with Anim8or, uncomment this line. I
65 also did not figure out how to set the material right in Anim8or, it
66 has a specular light color which I don't really like. I'll switch it
67 off too with this code.
68 */
69
70 scene::IAnimatedMesh* mesh = smgr->getMesh("../../media/room.3ds");
71
72 smgr->getMeshManipulator()->makePlanarTextureMapping(mesh->getMesh(0), 0.004f);
73
74 scene::ISceneNode* node = 0;
75
76 node = smgr->addAnimatedMeshSceneNode(mesh);
77 node->setMaterialTexture(0, driver->getTexture("../../media/wall.jpg"));
78 node->getMaterial(0).SpecularColor.set(0,0,0,0);
79
80 /*
81 Now, for the first special effect: Animated water. It works like this:
82 The WaterSurfaceSceneNode takes a mesh as input and makes it wave like
83 a water surface. And if we let this scene node use a nice material like
84 the EMT_REFLECTION_2_LAYER, it looks really cool. We are doing this
85 with the next few lines of code. As input mesh, we create a hill plane
86 mesh, without hills. But any other mesh could be used for this, you
87 could even use the room.3ds (which would look really strange) if you
88 want to.
89 */
90
91 mesh = smgr->addHillPlaneMesh( "myHill",
92 core::dimension2d<f32>(20,20),
93 core::dimension2d<u32>(40,40), 0, 0,
94 core::dimension2d<f32>(0,0),
95 core::dimension2d<f32>(10,10));
96
97 node = smgr->addWaterSurfaceSceneNode(mesh->getMesh(0), 3.0f, 300.0f, 30.0f);
98 node->setPosition(core::vector3df(0,7,0));
99
100 node->setMaterialTexture(0, driver->getTexture("../../media/stones.jpg"));
101 node->setMaterialTexture(1, driver->getTexture("../../media/water.jpg"));
102
103 node->setMaterialType(video::EMT_REFLECTION_2_LAYER);
104
105 /*
106 The second special effect is very basic, I bet you saw it already in
107 some Irrlicht Engine demos: A transparent billboard combined with a
108 dynamic light. We simply create a light scene node, let it fly around,
109 and to make it look more cool, we attach a billboard scene node to it.
110 */
111
112 // create light
113
114 node = smgr->addLightSceneNode(0, core::vector3df(0,0,0),
115 video::SColorf(1.0f, 0.6f, 0.7f, 1.0f), 800.0f);
116 scene::ISceneNodeAnimator* anim = 0;
117 anim = smgr->createFlyCircleAnimator (core::vector3df(0,150,0),250.0f);
118 node->addAnimator(anim);
119 anim->drop();
120
121 // attach billboard to light
122
123 node = smgr->addBillboardSceneNode(node, core::dimension2d<f32>(50, 50));
124 node->setMaterialFlag(video::EMF_LIGHTING, false);
125 node->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
126 node->setMaterialTexture(0, driver->getTexture("../../media/particlewhite.bmp"));
127
128 /*
129 The next special effect is a lot more interesting: A particle system.
130 The particle system in the Irrlicht Engine is quite modular and
131 extensible, but yet easy to use. There is a particle system scene node
132 into which you can put a particle emitter, which makes particles come out
133 of nothing. These emitters are quite flexible and usually have lots of
134 parameters like direction, amount, and color of the particles they
135 create.
136
137 There are different emitters, for example a point emitter which lets
138 particles pop out at a fixed point. If the particle emitters available
139 in the engine are not enough for you, you can easily create your own
140 ones, you'll simply have to create a class derived from the
141 IParticleEmitter interface and attach it to the particle system using
142 setEmitter(). In this example we create a box particle emitter, which
143 creates particles randomly inside a box. The parameters define the box,
144 direction of the particles, minimal and maximal new particles per
145 second, color, and minimal and maximal lifetime of the particles.
146
147 Because only with emitters particle system would be a little bit
148 boring, there are particle affectors which modify particles while
149 they fly around. Affectors can be added to a particle system for
150 simulating additional effects like gravity or wind.
151 The particle affector we use in this example is an affector which
152 modifies the color of the particles: It lets them fade out. Like the
153 particle emitters, additional particle affectors can also be
154 implemented by you, simply derive a class from IParticleAffector and
155 add it with addAffector().
156
157 After we set a nice material to the particle system, we have a cool
158 looking camp fire. By adjusting material, texture, particle emitter,
159 and affector parameters, it is also easily possible to create smoke,
160 rain, explosions, snow, and so on.
161 */
162
163 // create a particle system
164
165 scene::IParticleSystemSceneNode* ps =
166 smgr->addParticleSystemSceneNode(false);
167
168 scene::IParticleEmitter* em = ps->createBoxEmitter(
169 core::aabbox3d<f32>(-7,0,-7,7,1,7), // emitter size
170 core::vector3df(0.0f,0.06f,0.0f), // initial direction
171 80,100, // emit rate
172 video::SColor(0,255,255,255), // darkest color
173 video::SColor(0,255,255,255), // brightest color
174 800,2000,0, // min and max age, angle
175 core::dimension2df(10.f,10.f), // min size
176 core::dimension2df(20.f,20.f)); // max size
177
178 ps->setEmitter(em); // this grabs the emitter
179 em->drop(); // so we can drop it here without deleting it
180
181 scene::IParticleAffector* paf = ps->createFadeOutParticleAffector();
182
183 ps->addAffector(paf); // same goes for the affector
184 paf->drop();
185
186 ps->setPosition(core::vector3df(-70,60,40));
187 ps->setScale(core::vector3df(2,2,2));
188 ps->setMaterialFlag(video::EMF_LIGHTING, false);
189 ps->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
190 ps->setMaterialTexture(0, driver->getTexture("../../media/fire.bmp"));
191 ps->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
192
193 /*
194 Next we add a volumetric light node, which adds a glowing fake area light to
195 the scene. Like with the billboards and particle systems we also assign a
196 texture for the desired effect, though this time we'll use a texture animator
197 to create the illusion of a magical glowing area effect.
198 */
199 scene::IVolumeLightSceneNode * n = smgr->addVolumeLightSceneNode(0, -1,
200 32, // Subdivisions on U axis
201 32, // Subdivisions on V axis
202 video::SColor(0, 255, 255, 255), // foot color
203 video::SColor(0, 0, 0, 0)); // tail color
204
205 if (n)
206 {
207 n->setScale(core::vector3df(56.0f, 56.0f, 56.0f));
208 n->setPosition(core::vector3df(-120,50,40));
209
210 // load textures for animation
211 core::array<video::ITexture*> textures;
212 for (s32 g=7; g > 0; --g)
213 {
214 core::stringc tmp;
215 tmp = "../../media/portal";
216 tmp += g;
217 tmp += ".bmp";
218 video::ITexture* t = driver->getTexture( tmp.c_str() );
219 textures.push_back(t);
220 }
221
222 // create texture animator
223 scene::ISceneNodeAnimator* glow = smgr->createTextureAnimator(textures, 150);
224
225 // add the animator
226 n->addAnimator(glow);
227
228 // drop the animator because it was created with a create() function
229 glow->drop();
230 }
231
232 /*
233 As our last special effect, we want a dynamic shadow be casted from an
234 animated character. For this we load a DirectX .x model and place it
235 into our world. For creating the shadow, we simply need to call
236 addShadowVolumeSceneNode(). The color of shadows is only adjustable
237 globally for all shadows, by calling ISceneManager::setShadowColor().
238 Voila, here is our dynamic shadow.
239
240 Because the character is a little bit too small for this scene, we make
241 it bigger using setScale(). And because the character is lighted by a
242 dynamic light, we need to normalize the normals to make the lighting on
243 it correct. This is always necessary if the scale of a dynamic lighted
244 model is not (1,1,1). Otherwise it would get too dark or too bright
245 because the normals will be scaled too.
246 */
247
248 // add animated character
249
250 mesh = smgr->getMesh("../../media/dwarf.x");
251 scene::IAnimatedMeshSceneNode* anode = 0;
252
253 anode = smgr->addAnimatedMeshSceneNode(mesh);
254 anode->setPosition(core::vector3df(-50,20,-60));
255 anode->setAnimationSpeed(15);
256
257 // add shadow
258 anode->addShadowVolumeSceneNode();
259 smgr->setShadowColor(video::SColor(150,0,0,0));
260
261 // make the model a little bit bigger and normalize its normals
262 // because of the scaling, for correct lighting
263 anode->setScale(core::vector3df(2,2,2));
264 anode->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, true);
265
266 /*
267 Finally we simply have to draw everything, that's all.
268 */
269
270 scene::ICameraSceneNode* camera = smgr->addCameraSceneNodeFPS();
271 camera->setPosition(core::vector3df(-50,50,-150));
272 camera->setFarValue(10000.0f); // this increase a shadow visible range.
273
274 // disable mouse cursor
275 device->getCursorControl()->setVisible(false);
276
277 s32 lastFPS = -1;
278
279 while(device->run())
280 if (device->isWindowActive())
281 {
282 driver->beginScene(true, true, 0);
283
284 smgr->drawAll();
285
286 driver->endScene();
287
288 const s32 fps = driver->getFPS();
289
290 if (lastFPS != fps)
291 {
292 core::stringw str = L"Irrlicht Engine - SpecialFX example [";
293 str += driver->getName();
294 str += "] FPS:";
295 str += fps;
296
297 device->setWindowCaption(str.c_str());
298 lastFPS = fps;
299 }
300 }
301
302 device->drop();
303
304 return 0;
305}
306
307/*
308**/
diff --git a/src/others/irrlicht-1.8.1/examples/08.SpecialFX/tutorial.html b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/tutorial.html
new file mode 100644
index 0000000..8c1fc51
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/08.SpecialFX/tutorial.html
@@ -0,0 +1,278 @@
1<html>
2<head>
3<title>Irrlicht Engine Tutorial</title>
4<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
5</head>
6
7<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
8<br>
9<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
10 <tr>
11 <td bgcolor="#666699" width="10"><b><a href="http://irrlicht.sourceforge.net" target="_blank"><img src="../../media/irrlichtlogo.jpg" width="88" height="31" border="0"></a></b></td>
12 <td bgcolor="#666699" width="100%">
13<div align="center">
14<div align="left"><b><font color="#FFFFFF">Tutorial 8. Special Effects</font></b></div>
15 </div>
16 </td>
17 </tr>
18 <tr bgcolor="#eeeeff">
19 <td height="90" colspan="2">
20 <div align="left">
21 <p>This tutorials describes how to do special effects. It shows how to
22 use stencil buffer shadows, the particle system, billboards, dynamic
23 light and the water surface scene node. </p>
24 <p>The program which is described here will look like this:</p>
25 <p align="center"><img src="../../media/008shot.jpg" width="259" height="204"><br>
26 </p>
27 </div>
28 </td>
29 </tr>
30</table>
31<br>
32<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
33 <tr>
34 <td bgcolor="#666699"> <b><font color="#FFFFFF">Lets start!</font></b></td>
35 </tr>
36 <tr>
37 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
38 <div align="left">
39 <p>We start like in some tutorials before. Please note that this time,
40 the 'shadows' flag in createDevice() is set to true, for we want to
41 have a dynamic shadow casted from an animated character. If your this
42 example runs to slow, set it to false. The Irrlicht Engine checks
43 if your hardware doesn't support the stencil buffer, and disables
44 shadows by itself, but just in case the demo runs slow on your hardware.</p>
45 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
46 <tr>
47 <td> <pre><font color="#008000" size="2">#include &lt;irrlicht.h&gt;
48#include &lt;iostream&gt;<br>
49</font><font size="2"><b>using namespace </b>irr;
50
51<font color="#008000">#pragma comment(lib, &quot;Irrlicht.lib&quot;)
52
53</font><b>int </b>main()
54{
55 // ask user for driver<br> video::E_DRIVER_TYPE driverType;<br>
56 printf(&quot;Please select the driver you want for this example:\n&quot;\<br> &quot; (a) Direct3D 9.0c\n (b) Direct3D 8.1\n (c) OpenGL 1.5\n&quot;\<br> &quot; (d) Software Renderer\n (e) Apfelbaum Software Renderer\n&quot;\<br> &quot; (f) NullDevice\n (otherKey) exit\n\n&quot;);<br><br> char i;<br> std::cin &gt;&gt; i;<br><br> switch(i)<br> {<br> case 'a': driverType = video::EDT_DIRECT3D9;break;<br> case 'b': driverType = video::EDT_DIRECT3D8;break;<br> case 'c': driverType = video::EDT_OPENGL; break;<br> case 'd': driverType = video::EDT_SOFTWARE; break;<br> case 'e': driverType = video::EDT_BURNINGSVIDEO;break;<br> case 'f': driverType = video::EDT_NULL; break;<br> default: return 1;<br> }
57
58 // create device and exit if creation failed<br> IrrlichtDevice *device = createDevice(driverType,
59 core::dimension2d&lt;s32&gt;(640, 480), 16, false, true);
60
61 if (device == 0)
62 return 1;
63
64 video::IVideoDriver* driver = device-&gt;getVideoDriver();
65 scene::ISceneManager* smgr = device-&gt;getSceneManager();<font face="Courier New">
66</font></font></pre>
67 </td>
68 </tr>
69 </table>
70 <p> For our environment, we load a .3ds file. It is a small room I modelled
71 with Anim8or and exported it into the 3ds format because the Irrlicht
72 Engine did not support the .an8 format when I wrote this tutorial.
73 I am a very bad 3d graphic artist, and so the texture mapping is not
74 very nice in this model. Luckily I am a better programmer than artist,
75 and so the Irrlicht Engine is able to create a cool texture mapping
76 for me: Just use the mesh manipulator and create a planar texture
77 mapping for the mesh. If you want to see the mapping I made with Anim8or,
78 uncomment this line. I also did not figure out how to<br>
79 set the material right in Anim8or, it has a specular light color
80 which I don't really<br>
81 like. I'll switch it off too with this code.</p>
82 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
83 <tr>
84 <td> <pre><font size=2> scene::IAnimatedMesh* mesh = smgr-&gt;getMesh(
85 <font color="#FF0000">&quot;../../media/room.3ds&quot;</font>);
86
87 smgr-&gt;getMeshManipulator()-&gt;makePlanarTextureMapping(
88 mesh-&gt;getMesh(<font color="#800080">0</font>), <font color="#800080">0.008f</font>);
89
90 scene::ISceneNode* node = <font color="#800080">0</font>;
91
92 node = smgr-&gt;addAnimatedMeshSceneNode(mesh);
93 node-&gt;setMaterialTexture(<font color="#800080">0</font>, driver-&gt;getTexture(<font color="#FF0000">&quot;../../media/wall.jpg&quot;</font>));
94 node-&gt;getMaterial(0).SpecularColor.set(0,0,0,0);</font></pre></td>
95 </tr>
96 </table>
97 <p> Now, for the first special effect: Animated water. It works like
98 this: The WaterSurfaceSceneNode takes a mesh as input and makes it
99 wave like a water surface. And if we let this scene node use a nice
100 material like the MT_REFLECTION_2_LAYER, it looks really cool. We
101 are doing this with the next few lines of code. As input mesh, we
102 create a hill plane mesh, without hills. But any other mesh could
103 be used for this, you could even use the room.3ds (which would look
104 really strange) if you wanted to. </p>
105 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
106 <tr>
107 <td> <pre> mesh = smgr-&gt;addHillPlaneMesh(<font color="#FF0000">&quot;myHill&quot;</font>,
108 core::dimension2d&lt;f32&gt;(<font color="#800080">20</font>,<font color="#800080">20</font>),
109 core::dimension2d&lt;s32&gt;(<font color="#800080">40</font>,<font color="#800080">40</font>), <font color="#800080">0</font>, <font color="#800080">0</font>,
110 core::dimension2d&lt;f32&gt;(<font color="#800080">0</font>,<font color="#800080">0</font>),
111 core::dimension2d&lt;f32&gt;(<font color="#800080">10</font>,<font color="#800080">10</font>));
112
113 node = smgr-&gt;addWaterSurfaceSceneNode(mesh-&gt;getMesh(<font color="#800080">0</font>), <font color="#800080">3.0f</font>, <font color="#800080">300.0f</font>, <font color="#800080">30.0f</font>);
114 node-&gt;setPosition(core::vector3df(<font color="#800080">0</font>,<font color="#800080">7</font>,<font color="#800080">0</font>));
115
116 node-&gt;setMaterialTexture(<font color="#800080">0</font>, driver-&gt;getTexture(<font color="#FF0000">&quot;../../media/stones.jpg&quot;</font>));
117 node-&gt;setMaterialTexture(<font color="#800080">1</font>, driver-&gt;getTexture(<font color="#FF0000">&quot;../../media/water.jpg&quot;</font>));
118
119 node-&gt;setMaterialType(video::EMT_REFLECTION_2_LAYER<font size=3 face="Courier New">);
120</font></pre></td>
121 </tr>
122 </table>
123 <p> The second special effect is very basic, I bet you saw it already
124 in some Irrlicht Engine demos: A transparent billboard combined with
125 a dynamic light. We simply create a light scene node, let it fly around,
126 an to make it look more cool, we attach a billboard scene node to
127 it.</p>
128 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
129 <tr>
130 <td> <pre><font size=2> <font color="#0A246A"><i>// create light
131
132</i></font> node = smgr-&gt;addLightSceneNode(<font color="#800080">0</font>, core::vector3df(<font color="#800080">0</font>,<font color="#800080">0</font>,<font color="#800080">0</font>),
133 video::SColorf(<font color="#800080">1.0f</font>, <font color="#800080">0.6f</font>, <font color="#800080">0.7f</font>, <font color="#800080">1.0f</font>), <font color="#800080">600.0f</font>);
134 scene::ISceneNodeAnimator* anim = <font color="#800080">0</font>;
135 anim = smgr-&gt;createFlyCircleAnimator (core::vector3df(<font color="#800080">0</font>,<font color="#800080">150</font>,<font color="#800080">0</font>),<font color="#800080">250.0f</font>);
136 node-&gt;addAnimator(anim);
137 anim-&gt;drop();
138
139 <font color="#0A246A"><i>// attach billboard to light
140
141</i></font> node = smgr-&gt;addBillboardSceneNode(node, core::dimension2d&lt;f32&gt;(<font color="#800080">50</font>, <font color="#800080">50</font>));
142 node-&gt;setMaterialFlag(video::EMF_LIGHTING, <b>false</b>);
143 node-&gt;setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
144 node-&gt;setMaterialTexture(<font color="#800080">0</font>, driver-&gt;getTexture(<font color="#FF0000">&quot;../../media/particlewhite.bmp&quot;</font>));
145
146</font></pre></td>
147 </tr>
148 </table>
149 <p> The next special effect is a lot more interesting: A particle system.
150 The particle system in the Irrlicht Engine is quit modular and extensible
151 and yet easy to use. There is a particle system scene node into which
152 you can put particle emitters, which make particles come out of nothing.
153 These emitters are quite flexible and usually have lots of parameters
154 like direction, amount and color of the particles they should create.<br>
155 There are different emitters, for example a point emitter which lets
156 particles pop out at a fixed point. If the particle emitters available
157 in the engine are not enough for you, you can easily create your own
158 ones, you'll simply have to create a class derived from the IParticleEmitter
159 interface and attach it to the particle system using setEmitter().<br>
160 In this example we create a box particle emitter, which creates particles
161 randomly inside a box. The parameters define the box, direction of
162 the particles, minimal and maximal new particles per second, color
163 and minimal and maximal livetime of the particles.</p>
164 <p> Because only with emitters particle system would be a little bit
165 boring, there are particle affectors, which modify particles during
166 they fly around. They can be added to the particle system, simulating
167 additional effects like gravity or wind. The particle affector we
168 use in this example is an affector, which modifies the color of the
169 particles: It lets them fade out. Like the particle emitters, additional
170 particle affectors can also be implemented by you, simply derive a
171 class from IParticleAffector and add it with addAffector(). After
172 we set a nice material to the particle system, we have a cool looking
173 camp fire. By adjusting material, texture, particle emitter and affector
174 parameters, it is also easily possible to create smoke, rain, explosions,
175 snow, and so on.<br>
176 </p>
177 </div>
178 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
179 <tr>
180 <td> <pre><font size="2"> scene::IParticleSystemSceneNode* ps = <font color="#800080">0</font>;
181 ps = smgr-&gt;addParticleSystemSceneNode(<b>false</b>);
182 ps-&gt;setPosition(core::vector3df(-<font color="#800080">70</font>,<font color="#800080">60</font>,<font color="#800080">40</font>));
183 ps-&gt;setScale(core::vector3df(<font color="#800080">2</font>,<font color="#800080">2</font>,<font color="#800080">2</font>));
184
185 ps-&gt;setParticleSize(core::dimension2d&lt;f32&gt;(<font color="#800080">20.0f</font>, <font color="#800080">10.0f</font>));
186
187 scene::IParticleEmitter* em = ps-&gt;createBoxEmitter(
188 core::aabbox3d&lt;f32&gt;(-<font color="#800080">7</font>,<font color="#800080">0</font>,-<font color="#800080">7</font>,<font color="#800080">7</font>,<font color="#800080">1</font>,<font color="#800080">7</font>),
189 core::vector3df(<font color="#800080">0.0f</font>,<font color="#800080">0.03f</font>,<font color="#800080">0.0f</font>),
190 <font color="#800080">80</font>,<font color="#800080">100</font>,
191 video::SColor(<font color="#800080">0</font>,<font color="#800080">255</font>,<font color="#800080">255</font>,<font color="#800080">255</font>), video::SColor(<font color="#800080">0</font>,<font color="#800080">255</font>,<font color="#800080">255</font>,<font color="#800080">255</font>),
192 <font color="#800080">800</font>,<font color="#800080">2000</font>);
193
194 ps-&gt;setEmitter(em);
195 em-&gt;drop();
196
197 scene::IParticleAffector* paf =
198 ps-&gt;createFadeOutParticleAffector();
199
200 ps-&gt;addAffector(paf);
201 paf-&gt;drop();
202
203 ps-&gt;setMaterialFlag(video::EMF_LIGHTING, <b>false</b>);
204 ps-&gt;setMaterialTexture(<font color="#800080">0</font>, driver-&gt;getTexture(<font color="#FF0000">&quot;../../media/particle.bmp&quot;</font>));
205 ps-&gt;setMaterialType(video::EMT_TRANSPARENT_VERTEX_ALPHA)<font size="2">;</font></font></pre></td>
206 </tr>
207 </table>
208 <p> As our last special effect, we want a dynamic shadow be casted from
209 an animated character. For this we load a DirectX .x model and place
210 it into our world. For creating the shadow, we simply need to call addShadowVolumeSceneNode().
211 The color of shadows is only adjustable globally for all shadows, by
212 calling ISceneManager::setShadowColor(). Voila, here is our dynamic
213 shadow.<br>
214 Because the character is a little bit too small for this scene, we make
215 it bigger using setScale(). And because the character is lighted by
216 a dynamic light, we need to normalize the normals to make the lighting
217 on it correct. This is always necessary if the scale of a dynamic lighted
218 model is not (1,1,1). Otherwise it would get too dark or too bright
219 because the normals will be scaled too.</p>
220 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
221 <tr>
222 <td><pre><font size=2> mesh = smgr-&gt;getMesh(<font color="#FF0000">&quot;../../media/dwarf.x&quot;</font>);
223 scene::IAnimatedMeshSceneNode* anode = <font color="#800080">0</font>;
224
225 anode = smgr-&gt;addAnimatedMeshSceneNode(mesh);
226 anode-&gt;setPosition(core::vector3df(-<font color="#800080">50</font>,<font color="#800080">20</font>,-<font color="#800080">60</font>));
227 anode-&gt;setAnimationSpeed(15);
228<font color="#0A246A">
229 // add shadow</font>
230 anode-&gt;addShadowVolumeSceneNode();
231 smgr-&gt;setShadowColor(video::SColor(<font color="#800080">220</font>,<font color="#800080">0</font>,<font color="#800080">0</font>,<font color="#800080">0</font>));
232</font><font size=2><font color="#0A246A">
233 // make the model a little bit bigger and normalize its normals <br> // because of this for correct lighting</font><br> anode-&gt;setScale(core::vector3df(2,2,2));<br> anode-&gt;setMaterialFlag(video::EMF_NORMALIZE_NORMALS, true);</font><font size=3 face="Courier New"><br></font></pre></td>
234 </tr>
235 </table>
236 <p> Finally we simply have to draw everything, that's all.</p>
237 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
238 <tr>
239 <td><pre><font size=2> scene::ICameraSceneNode* camera = smgr-&gt;addCameraSceneNodeFPS();
240 camera-&gt;setPosition(core::vector3df(-<font color="#800080">50</font>,<font color="#800080">50</font>,-<font color="#800080">150</font>));
241
242
243 <b>int </b>lastFPS = -<font color="#800080">1</font>;
244
245 <b>while</b>(device-&gt;run())
246 {
247 driver-&gt;beginScene(<b>true</b>, <b>true</b>, <font color="#800080">0</font>);
248
249 smgr-&gt;drawAll();
250
251 driver-&gt;endScene();
252
253 <b>int </b>fps = driver-&gt;getFPS();
254
255 <b>if </b>(lastFPS != fps)
256 {
257 core::stringw str = L&quot;Irrlicht Engine - SpecialFX example [&quot;;<br> str += driver-&gt;getName();<br> str += &quot;] FPS:&quot;;<br> str += fps;<br><br> device-&gt;setWindowCaption(str.c_str());<br> lastFPS = fps;<br> }
258 }
259
260 device-&gt;drop();
261
262 <b>return </b><font color="#800080">0</font>;
263}
264
265</font>
266</pre></td>
267 </tr>
268 </table>
269 <p>&nbsp;</p>
270 <p>&nbsp;</p>
271 <p>&nbsp;</p>
272 </div>
273 </td>
274 </tr>
275</table>
276<p>&nbsp;</p>
277 </body>
278</html>