aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/others/irrlicht-1.8.1/examples
diff options
context:
space:
mode:
Diffstat (limited to 'src/others/irrlicht-1.8.1/examples')
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/Makefile66
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/main.cpp236
-rw-r--r--src/others/irrlicht-1.8.1/examples/01.HelloWorld/tutorial.html394
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Makefile40
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.vcproj162
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/main.cpp206
-rw-r--r--src/others/irrlicht-1.8.1/examples/02.Quake3Map/tutorial.html181
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.cbp58
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc10.vcxproj243
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc11.vcxproj247
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/main.cpp267
-rw-r--r--src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/tutorial.html222
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Makefile39
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Movement.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Movement.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Movement.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/main.cpp258
-rw-r--r--src/others/irrlicht-1.8.1/examples/04.Movement/tutorial.html188
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/main.cpp291
-rw-r--r--src/others/irrlicht-1.8.1/examples/05.UserInterface/tutorial.html225
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/main.cpp166
-rw-r--r--src/others/irrlicht-1.8.1/examples/06.2DGraphics/tutorial.html163
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Collision.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Collision.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Collision.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/main.cpp330
-rw-r--r--src/others/irrlicht-1.8.1/examples/07.Collision/tutorial.html308
-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
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/9.Meshviewer.rc84
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/MeshViewer.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/icon.icobin0 -> 2238 bytes
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/main.cpp1042
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/resource.h16
-rw-r--r--src/others/irrlicht-1.8.1/examples/09.Meshviewer/tutorial.html182
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.cbp56
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/main.cpp443
-rw-r--r--src/others/irrlicht-1.8.1/examples/10.Shaders/tutorial.html566
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.cbp56
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/main.cpp487
-rw-r--r--src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/tutorial.html502
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.cbp56
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/main.cpp285
-rw-r--r--src/others/irrlicht-1.8.1/examples/12.TerrainRendering/tutorial.html122
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/main.cpp211
-rw-r--r--src/others/irrlicht-1.8.1/examples/13.RenderToTexture/tutorial.html244
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.cbp43
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.vcproj165
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc10.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc11.vcxproj239
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc8.vcproj232
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc9.vcproj232
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/main.cpp251
-rw-r--r--src/others/irrlicht-1.8.1/examples/14.Win32Window/tutorial.html247
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.cbp54
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.vcproj162
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/main.cpp173
-rw-r--r--src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/tutorial.html129
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.cbp56
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.vcproj133
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc10.vcxproj190
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc11.vcxproj194
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc8.vcproj190
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc9.vcproj188
-rw-r--r--src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/main.cpp389
-rw-r--r--src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v8.vcproj185
-rw-r--r--src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v9.vcproj184
-rw-r--r--src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc10.vcxproj176
-rw-r--r--src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc11.vcxproj180
-rw-r--r--src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.sln33
-rw-r--r--src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.vcproj198
-rw-r--r--src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/main.cpp503
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.vcproj132
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc10.vcxproj190
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc11.vcxproj194
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc8.vcproj189
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc9.vcproj188
-rw-r--r--src/others/irrlicht-1.8.1/examples/18.SplitScreen/main.cpp244
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/Makefile39
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.cbp56
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.vcproj162
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc10.vcxproj227
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc11.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/main.cpp285
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/Makefile39
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.cbp57
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc10.vcxproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc11.vcxproj234
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc9.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/20.ManagedLights/main.cpp386
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.cbp59
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.dev99
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.vcproj132
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc10.vcxproj196
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc11.vcxproj200
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc8.vcproj210
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc9.vcproj204
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/main.cpp2188
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.cpp824
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.h149
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.cpp98
-rw-r--r--src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.h18
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.vcproj229
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/22.MaterialViewer/main.cpp1057
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/Makefile38
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.cbp44
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.vcproj132
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc10.vcxproj188
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc11.vcxproj192
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc8.vcproj190
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc9.vcproj187
-rw-r--r--src/others/irrlicht-1.8.1/examples/23.SMeshHandling/main.cpp426
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.cbp56
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.vcproj132
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc10.vcxproj184
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc11.vcxproj188
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc8.vcproj190
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc9.vcproj185
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/Makefile66
-rw-r--r--src/others/irrlicht-1.8.1/examples/24.CursorControl/main.cpp563
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/Makefile66
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.vcproj195
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc10.vcxproj178
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc11.vcxproj182
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc8.vcproj190
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc9.vcproj185
-rw-r--r--src/others/irrlicht-1.8.1/examples/25.XmlHandling/main.cpp505
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/Makefile39
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.cbp55
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.dev59
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.vcproj163
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc10.vcxproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc11.vcxproj235
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc8.vcproj231
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc9.vcproj230
-rw-r--r--src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/main.cpp213
-rw-r--r--src/others/irrlicht-1.8.1/examples/BuildAllExamples.MacOSX/DemoApp-Info.plist24
-rw-r--r--src/others/irrlicht-1.8.1/examples/BuildAllExamples.workspace35
-rw-r--r--src/others/irrlicht-1.8.1/examples/BuildAllExamples_v8.sln236
-rw-r--r--src/others/irrlicht-1.8.1/examples/BuildAllExamples_v9.sln284
-rw-r--r--src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc10.sln409
-rw-r--r--src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc11.sln409
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/CDemo.cpp815
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/CDemo.h110
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.cpp378
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.h48
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/Demo.vcproj223
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/Demo_vc10.vcxproj279
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/Demo_vc11.vcxproj283
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/Demo_vc8.vcproj300
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/Demo_vc9.vcproj300
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/Makefile43
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/demo.cbp68
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/demo.dev99
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/icon.icobin0 -> 2238 bytes
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/main.cpp49
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/resource.h16
-rw-r--r--src/others/irrlicht-1.8.1/examples/Demo/resscript.rc72
-rw-r--r--src/others/irrlicht-1.8.1/examples/Makefile8
-rwxr-xr-xsrc/others/irrlicht-1.8.1/examples/buildAllExamples.sh8
-rw-r--r--src/others/irrlicht-1.8.1/examples/whereAreTheBinaries.txt7
277 files changed, 52343 insertions, 0 deletions
diff --git a/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.cbp b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.cbp
new file mode 100644
index 0000000..bba207a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.cbp
@@ -0,0 +1,55 @@
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 01 Hello World" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Linux">
10 <Option platforms="Unix;" />
11 <Option output="..\..\bin\Linux\HelloWorld" prefix_auto="0" extension_auto="0" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Compiler>
15 <Add option="-g" />
16 <Add option="-D_IRR_STATIC_LIB_" />
17 </Compiler>
18 <Linker>
19 <Add library="Xxf86vm" />
20 <Add library="Xcursor" />
21 <Add library="GL" />
22 <Add directory="..\..\lib\Linux" />
23 </Linker>
24 </Target>
25 <Target title="Windows">
26 <Option platforms="Windows;" />
27 <Option output="..\..\bin\Win32-gcc\HelloWorld" prefix_auto="0" extension_auto="1" />
28 <Option type="1" />
29 <Option compiler="gcc" />
30 <Compiler>
31 <Add option="-g" />
32 </Compiler>
33 <Linker>
34 <Add directory="..\..\lib\Win32-gcc" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.dev b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.dev
new file mode 100644
index 0000000..9de3da7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 01 HelloWorld
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=
20OverrideOutput=1
21OverrideOutputName=01.HelloWorld.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/01.HelloWorld/HelloWorld.vcproj b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.vcproj
new file mode 100644
index 0000000..3a2fdb0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld.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="01.HelloWorld"
6 ProjectGUID="{265B57DD-0C6D-4CFD-A95E-0FCC3ECD0E90}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/HelloWorld.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\01.HelloWorld.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/HelloWorld.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/HelloWorld.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/HelloWorld.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\01.HelloWorld.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/HelloWorld.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/HelloWorld.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc10.vcxproj
new file mode 100644
index 0000000..696621f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_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>01.HelloWorld</ProjectName>
23 <ProjectGuid>{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}</ProjectGuid>
24 <RootNamespace>HelloWorld</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
73 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
74 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win32-VisualStudio\</OutDir>
75 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
76 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/HelloWorld.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\01.HelloWorld.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/HelloWorld.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\01.HelloWorld.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/HelloWorld.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\01.HelloWorld.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/HelloWorld.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\01.HelloWorld.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/01.HelloWorld/HelloWorld_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc11.vcxproj
new file mode 100644
index 0000000..f5f1fae
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_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>01.HelloWorld</ProjectName>
23 <ProjectGuid>{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}</ProjectGuid>
24 <RootNamespace>HelloWorld</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win32-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/HelloWorld.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\01.HelloWorld.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/HelloWorld.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\01.HelloWorld.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/HelloWorld.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\01.HelloWorld.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/HelloWorld.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\01.HelloWorld.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/01.HelloWorld/HelloWorld_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc8.vcproj
new file mode 100644
index 0000000..ac11031
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_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="01.HelloWorld_vc8"
6 ProjectGUID="{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}"
7 RootNamespace="HelloWorld_vc8"
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 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=".\Debug/HelloWorld.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/HelloWorld.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\01.HelloWorld.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/HelloWorld.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/HelloWorld.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/HelloWorld.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\01.HelloWorld.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/HelloWorld.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_vc9.vcproj
new file mode 100644
index 0000000..982d202
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/HelloWorld_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="01.HelloWorld_vc9"
6 ProjectGUID="{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}"
7 RootNamespace="HelloWorld_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/HelloWorld.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/HelloWorld.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\01.HelloWorld.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/HelloWorld.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/HelloWorld.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/HelloWorld.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\01.HelloWorld.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/HelloWorld.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/01.HelloWorld/Makefile b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/Makefile
new file mode 100644
index 0000000..c834ab7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/Makefile
@@ -0,0 +1,66 @@
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
5# Name of the executable created (.exe will be added automatically if necessary)
6Target := 01.HelloWorld
7# List of source files, separated by spaces
8Sources := main.cpp
9# Path to Irrlicht directory, should contain include/ and lib/
10IrrlichtHome := ../..
11# Path for the executable. Note that Irrlicht.dll should usually also be there for win32 systems
12BinPath = ../../bin/$(SYSTEM)
13
14# general compiler settings (might need to be set when compiling the lib, too)
15# preprocessor flags, e.g. defines and include paths
16USERCPPFLAGS =
17# compiler flags such as optimization flags
18USERCXXFLAGS = -O3 -ffast-math
19#USERCXXFLAGS = -g -Wall
20# linker flags such as additional libraries and link paths
21USERLDFLAGS =
22
23####
24#no changes necessary below this line
25####
26
27CPPFLAGS = -I$(IrrlichtHome)/include -I/usr/X11R6/include $(USERCPPFLAGS)
28CXXFLAGS = $(USERCXXFLAGS)
29LDFLAGS = $(USERLDFLAGS)
30
31#default target is Linux
32all: all_linux
33
34# target specific settings
35all_linux all_win32 static_win32: LDFLAGS += -L$(IrrlichtHome)/lib/$(SYSTEM) -lIrrlicht
36all_linux: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lXext -lX11 -lXcursor
37all_linux clean_linux: SYSTEM=Linux
38all_win32 clean_win32 static_win32: SYSTEM=Win32-gcc
39all_win32 clean_win32 static_win32: SUF=.exe
40static_win32: CPPFLAGS += -D_IRR_STATIC_LIB_
41all_win32: LDFLAGS += -lopengl32 -lm
42static_win32: LDFLAGS += -lgdi32 -lwinspool -lcomdlg32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lopengl32
43# name of the binary - only valid for targets which set SYSTEM
44DESTPATH = $(BinPath)/$(Target)$(SUF)
45
46all_linux all_win32 static_win32:
47 $(warning Building...)
48 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
49
50clean: clean_linux clean_win32
51 $(warning Cleaning...)
52
53clean_linux clean_win32:
54 @$(RM) $(DESTPATH)
55
56.PHONY: all all_win32 static_win32 clean clean_linux clean_win32
57
58#multilib handling
59ifeq ($(HOSTTYPE), x86_64)
60LIBSELECT=64
61endif
62#solaris real-time features
63ifeq ($(HOSTTYPE), sun4)
64LDFLAGS += -lrt
65endif
66
diff --git a/src/others/irrlicht-1.8.1/examples/01.HelloWorld/main.cpp b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/main.cpp
new file mode 100644
index 0000000..a53483c
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/main.cpp
@@ -0,0 +1,236 @@
1/** Example 001 HelloWorld
2
3This Tutorial shows how to set up the IDE for using the Irrlicht Engine and how
4to write a simple HelloWorld program with it. The program will show how to use
5the basics of the VideoDriver, the GUIEnvironment, and the SceneManager.
6Microsoft Visual Studio is used as an IDE, but you will also be able to
7understand everything if you are using a different one or even another
8operating system than windows.
9
10You have to include the header file <irrlicht.h> in order to use the engine. The
11header file can be found in the Irrlicht Engine SDK directory \c include. To let
12the compiler find this header file, the directory where it is located has to be
13specified. This is different for every IDE and compiler you use. Let's explain
14shortly how to do this in Microsoft Visual Studio:
15
16- If you use Version 6.0, select the Menu Extras -> Options.
17 Select the directories tab, and select the 'Include' Item in the combo box.
18 Add the \c include directory of the irrlicht engine folder to the list of
19 directories. Now the compiler will find the Irrlicht.h header file. We also
20 need the irrlicht.lib to be found, so stay in that dialog, select 'Libraries'
21 in the combo box and add the \c lib/VisualStudio directory.
22 \image html "vc6optionsdir.jpg"
23 \image latex "vc6optionsdir.jpg"
24 \image html "vc6include.jpg"
25 \image latex "vc6include.jpg"
26
27- If your IDE is Visual Studio .NET, select Tools -> Options.
28 Select the projects entry and then select VC++ directories. Select 'show
29 directories for include files' in the combo box, and add the \c include
30 directory of the irrlicht engine folder to the list of directories. Now the
31 compiler will find the Irrlicht.h header file. We also need the irrlicht.lib
32 to be found, so stay in that dialog, select 'show directories for Library
33 files' and add the \c lib/VisualStudio directory.
34 \image html "vcnetinclude.jpg"
35 \image latex "vcnetinclude.jpg"
36
37That's it. With your IDE set up like this, you will now be able to develop
38applications with the Irrlicht Engine.
39
40Lets start!
41
42After we have set up the IDE, the compiler will know where to find the Irrlicht
43Engine header files so we can include it now in our code.
44*/
45#include <irrlicht.h>
46
47/*
48In the Irrlicht Engine, everything can be found in the namespace 'irr'. So if
49you want to use a class of the engine, you have to write irr:: before the name
50of the class. For example to use the IrrlichtDevice write: irr::IrrlichtDevice.
51To get rid of the irr:: in front of the name of every class, we tell the
52compiler that we use that namespace from now on, and we will not have to write
53irr:: anymore.
54*/
55using namespace irr;
56
57/*
58There are 5 sub namespaces in the Irrlicht Engine. Take a look at them, you can
59read a detailed description of them in the documentation by clicking on the top
60menu item 'Namespace List' or by using this link:
61http://irrlicht.sourceforge.net/docu/namespaces.html
62Like the irr namespace, we do not want these 5 sub namespaces now, to keep this
63example simple. Hence, we tell the compiler again that we do not want always to
64write their names.
65*/
66using namespace core;
67using namespace scene;
68using namespace video;
69using namespace io;
70using namespace gui;
71
72/*
73To be able to use the Irrlicht.DLL file, we need to link with the Irrlicht.lib.
74We could set this option in the project settings, but to make it easy, we use a
75pragma comment lib for VisualStudio. On Windows platforms, we have to get rid
76of the console window, which pops up when starting a program with main(). This
77is done by the second pragma. We could also use the WinMain method, though
78losing platform independence then.
79*/
80#ifdef _IRR_WINDOWS_
81#pragma comment(lib, "Irrlicht.lib")
82#pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup")
83#endif
84
85
86/*
87This is the main method. We can now use main() on every platform.
88*/
89int main()
90{
91 /*
92 The most important function of the engine is the createDevice()
93 function. The IrrlichtDevice is created by it, which is the root
94 object for doing anything with the engine. createDevice() has 7
95 parameters:
96
97 - deviceType: Type of the device. This can currently be the Null-device,
98 one of the two software renderers, D3D8, D3D9, or OpenGL. In this
99 example we use EDT_SOFTWARE, but to try out, you might want to
100 change it to EDT_BURNINGSVIDEO, EDT_NULL, EDT_DIRECT3D8,
101 EDT_DIRECT3D9, or EDT_OPENGL.
102
103 - windowSize: Size of the Window or screen in FullScreenMode to be
104 created. In this example we use 640x480.
105
106 - bits: Amount of color bits per pixel. This should be 16 or 32. The
107 parameter is often ignored when running in windowed mode.
108
109 - fullscreen: Specifies if we want the device to run in fullscreen mode
110 or not.
111
112 - stencilbuffer: Specifies if we want to use the stencil buffer (for
113 drawing shadows).
114
115 - vsync: Specifies if we want to have vsync enabled, this is only useful
116 in fullscreen mode.
117
118 - eventReceiver: An object to receive events. We do not want to use this
119 parameter here, and set it to 0.
120
121 Always check the return value to cope with unsupported drivers,
122 dimensions, etc.
123 */
124 IrrlichtDevice *device =
125 createDevice( video::EDT_SOFTWARE, dimension2d<u32>(640, 480), 16,
126 false, false, false, 0);
127
128 if (!device)
129 return 1;
130
131 /*
132 Set the caption of the window to some nice text. Note that there is an
133 'L' in front of the string. The Irrlicht Engine uses wide character
134 strings when displaying text.
135 */
136 device->setWindowCaption(L"Hello World! - Irrlicht Engine Demo");
137
138 /*
139 Get a pointer to the VideoDriver, the SceneManager and the graphical
140 user interface environment, so that we do not always have to write
141 device->getVideoDriver(), device->getSceneManager(), or
142 device->getGUIEnvironment().
143 */
144 IVideoDriver* driver = device->getVideoDriver();
145 ISceneManager* smgr = device->getSceneManager();
146 IGUIEnvironment* guienv = device->getGUIEnvironment();
147
148 /*
149 We add a hello world label to the window, using the GUI environment.
150 The text is placed at the position (10,10) as top left corner and
151 (260,22) as lower right corner.
152 */
153 guienv->addStaticText(L"Hello World! This is the Irrlicht Software renderer!",
154 rect<s32>(10,10,260,22), true);
155
156 /*
157 To show something interesting, we load a Quake 2 model and display it.
158 We only have to get the Mesh from the Scene Manager with getMesh() and add
159 a SceneNode to display the mesh with addAnimatedMeshSceneNode(). We
160 check the return value of getMesh() to become aware of loading problems
161 and other errors.
162
163 Instead of writing the filename sydney.md2, it would also be possible
164 to load a Maya object file (.obj), a complete Quake3 map (.bsp) or any
165 other supported file format. By the way, that cool Quake 2 model
166 called sydney was modelled by Brian Collins.
167 */
168 IAnimatedMesh* mesh = smgr->getMesh("../../media/sydney.md2");
169 if (!mesh)
170 {
171 device->drop();
172 return 1;
173 }
174 IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode( mesh );
175
176 /*
177 To let the mesh look a little bit nicer, we change its material. We
178 disable lighting because we do not have a dynamic light in here, and
179 the mesh would be totally black otherwise. Then we set the frame loop,
180 such that the predefined STAND animation is used. And last, we apply a
181 texture to the mesh. Without it the mesh would be drawn using only a
182 color.
183 */
184 if (node)
185 {
186 node->setMaterialFlag(EMF_LIGHTING, false);
187 node->setMD2Animation(scene::EMAT_STAND);
188 node->setMaterialTexture( 0, driver->getTexture("../../media/sydney.bmp") );
189 }
190
191 /*
192 To look at the mesh, we place a camera into 3d space at the position
193 (0, 30, -40). The camera looks from there to (0,5,0), which is
194 approximately the place where our md2 model is.
195 */
196 smgr->addCameraSceneNode(0, vector3df(0,30,-40), vector3df(0,5,0));
197
198 /*
199 Ok, now we have set up the scene, lets draw everything: We run the
200 device in a while() loop, until the device does not want to run any
201 more. This would be when the user closes the window or presses ALT+F4
202 (or whatever keycode closes a window).
203 */
204 while(device->run())
205 {
206 /*
207 Anything can be drawn between a beginScene() and an endScene()
208 call. The beginScene() call clears the screen with a color and
209 the depth buffer, if desired. Then we let the Scene Manager and
210 the GUI Environment draw their content. With the endScene()
211 call everything is presented on the screen.
212 */
213 driver->beginScene(true, true, SColor(255,100,101,140));
214
215 smgr->drawAll();
216 guienv->drawAll();
217
218 driver->endScene();
219 }
220
221 /*
222 After we are done with the render loop, we have to delete the Irrlicht
223 Device created before with createDevice(). In the Irrlicht Engine, you
224 have to delete all objects you created with a method or function which
225 starts with 'create'. The object is simply deleted by calling ->drop().
226 See the documentation at irr::IReferenceCounted::drop() for more
227 information.
228 */
229 device->drop();
230
231 return 0;
232}
233
234/*
235That's it. Compile and run.
236**/
diff --git a/src/others/irrlicht-1.8.1/examples/01.HelloWorld/tutorial.html b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/tutorial.html
new file mode 100644
index 0000000..e46c954
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/01.HelloWorld/tutorial.html
@@ -0,0 +1,394 @@
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="90%" border="0" cellspacing="0" cellpadding="2" align="center">
10 <tr>
11 <td bgcolor="#666699"> <b><font color="#FFFFFF">Tutorial 1.HelloWorld</font></b></td>
12
13 </tr>
14 <tr>
15 <td height="90" bgcolor="#F7F3F7"> <div align="left">
16 <p>This Tutorial shows how to set up the IDE for using the
17 Irrlicht Engine and how to write a simple HelloWorld program
18 with it. The program will show how to use the basics of
19 the VideoDriver, the GUIEnvironment and the SceneManager.<br>
20 The result of this example will look like this:</p>
21 <p align="center"><img src="../../media/001shot.jpg" width="259" height="204"><br>
22 </p>
23 </div></td>
24
25 </tr>
26 </table>
27 <br> <table width="90%" border="0" cellspacing="0" cellpadding="2" align="center">
28 <tr> <a name="settingup"></a>
29 <td bgcolor="#666699"> <b><font color="#FFFFFF">Setting up the
30 IDE</font></b></td>
31 </tr>
32 <tr>
33 <td height="90" bgcolor="#F7F3F7"> <div align="left">
34 <div align="left">
35 <p align="left">To use the engine, we will have to include
36 the header file &lt;irrlicht.h&gt;, which can be found
37 in the Irrlicht Engine SDK directory \include. To let
38 the compiler find this header file, the directory where
39 it is located should be specified somewhere. This is different
40 for every IDE and compiler. I will explain how to do this
41 in Microsoft Visual Studio C++ 6.0 and .NET:</p>
42
43 </div>
44 <ul>
45 <li>
46 <div align="left">If you use Version 6.0, select the Menu
47 Extras -&gt; Options. Select the directories tab, and
48 select the 'Include' Item in the combo box. Add the
49 \include directory of the Irrlicht Engine folder to
50 the list of directories. Now the compiler will find
51 the Irrlicht.h header file. We also need the location
52 of irrlicht.lib to be listed, so select the 'Libraries'
53 tab and add the \lib\VisualStudio directory.<br>
54 <br>
55 <img src="../../media/vc6optionsdir.jpg" width="231" height="172" align="middle">&nbsp;&nbsp;<img src="../../media/vc6include.jpg" width="231" height="159" align="middle"><br>
56 &nbsp; <br>
57
58 </div>
59 </li>
60 <li>If your IDE is Visual Studio .NET, select Tools -&gt;
61 Options. Select the Projects entry and then select VC++
62 directories. Select 'show directories for include files'
63 in the combo box, and add the \include directory of the
64 Irrlicht Engine folder to the list of directories so the
65 compiler will find the Irrlicht.h header file. We also
66 need the irrlicht.lib to be found, so select 'show directories
67 for Library files' and add the \lib\VisualStudio directory.<br>
68 <br>
69 <img src="../../media/vcnetinclude.jpg" width="256" height="160">
70 <br>
71 </li>
72 </ul>
73
74 <p>&nbsp;</p>
75 </div></td>
76 </tr>
77 </table>
78 <br> <table width="90%" border="0" cellspacing="0" cellpadding="2" align="center">
79 <tr>
80 <td bgcolor="#666699"> <font color="#FFFFFF"><b>Lets start!</b></font></td>
81 </tr>
82
83 <tr>
84 <td height="90" bgcolor="#F7F3F7" valign="top"> <div align="left">
85 <div align="left">
86 <div align="left">
87 <div align="left">
88 <p>After we have set up the IDE, the compiler will know
89 where to find the Irrlicht Engine header files so
90 we can include it now into our code.</p>
91 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
92 <tr>
93 <td> <pre>#include &lt;irrlicht.h&gt;</pre> </td>
94
95 </tr>
96 </table>
97 <p>In the Irrlicht Engine, everything can be found in
98 the namespace 'irr'. So if you want to use a class
99 of the engine, you'll have to type an irr:: before
100 the name of the class. For example, to use the IrrlichtDevice,
101 write: irr::IrrlichtDevice. To avoid having to put
102 irr:: before of the name of every class, we tell the
103 compiler that we use that namespace.</p>
104 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
105 <tr>
106 <td> <pre>using namespace irr;</pre> </td>
107 </tr>
108
109 </table>
110 <p>There are 5 sub-namespaces in the Irrlicht Engine.
111 Take a look at them: you can read a detailed description
112 of them in the documentation by clicking on the top
113 menu item '<a href="http://irrlicht.sourceforge.net/docu/namespaces.html">Namespace
114 List</a>'. To keep this example simple, we don't want
115 to have to specify the name spaces, Hence:</p>
116 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
117 <tr>
118 <td> <pre>using namespace core;<br>using namespace scene;<br>using namespace video;<br>using namespace io;<br>using namespace gui;</pre> </td>
119
120 </tr>
121 </table>
122 <p>To be able to use the Irrlicht.DLL file, we need
123 to link with the Irrlicht.lib. We could set this option
124 in the project settings, but to make it easy we use
125 a pragma comment:</p>
126 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
127 <tr>
128 <td> <pre>#pragma comment(lib, &quot;Irrlicht.lib&quot;)</pre> </td>
129
130 </tr>
131 </table>
132 <p>Now the main method: to keep this example simple
133 we use int main(), which can be used on any platform.
134 However, on Windows platforms, we could also use the
135 WinMain method if we would want to get rid of the
136 console window which pops up when starting a program
137 with main().</p>
138 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
139 <tr>
140 <td> <pre>int main()<br>{</pre> </td>
141 </tr>
142
143 </table>
144 <p>The most important function of the engine is the
145 'createDevice' function. The Irrlicht Device, which
146 is the root object for doing everything with the engine,
147 can be created with it. createDevice() has 7 parameters:</p>
148 </div>
149 <ul>
150 <li>
151
152 <div align="left"> deviceType: Type of the device. This can currently
153 be the Null device, the Software device, Direct3D8, Direct3D9,
154 or OpenGL. In this example we use EDT_SOFTWARE, but, to try
155 them out, you might want to change it to EDT_NULL, EDT_DIRECT3D8,
156 EDT_DIRECT3D9 or EDT_OPENGL. </div>
157 </li>
158 <li>
159 <div align="left">windowSize: Size of the window or
160 full screen mode to be created. In this example
161 we use 512x384.</div>
162
163 </li>
164 <li>
165 <div align="left">bits: Number of bits per pixel when
166 in full screen mode. This should be 16 or 32. This
167 parameter is ignored when running in windowed mode.</div>
168 </li>
169 <li>
170 <div align="left">fullscreen: Specifies if we want
171 the device to run in full screen mode or not.</div>
172 </li>
173 <li>stencilbuffer: Specifies if we want to use the stencil
174 buffer for drawing shadows.</li>
175
176 <li>vsync: Specifies if we want to have vsync enabled.
177 This is only useful in full screen mode.</li>
178 <li>
179 <div align="left">eventReceiver: An object to receive
180 events. We do not want to use this parameter here,
181 and set it to 0.</div>
182 </li>
183 </ul>
184 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
185 <tr>
186 <td> <pre>IrrlichtDevice *device =<br> createDevice(EDT_SOFTWARE, dimension2d&lt;s32&gt;(512, 384), 16,<br> false, false, false, 0);</pre> </td>
187
188 </tr>
189 </table>
190 <p>Now we set the caption of the window to some nice text.
191 Note that there is a 'L' in front of the string: the
192 Irrlicht Engine uses wide character strings when displaying
193 text.</p>
194 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
195 <tr>
196 <td> <pre>device-&gt;setWindowCaption(L&quot;Hello World! - Irrlicht Engine Demo&quot;);</pre> </td>
197
198 </tr>
199 </table>
200 <p>Now we store a pointer to the video driver, the SceneManager,
201 and the graphical user interface environment so that
202 we do not always have to write device-&gt;getVideoDriver(),
203 device-&gt;getSceneManager(), and device-&gt;getGUIEnvironment().</p>
204 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
205 <tr>
206 <td> <pre>IVideoDriver* driver = device-&gt;getVideoDriver();<br>ISceneManager* smgr = device-&gt;getSceneManager();<br>IGUIEnvironment* guienv = device-&gt;getGUIEnvironment();</pre> </td>
207
208 </tr>
209 </table>
210 <p> We add a hello world label to the window using the
211 GUI environment. The text is placed at the position
212 (10,10) as top left corner and (200,22) as lower right
213 corner.</p>
214 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
215 <tr>
216 <td> <pre>guienv-&gt;addStaticText(L&quot;Hello World! This is the Irrlicht Software engine!&quot;,<br> rect&lt;s32&gt;(10,10,200,22), true);</pre> </td>
217
218 </tr>
219 </table>
220 <p>To display something interesting, we load a Quake 2
221 model and display it. We only have to get the Mesh from
222 the Scene Manager with getMesh() and add a SceneNode
223 to display the mesh with addAnimatedMeshSceneNode().
224 Instead of loading a Quake2 file (.md2), it is also
225 possible to load a Maya object file (.obj), a complete
226 Quake3 map (.bsp), or a Milshape file (.ms3d).<br>
227 By the way, that cool Quake 2 model called sydney.md2
228 was modelled by Brian Collins.</p>
229 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
230 <tr>
231 <td> <pre>IAnimatedMesh* mesh = smgr-&gt;getMesh(&quot;../../media/sydney.md2&quot;);<br>IAnimatedMeshSceneNode* node = smgr-&gt;addAnimatedMeshSceneNode( mesh );</pre> </td>
232
233 </tr>
234 </table>
235 <p>To make the mesh look a little bit nicer, we change
236 its material a little bit: we disable lighting because
237 we do not have a dynamic light in here and the mesh
238 would be totally black. Then we set the frame loop so
239 that the animation is looped between the frames 0 and
240 310. Then, at last, we apply a texture to the mesh.
241 Without it the mesh would be drawn using only a solid
242 color.</p>
243 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
244 <tr>
245 <td> <pre>if (node)<br>{<br> node-&gt;setMaterialFlag(EMF_LIGHTING, false);<br> node-&gt;setFrameLoop(0, 310); <br> node-&gt;setMaterialTexture( 0, driver-&gt;getTexture(&quot;../../media/sydney.bmp&quot;) );<br>}</pre>
246 </td>
247
248 </tr>
249 </table>
250 <p>To look at the mesh, we place a camera into 3d space
251 at the position (0, 10, -40). The camera looks from
252 there to (0,5,0).</p>
253 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
254 <tr>
255 <td> <pre>smgr-&gt;addCameraSceneNode(0, vector3df(0,30,-40), vector3df(0,5,0));</pre> </td>
256 </tr>
257
258 </table>
259 <p>Ok. Now that we have set up the scene, let's draw everything:
260 we run the device in a while() loop until the device
261 does not want to run any more. This would be when the
262 user closes the window or presses ALT+F4 in Windows.</p>
263 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
264 <tr>
265 <td> <pre>while(device-&gt;run())<br>{</pre> </td>
266 </tr>
267
268 </table>
269 <p> Everything must be drawn between a beginScene() and
270 an endScene() call. The beginScene clears the screen
271 with a color and also the depth buffer, if desired.
272 Then we let the Scene Manager and the GUI environment
273 draw their content. With the endScene() call, everything
274 is presented on the screen.</p>
275 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
276 <tr>
277
278 <td> <pre> driver-&gt;beginScene(true, true, SColor(255,100,101,140));<br>
279 smgr-&gt;drawAll();
280 guienv-&gt;drawAll();</pre>
281 <pre> driver-&gt;endScene();
282}</pre> </td>
283
284 </tr>
285 </table>
286 <p>After we are finished, we have to delete the Irrlicht
287 Device created earlier with createDevice(). With the
288 Irrlicht Engine, you should delete all objects you created
289 with a method or function that starts with 'create'.
290 The object is deleted simply by calling -&gt;drop().
291 See the <a href="http://irrlicht.sourceforge.net/docu/classirr_1_1IUnknown.html#a3" target="_blank">documentation</a>
292 for more information.</p>
293 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
294 <tr>
295 <td> <pre> device-&gt;drop();<br> return 0;
296}</pre> </td>
297
298 </tr>
299 </table>
300 <p>That's it. Compile and run. </p>
301 <p>&nbsp;</p>
302 </div>
303 </div>
304 </div></td>
305 </tr>
306
307 </table>
308 <br>
309 <table width="90%" border="0" cellspacing="0" cellpadding="2" align="center">
310 <tr>
311 <td bgcolor="#666699"> <b><font color="#FFFFFF">Possible Errors
312 or Problems</font></b></td>
313 </tr>
314 <tr>
315 <td height="90" bgcolor="#F7F3F7"> <div align="left">
316 <div align="left">
317 <div align="left">
318 <p><strong>Visual Studio</strong><br>
319
320 While trying to compile the tutorial, if you get the
321 error: </p>
322 <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
323 <tr>
324 <td bgcolor="#CCCCCC"><font face="Courier New, Courier, mono">fatal
325 error C1083: Cannot open include file: 'irrlicht.h':
326 No such file or directory</font></td>
327 </tr>
328 </table>
329 <p>Solution: You may have set the include directory improperly
330 in the Visual Studio options. See <a href="#settingup">above</a>
331 for information on setting it. </p>
332
333 <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
334 <tr>
335 <td bgcolor="#CCCCCC"><font face="Courier New, Courier, mono">LINK
336 : LNK6004: HelloWorld.exe not found or not built
337 by the last incremental link; performing full link<br>
338 LINK : fatal error LNK1104: cannot open file "Irrlicht.lib"<br>
339 Error executing link.exe</font></td>
340 </tr>
341 </table>
342 <p> Solution: You may have set the library directory improperly.
343 See <a href="#settingup">above</a> for information on
344 setting it. <br>
345
346 <br>
347 </p>
348 <p><strong>Compiler independent problems<br>
349 </strong>If the tutorial compiles successfully but gives
350 the error: </p>
351 <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
352 <tr>
353 <td bgcolor="#CCCCCC"><font face="Courier New, Courier, mono">This
354 application has failed to start because Irrlicht.dll
355 was not found. Re-installing the application may
356 fix this problem</font></td>
357 </tr>
358
359 </table>
360 <p>Solution: You may have forgotten to copy the Irrlicht.dll
361 file from Irrlicht\bin\VisualStudio to the directory
362 the tutorial's project file is in. </p>
363 If the tutorial compiles and runs successfully but produces
364 errors in the console like:<br>
365 <br>
366 <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
367 <tr>
368 <td bgcolor="#CCCCCC"><font face="Courier New, Courier, mono">Could
369 not load mesh, because file could not be opened.:
370 ../media/sydney.md2</font></td>
371 </tr>
372
373 </table>
374 <p> Or:</p>
375 <table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
376 <tr>
377 <td bgcolor="#CCCCCC"><em><font face="Courier New, Courier, mono">Could
378 not open file of texture: stones.jpg</font></em><font face="Courier New, Courier, mono"><b><br>
379 </b><em>Could not load texture: stones.jpg </em></font></td>
380 </tr>
381
382 </table>
383 <p>Solution: The file listed in the error message cannot
384 be found. Ensure that the directory specified in the
385 main.cpp exists and is where the file is located. <br>
386 </p>
387 </div>
388 </div>
389 </div></td>
390 </tr>
391 </table>
392<p>&nbsp;</p>
393</body>
394</html>
diff --git a/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Makefile b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Makefile
new file mode 100644
index 0000000..09953cf
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Makefile
@@ -0,0 +1,40 @@
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 = 02.Quake3Map
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
23static_win32: LDFLAGS += -lgdi32 -lopengl32 -ld3dx9d -lwinmm -lm
24static_win32: CPPFLAGS += -D_IRR_STATIC_LIB_
25static_win32 all_win32 clean_win32: SYSTEM=Win32-gcc
26static_win32 all_win32 clean_win32: SUF=.exe
27# name of the binary - only valid for targets which set SYSTEM
28DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF)
29
30all_linux all_win32 static_win32:
31 $(warning Building...)
32 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
33
34clean: clean_linux clean_win32
35 $(warning Cleaning...)
36
37clean_linux clean_win32:
38 @$(RM) $(DESTPATH)
39
40.PHONY: all all_win32 clean clean_linux clean_win32 static_win32
diff --git a/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.cbp b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.cbp
new file mode 100644
index 0000000..59f82ba
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.cbp
@@ -0,0 +1,55 @@
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 02 Quake Map" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Linux">
10 <Option platforms="Unix;" />
11 <Option output="..\..\bin\Linux\QuakeMap" prefix_auto="0" extension_auto="0" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Compiler>
15 <Add option="-g" />
16 <Add option="-D_IRR_STATIC_LIB_" />
17 </Compiler>
18 <Linker>
19 <Add library="Xxf86vm" />
20 <Add library="Xcursor" />
21 <Add library="GL" />
22 <Add directory="..\..\lib\Linux" />
23 </Linker>
24 </Target>
25 <Target title="Windows">
26 <Option platforms="Windows;" />
27 <Option output="..\..\bin\Win32-gcc\Quake3Map" prefix_auto="0" extension_auto="1" />
28 <Option type="1" />
29 <Option compiler="gcc" />
30 <Compiler>
31 <Add option="-g" />
32 </Compiler>
33 <Linker>
34 <Add directory="..\..\lib\Win32-gcc" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.dev b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.dev
new file mode 100644
index 0000000..3e0a69e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 02 Quake3Map
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=02.Quake3Map.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/02.Quake3Map/Quake3Map.vcproj b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.vcproj
new file mode 100644
index 0000000..4416fbb
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map.vcproj
@@ -0,0 +1,162 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="02.Quake3Map"
6 SccProjectName=""
7 SccLocalPath="">
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 UseOfMFC="0"
19 ATLMinimizesCRunTimeLibraryUsage="FALSE"
20 CharacterSet="2">
21 <Tool
22 Name="VCCLCompilerTool"
23 Optimization="0"
24 AdditionalIncludeDirectories="..\..\include"
25 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
26 BasicRuntimeChecks="3"
27 RuntimeLibrary="5"
28 UsePrecompiledHeader="2"
29 PrecompiledHeaderFile=".\Debug/Quake3Map.pch"
30 AssemblerListingLocation=".\Debug/"
31 ObjectFile=".\Debug/"
32 ProgramDataBaseFileName=".\Debug/"
33 WarningLevel="3"
34 SuppressStartupBanner="TRUE"
35 DebugInformationFormat="4"
36 CompileAs="0"/>
37 <Tool
38 Name="VCCustomBuildTool"/>
39 <Tool
40 Name="VCLinkerTool"
41 OutputFile="..\..\bin\Win32-VisualStudio\02.Quake3Map.exe"
42 LinkIncremental="0"
43 SuppressStartupBanner="TRUE"
44 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
45 GenerateDebugInformation="TRUE"
46 ProgramDatabaseFile=".\Debug/Quake3Map.pdb"
47 SubSystem="1"
48 TargetMachine="1"/>
49 <Tool
50 Name="VCMIDLTool"
51 TypeLibraryName=".\Debug/Quake3Map.tlb"
52 HeaderFileName=""/>
53 <Tool
54 Name="VCPostBuildEventTool"/>
55 <Tool
56 Name="VCPreBuildEventTool"/>
57 <Tool
58 Name="VCPreLinkEventTool"/>
59 <Tool
60 Name="VCResourceCompilerTool"
61 PreprocessorDefinitions="_DEBUG"
62 Culture="3079"/>
63 <Tool
64 Name="VCWebServiceProxyGeneratorTool"/>
65 <Tool
66 Name="VCXMLDataGeneratorTool"/>
67 <Tool
68 Name="VCWebDeploymentTool"/>
69 <Tool
70 Name="VCManagedWrapperGeneratorTool"/>
71 <Tool
72 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
73 </Configuration>
74 <Configuration
75 Name="Release|Win32"
76 OutputDirectory=".\Release"
77 IntermediateDirectory=".\Release"
78 ConfigurationType="1"
79 UseOfMFC="0"
80 ATLMinimizesCRunTimeLibraryUsage="FALSE"
81 CharacterSet="2">
82 <Tool
83 Name="VCCLCompilerTool"
84 Optimization="2"
85 InlineFunctionExpansion="1"
86 AdditionalIncludeDirectories="..\..\include"
87 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
88 StringPooling="TRUE"
89 RuntimeLibrary="4"
90 EnableFunctionLevelLinking="TRUE"
91 UsePrecompiledHeader="2"
92 PrecompiledHeaderFile=".\Release/Quake3Map.pch"
93 AssemblerListingLocation=".\Release/"
94 ObjectFile=".\Release/"
95 ProgramDataBaseFileName=".\Release/"
96 WarningLevel="3"
97 SuppressStartupBanner="TRUE"
98 CompileAs="0"/>
99 <Tool
100 Name="VCCustomBuildTool"/>
101 <Tool
102 Name="VCLinkerTool"
103 OutputFile="..\..\bin\Win32-VisualStudio\02.Quake3Map.exe"
104 LinkIncremental="0"
105 SuppressStartupBanner="TRUE"
106 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
107 ProgramDatabaseFile=".\Release/Quake3Map.pdb"
108 SubSystem="1"
109 TargetMachine="1"/>
110 <Tool
111 Name="VCMIDLTool"
112 TypeLibraryName=".\Release/Quake3Map.tlb"
113 HeaderFileName=""/>
114 <Tool
115 Name="VCPostBuildEventTool"/>
116 <Tool
117 Name="VCPreBuildEventTool"/>
118 <Tool
119 Name="VCPreLinkEventTool"/>
120 <Tool
121 Name="VCResourceCompilerTool"
122 PreprocessorDefinitions="NDEBUG"
123 Culture="3079"/>
124 <Tool
125 Name="VCWebServiceProxyGeneratorTool"/>
126 <Tool
127 Name="VCXMLDataGeneratorTool"/>
128 <Tool
129 Name="VCWebDeploymentTool"/>
130 <Tool
131 Name="VCManagedWrapperGeneratorTool"/>
132 <Tool
133 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
134 </Configuration>
135 </Configurations>
136 <References>
137 </References>
138 <Files>
139 <File
140 RelativePath="main.cpp">
141 <FileConfiguration
142 Name="Debug|Win32">
143 <Tool
144 Name="VCCLCompilerTool"
145 Optimization="0"
146 AdditionalIncludeDirectories=""
147 PreprocessorDefinitions=""
148 BasicRuntimeChecks="3"/>
149 </FileConfiguration>
150 <FileConfiguration
151 Name="Release|Win32">
152 <Tool
153 Name="VCCLCompilerTool"
154 Optimization="2"
155 AdditionalIncludeDirectories=""
156 PreprocessorDefinitions=""/>
157 </FileConfiguration>
158 </File>
159 </Files>
160 <Globals>
161 </Globals>
162</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc10.vcxproj
new file mode 100644
index 0000000..da32873
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_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>02.Quake3Map</ProjectName>
23 <ProjectGuid>{D1A464A2-D479-458C-98A2-60965D823CD1}</ProjectGuid>
24 <RootNamespace>Quake3Map</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/Quake3Map.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\02.Quake3Map.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/Quake3Map.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\02.Quake3Map.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/Quake3Map.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\02.Quake3Map.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/Quake3Map.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\02.Quake3Map.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/02.Quake3Map/Quake3Map_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc11.vcxproj
new file mode 100644
index 0000000..579a016
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_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>02.Quake3Map</ProjectName>
23 <ProjectGuid>{D1A464A2-D479-458C-98A2-60965D823CD1}</ProjectGuid>
24 <RootNamespace>Quake3Map</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/Quake3Map.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\02.Quake3Map.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/Quake3Map.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\02.Quake3Map.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/Quake3Map.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\02.Quake3Map.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/Quake3Map.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\02.Quake3Map.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/02.Quake3Map/Quake3Map_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc8.vcproj
new file mode 100644
index 0000000..bae5931
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_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="02.Quake3Map_vc8"
6 ProjectGUID="{D1A464A2-D479-458C-98A2-60965D823CD1}"
7 RootNamespace="Quake3Map_vc8"
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 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=".\Debug/Quake3Map.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/Quake3Map.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\02.Quake3Map.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/Quake3Map.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Quake3Map.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Quake3Map.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\02.Quake3Map.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Quake3Map.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_vc9.vcproj
new file mode 100644
index 0000000..8acc07a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/Quake3Map_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="02.Quake3Map_vc9"
6 ProjectGUID="{D1A464A2-D479-458C-98A2-60965D823CD1}"
7 RootNamespace="Quake3Map_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/Quake3Map.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/Quake3Map.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\02.Quake3Map.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/Quake3Map.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Quake3Map.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Quake3Map.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\02.Quake3Map.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Quake3Map.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/02.Quake3Map/main.cpp b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/main.cpp
new file mode 100644
index 0000000..fc7461f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/main.cpp
@@ -0,0 +1,206 @@
1/** Example 002 Quake3Map
2
3This Tutorial shows how to load a Quake 3 map into the engine, create a
4SceneNode for optimizing the speed of rendering, and how to create a user
5controlled camera.
6
7Please note that you should know the basics of the engine before starting this
8tutorial. Just take a short look at the first tutorial, if you haven't done
9this yet: http://irrlicht.sourceforge.net/tut001.html
10
11Lets start like the HelloWorld example: We include the irrlicht header files
12and an additional file to be able to ask the user for a driver type using the
13console.
14*/
15#include <irrlicht.h>
16#include <iostream>
17
18/*
19As already written in the HelloWorld example, in the Irrlicht Engine everything
20can be found in the namespace 'irr'. To get rid of the irr:: in front of the
21name of every class, we tell the compiler that we use that namespace from now
22on, and we will not have to write that 'irr::'. There are 5 other sub
23namespaces 'core', 'scene', 'video', 'io' and 'gui'. Unlike in the HelloWorld
24example, we do not call 'using namespace' for these 5 other namespaces, because
25in this way you will see what can be found in which namespace. But if you like,
26you can also include the namespaces like in the previous example.
27*/
28using namespace irr;
29
30/*
31Again, to be able to use the Irrlicht.DLL file, we need to link with the
32Irrlicht.lib. We could set this option in the project settings, but to make it
33easy, we use a pragma comment lib:
34*/
35#ifdef _MSC_VER
36#pragma comment(lib, "Irrlicht.lib")
37#endif
38
39/*
40Ok, lets start. Again, we use the main() method as start, not the WinMain().
41*/
42int main()
43{
44 /*
45 Like in the HelloWorld example, we create an IrrlichtDevice with
46 createDevice(). The difference now is that we ask the user to select
47 which video driver to use. The Software device might be
48 too slow to draw a huge Quake 3 map, but just for the fun of it, we make
49 this decision possible, too.
50 Instead of copying this whole code into your app, you can simply include
51 driverChoice.h from Irrlicht's include directory. The function
52 driverChoiceConsole does exactly the same.
53 */
54
55 // ask user for driver
56
57 video::E_DRIVER_TYPE driverType;
58
59 printf("Please select the driver you want for this example:\n"\
60 " (a) OpenGL 1.5\n (b) Direct3D 9.0c\n (c) Direct3D 8.1\n"\
61 " (d) Burning's Software Renderer\n (e) Software Renderer\n"\
62 " (f) NullDevice\n (otherKey) exit\n\n");
63
64 char i;
65 std::cin >> i;
66
67 switch(i)
68 {
69 case 'a': driverType = video::EDT_OPENGL; break;
70 case 'b': driverType = video::EDT_DIRECT3D9;break;
71 case 'c': driverType = video::EDT_DIRECT3D8;break;
72 case 'd': driverType = video::EDT_BURNINGSVIDEO;break;
73 case 'e': driverType = video::EDT_SOFTWARE; break;
74 case 'f': driverType = video::EDT_NULL; break;
75 default: return 1;
76 }
77
78 // create device and exit if creation failed
79
80 IrrlichtDevice *device =
81 createDevice(driverType, core::dimension2d<u32>(640, 480));
82
83 if (device == 0)
84 return 1; // could not create selected driver.
85
86 /*
87 Get a pointer to the video driver and the SceneManager so that
88 we do not always have to call irr::IrrlichtDevice::getVideoDriver() and
89 irr::IrrlichtDevice::getSceneManager().
90 */
91 video::IVideoDriver* driver = device->getVideoDriver();
92 scene::ISceneManager* smgr = device->getSceneManager();
93
94 /*
95 To display the Quake 3 map, we first need to load it. Quake 3 maps
96 are packed into .pk3 files which are nothing else than .zip files.
97 So we add the .pk3 file to our irr::io::IFileSystem. After it was added,
98 we are able to read from the files in that archive as if they are
99 directly stored on the disk.
100 */
101 device->getFileSystem()->addFileArchive("../../media/map-20kdm2.pk3");
102
103 /*
104 Now we can load the mesh by calling
105 irr::scene::ISceneManager::getMesh(). We get a pointer returned to an
106 irr::scene::IAnimatedMesh. As you might know, Quake 3 maps are not
107 really animated, they are only a huge chunk of static geometry with
108 some materials attached. Hence the IAnimatedMesh consists of only one
109 frame, so we get the "first frame" of the "animation", which is our
110 quake level and create an Octree scene node with it, using
111 irr::scene::ISceneManager::addOctreeSceneNode().
112 The Octree optimizes the scene a little bit, trying to draw only geometry
113 which is currently visible. An alternative to the Octree would be a
114 irr::scene::IMeshSceneNode, which would always draw the complete
115 geometry of the mesh, without optimization. Try it: Use
116 irr::scene::ISceneManager::addMeshSceneNode() instead of
117 addOctreeSceneNode() and compare the primitives drawn by the video
118 driver. (There is a irr::video::IVideoDriver::getPrimitiveCountDrawn()
119 method in the irr::video::IVideoDriver class). Note that this
120 optimization with the Octree is only useful when drawing huge meshes
121 consisting of lots of geometry.
122 */
123 scene::IAnimatedMesh* mesh = smgr->getMesh("20kdm2.bsp");
124 scene::ISceneNode* node = 0;
125
126 if (mesh)
127 node = smgr->addOctreeSceneNode(mesh->getMesh(0), 0, -1, 1024);
128// node = smgr->addMeshSceneNode(mesh->getMesh(0));
129
130 /*
131 Because the level was not modelled around the origin (0,0,0), we
132 translate the whole level a little bit. This is done on
133 irr::scene::ISceneNode level using the methods
134 irr::scene::ISceneNode::setPosition() (in this case),
135 irr::scene::ISceneNode::setRotation(), and
136 irr::scene::ISceneNode::setScale().
137 */
138 if (node)
139 node->setPosition(core::vector3df(-1300,-144,-1249));
140
141 /*
142 Now we only need a camera to look at the Quake 3 map.
143 We want to create a user controlled camera. There are some
144 cameras available in the Irrlicht engine. For example the
145 MayaCamera which can be controlled like the camera in Maya:
146 Rotate with left mouse button pressed, Zoom with both buttons pressed,
147 translate with right mouse button pressed. This could be created with
148 irr::scene::ISceneManager::addCameraSceneNodeMaya(). But for this
149 example, we want to create a camera which behaves like the ones in
150 first person shooter games (FPS) and hence use
151 irr::scene::ISceneManager::addCameraSceneNodeFPS().
152 */
153 smgr->addCameraSceneNodeFPS();
154
155 /*
156 The mouse cursor needs not be visible, so we hide it via the
157 irr::IrrlichtDevice::ICursorControl.
158 */
159 device->getCursorControl()->setVisible(false);
160
161 /*
162 We have done everything, so lets draw it. We also write the current
163 frames per second and the primitives drawn into the caption of the
164 window. The test for irr::IrrlichtDevice::isWindowActive() is optional,
165 but prevents the engine to grab the mouse cursor after task switching
166 when other programs are active. The call to
167 irr::IrrlichtDevice::yield() will avoid the busy loop to eat up all CPU
168 cycles when the window is not active.
169 */
170 int lastFPS = -1;
171
172 while(device->run())
173 {
174 if (device->isWindowActive())
175 {
176 driver->beginScene(true, true, video::SColor(255,200,200,200));
177 smgr->drawAll();
178 driver->endScene();
179
180 int fps = driver->getFPS();
181
182 if (lastFPS != fps)
183 {
184 core::stringw str = L"Irrlicht Engine - Quake 3 Map example [";
185 str += driver->getName();
186 str += "] FPS:";
187 str += fps;
188
189 device->setWindowCaption(str.c_str());
190 lastFPS = fps;
191 }
192 }
193 else
194 device->yield();
195 }
196
197 /*
198 In the end, delete the Irrlicht device.
199 */
200 device->drop();
201 return 0;
202}
203
204/*
205That's it. Compile and play around with the program.
206**/
diff --git a/src/others/irrlicht-1.8.1/examples/02.Quake3Map/tutorial.html b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/tutorial.html
new file mode 100644
index 0000000..1858b86
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/02.Quake3Map/tutorial.html
@@ -0,0 +1,181 @@
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%"> <div align="center"><b><font color="#FFFFFF"></font></b></div>
13 <b><font color="#FFFFFF">Tutorial 2.Quake3Map</font></b></td>
14 </tr>
15 <tr bgcolor="#eeeeff">
16 <td height="90" colspan="2"> <div align="left">
17 <p>This Tutorial shows how to load a Quake 3 map into the engine, create
18 a SceneNode for optimizing the speed of rendering and how to create
19 a user controlled camera. Please note that you should know the basics
20 of the engine before starting this tutorial, just take a short look
21 at the first tutorial, 1.HelloWorld, if you haven't done this yet.<br>
22 The result of this example will look like this:</p>
23 <p align="center"><img src="../../media/002shot.jpg" width="259" height="202"><br>
24 </p>
25 </div></td>
26 </tr>
27</table>
28<br>
29<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
30 <tr>
31 <td bgcolor="#666699"> <div align="center"><b><font color="#000000"></font></b></div>
32 <font color="#FFFFFF"><b>Lets start!</b></font></td>
33 </tr>
34 <tr>
35 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
36 <p>Lets start like the HelloWorld example: We include the irrlicht header
37 files and an additional file to be able<br>
38 to ask the user for a driver type using the console.</p>
39 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
40 <tr>
41 <td> <pre>#include &lt;irrlicht.h&gt;<br>#include &lt;iostream&gt;<br></pre></td>
42 </tr>
43 </table>
44 <p>As already written in the HelloWorld example, in the Irrlicht Engine,
45 everything can be found in the namespace 'irr'. To get rid of the irr::
46 in front of the name of every class, we tell the compiler that we use
47 that namespace from now on, and we will not have to write that 'irr::'.<br>
48 There are 5 other sub namespaces 'core', 'scene', 'video', 'io' and
49 'gui'. Unlike in the HelloWorld example, we do not a 'using namespace'
50 for these 5 other namespaces because in this way you will see what can
51 be found in which namespace. But if you like, you can also include the
52 namespaces like in the previous example. Code just like you want to.</p>
53 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
54 <tr>
55 <td> <pre>using namespace irr;</pre> </td>
56 </tr>
57 </table>
58 <p>Again, to be able to use the Irrlicht.DLL file, we need to link with
59 the Irrlicht.lib. We could set this option in the project settings,
60 but to make it easy, we use a pragma comment lib:</p>
61 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
62 <tr>
63 <td> <pre>#pragma comment(lib, &quot;Irrlicht.lib&quot;)</pre> </td>
64 </tr>
65 </table>
66
67 </div>
68 <p>Ok, lets start. Again, we use the main() method as start, not the WinMain(),
69 because its shorter to write.</p>
70 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
71 <tr>
72 <td> <pre>int main()<br>{</pre> </td>
73 </tr>
74 </table>
75 <p> Like in the HelloWorld example, we create an IrrlichtDevice with createDevice().
76 The difference now is that we ask the user to select which hardware accelerated
77 driver to use. The Software device would be too slow to draw a huge Quake
78 3 map, but just for the fun of it, we make this decision possible too.</p>
79 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
80 <tr>
81 <td> <pre>// ask user for driver<br><br>video::E_DRIVER_TYPE driverType = video::EDT_DIRECT3D9;<br><br>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>
82char 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>} <br><br>// create device and exit if creation failed<br><br>IrrlichtDevice *device =<br> createDevice(driverType, core::dimension2d&lt;s32&gt;(640, 480));<br><br>if (device == 0)<br> return 1;</pre></td>
83 </tr>
84 </table>
85 <p>Get a pointer to the video driver and the SceneManager so that we do
86 not always have to write device-&gt;getVideoDriver() and device-&gt;getSceneManager().</p>
87 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
88 <tr>
89 <td> <pre>video::IVideoDriver* driver = device-&gt;getVideoDriver();
90scene::ISceneManager* smgr = device-&gt;getSceneManager();</pre> </td>
91 </tr>
92 </table>
93 <p>To display the Quake 3 map, we first need to load it. Quake 3 maps are
94 packed into .pk3 files wich are nothing other than .zip files. So we add
95 the .pk3 file to our FileSystem. After it was added, we are able to read
96 from the files in that archive as they would directly be stored on disk.</p>
97 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
98 <tr>
99 <td> <pre>device-&gt;getFileSystem()-&gt;addZipFileArchive(&quot;../../media/map-20kdm2.pk3&quot;);</pre> </td>
100 </tr>
101 </table>
102 <p>Now we can load the mesh by calling getMesh(). We get a pointer returned
103 to a IAnimatedMesh. As you know, Quake 3 maps are not really animated,
104 they are only a huge chunk of static geometry with some materials attached.
105 Hence the IAnimated mesh consists of only one frame,<br>
106 so we get the &quot;first frame&quot; of the &quot;animation&quot;, which
107 is our quake level and create an OctTree scene node with it, using addOctTreeSceneNode().
108 The OctTree optimizes the scene a little bit, trying to draw only geometry
109 which is currently visible. An alternative to the OctTree would be a AnimatedMeshSceneNode,
110 which would draw always the complete geometry of the mesh, without optimization.
111 Try it out: Write addAnimatedMeshSceneNode instead of addOctTreeSceneNode
112 and compare the primitives drawed by the video driver. (There is a getPrimitiveCountDrawed()
113 method in the IVideoDriver class). Note that this optimization with the
114 Octree is only useful when drawing huge meshes consiting of lots of geometry.</p>
115 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
116 <tr>
117 <td> <pre>scene::IAnimatedMesh* mesh = smgr-&gt;getMesh(&quot;20kdm2.bsp&quot;);<br>scene::ISceneNode* node = 0;
118
119if (mesh)<br> node = smgr-&gt;addOctTreeSceneNode(mesh-&gt;getMesh(0));</pre> </td>
120 </tr>
121 </table>
122 <p>Because the level was modelled not around the origin (0,0,0), we translate
123 the whole level a little bit.</p>
124 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
125 <tr>
126 <td> <pre>if (node)<br> node-&gt;setPosition(core::vector3df(-1300,-144,-1249));</pre> </td>
127 </tr>
128 </table>
129 <p>Now we only need a Camera to look at the Quake 3 map. And we want to
130 create a user controlled camera. There are some different cameras available
131 in the Irrlicht engine. For example the Maya Camera which can be controlled
132 compareable to the camera in Maya: Rotate with left mouse button pressed,
133 Zoom with both buttons pressed,<br>
134 translate with right mouse button pressed. This could be created with
135 addCameraSceneNodeMaya(). But for this example, we want to create a camera
136 which behaves like the ones in first person shooter games (FPS):</p>
137 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
138 <tr>
139 <td> <pre>smgr-&gt;addCameraSceneNodeFPS();</pre> </td>
140 </tr>
141 </table>
142 <p>The mouse cursor needs not to be visible, so we make it invisible. </p>
143 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
144 <tr>
145 <td> <pre>device-&gt;getCursorControl()-&gt;setVisible(false);</pre> </td>
146 </tr>
147 </table>
148 <p>We have done everything, so lets draw it. We also write the current frames
149 per second and the drawn primitives to the caption of the window. The
150 'if (device-&gt;isWindowActive())' line is optional, but prevents the
151 engine render to set the position of the mouse cursor after task switching
152 when other program are active.</p>
153 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
154 <tr>
155 <td> <pre>int lastFPS = -1;</pre>
156 <pre>while(device-&gt;run())
157{
158 driver-&gt;beginScene(true, true, video::SColor(0,200,200,200));
159 smgr-&gt;drawAll();
160 driver-&gt;endScene();</pre>
161 <pre> int fps = driver-&gt;getFPS();</pre>
162 <pre> if (lastFPS != fps)
163 {
164 core::stringw str = L&quot;Irrlicht Engine - Quake 3 Map example [&quot;;<br> str += driver-&gt;getName();<br> str += &quot;] FPS:&quot;;<br> str += fps;<br> device-&gt;setWindowCaption(str.c_str());<br> lastFPS = fps;
165 }
166}</pre> </td>
167 </tr>
168 </table>
169 <p>In the end, delete the Irrlicht device.</p>
170 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
171 <tr>
172 <td> <pre> device-&gt;drop();<br> return 0;<br>}</pre> </td>
173 </tr>
174 </table>
175 <p>That's it. Compile and play around with the program. </p></td>
176 </tr>
177</table>
178<p>&nbsp;</p>
179<p>&nbsp;</p>
180</body>
181</html>
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.cbp b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.cbp
new file mode 100644
index 0000000..e68ffd3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.cbp
@@ -0,0 +1,58 @@
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 03 Custom Scene Node" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Linux">
10 <Option platforms="Unix;" />
11 <Option output="..\..\bin\Linux\CustomSceneNode" prefix_auto="0" extension_auto="0" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 <Add option="-D_IRR_STATIC_LIB_" />
18 </Compiler>
19 <Linker>
20 <Add library="Xxf86vm" />
21 <Add library="Xcursor" />
22 <Add library="GL" />
23 <Add directory="..\..\lib\Linux\" />
24 </Linker>
25 </Target>
26 <Target title="Windows">
27 <Option platforms="Windows;" />
28 <Option output="..\..\bin\Win32-gcc\CustomSceneNode" prefix_auto="1" extension_auto="1" />
29 <Option type="1" />
30 <Option compiler="gcc" />
31 <Option projectResourceIncludeDirsRelation="1" />
32 <Compiler>
33 <Add option="-g" />
34 </Compiler>
35 <Linker>
36 <Add directory="..\..\lib\Win32-gcc" />
37 </Linker>
38 </Target>
39 </Build>
40 <VirtualTargets>
41 <Add alias="All" targets="Windows;Linux;" />
42 </VirtualTargets>
43 <Compiler>
44 <Add option="-g" />
45 <Add directory="..\..\include" />
46 </Compiler>
47 <Linker>
48 <Add library="Irrlicht" />
49 <Add directory="..\..\bin\gcc" />
50 </Linker>
51 <Unit filename="main.cpp" />
52 <Extensions>
53 <code_completion />
54 <debugger />
55 <envvars />
56 </Extensions>
57 </Project>
58</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.dev b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.dev
new file mode 100644
index 0000000..57c5ee0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 03 Custom Scene Node
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=03.CustomSceneNode.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/03.CustomSceneNode/CustomSceneNode.vcproj b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.vcproj
new file mode 100644
index 0000000..890d308
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode.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="03.CustomSceneNode"
6 ProjectGUID="{32078844-1903-47AB-AEAC-FC2E3415DB46}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/CustomSceneNode.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/CustomSceneNode.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/CustomSceneNode.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/CustomSceneNode.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/CustomSceneNode.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/CustomSceneNode.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc10.vcxproj
new file mode 100644
index 0000000..5512e23
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc10.vcxproj
@@ -0,0 +1,243 @@
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>03.CustomSceneNode</ProjectName>
23 <ProjectGuid>{171CCDFA-C140-4956-8EB7-F0168F4521D3}</ProjectGuid>
24 <RootNamespace>CustomSceneNode</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/CustomSceneNode.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/CustomSceneNode.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\03.CustomSceneNode.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/CustomSceneNode.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <PrecompiledHeaderOutputFile>.\Release/CustomSceneNode.pch</PrecompiledHeaderOutputFile>
167 <AssemblerListingLocation>.\Release/</AssemblerListingLocation>
168 <ObjectFileName>.\Release/</ObjectFileName>
169 <ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <ProgramDatabaseFile>.\Release/CustomSceneNode.pdb</ProgramDatabaseFile>
180 <SubSystem>Console</SubSystem>
181 <RandomizedBaseAddress>false</RandomizedBaseAddress>
182 <DataExecutionPrevention>
183 </DataExecutionPrevention>
184 </Link>
185 </ItemDefinitionGroup>
186 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
187 <Midl>
188 <TypeLibraryName>.\Release/CustomSceneNode.tlb</TypeLibraryName>
189 <HeaderFileName>
190 </HeaderFileName>
191 </Midl>
192 <ClCompile>
193 <Optimization>MaxSpeed</Optimization>
194 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
195 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
196 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
197 <StringPooling>true</StringPooling>
198 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
199 <FunctionLevelLinking>true</FunctionLevelLinking>
200 <PrecompiledHeader>
201 </PrecompiledHeader>
202 <PrecompiledHeaderOutputFile>.\Release/CustomSceneNode.pch</PrecompiledHeaderOutputFile>
203 <AssemblerListingLocation>.\Release/</AssemblerListingLocation>
204 <ObjectFileName>.\Release/</ObjectFileName>
205 <ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
206 <WarningLevel>Level3</WarningLevel>
207 </ClCompile>
208 <ResourceCompile>
209 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
210 <Culture>0x0c07</Culture>
211 </ResourceCompile>
212 <Link>
213 <OutputFile>..\..\bin\Win64-VisualStudio\03.CustomSceneNode.exe</OutputFile>
214 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
215 <ProgramDatabaseFile>.\Release/CustomSceneNode.pdb</ProgramDatabaseFile>
216 <SubSystem>Console</SubSystem>
217 <RandomizedBaseAddress>false</RandomizedBaseAddress>
218 <DataExecutionPrevention>
219 </DataExecutionPrevention>
220 </Link>
221 </ItemDefinitionGroup>
222 <ItemGroup>
223 <ClCompile Include="main.cpp">
224 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
225 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
226 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
227 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
228 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
229 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
230 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
231 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
232 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
233 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
234 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
235 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
236 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
237 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
238 </ClCompile>
239 </ItemGroup>
240 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
241 <ImportGroup Label="ExtensionTargets">
242 </ImportGroup>
243</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc11.vcxproj
new file mode 100644
index 0000000..52f6ef2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc11.vcxproj
@@ -0,0 +1,247 @@
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>03.CustomSceneNode</ProjectName>
23 <ProjectGuid>{171CCDFA-C140-4956-8EB7-F0168F4521D3}</ProjectGuid>
24 <RootNamespace>CustomSceneNode</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/CustomSceneNode.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/CustomSceneNode.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\03.CustomSceneNode.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/CustomSceneNode.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <PrecompiledHeaderOutputFile>.\Release/CustomSceneNode.pch</PrecompiledHeaderOutputFile>
171 <AssemblerListingLocation>.\Release/</AssemblerListingLocation>
172 <ObjectFileName>.\Release/</ObjectFileName>
173 <ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
174 <WarningLevel>Level3</WarningLevel>
175 </ClCompile>
176 <ResourceCompile>
177 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
178 <Culture>0x0c07</Culture>
179 </ResourceCompile>
180 <Link>
181 <OutputFile>..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe</OutputFile>
182 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
183 <ProgramDatabaseFile>.\Release/CustomSceneNode.pdb</ProgramDatabaseFile>
184 <SubSystem>Console</SubSystem>
185 <RandomizedBaseAddress>false</RandomizedBaseAddress>
186 <DataExecutionPrevention>
187 </DataExecutionPrevention>
188 </Link>
189 </ItemDefinitionGroup>
190 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
191 <Midl>
192 <TypeLibraryName>.\Release/CustomSceneNode.tlb</TypeLibraryName>
193 <HeaderFileName>
194 </HeaderFileName>
195 </Midl>
196 <ClCompile>
197 <Optimization>MaxSpeed</Optimization>
198 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
199 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
200 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
201 <StringPooling>true</StringPooling>
202 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
203 <FunctionLevelLinking>true</FunctionLevelLinking>
204 <PrecompiledHeader>
205 </PrecompiledHeader>
206 <PrecompiledHeaderOutputFile>.\Release/CustomSceneNode.pch</PrecompiledHeaderOutputFile>
207 <AssemblerListingLocation>.\Release/</AssemblerListingLocation>
208 <ObjectFileName>.\Release/</ObjectFileName>
209 <ProgramDataBaseFileName>.\Release/</ProgramDataBaseFileName>
210 <WarningLevel>Level3</WarningLevel>
211 </ClCompile>
212 <ResourceCompile>
213 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
214 <Culture>0x0c07</Culture>
215 </ResourceCompile>
216 <Link>
217 <OutputFile>..\..\bin\Win64-VisualStudio\03.CustomSceneNode.exe</OutputFile>
218 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
219 <ProgramDatabaseFile>.\Release/CustomSceneNode.pdb</ProgramDatabaseFile>
220 <SubSystem>Console</SubSystem>
221 <RandomizedBaseAddress>false</RandomizedBaseAddress>
222 <DataExecutionPrevention>
223 </DataExecutionPrevention>
224 </Link>
225 </ItemDefinitionGroup>
226 <ItemGroup>
227 <ClCompile Include="main.cpp">
228 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
229 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
230 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
231 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
232 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
233 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
234 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
235 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
236 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
237 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
238 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
239 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
240 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
241 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
242 </ClCompile>
243 </ItemGroup>
244 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
245 <ImportGroup Label="ExtensionTargets">
246 </ImportGroup>
247</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc8.vcproj
new file mode 100644
index 0000000..42c7879
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_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="03.CustomSceneNode_vc8"
6 ProjectGUID="{171CCDFA-C140-4956-8EB7-F0168F4521D3}"
7 RootNamespace="CustomSceneNode_vc8"
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 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=".\Debug/CustomSceneNode.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/CustomSceneNode.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/CustomSceneNode.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/CustomSceneNode.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/CustomSceneNode.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/CustomSceneNode.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_vc9.vcproj
new file mode 100644
index 0000000..50f0382
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/CustomSceneNode_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="03.CustomSceneNode_vc9"
6 ProjectGUID="{171CCDFA-C140-4956-8EB7-F0168F4521D3}"
7 RootNamespace="CustomSceneNode_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/CustomSceneNode.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/CustomSceneNode.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/CustomSceneNode.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/CustomSceneNode.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/CustomSceneNode.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\03.CustomSceneNode.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/CustomSceneNode.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/Makefile b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/Makefile
new file mode 100644
index 0000000..34e3d43
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/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 = 03.CustomSceneNode
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/03.CustomSceneNode/main.cpp b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/main.cpp
new file mode 100644
index 0000000..534f0d3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/main.cpp
@@ -0,0 +1,267 @@
1/** Example 003 Custom SceneNode
2
3This Tutorial is more advanced than the previous ones.
4If you are currently just playing around with the Irrlicht
5engine, you may want to look at other examples first.
6This tutorials shows how to create a custom scene node and
7how to use it in the engine. A custom scene node is needed
8if you want to implement a render technique the Irrlicht
9Engine currently does not support. For example, you can write
10an indoor portal based renderer or an advanced terrain scene
11node with it. By creating custom scene nodes, you can
12easily extend the Irrlicht Engine and adapt it to your own
13needs.
14
15I will keep the tutorial simple: Keep everything very
16short, everything in one .cpp file, and I'll use the engine
17here as in all other tutorials.
18
19To start, I include the header files, use the irr namespace,
20and tell the linker to link with the .lib file.
21*/
22#include <irrlicht.h>
23#include "driverChoice.h"
24
25using namespace irr;
26
27#ifdef _MSC_VER
28#pragma comment(lib, "Irrlicht.lib")
29#endif
30
31/*
32Here comes the more sophisticated part of this tutorial:
33The class of our very own custom scene node. To keep it simple,
34our scene node will not be an indoor portal renderer nor a terrain
35scene node, but a simple tetraeder, a 3d object consisting of 4
36connected vertices, which only draws itself and does nothing more.
37Note that this scenario does not require a custom scene node in Irrlicht.
38Instead one would create a mesh from the geometry and pass it to a
39irr::scene::IMeshSceneNode. This example just illustrates creation of a custom
40scene node in a very simple setting.
41
42To let our scene node be able to be inserted into the Irrlicht
43Engine scene, the class we create needs to be derived from the
44irr::scene::ISceneNode class and has to override some methods.
45*/
46
47class CSampleSceneNode : public scene::ISceneNode
48{
49
50 /*
51 First, we declare some member variables:
52 The bounding box, 4 vertices, and the material of the tetraeder.
53 */
54 core::aabbox3d<f32> Box;
55 video::S3DVertex Vertices[4];
56 video::SMaterial Material;
57
58 /*
59 The parameters of the constructor specify the parent of the scene node,
60 a pointer to the scene manager, and an id of the scene node.
61 In the constructor we call the parent class' constructor,
62 set some properties of the material, and
63 create the 4 vertices of the tetraeder we will draw later.
64 */
65
66public:
67
68 CSampleSceneNode(scene::ISceneNode* parent, scene::ISceneManager* mgr, s32 id)
69 : scene::ISceneNode(parent, mgr, id)
70 {
71 Material.Wireframe = false;
72 Material.Lighting = false;
73
74 Vertices[0] = video::S3DVertex(0,0,10, 1,1,0,
75 video::SColor(255,0,255,255), 0, 1);
76 Vertices[1] = video::S3DVertex(10,0,-10, 1,0,0,
77 video::SColor(255,255,0,255), 1, 1);
78 Vertices[2] = video::S3DVertex(0,20,0, 0,1,1,
79 video::SColor(255,255,255,0), 1, 0);
80 Vertices[3] = video::S3DVertex(-10,0,-10, 0,0,1,
81 video::SColor(255,0,255,0), 0, 0);
82
83 /*
84 The Irrlicht Engine needs to know the bounding box of a scene node.
85 It will use it for automatic culling and other things. Hence, we
86 need to create a bounding box from the 4 vertices we use.
87 If you do not want the engine to use the box for automatic culling,
88 and/or don't want to create the box, you could also call
89 irr::scene::ISceneNode::setAutomaticCulling() with irr::scene::EAC_OFF.
90 */
91 Box.reset(Vertices[0].Pos);
92 for (s32 i=1; i<4; ++i)
93 Box.addInternalPoint(Vertices[i].Pos);
94 }
95
96 /*
97 Before it is drawn, the irr::scene::ISceneNode::OnRegisterSceneNode()
98 method of every scene node in the scene is called by the scene manager.
99 If the scene node wishes to draw itself, it may register itself in the
100 scene manager to be drawn. This is necessary to tell the scene manager
101 when it should call irr::scene::ISceneNode::render(). For
102 example, normal scene nodes render their content one after another,
103 while stencil buffer shadows would like to be drawn after all other
104 scene nodes. And camera or light scene nodes need to be rendered before
105 all other scene nodes (if at all). So here we simply register the
106 scene node to render normally. If we would like to let it be rendered
107 like cameras or light, we would have to call
108 SceneManager->registerNodeForRendering(this, SNRT_LIGHT_AND_CAMERA);
109 After this, we call the actual
110 irr::scene::ISceneNode::OnRegisterSceneNode() method of the base class,
111 which simply lets also all the child scene nodes of this node register
112 themselves.
113 */
114 virtual void OnRegisterSceneNode()
115 {
116 if (IsVisible)
117 SceneManager->registerNodeForRendering(this);
118
119 ISceneNode::OnRegisterSceneNode();
120 }
121
122 /*
123 In the render() method most of the interesting stuff happens: The
124 Scene node renders itself. We override this method and draw the
125 tetraeder.
126 */
127 virtual void render()
128 {
129 u16 indices[] = { 0,2,3, 2,1,3, 1,0,3, 2,0,1 };
130 video::IVideoDriver* driver = SceneManager->getVideoDriver();
131
132 driver->setMaterial(Material);
133 driver->setTransform(video::ETS_WORLD, AbsoluteTransformation);
134 driver->drawVertexPrimitiveList(&Vertices[0], 4, &indices[0], 4, video::EVT_STANDARD, scene::EPT_TRIANGLES, video::EIT_16BIT);
135 }
136
137 /*
138 And finally we create three small additional methods.
139 irr::scene::ISceneNode::getBoundingBox() returns the bounding box of
140 this scene node, irr::scene::ISceneNode::getMaterialCount() returns the
141 amount of materials in this scene node (our tetraeder only has one
142 material), and irr::scene::ISceneNode::getMaterial() returns the
143 material at an index. Because we have only one material here, we can
144 return the only one material, assuming that no one ever calls
145 getMaterial() with an index greater than 0.
146 */
147 virtual const core::aabbox3d<f32>& getBoundingBox() const
148 {
149 return Box;
150 }
151
152 virtual u32 getMaterialCount() const
153 {
154 return 1;
155 }
156
157 virtual video::SMaterial& getMaterial(u32 i)
158 {
159 return Material;
160 }
161};
162
163/*
164That's it. The Scene node is done. Now we simply have to start
165the engine, create the scene node and a camera, and look at the result.
166*/
167int main()
168{
169 // ask user for driver
170 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
171 if (driverType==video::EDT_COUNT)
172 return 1;
173
174 // create device
175
176 IrrlichtDevice *device = createDevice(driverType,
177 core::dimension2d<u32>(640, 480), 16, false);
178
179 if (device == 0)
180 return 1; // could not create selected driver.
181
182 // create engine and camera
183
184 device->setWindowCaption(L"Custom Scene Node - Irrlicht Engine Demo");
185
186 video::IVideoDriver* driver = device->getVideoDriver();
187 scene::ISceneManager* smgr = device->getSceneManager();
188
189 smgr->addCameraSceneNode(0, core::vector3df(0,-40,0), core::vector3df(0,0,0));
190
191 /*
192 Create our scene node. I don't check the result of calling new, as it
193 should throw an exception rather than returning 0 on failure. Because
194 the new node will create itself with a reference count of 1, and then
195 will have another reference added by its parent scene node when it is
196 added to the scene, I need to drop my reference to it. Best practice is
197 to drop it only *after* I have finished using it, regardless of what
198 the reference count of the object is after creation.
199 */
200 CSampleSceneNode *myNode =
201 new CSampleSceneNode(smgr->getRootSceneNode(), smgr, 666);
202
203 /*
204 To animate something in this boring scene consisting only of one
205 tetraeder, and to show that you now can use your scene node like any
206 other scene node in the engine, we add an animator to the scene node,
207 which rotates the node a little bit.
208 irr::scene::ISceneManager::createRotationAnimator() could return 0, so
209 should be checked.
210 */
211 scene::ISceneNodeAnimator* anim =
212 smgr->createRotationAnimator(core::vector3df(0.8f, 0, 0.8f));
213
214 if(anim)
215 {
216 myNode->addAnimator(anim);
217
218 /*
219 I'm done referring to anim, so must
220 irr::IReferenceCounted::drop() this reference now because it
221 was produced by a createFoo() function. As I shouldn't refer to
222 it again, ensure that I can't by setting to 0.
223 */
224 anim->drop();
225 anim = 0;
226 }
227
228 /*
229 I'm done with my CSampleSceneNode object, and so must drop my reference.
230 This won't delete the object, yet, because it is still attached to the
231 scene graph, which prevents the deletion until the graph is deleted or the
232 custom scene node is removed from it.
233 */
234 myNode->drop();
235 myNode = 0; // As I shouldn't refer to it again, ensure that I can't
236
237 /*
238 Now draw everything and finish.
239 */
240 u32 frames=0;
241 while(device->run())
242 {
243 driver->beginScene(true, true, video::SColor(0,100,100,100));
244
245 smgr->drawAll();
246
247 driver->endScene();
248 if (++frames==100)
249 {
250 core::stringw str = L"Irrlicht Engine [";
251 str += driver->getName();
252 str += L"] FPS: ";
253 str += (s32)driver->getFPS();
254
255 device->setWindowCaption(str.c_str());
256 frames=0;
257 }
258 }
259
260 device->drop();
261
262 return 0;
263}
264
265/*
266That's it. Compile and play around with the program.
267**/
diff --git a/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/tutorial.html b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/tutorial.html
new file mode 100644
index 0000000..becc3d7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/03.CustomSceneNode/tutorial.html
@@ -0,0 +1,222 @@
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="center"></div>
15 <div align="left"><b><font color="#FFFFFF">Tutorial 3.CustomSceneNode</font></b></div>
16 </div>
17 </td>
18 </tr>
19 <tr bgcolor="#eeeeff">
20 <td height="90" colspan="2">
21 <div align="left">
22 <p>This Tutorial is a tutorial for more advanced developers. If you are
23 currently just playing around with the Irrlicht engine, please look
24 at other examples first. This tutorial shows how to create a custom
25 scene node and how to use it in the engine. A custom scene node is needed,
26 if you want to implement a render technique, the Irrlicht Engine is
27 currently not supporting. For example you can write a indoor portal
28 based renderer or a advanced terrain scene node with it. With creating
29 custom scene nodes, you can easily extend the Irrlicht Engine and adapt
30 it to your needs.</p>
31 <p>I will keep the tutorial simple: Keep everything very short, everything
32 in one .cpp file, and I'll use the engine here as in all other tutorials.
33 At the end of the tutorial, the result will look like the image below.
34 This looks not very exciting, but it is a complete customized scene
35 node and a good point to start from creating you own scene nodes.</p>
36 <p align="center"><img src="../../media/003shot.jpg" width="259" height="204"><br>
37 </p>
38 </div>
39 </td>
40 </tr>
41</table>
42<br>
43<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
44 <tr>
45 <td bgcolor="#666699"> <div align="center"><b><font color="#FFFFFF"></font></b></div>
46 <b><font color="#FFFFFF">Lets start!</font></b></td>
47 </tr>
48 <tr>
49 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
50 <p>To start, I include the header files, use the irr namespace, and tell
51 the linker to link with the .lib file. </p>
52 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
53 <tr>
54 <td> <pre>#include &lt;irrlicht.h&gt;</pre> <pre>using namespace irr;</pre> <pre>#pragma comment(lib, &quot;Irrlicht.lib&quot;)</pre></td>
55 </tr>
56 </table>
57 <p>Here comes the most sophisticated part of this tutorial: The class
58 of our very own custom scene node. To keep it simple,<br>
59 our scene node will not be an indoor portal renderer nor a terrain scene
60 node, but a simple tetraeder, a 3d object consiting of 4 connected vertices,
61 which only draws itself and does nothing more.</p>
62 <p>To let our scene node be able to be inserted into the Irrlicht Engine
63 scene, the class we create needs only be derived from the ISceneNode
64 class and has to override some methods.</p>
65 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
66 <tr>
67 <td> <pre>class CSampleSceneNode : public scene::ISceneNode<br>{</pre> </td>
68 </tr>
69 </table>
70 <p>First, we declare some member variables, to hold data for our tetraeder:
71 The bounding box, 4 vertices, and<br>
72 the material of the tetraeder.</p>
73 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
74 <tr>
75 <td> <pre>core::aabbox3d&lt;f32&gt; Box;<br>video::S3DVertex Vertices[4];<br>video::SMaterial Material;</pre> </td>
76 </tr>
77 </table>
78 <p>The parameters of the constructor specify the parent of the scene node,
79 a pointer to the scene manager, and an id of the scene node. In the
80 constructor itself, we call the parent classes constructor, set some
81 properties of the material we use to draw the scene node and create
82 the 4 vertices of the tetraeder we will draw later. </p>
83 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
84 <tr>
85 <td> <pre>public:</pre> <pre>CSampleSceneNode(scene::ISceneNode* parent, scene::ISceneManager* mgr, s32 id)
86 : scene::ISceneNode(parent, mgr, id)
87{
88 Material.Wireframe = false;
89 Material.Lighting = false;</pre>
90 <pre> Vertices[0] = video::S3DVertex(0,0,10, 1,1,0,video::SColor(255,0,255,255),0,1);
91 Vertices[1] = video::S3DVertex(10,0,-10, 1,0,0,video::SColor(255,255,0,255),1,1);
92 Vertices[2] = video::S3DVertex(0,20,0, 0,1,1,video::SColor(255,255,255,0),1,0);
93 Vertices[3] = video::S3DVertex(-10,0,-10, 0,0,1,video::SColor(255,0,255,0),0,0);
94</pre></td>
95 </tr>
96 </table>
97 <br>
98 The Irrlicht Engine needs to know the bounding box of your scene node.
99 It will use it for doing automatic culling and other things. Hence we
100 need to create a bounding box from the 4 vertices we use. If you do not
101 want the engine to use the box for automatic culling, and/or don't want
102 to create the box, you could also write<br>
103 <font face="Courier New, Courier, mono">AutomaticCullingEnabled = false;</font>.<br>
104 <br>
105 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
106 <tr>
107 <td> <pre> Box.reset(Vertices[0].Pos);<br> for (s32 i=1; i&lt;4; ++i)<br> Box.addInternalPoint(Vertices[i].Pos);
108}</pre> </td>
109 </tr>
110 </table>
111 <br>
112 <p>Before it is drawn, the OnPreRender() method of every scene node in
113 the scene is called by the scene manager. If the scene node wishes to
114 draw itself, it may register itself in the scene manager to be drawn.
115 This is necessary to tell the scene manager when it should call the
116 ::render method. For example normal scene nodes render their content
117 one after another, while stencil buffer shadows would like to be drawn
118 after all other scene nodes. And camera or light scene nodes need to
119 be rendered before all other scene nodes (if at all). <br>
120 So here we simply register the scene node to get rendered normally.
121 If we would like to let it be rendered like cameras or light, we would
122 have to call SceneManager-&gt;registerNodeForRendering(this, SNRT_LIGHT_AND_CAMERA);
123 <br>
124 After this, we call the OnPreRender-method of the base class ISceneNode,
125 which simply lets also all the child scene nodes of this node register
126 themselves. </p>
127 </div>
128 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
129 <tr>
130 <td> <pre>virtual void OnPreRender()<br>{<br> if (IsVisible)<br> SceneManager-&gt;registerNodeForRendering(this);
131
132 ISceneNode::OnPreRender();
133}</pre> </td>
134 </tr>
135 </table>
136 <p>In the render() method most of the interresting stuff happenes: The Scene
137 node renders itself. We override this method and draw the tetraeder.</p>
138 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
139 <tr>
140 <td> <pre>virtual void render()<br>{<br> u16 indices[] = { 0,2,3, 2,1,3, 1,0,3, 2,0,1 };
141 video::IVideoDriver* driver = SceneManager-&gt;getVideoDriver();</pre>
142 <pre> driver-&gt;setMaterial(Material);
143 driver-&gt;setTransform(video::ETS_WORLD, AbsoluteTransformation);
144 driver-&gt;drawIndexedTriangleList(&amp;Vertices[0], 4, &amp;indices[0], 4);
145}</pre> </td>
146 </tr>
147 </table>
148 <p> At least, we create three small additional methods. GetBoundingBox()
149 returns the bounding box of this scene node, <br>
150 GetMaterialCount() returns the amount of materials in this scene node
151 (our tetraeder only has one material), and getMaterial() returns the material
152 at an index. Because we have only one material here, we can return the
153 only one material, assuming that no one ever calls getMaterial() with
154 an index greater than 0. </p>
155 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
156 <tr>
157 <td><pre> virtual const core::aabbox3d&lt;f32&gt;&amp; getBoundingBox() const<br> {<br> return Box;<br> }</pre> <pre> virtual u32 getMaterialCount()
158 {
159 return 1;
160 }</pre> <pre> virtual video::SMaterial&amp; getMaterial(u32 i)
161 {
162 return Material;
163 }
164};</pre></td>
165 </tr>
166 </table>
167 <p>That's it. The Scene node is done. Now we simply have to start the engine,
168 create the scene node and a camera, and look at the result.</p>
169 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
170 <tr>
171 <td> <pre>int main()<br>{
172 IrrlichtDevice *device =
173 createDevice(video::EDT_OPENGL, core::dimension2d&lt;s32&gt;(640, 480), 16, false);</pre> <pre> device-&gt;setWindowCaption(L&quot;Custom Scene Node - Irrlicht Engine Demo&quot;);</pre> <pre> video::IVideoDriver* driver = device-&gt;getVideoDriver();
174 scene::ISceneManager* smgr = device-&gt;getSceneManager();</pre>
175 <pre> smgr-&gt;addCameraSceneNode(0, core::vector3df(0,-40,0), core::vector3df(0,0,0));
176 </pre></td>
177 </tr>
178 </table>
179 <p>Create our scene node. Note that it is dropped (-&gt;drop()) instantly
180 after we create it. This is possible because the scene manager now takes
181 care of it. This is not nessecary, it would also be possible to drop it
182 at the end of the program.</p>
183 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
184 <tr>
185 <td> <pre>CSampleSceneNode *myNode = <br> new CSampleSceneNode(smgr-&gt;getRootSceneNode(), smgr, 666);
186
187myNode-&gt;drop();</pre> </td>
188 </tr>
189 </table>
190 <p>To animate something in this boring scene consisting only of one tetraeder,
191 and to show, that you now can use your scene node like any other scene
192 node in the engine, we add an animator to the scene node, which rotates
193 the node a little bit. </p>
194 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
195 <tr>
196 <td> <pre>scene::ISceneNodeAnimator* anim = <br> smgr-&gt;createRotationAnimator(core::vector3df(0.8f, 0, 0.8f));
197
198myNode-&gt;addAnimator(anim);
199anim-&gt;drop();</pre> </td>
200 </tr>
201 </table>
202 <p>Now draw everything and finish.</p>
203 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
204 <tr>
205 <td> <pre> while(device-&gt;run())<br> {<br> driver-&gt;beginScene(true, true, video::SColor(0,100,100,100));
206
207 smgr-&gt;drawAll();
208
209 driver-&gt;endScene();
210 }
211
212device-&gt;drop();
213return 0;
214}</pre> </td>
215 </tr>
216 </table>
217 <p>That's it. Compile and play around with the program. </p></td>
218 </tr>
219</table>
220<p>&nbsp;</p>
221 </body>
222</html>
diff --git a/src/others/irrlicht-1.8.1/examples/04.Movement/Makefile b/src/others/irrlicht-1.8.1/examples/04.Movement/Makefile
new file mode 100644
index 0000000..0dcd252
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Makefile
@@ -0,0 +1,39 @@
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 = 04.Movement
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: CPPFLAGS += -D__GNUWIN32__ -D_WIN32 -DWIN32 -D_WINDOWS -D_MBCS -D_USRDLL
24all_win32 clean_win32: SYSTEM=Win32-gcc
25all_win32 clean_win32: SUF=.exe
26# name of the binary - only valid for targets which set SYSTEM
27DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF)
28
29all_linux all_win32:
30 $(warning Building...)
31 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
32
33clean: clean_linux clean_win32
34 $(warning Cleaning...)
35
36clean_linux clean_win32:
37 @$(RM) $(DESTPATH)
38
39.PHONY: all all_win32 clean clean_linux clean_win32
diff --git a/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.cbp b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.cbp
new file mode 100644
index 0000000..0fcc4d0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.cbp
@@ -0,0 +1,55 @@
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 04 Movement" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Windows">
10 <Option output="..\..\bin\Win32-gcc\Movement" prefix_auto="0" extension_auto="1" />
11 <Option type="1" />
12 <Option compiler="gcc" />
13 <Option projectResourceIncludeDirsRelation="1" />
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\Movement" 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 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.dev b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.dev
new file mode 100644
index 0000000..0753c10
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 04 Movement
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=04.Movement.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/04.Movement/Movement.vcproj b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.vcproj
new file mode 100644
index 0000000..105c625
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement.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="04.Movement"
6 ProjectGUID="{735B050B-1AC5-4602-B0BE-D2D2B5893E94}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/Movement.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\04.Movement.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/Movement.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/Movement.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/Movement.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\04.Movement.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/Movement.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/Movement.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc10.vcxproj
new file mode 100644
index 0000000..7e59058
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_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>04.Movement</ProjectName>
23 <ProjectGuid>{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}</ProjectGuid>
24 <RootNamespace>Movement</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/Movement.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\04.Movement.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/Movement.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\04.Movement.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/Movement.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\04.Movement.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/Movement.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\04.Movement.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/04.Movement/Movement_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc11.vcxproj
new file mode 100644
index 0000000..7fe0339
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_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>04.Movement</ProjectName>
23 <ProjectGuid>{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}</ProjectGuid>
24 <RootNamespace>Movement</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/Movement.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\04.Movement.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/Movement.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\04.Movement.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/Movement.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\04.Movement.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/Movement.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\04.Movement.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/04.Movement/Movement_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc8.vcproj
new file mode 100644
index 0000000..8f56add
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_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="04.Movement_vc8"
6 ProjectGUID="{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}"
7 RootNamespace="Movement_vc8"
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 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=".\Debug/Movement.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/Movement.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\04.Movement.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/Movement.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Movement.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Movement.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\04.Movement.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Movement.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_vc9.vcproj
new file mode 100644
index 0000000..074fe40
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/Movement_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="04.Movement_vc9"
6 ProjectGUID="{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}"
7 RootNamespace="Movement_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/Movement.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/Movement.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\04.Movement.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/Movement.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Movement.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Movement.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\04.Movement.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Movement.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/04.Movement/main.cpp b/src/others/irrlicht-1.8.1/examples/04.Movement/main.cpp
new file mode 100644
index 0000000..7bacda3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/main.cpp
@@ -0,0 +1,258 @@
1/** Example 004 Movement
2
3This Tutorial shows how to move and animate SceneNodes. The
4basic concept of SceneNodeAnimators is shown as well as manual
5movement of nodes using the keyboard. We'll demonstrate framerate
6independent movement, which means moving by an amount dependent
7on the duration of the last run of the Irrlicht loop.
8
9Example 19.MouseAndJoystick shows how to handle those kinds of input.
10
11As always, I include the header files, use the irr namespace,
12and tell the linker to link with the .lib file.
13*/
14#ifdef _MSC_VER
15// We'll also define this to stop MSVC complaining about sprintf().
16#define _CRT_SECURE_NO_WARNINGS
17#pragma comment(lib, "Irrlicht.lib")
18#endif
19
20#include <irrlicht.h>
21#include "driverChoice.h"
22
23using namespace irr;
24
25/*
26To receive events like mouse and keyboard input, or GUI events like "the OK
27button has been clicked", we need an object which is derived from the
28irr::IEventReceiver object. There is only one method to override:
29irr::IEventReceiver::OnEvent(). This method will be called by the engine once
30when an event happens. What we really want to know is whether a key is being
31held down, and so we will remember the current state of each key.
32*/
33class MyEventReceiver : public IEventReceiver
34{
35public:
36 // This is the one method that we have to implement
37 virtual bool OnEvent(const SEvent& event)
38 {
39 // Remember whether each key is down or up
40 if (event.EventType == irr::EET_KEY_INPUT_EVENT)
41 KeyIsDown[event.KeyInput.Key] = event.KeyInput.PressedDown;
42
43 return false;
44 }
45
46 // This is used to check whether a key is being held down
47 virtual bool IsKeyDown(EKEY_CODE keyCode) const
48 {
49 return KeyIsDown[keyCode];
50 }
51
52 MyEventReceiver()
53 {
54 for (u32 i=0; i<KEY_KEY_CODES_COUNT; ++i)
55 KeyIsDown[i] = false;
56 }
57
58private:
59 // We use this array to store the current state of each key
60 bool KeyIsDown[KEY_KEY_CODES_COUNT];
61};
62
63
64/*
65The event receiver for keeping the pressed keys is ready, the actual responses
66will be made inside the render loop, right before drawing the scene. So lets
67just create an irr::IrrlichtDevice and the scene node we want to move. We also
68create some other additional scene nodes, to show that there are also some
69different possibilities to move and animate scene nodes.
70*/
71int main()
72{
73 // ask user for driver
74 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
75 if (driverType==video::EDT_COUNT)
76 return 1;
77
78 // create device
79 MyEventReceiver receiver;
80
81 IrrlichtDevice* device = createDevice(driverType,
82 core::dimension2d<u32>(640, 480), 16, false, false, false, &receiver);
83
84 if (device == 0)
85 return 1; // could not create selected driver.
86
87 video::IVideoDriver* driver = device->getVideoDriver();
88 scene::ISceneManager* smgr = device->getSceneManager();
89
90 /*
91 Create the node which will be moved with the WSAD keys. We create a
92 sphere node, which is a built-in geometry primitive. We place the node
93 at (0,0,30) and assign a texture to it to let it look a little bit more
94 interesting. Because we have no dynamic lights in this scene we disable
95 lighting for each model (otherwise the models would be black).
96 */
97 scene::ISceneNode * node = smgr->addSphereSceneNode();
98 if (node)
99 {
100 node->setPosition(core::vector3df(0,0,30));
101 node->setMaterialTexture(0, driver->getTexture("../../media/wall.bmp"));
102 node->setMaterialFlag(video::EMF_LIGHTING, false);
103 }
104
105 /*
106 Now we create another node, movable using a scene node animator. Scene
107 node animators modify scene nodes and can be attached to any scene node
108 like mesh scene nodes, billboards, lights and even camera scene nodes.
109 Scene node animators are not only able to modify the position of a
110 scene node, they can also animate the textures of an object for
111 example. We create a cube scene node and attach a 'fly circle' scene
112 node animator to it, letting this node fly around our sphere scene node.
113 */
114 scene::ISceneNode* n = smgr->addCubeSceneNode();
115
116 if (n)
117 {
118 n->setMaterialTexture(0, driver->getTexture("../../media/t351sml.jpg"));
119 n->setMaterialFlag(video::EMF_LIGHTING, false);
120 scene::ISceneNodeAnimator* anim =
121 smgr->createFlyCircleAnimator(core::vector3df(0,0,30), 20.0f);
122 if (anim)
123 {
124 n->addAnimator(anim);
125 anim->drop();
126 }
127 }
128
129 /*
130 The last scene node we add to show possibilities of scene node animators is
131 a b3d model, which uses a 'fly straight' animator to run between to points.
132 */
133 scene::IAnimatedMeshSceneNode* anms =
134 smgr->addAnimatedMeshSceneNode(smgr->getMesh("../../media/ninja.b3d"));
135
136 if (anms)
137 {
138 scene::ISceneNodeAnimator* anim =
139 smgr->createFlyStraightAnimator(core::vector3df(100,0,60),
140 core::vector3df(-100,0,60), 3500, true);
141 if (anim)
142 {
143 anms->addAnimator(anim);
144 anim->drop();
145 }
146
147 /*
148 To make the model look right we disable lighting, set the
149 frames between which the animation should loop, rotate the
150 model around 180 degrees, and adjust the animation speed and
151 the texture. To set the right animation (frames and speed), we
152 would also be able to just call
153 "anms->setMD2Animation(scene::EMAT_RUN)" for the 'run'
154 animation instead of "setFrameLoop" and "setAnimationSpeed",
155 but this only works with MD2 animations, and so you know how to
156 start other animations. But a good advice is to not use
157 hardcoded frame-numbers...
158 */
159 anms->setMaterialFlag(video::EMF_LIGHTING, false);
160
161 anms->setFrameLoop(0, 13);
162 anms->setAnimationSpeed(15);
163// anms->setMD2Animation(scene::EMAT_RUN);
164
165 anms->setScale(core::vector3df(2.f,2.f,2.f));
166 anms->setRotation(core::vector3df(0,-90,0));
167// anms->setMaterialTexture(0, driver->getTexture("../../media/sydney.bmp"));
168
169 }
170
171
172 /*
173 To be able to look at and move around in this scene, we create a first
174 person shooter style camera and make the mouse cursor invisible.
175 */
176 smgr->addCameraSceneNodeFPS();
177 device->getCursorControl()->setVisible(false);
178
179 /*
180 Add a colorful irrlicht logo
181 */
182 device->getGUIEnvironment()->addImage(
183 driver->getTexture("../../media/irrlichtlogoalpha2.tga"),
184 core::position2d<s32>(10,20));
185
186 gui::IGUIStaticText* diagnostics = device->getGUIEnvironment()->addStaticText(
187 L"", core::rect<s32>(10, 10, 400, 20));
188 diagnostics->setOverrideColor(video::SColor(255, 255, 255, 0));
189
190 /*
191 We have done everything, so lets draw it. We also write the current
192 frames per second and the name of the driver to the caption of the
193 window.
194 */
195 int lastFPS = -1;
196
197 // In order to do framerate independent movement, we have to know
198 // how long it was since the last frame
199 u32 then = device->getTimer()->getTime();
200
201 // This is the movemen speed in units per second.
202 const f32 MOVEMENT_SPEED = 5.f;
203
204 while(device->run())
205 {
206 // Work out a frame delta time.
207 const u32 now = device->getTimer()->getTime();
208 const f32 frameDeltaTime = (f32)(now - then) / 1000.f; // Time in seconds
209 then = now;
210
211 /* Check if keys W, S, A or D are being held down, and move the
212 sphere node around respectively. */
213 core::vector3df nodePosition = node->getPosition();
214
215 if(receiver.IsKeyDown(irr::KEY_KEY_W))
216 nodePosition.Y += MOVEMENT_SPEED * frameDeltaTime;
217 else if(receiver.IsKeyDown(irr::KEY_KEY_S))
218 nodePosition.Y -= MOVEMENT_SPEED * frameDeltaTime;
219
220 if(receiver.IsKeyDown(irr::KEY_KEY_A))
221 nodePosition.X -= MOVEMENT_SPEED * frameDeltaTime;
222 else if(receiver.IsKeyDown(irr::KEY_KEY_D))
223 nodePosition.X += MOVEMENT_SPEED * frameDeltaTime;
224
225 node->setPosition(nodePosition);
226
227 driver->beginScene(true, true, video::SColor(255,113,113,133));
228
229 smgr->drawAll(); // draw the 3d scene
230 device->getGUIEnvironment()->drawAll(); // draw the gui environment (the logo)
231
232 driver->endScene();
233
234 int fps = driver->getFPS();
235
236 if (lastFPS != fps)
237 {
238 core::stringw tmp(L"Movement Example - Irrlicht Engine [");
239 tmp += driver->getName();
240 tmp += L"] fps: ";
241 tmp += fps;
242
243 device->setWindowCaption(tmp.c_str());
244 lastFPS = fps;
245 }
246 }
247
248 /*
249 In the end, delete the Irrlicht device.
250 */
251 device->drop();
252
253 return 0;
254}
255
256/*
257That's it. Compile and play around with the program.
258**/
diff --git a/src/others/irrlicht-1.8.1/examples/04.Movement/tutorial.html b/src/others/irrlicht-1.8.1/examples/04.Movement/tutorial.html
new file mode 100644
index 0000000..28b207d
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/04.Movement/tutorial.html
@@ -0,0 +1,188 @@
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="center"></div>
15 <div align="left"><b><font color="#FFFFFF">Tutorial 4.Movement</font></b></div>
16 </div>
17 </td>
18 </tr>
19 <tr bgcolor="#eeeeff">
20 <td height="90" colspan="2">
21 <div align="left">
22 <p>This Tutorial shows how to move and animate SceneNodes. The basic concept
23 of SceneNodeAnimators is shown as well as manual movement of nodes using
24 the keyboard.</p>
25 <p>The program which is described here will look like this:</p>
26 <p align="center"><img src="../../media/004shot.jpg" width="259" height="204"><br>
27 </p>
28 </div>
29 </td>
30 </tr>
31</table>
32<br>
33<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
34 <tr>
35 <td bgcolor="#666699"> <div align="center"><b><font color="#FFFFFF"></font></b></div>
36 <b><font color="#FFFFFF">Lets start!</font></b></td>
37 </tr>
38 <tr>
39 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
40 <p>As always, I include the header files, use the irr namespace, and tell
41 the linker to link with the .lib file. </p>
42 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
43 <tr>
44 <td> <pre>#include &lt;stdio.h&gt;<br>#include &lt;wchar.h&gt;<br>#include &lt;irrlicht.h&gt;</pre>
45 <pre>using namespace irr;</pre>
46 <pre>#pragma comment(lib, &quot;Irrlicht.lib&quot;)</pre></td>
47 </tr>
48 </table>
49 <p>In this tutorial, one of our goals is to move a scene node using some
50 keys on the keyboard. We store a pointer to the scene node we want to
51 move with the keys here.<br>
52 The other pointer is a pointer to the Irrlicht Device, which we need
53 int the EventReceiver to manipulate the scene node and to get the active
54 camera.</p>
55 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
56 <tr>
57 <td> <pre>scene::ISceneNode* node = 0;<br>IrrlichtDevice* device = 0; </pre></td>
58 </tr>
59 </table>
60 <p>To get events like mouse and keyboard input, or GUI events like &quot;the
61 OK button has been clicked&quot;, we need an object wich is derived
62 from the IEventReceiver object. There is only one method to override:
63 OnEvent. This method will be called by the engine when an event happened.
64 We will use this input to move the scene node with the keys W and S.</p>
65 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
66 <tr>
67 <td> <pre>class MyEventReceiver : public IEventReceiver<br>{<br>public:<br> virtual bool OnEvent(const SEvent&amp; event)<br> { </pre></td>
68 </tr>
69 </table>
70 <p>If the key 'W' or 'S' was left up, we get the position of the scene
71 node, and modify the Y coordinate a little bit. So if you press 'W',
72 the node moves up, and if you press 'S' it moves down.</p>
73 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
74 <tr>
75 <td> <pre>if (node != 0 &amp;&amp; event.EventType == irr::EET_KEY_INPUT_EVENT&amp;&amp;<br> !event.KeyInput.PressedDown)<br>{<br> switch(event.KeyInput.Key)<br> {<br> case KEY_KEY_W:<br> case KEY_KEY_S:<br> {<br> core::vector3df v = node-&gt;getPosition();<br> v.Y += event.KeyInput.Key == KEY_KEY_W ? 2.0f : -2.0f;<br> node-&gt;setPosition(v);<br> }<br> return true;<br> }<br>} return false; <br> } <br> };</pre></td>
76 </tr>
77 </table>
78
79 </div>
80 <p>The event receiver for moving a scene node is ready. So lets just create
81 an Irrlicht Device and the scene node we want to move. We also create
82 some other additional scene nodes, to show that there are also some different
83 possibilities to move and animate scene nodes.</p>
84 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
85 <tr>
86 <td><pre>int main()<br>{<br> MyEventReceiver receiver;
87
88 device = createDevice(video::EDT_OPENGL, core::dimension2d&lt;s32&gt;(640, 480),
89 16, false, false, false, &amp;receiver);</pre>
90 <pre> video::IVideoDriver* driver = device-&gt;getVideoDriver();
91 scene::ISceneManager* smgr = device-&gt;getSceneManager();</pre>
92 </td>
93 </tr>
94 </table>
95 <p> Create the node for moving it with the 'W' and 'S' key. We create a
96 sphere node, which is a built in geometric primitive scene node.
97 We place the node at (0,0,30) and assign a texture to it to let it look
98 a little bit more interesting.</p>
99 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
100 <tr>
101 <td><pre>node = smgr-&gt;addSphereSceneNode();
102node-&gt;setPosition(core::vector3df(0,0,30));
103node-&gt;setMaterialFlag(video::EMF_LIGHTING, false);
104node-&gt;setMaterialTexture(0, driver-&gt;getTexture(&quot;../../media/wall.bmp&quot;));</pre></td>
105 </tr>
106 </table>
107 <p>Now we create another node, moving using a scene node animator. Scene
108 node animators modify scene nodes and can be attached to any scene node
109 like<br>
110 mesh scene nodes, billboards, lights and even camera scene nodes. Scene
111 node animators are not only able to modify the position of a scene node,
112 they can<br>
113 also animate the textures of an object for example. We create a test scene
114 node again an attach a 'fly circle' scene node to it, letting this node
115 fly around our first test scene node.</p>
116 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
117 <tr>
118 <td><pre>scene::ISceneNode* n = smgr-&gt;addCubeSceneNode();
119n-&gt;setMaterialTexture(0, driver-&gt;getTexture(&quot;../../media/t351sml.jpg&quot;));
120n-&gt;setMaterialFlag(video::EMF_LIGHTING, false);
121scene::ISceneNodeAnimator* anim =
122 smgr-&gt;createFlyCircleAnimator(core::vector3df(0,0,30), 20.0f);
123n-&gt;addAnimator(anim);
124anim-&gt;drop();</pre></td>
125 </tr>
126 </table>
127 <p>The last scene node we add to show possibilities of scene node animators
128 is a md2 model, which uses a 'fly straight' animator to run between to
129 points.</p>
130 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
131 <tr>
132 <td> <pre>scene::IAnimatedMeshSceneNode* anms = smgr-&gt;addAnimatedMeshSceneNode(<br> smgr-&gt;getMesh(&quot;../../media/sydney.md2&quot;));
133
134if (n)<br> {<br> anim = smgr-&gt;createFlyStraightAnimator(core::vector3df(100,0,60), <br> core::vector3df(-100,0,60), 10000, true);<br> anms-&gt;addAnimator(anim);<br> anim-&gt;drop();</pre>
135 </td>
136 </tr>
137 </table>
138 <p>To make to model look right we set the frames between which
139 the animation should loop, rotate the model around 180 degrees, and adjust
140 the animation speed and the texture.<br>
141 To set the right animation (frames and speed), we would also be able to
142 just call &quot;anms-&gt;setMD2Animation(scene::EMAT_RUN)&quot; for the
143 'run' animation instead of &quot;setFrameLoop&quot; and &quot;setAnimationSpeed&quot;,
144 but this only works with MD2 animations, and so you know how to start
145 other animations.</p>
146 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
147 <tr>
148 <td> <pre> anms-&gt;setMaterialFlag(video::EMF_LIGHTING, false);<br> anms-&gt;setFrameLoop(320, 360);
149 anms-&gt;setAnimationSpeed(30);<br> anms-&gt;setRotation(core::vector3df(0,180.0f,0));<br> anms-&gt;setMaterialTexture(0, driver-&gt;getTexture(&quot;../../media/sydney.bmp&quot;));<br>}<br></pre></td>
150 </tr>
151 </table>
152 <p>To be able to look at and move around in this scene, we create a first
153 person shooter style camera and make the mouse cursor invisible.</p>
154 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
155 <tr>
156 <td> <pre>smgr-&gt;addCameraSceneNodeFPS(0, 100.0f, 100.0f);<br>device-&gt;getCursorControl()-&gt;setVisible(false); </pre></td>
157 </tr>
158 </table>
159 <p>We have done everything, so lets draw it. We also write the current frames
160 per second and the name of the driver to the caption of the window.</p>
161 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
162 <tr>
163 <td> <pre>int lastFPS = -1;</pre>
164 <pre>while(device-&gt;run())
165{
166 driver-&gt;beginScene(true, true, video::SColor(255,90,90,156));
167 smgr-&gt;drawAll();
168 driver-&gt;endScene();</pre>
169 <pre> int fps = driver-&gt;getFPS();</pre>
170 <pre> if (lastFPS != fps)
171 {
172 wchar_t tmp[1024];
173 swprintf(tmp, 1024, L&quot;Movement Example - Irrlicht Engine (%ls)(fps:%d)&quot;,<br> driver-&gt;getName(), fps);</pre>
174 <pre> device-&gt;setWindowCaption(tmp);
175 lastFPS = fps;
176 }
177}
178
179device-&gt;drop();<br>return 0;<br>}</pre></td>
180 </tr>
181 </table>
182 <p>That's it. Compile and play around with the program. </p>
183 <p>&nbsp;</p></td>
184 </tr>
185</table>
186<p>&nbsp;</p>
187 </body>
188</html>
diff --git a/src/others/irrlicht-1.8.1/examples/05.UserInterface/Makefile b/src/others/irrlicht-1.8.1/examples/05.UserInterface/Makefile
new file mode 100644
index 0000000..24cd5d4
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/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 = 05.UserInterface
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/05.UserInterface/UserInterface.cbp b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.cbp
new file mode 100644
index 0000000..0e4aebb
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.cbp
@@ -0,0 +1,55 @@
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 05 User Interface" />
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\UserInterface" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\UserInterface" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.dev b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.dev
new file mode 100644
index 0000000..6a32ece
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 05 User Interface
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=05.UserInterface.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/05.UserInterface/UserInterface.vcproj b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.vcproj
new file mode 100644
index 0000000..4428169
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface.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="05.UserInterface"
6 ProjectGUID="{0294193E-12DE-4B24-91C0-419865BF7E33}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/UserInterface.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\05.UserInterface.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/UserInterface.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/UserInterface.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/UserInterface.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\05.UserInterface.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/UserInterface.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/UserInterface.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc10.vcxproj
new file mode 100644
index 0000000..12c0501
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_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>05.UserInterface</ProjectName>
23 <ProjectGuid>{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}</ProjectGuid>
24 <RootNamespace>UserInterface</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/UserInterface.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\05.UserInterface.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/UserInterface.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\05.UserInterface.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/UserInterface.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\05.UserInterface.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/UserInterface.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\05.UserInterface.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/05.UserInterface/UserInterface_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc11.vcxproj
new file mode 100644
index 0000000..cc6561b
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_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>05.UserInterface</ProjectName>
23 <ProjectGuid>{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}</ProjectGuid>
24 <RootNamespace>UserInterface</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/UserInterface.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\05.UserInterface.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/UserInterface.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\05.UserInterface.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/UserInterface.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\05.UserInterface.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/UserInterface.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\05.UserInterface.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/05.UserInterface/UserInterface_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc8.vcproj
new file mode 100644
index 0000000..fdc4fef
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_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="05.UserInterface_vc8"
6 ProjectGUID="{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}"
7 RootNamespace="UserInterface_vc8"
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 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=".\Debug/UserInterface.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/UserInterface.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\05.UserInterface.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/UserInterface.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/UserInterface.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/UserInterface.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\05.UserInterface.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/UserInterface.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_vc9.vcproj
new file mode 100644
index 0000000..e192238
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/UserInterface_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="05.UserInterface_vc8"
6 ProjectGUID="{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}"
7 RootNamespace="UserInterface_vc8"
8 TargetFrameworkVersion="131072"
9 >
10 <Platforms>
11 <Platform
12 Name="Win32"
13 />
14 </Platforms>
15 <ToolFiles>
16 </ToolFiles>
17 <Configurations>
18 <Configuration
19 Name="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/UserInterface.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/UserInterface.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\05.UserInterface.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/UserInterface.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/UserInterface.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/UserInterface.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\05.UserInterface.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/UserInterface.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/05.UserInterface/main.cpp b/src/others/irrlicht-1.8.1/examples/05.UserInterface/main.cpp
new file mode 100644
index 0000000..98b3898
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/main.cpp
@@ -0,0 +1,291 @@
1/** Example 005 User Interface
2
3This tutorial shows how to use the built in User Interface of
4the Irrlicht Engine. It will give a brief overview and show
5how to create and use windows, buttons, scroll bars, static
6texts, and list boxes.
7
8As always, we include the header files, and use the irrlicht
9namespaces. We also store a pointer to the Irrlicht device,
10a counter variable for changing the creation position of a window,
11and a pointer to a listbox.
12*/
13#include <irrlicht.h>
14#include "driverChoice.h"
15
16using namespace irr;
17
18using namespace core;
19using namespace scene;
20using namespace video;
21using namespace io;
22using namespace gui;
23
24#ifdef _IRR_WINDOWS_
25#pragma comment(lib, "Irrlicht.lib")
26#endif
27
28// Declare a structure to hold some context for the event receiver so that it
29// has it available inside its OnEvent() method.
30struct SAppContext
31{
32 IrrlichtDevice *device;
33 s32 counter;
34 IGUIListBox* listbox;
35};
36
37// Define some values that we'll use to identify individual GUI controls.
38enum
39{
40 GUI_ID_QUIT_BUTTON = 101,
41 GUI_ID_NEW_WINDOW_BUTTON,
42 GUI_ID_FILE_OPEN_BUTTON,
43 GUI_ID_TRANSPARENCY_SCROLL_BAR
44};
45
46/*
47 Set the skin transparency by changing the alpha values of all skin-colors
48*/
49void setSkinTransparency(s32 alpha, irr::gui::IGUISkin * skin)
50{
51 for (s32 i=0; i<irr::gui::EGDC_COUNT ; ++i)
52 {
53 video::SColor col = skin->getColor((EGUI_DEFAULT_COLOR)i);
54 col.setAlpha(alpha);
55 skin->setColor((EGUI_DEFAULT_COLOR)i, col);
56 }
57}
58
59/*
60The Event Receiver is not only capable of getting keyboard and
61mouse input events, but also events of the graphical user interface
62(gui). There are events for almost everything: Button click,
63Listbox selection change, events that say that a element was hovered
64and so on. To be able to react to some of these events, we create
65an event receiver.
66We only react to gui events, and if it's such an event, we get the
67id of the caller (the gui element which caused the event) and get
68the pointer to the gui environment.
69*/
70class MyEventReceiver : public IEventReceiver
71{
72public:
73 MyEventReceiver(SAppContext & context) : Context(context) { }
74
75 virtual bool OnEvent(const SEvent& event)
76 {
77 if (event.EventType == EET_GUI_EVENT)
78 {
79 s32 id = event.GUIEvent.Caller->getID();
80 IGUIEnvironment* env = Context.device->getGUIEnvironment();
81
82 switch(event.GUIEvent.EventType)
83 {
84
85 /*
86 If a scrollbar changed its scroll position, and it is
87 'our' scrollbar (the one with id GUI_ID_TRANSPARENCY_SCROLL_BAR), then we change
88 the transparency of all gui elements. This is a very
89 easy task: There is a skin object, in which all color
90 settings are stored. We simply go through all colors
91 stored in the skin and change their alpha value.
92 */
93 case EGET_SCROLL_BAR_CHANGED:
94 if (id == GUI_ID_TRANSPARENCY_SCROLL_BAR)
95 {
96 s32 pos = ((IGUIScrollBar*)event.GUIEvent.Caller)->getPos();
97 setSkinTransparency(pos, env->getSkin());
98 }
99 break;
100
101 /*
102 If a button was clicked, it could be one of 'our'
103 three buttons. If it is the first, we shut down the engine.
104 If it is the second, we create a little window with some
105 text on it. We also add a string to the list box to log
106 what happened. And if it is the third button, we create
107 a file open dialog, and add also this as string to the list box.
108 That's all for the event receiver.
109 */
110 case EGET_BUTTON_CLICKED:
111 switch(id)
112 {
113 case GUI_ID_QUIT_BUTTON:
114 Context.device->closeDevice();
115 return true;
116
117 case GUI_ID_NEW_WINDOW_BUTTON:
118 {
119 Context.listbox->addItem(L"Window created");
120 Context.counter += 30;
121 if (Context.counter > 200)
122 Context.counter = 0;
123
124 IGUIWindow* window = env->addWindow(
125 rect<s32>(100 + Context.counter, 100 + Context.counter, 300 + Context.counter, 200 + Context.counter),
126 false, // modal?
127 L"Test window");
128
129 env->addStaticText(L"Please close me",
130 rect<s32>(35,35,140,50),
131 true, // border?
132 false, // wordwrap?
133 window);
134 }
135 return true;
136
137 case GUI_ID_FILE_OPEN_BUTTON:
138 Context.listbox->addItem(L"File open");
139 // There are some options for the file open dialog
140 // We set the title, make it a modal window, and make sure
141 // that the working directory is restored after the dialog
142 // is finished.
143 env->addFileOpenDialog(L"Please choose a file.", true, 0, -1, true);
144 return true;
145
146 default:
147 return false;
148 }
149 break;
150
151 case EGET_FILE_SELECTED:
152 {
153 // show the model filename, selected in the file dialog
154 IGUIFileOpenDialog* dialog =
155 (IGUIFileOpenDialog*)event.GUIEvent.Caller;
156 Context.listbox->addItem(dialog->getFileName());
157 }
158 break;
159
160 default:
161 break;
162 }
163 }
164
165 return false;
166 }
167
168private:
169 SAppContext & Context;
170};
171
172
173/*
174Ok, now for the more interesting part. First, create the Irrlicht device. As in
175some examples before, we ask the user which driver he wants to use for this
176example:
177*/
178int main()
179{
180 // ask user for driver
181 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
182 if (driverType==video::EDT_COUNT)
183 return 1;
184
185 // create device and exit if creation failed
186
187 IrrlichtDevice * device = createDevice(driverType, core::dimension2d<u32>(640, 480));
188
189 if (device == 0)
190 return 1; // could not create selected driver.
191
192 /* The creation was successful, now we set the event receiver and
193 store pointers to the driver and to the gui environment. */
194
195 device->setWindowCaption(L"Irrlicht Engine - User Interface Demo");
196 device->setResizable(true);
197
198 video::IVideoDriver* driver = device->getVideoDriver();
199 IGUIEnvironment* env = device->getGUIEnvironment();
200
201 /*
202 To make the font a little bit nicer, we load an external font
203 and set it as the new default font in the skin.
204 To keep the standard font for tool tip text, we set it to
205 the built-in font.
206 */
207
208 IGUISkin* skin = env->getSkin();
209 IGUIFont* font = env->getFont("../../media/fonthaettenschweiler.bmp");
210 if (font)
211 skin->setFont(font);
212
213 skin->setFont(env->getBuiltInFont(), EGDF_TOOLTIP);
214
215 /*
216 We add three buttons. The first one closes the engine. The second
217 creates a window and the third opens a file open dialog. The third
218 parameter is the id of the button, with which we can easily identify
219 the button in the event receiver.
220 */
221
222 env->addButton(rect<s32>(10,240,110,240 + 32), 0, GUI_ID_QUIT_BUTTON,
223 L"Quit", L"Exits Program");
224 env->addButton(rect<s32>(10,280,110,280 + 32), 0, GUI_ID_NEW_WINDOW_BUTTON,
225 L"New Window", L"Launches a new Window");
226 env->addButton(rect<s32>(10,320,110,320 + 32), 0, GUI_ID_FILE_OPEN_BUTTON,
227 L"File Open", L"Opens a file");
228
229 /*
230 Now, we add a static text and a scrollbar, which modifies the
231 transparency of all gui elements. We set the maximum value of
232 the scrollbar to 255, because that's the maximal value for
233 a color value.
234 Then we create an other static text and a list box.
235 */
236
237 env->addStaticText(L"Transparent Control:", rect<s32>(150,20,350,40), true);
238 IGUIScrollBar* scrollbar = env->addScrollBar(true,
239 rect<s32>(150, 45, 350, 60), 0, GUI_ID_TRANSPARENCY_SCROLL_BAR);
240 scrollbar->setMax(255);
241 scrollbar->setPos(255);
242 setSkinTransparency( scrollbar->getPos(), env->getSkin());
243
244 // set scrollbar position to alpha value of an arbitrary element
245 scrollbar->setPos(env->getSkin()->getColor(EGDC_WINDOW).getAlpha());
246
247 env->addStaticText(L"Logging ListBox:", rect<s32>(50,110,250,130), true);
248 IGUIListBox * listbox = env->addListBox(rect<s32>(50, 140, 250, 210));
249 env->addEditBox(L"Editable Text", rect<s32>(350, 80, 550, 100));
250
251 // Store the appropriate data in a context structure.
252 SAppContext context;
253 context.device = device;
254 context.counter = 0;
255 context.listbox = listbox;
256
257 // Then create the event receiver, giving it that context structure.
258 MyEventReceiver receiver(context);
259
260 // And tell the device to use our custom event receiver.
261 device->setEventReceiver(&receiver);
262
263
264 /*
265 And at last, we create a nice Irrlicht Engine logo in the top left corner.
266 */
267 env->addImage(driver->getTexture("../../media/irrlichtlogo2.png"),
268 position2d<int>(10,10));
269
270
271 /*
272 That's all, we only have to draw everything.
273 */
274
275 while(device->run() && driver)
276 if (device->isWindowActive())
277 {
278 driver->beginScene(true, true, SColor(0,200,200,200));
279
280 env->drawAll();
281
282 driver->endScene();
283 }
284
285 device->drop();
286
287 return 0;
288}
289
290/*
291**/
diff --git a/src/others/irrlicht-1.8.1/examples/05.UserInterface/tutorial.html b/src/others/irrlicht-1.8.1/examples/05.UserInterface/tutorial.html
new file mode 100644
index 0000000..3f3614f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/05.UserInterface/tutorial.html
@@ -0,0 +1,225 @@
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="center"></div>
15 <div align="left"><b><font color="#FFFFFF">Tutorial 5.User Interface</font></b></div>
16 </div>
17 </td>
18 </tr>
19 <tr bgcolor="#eeeeff">
20 <td height="90" colspan="2">
21 <div align="left">
22 <p>This tutorial shows how to use the built in User Interface of the Irrlicht
23 Engine. It will give a brief overview and show how to create and use
24 windows, buttons, scroll bars, static texts and list boxes. </p>
25 <p>The program which is described here will look like this:</p>
26 <p align="center"><img src="../../media/005shot.jpg" width="259" height="204"><br>
27 </p>
28 </div>
29 </td>
30 </tr>
31</table>
32<br>
33<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
34 <tr>
35 <td bgcolor="#666699"> <div align="center"><b><font color="#FFFFFF"></font></b></div>
36 <b><font color="#FFFFFF">Lets start!</font></b></td>
37 </tr>
38 <tr>
39 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
40 <p>As always, we include the header files (conio and curses for getting
41 user input from the console), and use the irrlicht namespaces. We also
42 store a pointer to the Irrlicht device, a counter variable for changing
43 the creation position of a window, and a pointer to a listbox.</p>
44 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
45 <tr>
46 <td> <pre>#include &lt;irrlicht.h&gt;
47#include &lt;iostream&gt;<br>
48using namespace irr;</pre>
49 <pre>using namespace core;
50using namespace scene;
51using namespace video;
52using namespace io;
53using namespace gui;</pre>
54 <pre>#pragma comment(lib, &quot;Irrlicht.lib&quot;)</pre>
55 <pre>IrrlichtDevice *device = 0;
56s32 cnt = 0;
57IGUIListBox* listbox = 0;
58</pre></td>
59 </tr>
60 </table>
61 <p>The Event Receiver is not only capable of getting keyboard and mouse
62 input events, but also events of the graphical user interface (gui).
63 There are events for almost everything: Button click, Listbox selection
64 change, events that say that a element was hovered and so on. To be
65 able to react to some of these events, we create <br>
66 an event receiver. We only react to gui events, and if it's such an
67 event, we get the id of the caller (the gui element which caused the
68 event) and get the pointer to the gui environment. </p>
69 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
70 <tr>
71 <td> <pre>class MyEventReceiver : public IEventReceiver<br>{<br>public:<br> virtual bool OnEvent(const SEvent&amp; event)<br> {<br> if (event.EventType == EET_GUI_EVENT)<br> {<br> s32 id = event.GUIEvent.Caller-&gt;getID();<br> IGUIEnvironment* env = device-&gt;getGUIEnvironment();</pre>
72 <pre> switch(event.GUIEvent.EventType)
73 {</pre>
74 </td>
75 </tr>
76 </table>
77 <p> If a scrollbar changed its scroll position, and it is 'our' scrollbar
78 (the one with id 104), then we change the <br>
79 transparency of all gui elements. This is a very easy task: There is
80 a skin object, in which all color settings are stored. We simply go
81 through all colors stored in the skin and change their alpha value.
82 </p>
83 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
84 <tr>
85 <td height="80"> <pre>case EGET_SCROLL_BAR_CHANGED:<br> if (id == 104)<br> {<br> s32 pos = ((IGUIScrollBar*)event.GUIEvent.Caller)-&gt;getPos();<br> <br> for (s32 i=0; i&lt;EGDC_COUNT ; ++i)<br> {<br> SColor col = env-&gt;getSkin()-&gt;getColor((EGUI_DEFAULT_COLOR)i);<br> col.setAlpha(pos);<br> env-&gt;getSkin()-&gt;setColor((EGUI_DEFAULT_COLOR)i, col);<br> }<br> }<br>break;</pre></td>
86 </tr>
87 </table>
88 <p>If a button was clicked, it could be one of 'our' three buttons. If
89 it is the first, we shut down the engine.<br>
90 If it is the second, we create a little window with some text on it.
91 We also add a string to the list box to log<br>
92 what happened. And if it is the third button, we create a file open
93 dialog, and add also this as string to the list box.<br>
94 That's all for the event receiver.</p>
95 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
96 <tr>
97 <td>
98 <pre> case EGET_BUTTON_CLICKED:
99 if (id == 101)
100 {
101 device-&gt;closeDevice();
102 return true;
103 }</pre>
104 <pre> if (id == 102)
105 {
106 listbox-&gt;addItem(L&quot;Window created&quot;);
107 cnt += 30;
108 if (cnt &gt; 200)
109 cnt = 0;</pre>
110 <pre> IGUIWindow* window = env-&gt;addWindow(
111 rect&lt;s32&gt;(100 + cnt, 100 + cnt, 300 + cnt, 200 + cnt), <br> false, // modal?
112 L&quot;Test window&quot;);</pre>
113 <pre> env-&gt;addStaticText(L&quot;Please close me&quot;,
114 rect&lt;s32&gt;(35,35,140,50),
115 true, // border?,
116 false, // wordwrap?
117 window);
118
119 return true;
120 }</pre>
121 <pre> if (id == 103)
122 {
123 listbox-&gt;addItem(L&quot;File open&quot;);
124 env-&gt;addFileOpenDialog(L&quot;Please choose a file.&quot;);
125 return true;
126 }</pre>
127 <pre> break;
128 }
129 }
130 return false;
131 }
132 };</pre>
133 </td>
134 </tr>
135 </table>
136 <p>Ok, now for the more interesting part. First, create the Irrlicht device.
137 As in some examples before, we ask the user which driver he wants to
138 use for this example:</p>
139 </div>
140 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
141 <tr>
142 <td> <pre>int main()
143{
144 // ask user for driver
145 video::E_DRIVER_TYPE driverType;
146
147
148 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>
149 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> }
150
151 // create device and exit if creation failed
152 device = createDevice(driverType, core::dimension2d&lt;s32&gt;(640, 480));<br>
153 if (device == 0)
154 return 1;
155</pre>
156 </td>
157 </tr>
158 </table>
159 <p>The creation was successful, now we set the event receiver and store
160 pointers to the driver and to the gui environment. </p>
161 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
162 <tr>
163 <td><pre>MyEventReceiver receiver;
164device-&gt;setEventReceiver(&amp;receiver);
165device-&gt;setWindowCaption(L&quot;Irrlicht Engine - User Inferface Demo&quot;);</pre>
166 <pre>video::IVideoDriver* driver = device-&gt;getVideoDriver();
167IGUIEnvironment* env = device-&gt;getGUIEnvironment();
168</pre>
169 </td>
170 </tr>
171 </table>
172 <p>We add three buttons. The first one closes the engine. The second creates
173 a window and the third opens a file open dialog. The third parameter is
174 the id of the button, with which we can easily identify the button in
175 the event receiver.</p>
176 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
177 <tr>
178 <td><pre>env-&gt;addButton(rect&lt;s32&gt;(10,240,100,270), 0, 101, L&quot;Quit&quot;);<br>env-&gt;addButton(rect&lt;s32&gt;(10,280,100,320), 0, 102, L&quot;New Window&quot;);<br>env-&gt;addButton(rect&lt;s32&gt;(10,330,100,370), 0, 103, L&quot;File Open&quot;);</pre></td>
179 </tr>
180 </table>
181 <p> Now, we add a static text and a scrollbar, which modifies the transparency
182 of all gui elements. We set the maximum value of the scrollbar to 255,
183 because that's the maximal value for a color value.<br>
184 Then we create an other static text and a list box.</p>
185 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
186 <tr>
187 <td><pre>env-&gt;addStaticText(L&quot;Transparent Control:&quot;, rect&lt;s32&gt;(150,20,350,40), true);<br>IGUIScrollBar* scrollbar = env-&gt;addScrollBar(true,
188 rect&lt;s32&gt;(150, 45, 350, 60), 0, 104);<br>scrollbar-&gt;setMax(255);</pre>
189 <pre>env-&gt;addStaticText(L&quot;Logging ListBox:&quot;, rect&lt;s32&gt;(50,110,250,130), true);
190listbox = env-&gt;addListBox(rect&lt;s32&gt;(50, 140, 250, 210));</pre></td>
191 </tr>
192 </table>
193 <br>
194 To make the font a little bit nicer, we load an external font and set it
195 as new font in the skin. An at last, we create a nice Irrlicht Engine logo
196 in the top left corner. <br>
197 <br>
198 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
199 <tr>
200 <td> <pre>IGUISkin* skin = env-&gt;getSkin();<br>IGUIFont* font = env-&gt;getFont(&quot;../../media/fonthaettenschweiler.bmp&quot;);<br>if (font)<br> skin-&gt;setFont(font);</pre>
201 <pre>IGUIImage* img = env-&gt;addImage(<br> driver-&gt;getTexture(&quot;../../media/irrlichtlogoalpha.tga&quot;),<br> position2d&lt;int&gt;(10,10));</pre></td>
202 </tr>
203 </table>
204 <p>That's all, we only have to draw everything.</p>
205 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
206 <tr>
207 <td>
208 <pre> while(device-&gt;run() &amp;&amp; driver)<br> if (device-&gt;isWindowActive()) <br> {<br> driver-&gt;beginScene(true, true, SColor(0,122,65,171));
209 env-&gt;drawAll();
210 driver-&gt;endScene();
211 }
212
213 device-&gt;drop();</pre>
214 <pre> return 0;
215}</pre>
216 </td>
217 </tr>
218 </table>
219
220 </td>
221 </tr>
222</table>
223<p>&nbsp;</p>
224 </body>
225</html>
diff --git a/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.cbp b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.cbp
new file mode 100644
index 0000000..0433c93
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.cbp
@@ -0,0 +1,55 @@
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 06 2D Graphics" />
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\2DGraphics" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\2DGraphics" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.dev b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.dev
new file mode 100644
index 0000000..93694f1
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 06 2D Graphics
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=06.2DGraphics.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/06.2DGraphics/2DGraphics.vcproj b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.vcproj
new file mode 100644
index 0000000..b21c351
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics.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="06.2DGraphics"
6 ProjectGUID="{E71B6F18-10DC-4101-A541-F6D33F71B2BD}"
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/2DGraphics.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\06.2DGraphics.exe"
44 LinkIncremental="0"
45 SuppressStartupBanner="TRUE"
46 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
47 ProgramDatabaseFile=".\Release/2DGraphics.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Release/2DGraphics.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/2DGraphics.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\06.2DGraphics.exe"
104 LinkIncremental="0"
105 SuppressStartupBanner="TRUE"
106 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
107 GenerateDebugInformation="TRUE"
108 ProgramDatabaseFile=".\Debug/2DGraphics.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Debug/2DGraphics.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/06.2DGraphics/2DGraphics_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc10.vcxproj
new file mode 100644
index 0000000..b0f184e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_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>06.2DGraphics</ProjectName>
23 <ProjectGuid>{E71B6F18-10DC-4101-A541-F6D33F71B2BD}</ProjectGuid>
24 <RootNamespace>2DGraphics</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/2DGraphics.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\06.2DGraphics.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/2DGraphics.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\06.2DGraphics.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/2DGraphics.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\06.2DGraphics.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/2DGraphics.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\06.2DGraphics.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/06.2DGraphics/2DGraphics_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc11.vcxproj
new file mode 100644
index 0000000..66e7aa0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_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>06.2DGraphics</ProjectName>
23 <ProjectGuid>{E71B6F18-10DC-4101-A541-F6D33F71B2BD}</ProjectGuid>
24 <RootNamespace>2DGraphics</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/2DGraphics.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\06.2DGraphics.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/2DGraphics.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\06.2DGraphics.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/2DGraphics.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\06.2DGraphics.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/2DGraphics.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\06.2DGraphics.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/06.2DGraphics/2DGraphics_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc8.vcproj
new file mode 100644
index 0000000..8a10914
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_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="06.2DGraphics_vc8"
6 ProjectGUID="{E71B6F18-10DC-4101-A541-F6D33F71B2BD}"
7 RootNamespace="2DGraphics_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/2DGraphics.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/2DGraphics.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\06.2DGraphics.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 ProgramDatabaseFile=".\Release/2DGraphics.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/2DGraphics.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/2DGraphics.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\06.2DGraphics.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/2DGraphics.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/06.2DGraphics/2DGraphics_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_vc9.vcproj
new file mode 100644
index 0000000..e78f8a0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/2DGraphics_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="06.2DGraphics_vc9"
6 ProjectGUID="{E71B6F18-10DC-4101-A541-F6D33F71B2BD}"
7 RootNamespace="2DGraphics_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/2DGraphics.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/2DGraphics.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\06.2DGraphics.exe"
77 LinkIncremental="0"
78 SuppressStartupBanner="true"
79 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
80 ProgramDatabaseFile=".\Release/2DGraphics.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/2DGraphics.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/2DGraphics.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\06.2DGraphics.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/2DGraphics.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/06.2DGraphics/Makefile b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/Makefile
new file mode 100644
index 0000000..6e62b2b
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/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 = 06.2DGraphics
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/06.2DGraphics/main.cpp b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/main.cpp
new file mode 100644
index 0000000..40e311a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/main.cpp
@@ -0,0 +1,166 @@
1/** Example 006 2D Graphics
2
3This Tutorial shows how to do 2d graphics with the Irrlicht Engine.
4It shows how to draw images, keycolor based sprites,
5transparent rectangles, and different fonts. You may consider
6this useful if you want to make a 2d game with the engine, or if
7you want to draw a cool interface or head up display for your 3d game.
8
9As always, I include the header files, use the irr namespace,
10and tell the linker to link with the .lib file.
11*/
12#include <irrlicht.h>
13#include "driverChoice.h"
14
15using namespace irr;
16
17#ifdef _MSC_VER
18#pragma comment(lib, "Irrlicht.lib")
19#endif
20
21/*
22At first, we let the user select the driver type, then start up the engine, set
23a caption, and get a pointer to the video driver.
24*/
25int main()
26{
27 // ask user for driver
28 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
29 if (driverType==video::EDT_COUNT)
30 return 1;
31
32 // create device
33
34 IrrlichtDevice *device = createDevice(driverType,
35 core::dimension2d<u32>(512, 384));
36
37 if (device == 0)
38 return 1; // could not create selected driver.
39
40 device->setWindowCaption(L"Irrlicht Engine - 2D Graphics Demo");
41
42 video::IVideoDriver* driver = device->getVideoDriver();
43
44 /*
45 All 2d graphics in this example are put together into one texture,
46 2ddemo.png. Because we want to draw colorkey based sprites, we need to
47 load this texture and tell the engine, which part of it should be
48 transparent based on a colorkey.
49
50 In this example, we don't tell it the color directly, we just say "Hey
51 Irrlicht Engine, you'll find the color I want at position (0,0) on the
52 texture.". Instead, it would be also possible to call
53 driver->makeColorKeyTexture(images, video::SColor(0,0,0,0)), to make
54 e.g. all black pixels transparent. Please note that
55 makeColorKeyTexture just creates an alpha channel based on the color.
56 */
57 video::ITexture* images = driver->getTexture("../../media/2ddemo.png");
58 driver->makeColorKeyTexture(images, core::position2d<s32>(0,0));
59
60 /*
61 To be able to draw some text with two different fonts, we first load
62 them. Ok, we load just one. As the first font we just use the default
63 font which is built into the engine. Also, we define two rectangles
64 which specify the position of the images of the red imps (little flying
65 creatures) in the texture.
66 */
67 gui::IGUIFont* font = device->getGUIEnvironment()->getBuiltInFont();
68 gui::IGUIFont* font2 =
69 device->getGUIEnvironment()->getFont("../../media/fonthaettenschweiler.bmp");
70
71 core::rect<s32> imp1(349,15,385,78);
72 core::rect<s32> imp2(387,15,423,78);
73
74 /*
75 Prepare a nicely filtering 2d render mode for special cases.
76 */
77 driver->getMaterial2D().TextureLayer[0].BilinearFilter=true;
78 driver->getMaterial2D().AntiAliasing=video::EAAM_FULL_BASIC;
79
80 /*
81 Everything is prepared, now we can draw everything in the draw loop,
82 between the begin scene and end scene calls. In this example, we are
83 just doing 2d graphics, but it would be no problem to mix them with 3d
84 graphics. Just try it out, and draw some 3d vertices or set up a scene
85 with the scene manager and draw it.
86 */
87 while(device->run() && driver)
88 {
89 if (device->isWindowActive())
90 {
91 u32 time = device->getTimer()->getTime();
92
93 driver->beginScene(true, true, video::SColor(255,120,102,136));
94
95 /*
96 First, we draw 3 sprites, using the alpha channel we
97 created with makeColorKeyTexture. The last parameter
98 specifies that the drawing method should use this alpha
99 channel. The last-but-one parameter specifies a
100 color, with which the sprite should be colored.
101 (255,255,255,255) is full white, so the sprite will
102 look like the original. The third sprite is drawn
103 with the red channel modulated based on the time.
104 */
105
106 // draw fire & dragons background world
107 driver->draw2DImage(images, core::position2d<s32>(50,50),
108 core::rect<s32>(0,0,342,224), 0,
109 video::SColor(255,255,255,255), true);
110
111 // draw flying imp
112 driver->draw2DImage(images, core::position2d<s32>(164,125),
113 (time/500 % 2) ? imp1 : imp2, 0,
114 video::SColor(255,255,255,255), true);
115
116 // draw second flying imp with colorcylce
117 driver->draw2DImage(images, core::position2d<s32>(270,105),
118 (time/500 % 2) ? imp1 : imp2, 0,
119 video::SColor(255,(time) % 255,255,255), true);
120
121 /*
122 Drawing text is really simple. The code should be self
123 explanatory.
124 */
125
126 // draw some text
127 if (font)
128 font->draw(L"This demo shows that Irrlicht is also capable of drawing 2D graphics.",
129 core::rect<s32>(130,10,300,50),
130 video::SColor(255,255,255,255));
131
132 // draw some other text
133 if (font2)
134 font2->draw(L"Also mixing with 3d graphics is possible.",
135 core::rect<s32>(130,20,300,60),
136 video::SColor(255,time % 255,time % 255,255));
137
138 /*
139 Next, we draw the Irrlicht Engine logo (without
140 using a color or an alpha channel). Since we slightly scale
141 the image we use the prepared filter mode.
142 */
143 driver->enableMaterial2D();
144 driver->draw2DImage(images, core::rect<s32>(10,10,108,48),
145 core::rect<s32>(354,87,442,118));
146 driver->enableMaterial2D(false);
147
148 /*
149 Finally draw a half-transparent rect under the mouse cursor.
150 */
151 core::position2d<s32> m = device->getCursorControl()->getPosition();
152 driver->draw2DRectangle(video::SColor(100,255,255,255),
153 core::rect<s32>(m.X-20, m.Y-20, m.X+20, m.Y+20));
154
155 driver->endScene();
156 }
157 }
158
159 device->drop();
160
161 return 0;
162}
163
164/*
165That's all. I hope it was not too difficult.
166**/
diff --git a/src/others/irrlicht-1.8.1/examples/06.2DGraphics/tutorial.html b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/tutorial.html
new file mode 100644
index 0000000..ea6291a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/06.2DGraphics/tutorial.html
@@ -0,0 +1,163 @@
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="center"></div>
15 <div align="left"><b><font color="#FFFFFF">Tutorial 6. 2D Graphics</font></b></div>
16 </div>
17 </td>
18 </tr>
19 <tr bgcolor="#eeeeff">
20 <td height="90" colspan="2">
21 <div align="left">
22 <p>This Tutorial shows how to do 2d graphics with the Irrlicht Engine.
23 It shows how to draw images, keycolor based sprites, transparent rectangles
24 and different fonts. You will may consider this useful if you want to
25 make a 2d game with the engine, or if you want to draw a cool interface
26 or head up display for your 3d game.</p>
27 <p>The program which is described here will look like this:</p>
28 <p align="center"><img src="../../media/006shot.jpg" width="259" height="204"><br>
29 </p>
30 </div>
31 </td>
32 </tr>
33</table>
34<br>
35<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
36 <tr>
37 <td bgcolor="#666699"> <div align="center"><b><font color="#FFFFFF"></font></b></div>
38 <b><font color="#FFFFFF">Lets start!</font></b></td>
39 </tr>
40 <tr>
41 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
42 <p>As always, I include the header files, use the irr namespace, and tell
43 the linker to link with the .lib file. </p>
44 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
45 <tr>
46 <td> <pre>#include &lt;irrlicht.h&gt;<br>#include &lt;iostream&gt;<br><br>using namespace irr;</pre>
47 <pre>#pragma comment(lib, &quot;Irrlicht.lib&quot;)
48 </pre></td>
49 </tr>
50 </table>
51 <p>At first, we let the user select the driver type, then start up the
52 engine, set a caption, and get a pointer to the video driver.</p>
53 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
54 <tr>
55 <td> <pre>int main()<br>{<br> // let user select driver type<br> video::E_DRIVER_TYPE driverType;<br><br> 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 0;<br> } <br><br> // create device</pre>
56 <pre> IrrlichtDevice *device = createDevice(driverType,
57 core::dimension2d&lt;s32&gt;(512, 384));</pre>
58 <pre> if (device == 0)
59 return 1;
60 <br> device-&gt;setWindowCaption(L&quot;Irrlicht Engine - 2D Graphics Demo&quot;);</pre>
61 <pre> video::IVideoDriver* driver = device-&gt;getVideoDriver();</pre></td>
62 </tr>
63 </table>
64 <p> All 2d graphics in this example are put together into one texture,
65 2ddemo.bmp. Because we want to draw colorkey based sprites, we need
66 to load this texture and tell the engine, which part of it should be
67 transparent based on a colorkey. In this example, we don't tell it the
68 color directly, we just say &quot;Hey Irrlicht Engine, you'll find the
69 color I want at position (0,0) on the texture.&quot;. Instead, it would
70 be also possible to call <font face="Courier New, Courier, mono">driver-&gt;makeColorKeyTexture(images,
71 video::SColor(0,0,0,0))</font>, to make e.g. all black pixels transparent.
72 Please note, that makeColorKeyTexture just creates an alpha channel
73 based on the color. </p>
74 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
75 <tr>
76 <td> <pre>video::ITexture* images = driver-&gt;getTexture(&quot;../../media/2ddemo.bmp&quot;);<br>driver-&gt;makeColorKeyTexture(images, core::position2d&lt;s32&gt;(0,0));</pre></td>
77 </tr>
78 </table>
79 <p>To be able to draw some text with two different fonts, we load them.
80 Ok, we load just one, as first font we just use the default font which
81 is built into the engine.<br>
82 Also, we define two rectangles, which specify the position of the images
83 of the red imps (little flying creatures) in the texture.</p>
84 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
85 <tr>
86 <td> <pre>gui::IGUIFont* font = device-&gt;getGUIEnvironment()-&gt;getBuiltInFont();<br>gui::IGUIFont* font2 = device-&gt;getGUIEnvironment()-&gt;getFont(
87 &quot;../../media/fonthaettenschweiler.bmp&quot;);</pre>
88 <pre>core::rect&lt;s32&gt; imp1(349,15,385,78);
89core::rect&lt;s32&gt; imp2(387,15,423,78);</pre></td>
90 </tr>
91 </table>
92 <p>Everything is prepared, now we can draw everything in the draw loop,
93 between the begin scene and end scene calls. In this example, we are
94 just doing 2d graphics, but it would be no problem to mix them with
95 3d graphics. Just try it out, and draw some 3d vertices or set up a
96 scene with the scene manager and draw it.</p>
97 </div>
98 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
99 <tr>
100 <td> <pre>while(device-&gt;run() &amp;&amp; driver)<br>{<br> if (device-&gt;isWindowActive())<br> {<br> u32 time = device-&gt;getTimer()-&gt;getTime();<br> driver-&gt;beginScene(true, true, video::SColor(0,120,102,136));
101</pre></td>
102 </tr>
103 </table>
104 <p> First, we draw 3 sprites, using the alpha channel we created with makeColorKeyTexture.
105 The last parameter specifiys that the drawing method should use thiw alpha
106 channel. The parameter before the last one specifies a color, with wich
107 the sprite should be colored. (255,255,255,255) is full white, so the
108 sprite will look like the original. The third sprite is drawed colored
109 based on the time. </p>
110 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
111 <tr>
112 <td><pre>// draw fire &amp; dragons background world<br>driver-&gt;draw2DImage(images, core::position2d&lt;s32&gt;(50,50),<br> core::rect&lt;s32&gt;(0,0,342,224), 0, <br> video::SColor(255,255,255,255), true);</pre>
113 <pre>// draw flying imp
114driver-&gt;draw2DImage(images, core::position2d&lt;s32&gt;(164,125),
115 (time/500 % 2) ? imp1 : imp2, 0,
116 video::SColor(255,255,255,255), true);</pre>
117 <pre>// draw second flying imp with colorcylce
118driver-&gt;draw2DImage(images, core::position2d&lt;s32&gt;(270,105),
119 (time/500 % 2) ? imp1 : imp2, 0,
120 video::SColor(255,(time) % 255,255,255), true);</pre></td>
121 </tr>
122 </table>
123 <p> Drawing text is really simple. The code should be self explanatory.</p>
124 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
125 <tr>
126 <td><pre>// draw some text<br>if (font)<br> font-&gt;draw(L&quot;This is some text.&quot;,<br> core::rect&lt;s32&gt;(130,10,300,50),<br> video::SColor(255,255,255,255));</pre>
127 <pre>// draw some other text
128if (font2)
129 font2-&gt;draw(L&quot;This is some other text.&quot;,
130 core::rect&lt;s32&gt;(130,20,300,60),
131 video::SColor(255,time % 255,time % 255,255));</pre></td>
132 </tr>
133 </table>
134 <p>At last, we draw the Irrlicht Engine logo (without using a color or an
135 alpha channel) and a transparent 2d Rectangle at the position of the mouse
136 cursor.</p>
137 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
138 <tr>
139 <td> <pre> // draw logo<br> driver-&gt;draw2DImage(images, core::position2d&lt;s32&gt;(10,10),<br> core::rect&lt;s32&gt;(354,87,442,118));</pre>
140 <pre> // draw transparent rect under cursor
141 core::position2d&lt;s32&gt; m = device-&gt;getCursorControl()-&gt;getPosition();
142 driver-&gt;draw2DRectangle(video::SColor(100,255,255,255),
143 core::rect&lt;s32&gt;(m.X-20, m.Y-20, m.X+20, m.Y+20));</pre>
144 <pre> driver-&gt;endScene();
145 }
146}</pre></td>
147 </tr>
148 </table>
149 <p>That's all, it was not really difficult, I hope.</p>
150 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
151 <tr>
152 <td> <pre> device-&gt;drop();
153 return 0;
154}</pre>
155 </td>
156 </tr>
157 </table>
158 <p>&nbsp;</p></td>
159 </tr>
160</table>
161<p>&nbsp;</p>
162 </body>
163</html>
diff --git a/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.cbp b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.cbp
new file mode 100644
index 0000000..0d7f828
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.cbp
@@ -0,0 +1,55 @@
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 07 Collision" />
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\Collision" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\Collision" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.dev b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.dev
new file mode 100644
index 0000000..c13a041
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 07 Collision
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=07.Collision.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/07.Collision/Collision.vcproj b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.vcproj
new file mode 100644
index 0000000..a4e4b07
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision.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="07.Collision"
6 ProjectGUID="{EB92287F-CBA1-4FF9-801E-89091F0B6D10}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/Collision.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\07.Collision.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/Collision.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/Collision.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/Collision.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\07.Collision.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/Collision.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/Collision.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc10.vcxproj
new file mode 100644
index 0000000..03a94c8
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_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>07.Collision</ProjectName>
23 <ProjectGuid>{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}</ProjectGuid>
24 <RootNamespace>Collision</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/Collision.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\07.Collision.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/Collision.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\07.Collision.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/Collision.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\07.Collision.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/Collision.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\07.Collision.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/07.Collision/Collision_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc11.vcxproj
new file mode 100644
index 0000000..0db4b42
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_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>07.Collision</ProjectName>
23 <ProjectGuid>{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}</ProjectGuid>
24 <RootNamespace>Collision</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/Collision.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\07.Collision.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/Collision.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\07.Collision.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/Collision.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\07.Collision.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/Collision.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\07.Collision.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/07.Collision/Collision_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc8.vcproj
new file mode 100644
index 0000000..4a2b6c1
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_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="07.Collision_vc8"
6 ProjectGUID="{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}"
7 RootNamespace="Collision_vc8"
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 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=".\Debug/Collision.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/Collision.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\07.Collision.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/Collision.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Collision.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Collision.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\07.Collision.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Collision.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_vc9.vcproj
new file mode 100644
index 0000000..3cca93d
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/Collision_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="07.Collision_vc9"
6 ProjectGUID="{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}"
7 RootNamespace="Collision_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/Collision.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/Collision.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\07.Collision.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/Collision.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Collision.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Collision.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\07.Collision.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Collision.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/07.Collision/Makefile b/src/others/irrlicht-1.8.1/examples/07.Collision/Makefile
new file mode 100644
index 0000000..6698725
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/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 = 07.Collision
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/07.Collision/main.cpp b/src/others/irrlicht-1.8.1/examples/07.Collision/main.cpp
new file mode 100644
index 0000000..8387c49
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/main.cpp
@@ -0,0 +1,330 @@
1/** Example 007 Collision
2
3We will describe 2 methods: Automatic collision detection for moving through
43d worlds with stair climbing and sliding, and manual scene node and triangle
5picking using a ray. In this case, we will use a ray coming out from the
6camera, but you can use any ray.
7
8To start, we take the program from tutorial 2, which loads and displays a
9quake 3 level. We will use the level to walk in it and to pick triangles from.
10In addition we'll place 3 animated models into it for triangle picking. The
11following code starts up the engine and loads the level, as per tutorial 2.
12*/
13#include <irrlicht.h>
14#include "driverChoice.h"
15
16using namespace irr;
17
18#ifdef _MSC_VER
19#pragma comment(lib, "Irrlicht.lib")
20#endif
21
22enum
23{
24 // I use this ISceneNode ID to indicate a scene node that is
25 // not pickable by getSceneNodeAndCollisionPointFromRay()
26 ID_IsNotPickable = 0,
27
28 // I use this flag in ISceneNode IDs to indicate that the
29 // scene node can be picked by ray selection.
30 IDFlag_IsPickable = 1 << 0,
31
32 // I use this flag in ISceneNode IDs to indicate that the
33 // scene node can be highlighted. In this example, the
34 // homonids can be highlighted, but the level mesh can't.
35 IDFlag_IsHighlightable = 1 << 1
36};
37
38int main()
39{
40 // ask user for driver
41 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
42 if (driverType==video::EDT_COUNT)
43 return 1;
44
45 // create device
46
47 IrrlichtDevice *device =
48 createDevice(driverType, core::dimension2d<u32>(640, 480), 16, false);
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 device->getFileSystem()->addFileArchive("../../media/map-20kdm2.pk3");
57
58 scene::IAnimatedMesh* q3levelmesh = smgr->getMesh("20kdm2.bsp");
59 scene::IMeshSceneNode* q3node = 0;
60
61 // The Quake mesh is pickable, but doesn't get highlighted.
62 if (q3levelmesh)
63 q3node = smgr->addOctreeSceneNode(q3levelmesh->getMesh(0), 0, IDFlag_IsPickable);
64
65 /*
66 So far so good, we've loaded the quake 3 level like in tutorial 2. Now,
67 here comes something different: We create a triangle selector. A
68 triangle selector is a class which can fetch the triangles from scene
69 nodes for doing different things with them, for example collision
70 detection. There are different triangle selectors, and all can be
71 created with the ISceneManager. In this example, we create an
72 OctreeTriangleSelector, which optimizes the triangle output a little
73 bit by reducing it like an octree. This is very useful for huge meshes
74 like quake 3 levels. After we created the triangle selector, we attach
75 it to the q3node. This is not necessary, but in this way, we do not
76 need to care for the selector, for example dropping it after we do not
77 need it anymore.
78 */
79
80 scene::ITriangleSelector* selector = 0;
81
82 if (q3node)
83 {
84 q3node->setPosition(core::vector3df(-1350,-130,-1400));
85
86 selector = smgr->createOctreeTriangleSelector(
87 q3node->getMesh(), q3node, 128);
88 q3node->setTriangleSelector(selector);
89 // We're not done with this selector yet, so don't drop it.
90 }
91
92
93 /*
94 We add a first person shooter camera to the scene so that we can see and
95 move in the quake 3 level like in tutorial 2. But this, time, we add a
96 special animator to the camera: A Collision Response animator. This
97 animator modifies the scene node to which it is attached to in order to
98 prevent it moving through walls, and to add gravity to it. The
99 only thing we have to tell the animator is how the world looks like,
100 how big the scene node is, how much gravity to apply and so on. After the
101 collision response animator is attached to the camera, we do not have to do
102 anything more for collision detection, anything is done automatically.
103 The rest of the collision detection code below is for picking. And please
104 note another cool feature: The collision response animator can be
105 attached also to all other scene nodes, not only to cameras. And it can
106 be mixed with other scene node animators. In this way, collision
107 detection and response in the Irrlicht engine is really easy.
108
109 Now we'll take a closer look on the parameters of
110 createCollisionResponseAnimator(). The first parameter is the
111 TriangleSelector, which specifies how the world, against collision
112 detection is done looks like. The second parameter is the scene node,
113 which is the object, which is affected by collision detection, in our
114 case it is the camera. The third defines how big the object is, it is
115 the radius of an ellipsoid. Try it out and change the radius to smaller
116 values, the camera will be able to move closer to walls after this. The
117 next parameter is the direction and speed of gravity. We'll set it to
118 (0, -10, 0), which approximates to realistic gravity, assuming that our
119 units are metres. You could set it to (0,0,0) to disable gravity. And the
120 last value is just a translation: Without this, the ellipsoid with which
121 collision detection is done would be around the camera, and the camera would
122 be in the middle of the ellipsoid. But as human beings, we are used to have our
123 eyes on top of the body, with which we collide with our world, not in
124 the middle of it. So we place the scene node 50 units over the center
125 of the ellipsoid with this parameter. And that's it, collision
126 detection works now.
127 */
128
129 // Set a jump speed of 3 units per second, which gives a fairly realistic jump
130 // when used with the gravity of (0, -10, 0) in the collision response animator.
131 scene::ICameraSceneNode* camera =
132 smgr->addCameraSceneNodeFPS(0, 100.0f, .3f, ID_IsNotPickable, 0, 0, true, 3.f);
133 camera->setPosition(core::vector3df(50,50,-60));
134 camera->setTarget(core::vector3df(-70,30,-60));
135
136 if (selector)
137 {
138 scene::ISceneNodeAnimator* anim = smgr->createCollisionResponseAnimator(
139 selector, camera, core::vector3df(30,50,30),
140 core::vector3df(0,-10,0), core::vector3df(0,30,0));
141 selector->drop(); // As soon as we're done with the selector, drop it.
142 camera->addAnimator(anim);
143 anim->drop(); // And likewise, drop the animator when we're done referring to it.
144 }
145
146 // Now I create three animated characters which we can pick, a dynamic light for
147 // lighting them, and a billboard for drawing where we found an intersection.
148
149 // First, let's get rid of the mouse cursor. We'll use a billboard to show
150 // what we're looking at.
151 device->getCursorControl()->setVisible(false);
152
153 // Add the billboard.
154 scene::IBillboardSceneNode * bill = smgr->addBillboardSceneNode();
155 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR );
156 bill->setMaterialTexture(0, driver->getTexture("../../media/particle.bmp"));
157 bill->setMaterialFlag(video::EMF_LIGHTING, false);
158 bill->setMaterialFlag(video::EMF_ZBUFFER, false);
159 bill->setSize(core::dimension2d<f32>(20.0f, 20.0f));
160 bill->setID(ID_IsNotPickable); // This ensures that we don't accidentally ray-pick it
161
162 /* Add 3 animated hominids, which we can pick using a ray-triangle intersection.
163 They all animate quite slowly, to make it easier to see that accurate triangle
164 selection is being performed. */
165 scene::IAnimatedMeshSceneNode* node = 0;
166
167 video::SMaterial material;
168
169 // Add an MD2 node, which uses vertex-based animation.
170 node = smgr->addAnimatedMeshSceneNode(smgr->getMesh("../../media/faerie.md2"),
171 0, IDFlag_IsPickable | IDFlag_IsHighlightable);
172 node->setPosition(core::vector3df(-90,-15,-140)); // Put its feet on the floor.
173 node->setScale(core::vector3df(1.6f)); // Make it appear realistically scaled
174 node->setMD2Animation(scene::EMAT_POINT);
175 node->setAnimationSpeed(20.f);
176 material.setTexture(0, driver->getTexture("../../media/faerie2.bmp"));
177 material.Lighting = true;
178 material.NormalizeNormals = true;
179 node->getMaterial(0) = material;
180
181 // Now create a triangle selector for it. The selector will know that it
182 // is associated with an animated node, and will update itself as necessary.
183 selector = smgr->createTriangleSelector(node);
184 node->setTriangleSelector(selector);
185 selector->drop(); // We're done with this selector, so drop it now.
186
187 // And this B3D file uses skinned skeletal animation.
188 node = smgr->addAnimatedMeshSceneNode(smgr->getMesh("../../media/ninja.b3d"),
189 0, IDFlag_IsPickable | IDFlag_IsHighlightable);
190 node->setScale(core::vector3df(10));
191 node->setPosition(core::vector3df(-75,-66,-80));
192 node->setRotation(core::vector3df(0,90,0));
193 node->setAnimationSpeed(8.f);
194 node->getMaterial(0).NormalizeNormals = true;
195 node->getMaterial(0).Lighting = true;
196 // Just do the same as we did above.
197 selector = smgr->createTriangleSelector(node);
198 node->setTriangleSelector(selector);
199 selector->drop();
200
201 // This X files uses skeletal animation, but without skinning.
202 node = smgr->addAnimatedMeshSceneNode(smgr->getMesh("../../media/dwarf.x"),
203 0, IDFlag_IsPickable | IDFlag_IsHighlightable);
204 node->setPosition(core::vector3df(-70,-66,-30)); // Put its feet on the floor.
205 node->setRotation(core::vector3df(0,-90,0)); // And turn it towards the camera.
206 node->setAnimationSpeed(20.f);
207 node->getMaterial(0).Lighting = true;
208 selector = smgr->createTriangleSelector(node);
209 node->setTriangleSelector(selector);
210 selector->drop();
211
212
213 // And this mdl file uses skinned skeletal animation.
214 node = smgr->addAnimatedMeshSceneNode(smgr->getMesh("../../media/yodan.mdl"),
215 0, IDFlag_IsPickable | IDFlag_IsHighlightable);
216 node->setPosition(core::vector3df(-90,-25,20));
217 node->setScale(core::vector3df(0.8f));
218 node->getMaterial(0).Lighting = true;
219 node->setAnimationSpeed(20.f);
220
221 // Just do the same as we did above.
222 selector = smgr->createTriangleSelector(node);
223 node->setTriangleSelector(selector);
224 selector->drop();
225
226 material.setTexture(0, 0);
227 material.Lighting = false;
228
229 // Add a light, so that the unselected nodes aren't completely dark.
230 scene::ILightSceneNode * light = smgr->addLightSceneNode(0, core::vector3df(-60,100,400),
231 video::SColorf(1.0f,1.0f,1.0f,1.0f), 600.0f);
232 light->setID(ID_IsNotPickable); // Make it an invalid target for selection.
233
234 // Remember which scene node is highlighted
235 scene::ISceneNode* highlightedSceneNode = 0;
236 scene::ISceneCollisionManager* collMan = smgr->getSceneCollisionManager();
237 int lastFPS = -1;
238
239 // draw the selection triangle only as wireframe
240 material.Wireframe=true;
241
242 while(device->run())
243 if (device->isWindowActive())
244 {
245 driver->beginScene(true, true, 0);
246 smgr->drawAll();
247
248 // Unlight any currently highlighted scene node
249 if (highlightedSceneNode)
250 {
251 highlightedSceneNode->setMaterialFlag(video::EMF_LIGHTING, true);
252 highlightedSceneNode = 0;
253 }
254
255 // All intersections in this example are done with a ray cast out from the camera to
256 // a distance of 1000. You can easily modify this to check (e.g.) a bullet
257 // trajectory or a sword's position, or create a ray from a mouse click position using
258 // ISceneCollisionManager::getRayFromScreenCoordinates()
259 core::line3d<f32> ray;
260 ray.start = camera->getPosition();
261 ray.end = ray.start + (camera->getTarget() - ray.start).normalize() * 1000.0f;
262
263 // Tracks the current intersection point with the level or a mesh
264 core::vector3df intersection;
265 // Used to show with triangle has been hit
266 core::triangle3df hitTriangle;
267
268 // This call is all you need to perform ray/triangle collision on every scene node
269 // that has a triangle selector, including the Quake level mesh. It finds the nearest
270 // collision point/triangle, and returns the scene node containing that point.
271 // Irrlicht provides other types of selection, including ray/triangle selector,
272 // ray/box and ellipse/triangle selector, plus associated helpers.
273 // See the methods of ISceneCollisionManager
274 scene::ISceneNode * selectedSceneNode =
275 collMan->getSceneNodeAndCollisionPointFromRay(
276 ray,
277 intersection, // This will be the position of the collision
278 hitTriangle, // This will be the triangle hit in the collision
279 IDFlag_IsPickable, // This ensures that only nodes that we have
280 // set up to be pickable are considered
281 0); // Check the entire scene (this is actually the implicit default)
282
283 // If the ray hit anything, move the billboard to the collision position
284 // and draw the triangle that was hit.
285 if(selectedSceneNode)
286 {
287 bill->setPosition(intersection);
288
289 // We need to reset the transform before doing our own rendering.
290 driver->setTransform(video::ETS_WORLD, core::matrix4());
291 driver->setMaterial(material);
292 driver->draw3DTriangle(hitTriangle, video::SColor(0,255,0,0));
293
294 // We can check the flags for the scene node that was hit to see if it should be
295 // highlighted. The animated nodes can be highlighted, but not the Quake level mesh
296 if((selectedSceneNode->getID() & IDFlag_IsHighlightable) == IDFlag_IsHighlightable)
297 {
298 highlightedSceneNode = selectedSceneNode;
299
300 // Highlighting in this case means turning lighting OFF for this node,
301 // which means that it will be drawn with full brightness.
302 highlightedSceneNode->setMaterialFlag(video::EMF_LIGHTING, false);
303 }
304 }
305
306 // We're all done drawing, so end the scene.
307 driver->endScene();
308
309 int fps = driver->getFPS();
310
311 if (lastFPS != fps)
312 {
313 core::stringw str = L"Collision detection example - Irrlicht Engine [";
314 str += driver->getName();
315 str += "] FPS:";
316 str += fps;
317
318 device->setWindowCaption(str.c_str());
319 lastFPS = fps;
320 }
321 }
322
323 device->drop();
324
325 return 0;
326}
327
328/*
329**/
330
diff --git a/src/others/irrlicht-1.8.1/examples/07.Collision/tutorial.html b/src/others/irrlicht-1.8.1/examples/07.Collision/tutorial.html
new file mode 100644
index 0000000..c04fce9
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/07.Collision/tutorial.html
@@ -0,0 +1,308 @@
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="center"></div>
15 <div align="left"><b><font color="#FFFFFF">Tutorial 7. Collision detection
16 and response</font></b></div>
17 </div>
18 </td>
19 </tr>
20 <tr bgcolor="#eeeeff">
21 <td height="90" colspan="2">
22 <div align="left">
23 <p>In this tutorial, I will show how to collision detection with the Irrlicht
24 Engine. I will describe 3 methods: Automatic collision detection for
25 moving through 3d worlds with stair climbing and sliding, manual triangle
26 picking and manual scene node picking.</p>
27 <p>The program which is described here will look like this:</p>
28 <p align="center"><img src="../../media/007shot.jpg" width="259" height="204"><br>
29 </p>
30 </div>
31 </td>
32 </tr>
33</table>
34<br>
35<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
36 <tr>
37 <td bgcolor="#666699"> <div align="center"><b><font color="#FFFFFF"></font></b></div>
38 <b><font color="#FFFFFF">Lets start!</font></b></td>
39 </tr>
40 <tr>
41 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
42 <div align="left">
43 <p>To start, we take the program from tutorial 2, which loaded and displayed
44 a quake 3 level. We will use the level to walk in it and to pick triangles
45 from it. In addition we'll place 3 animated models into it for scene
46 node picking. The following code starts up the engine and loads a
47 quake 3 level. I will not explain it, because it should already be
48 known from tutorial 2.</p>
49 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
50 <tr>
51 <td> <pre><font size="2"><font color="#008000">#include &lt;irrlicht.h&gt;
52#include &lt;iostream&gt;<br>
53</font><b>using namespace </b>irr;
54
55<font color="#008000">#pragma comment(lib, &quot;Irrlicht.lib&quot;)
56
57</font><b>int </b>main()
58{
59<font color="#008000"> // let user select driver type</font>
60<br> video::E_DRIVER_TYPE driverType;<br><br> 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 0;<br> } <br>
61<font color="#008000"> // create device</font></font></pre>
62 <pre> IrrlichtDevice *device = createDevice(driverType,
63 core::dimension2d&lt;s32&gt;(640, 480), 16, false);<br>
64 if (device == 0)<br> return 1; // could not create selected driver.<br><br> video::IVideoDriver* driver = device-&gt;getVideoDriver();<br> scene::ISceneManager* smgr = device-&gt;getSceneManager();<br><br> <font size="2">device-&gt;getFileSystem()-&gt;addZipFileArchive<br> (<font color="#FF0000">&quot;../../media/map-20kdm2.pk3&quot;</font>);
65
66
67 scene::IAnimatedMesh* q3levelmesh = smgr-&gt;getMesh(<font color="#FF0000">&quot;20kdm2.bsp&quot;</font>);
68 scene::ISceneNode* q3node = <font color="#800080">0</font>;
69
70 <b>if </b>(q3levelmesh)
71 q3node = smgr-&gt;addOctTreeSceneNode(q3levelmesh-&gt;getMesh(<font color="#800080">0</font>));
72</font></pre>
73 </td>
74 </tr>
75 </table>
76 <p> So far so good, we've loaded the quake 3 level like in tutorial
77 2. Now, here comes something different: We create a triangle selector.
78 A triangle selector is a class which can fetch the triangles from
79 scene nodes for doing different things with them, for example collision
80 detection. There are different triangle selectors, and all can be
81 created with the ISceneManager. In this example, we create an OctTreeTriangleSelector,
82 which optimizes the triangle output a little bit by reducing it like
83 an octree. This is very useful for huge meshes like quake 3 levels.<br>
84 Afte we created the triangle selector, we attach it to the q3node.
85 This is not necessary, but in this way, we do not need to care for
86 the selector, for example dropping it after we do not need it anymore.</p>
87 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
88 <tr>
89 <td> <pre><font size="2">scene::ITriangleSelector* selector = <font color="#800080">0</font>;
90
91 <b>if </b>(q3node)
92 {
93 q3node-&gt;setPosition(core::vector3df(-<font color="#800080">1370</font>,-<font color="#800080">130</font>,-<font color="#800080">1400</font>));
94
95 selector = smgr-&gt;createOctTreeTriangleSelector(
96 q3levelmesh-&gt;getMesh(<font color="#800080">0</font>), q3node, <font color="#800080">128</font>);
97 q3node-&gt;setTriangleSelector(selector);
98 }</font></pre></td>
99 </tr>
100 </table>
101 <p> We add a first person shooter camera to the scene for being able
102 to move in the quake 3 level like in tutorial 2. But this, time, we
103 add a special animator to the camera: A Collision Response animator.
104 This thing modifies the scene node to which it is attached to in that
105 way, that it may no more move through walls and is affected by gravity.
106 The only thing we have to tell the animator is how the world looks
107 like, how big the scene node is, how gravity and so on. After the
108 collision response animator is attached to the camera, we do not have
109 to do anything more for collision detection, anything is done automaticly,
110 all other collision detection code below is for picking. And please
111 note another cool feature: The collsion response animator can be attached
112 also to all other scene nodes, not only to cameras. And it can be
113 mixed with other scene node animators. In this way, collision detection
114 and response in the Irrlicht<br>
115 engine is really, really easy.<br>
116 Now we'll take a closer look on the parameters of createCollisionResponseAnimator().
117 The first parameter is the TriangleSelector, which specifies how the
118 world, against collision detection is done looks like. The second
119 parameter is the scene node, which is the object, which is affected
120 by collision detection, in our case it is the camera. The third defines
121 how big the object is, it is the radius of an ellipsoid. Try it out
122 and change the radius to smaller values, the camera will be able to
123 move closer to walls after this. The next parameter is the direction
124 and speed of gravity. You could set it to (0,0,0) to disable gravity.
125 And the last value is just a translation: Without this, the ellipsoid
126 with which collision detection is done would be around the camera,
127 and the camera would be in the middle of the ellipsoid. But as human
128 beings, we are used to have our eyes on top of the body, with which
129 we collide with our world, not in the middle of it. So we place the
130 scene node 50 units over the center of the ellipsoid with this parameter.
131 And that's it, collision detection works now. <br>
132 </p>
133 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
134 <tr>
135 <td> <pre><font size="2"> scene::ICameraSceneNode* camera = <br> camera = smgr-&gt;addCameraSceneNodeFPS(<font color="#800080">0</font>,<font color="#800080">100.0f</font>,<font color="#800080">300.0f</font>);
136 camera-&gt;setPosition(core::vector3df(-10<font color="#800080">0</font>,<font color="#800080">50</font>,-15<font color="#800080">0</font>));
137
138 scene::ISceneNodeAnimator* anim =<br> smgr-&gt;createCollisionResponseAnimator(
139 selector, camera, core::vector3df(<font color="#800080">30</font>,<font color="#800080">50</font>,<font color="#800080">30</font>),
140 core::vector3df(<font color="#800080">0</font>,<font color="#800080">-3</font>,<font color="#800080">0</font>),
141 core::vector3df(<font color="#800080">0</font>,<font color="#800080">50</font>,<font color="#800080">0</font>));<br>
142 selector-&gt;drop();<br>
143 camera-&gt;addAnimator(anim);
144 anim-&gt;drop();</font></pre></td>
145 </tr>
146 </table>
147 <p> Because collision detection is no big deal in irrlicht, I'll describe
148 how to do two different types of picking in the next section. But
149 before this, I'll prepare the scene a little. I need three animated
150 characters which we <br>
151 could pick later, a dynamic light for lighting them, a billboard for
152 drawing where we found an intersection, and, yes, I need to get rid
153 of this mouse cursor. :)</p>
154 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
155 <tr>
156 <td> <pre><font size="2"> <font color="#0A246A"><i>// disable mouse cursor
157
158</i></font> device-&gt;getCursorControl()-&gt;setVisible(<b>false</b>);
159
160 <font color="#0A246A"><i>// add billboard
161
162</i></font> scene::IBillboardSceneNode * bill = smgr-&gt;addBillboardSceneNode();
163 bill-&gt;setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR );
164 bill-&gt;setMaterialTexture(<font color="#800080">0</font>, driver-&gt;getTexture(<br> <font color="#FF0000">&quot;../../media/particle.bmp&quot;</font>));
165 bill-&gt;setMaterialFlag(video::EMF_LIGHTING, <b>false</b>);
166 bill-&gt;setSize(core::dimension2d&lt;f32&gt;(<font color="#800080">20.0f</font>, <font color="#800080">20.0f</font>));
167
168 <font color="#0A246A"><i>// add 3 animated faeries.
169
170</i></font> video::SMaterial material;
171 material.Texture1 = driver-&gt;getTexture(<font color="#FF0000"><br> &quot;../../media/faerie2.bmp&quot;</font>);
172 material.Lighting = <b>true</b>;
173
174 scene::IAnimatedMeshSceneNode* node = <font color="#800080">0</font>;
175 scene::IAnimatedMesh* faerie = smgr-&gt;getMesh(<br> <font color="#FF0000">&quot;../../media/faerie.md2&quot;</font>);
176
177 <b>if </b>(faerie)
178 {
179 node = smgr-&gt;addAnimatedMeshSceneNode(faerie);
180 node-&gt;setPosition(core::vector3df(-<font color="#800080">70</font>,<font color="#800080">0</font>,-<font color="#800080">90</font>));
181 node-&gt;setMD2Animation(scene::EMAT_RUN);
182 node-&gt;getMaterial(<font color="#800080">0</font>) = material;
183
184 node = smgr-&gt;addAnimatedMeshSceneNode(faerie);
185 node-&gt;setPosition(core::vector3df(-<font color="#800080">70</font>,<font color="#800080">0</font>,-<font color="#800080">30</font>));
186 node-&gt;setMD2Animation(scene::EMAT_SALUTE);
187 node-&gt;getMaterial(<font color="#800080">0</font>) = material;
188
189 node = smgr-&gt;addAnimatedMeshSceneNode(faerie);
190 node-&gt;setPosition(core::vector3df(-<font color="#800080">70</font>,<font color="#800080">0</font>,-<font color="#800080">60</font>));
191 node-&gt;setMD2Animation(scene::EMAT_JUMP);
192 node-&gt;getMaterial(<font color="#800080">0</font>) = material;
193 }
194
195 material.Texture1 = <font color="#800080">0</font>;
196 material.Lighting = <b>false</b>;
197
198 <font color="#0A246A"><i>// Add a light
199
200</i></font> smgr-&gt;addLightSceneNode(<font color="#800080">0</font>, core::vector3df(-<font color="#800080">60</font>,<font color="#800080">100</font>,<font color="#800080">400</font>),
201 video::SColorf(<font color="#800080">1.0f</font>,<font color="#800080">1.0f</font>,<font color="#800080">1.0f</font>,<font color="#800080">1.0f</font>),
202 <font color="#800080">600.0f</font>);</font></pre></td>
203 </tr>
204 </table>
205 <p>For not making it to complicated, I'm doing picking inside the drawing
206 loop. We take two pointers for storing the current and the last selected
207 scene node and start the loop.</p>
208 </div>
209 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
210 <tr>
211 <td> <pre><font size="2"> scene::ISceneNode* selectedSceneNode = <font color="#800080">0</font>;
212 scene::ISceneNode* lastSelectedSceneNode = <font color="#800080">0</font>;
213
214
215 <b>int </b>lastFPS = -<font color="#800080">1</font>;
216
217 <b>while</b>(device-&gt;run())<br> <strong>if</strong> (device-&gt;isWindowActive())
218 {
219 driver-&gt;beginScene(<b>true</b>, <b>true</b>, <font color="#800080">0</font>);
220
221 smgr-&gt;drawAll();</font></pre></td>
222 </tr>
223 </table>
224 <p> After we've drawn the whole scene whit smgr-&gt;drawAll(), we'll do
225 the first picking: We want to know which triangle of the world we are
226 looking at. In addition, we want the exact point of the quake 3 level
227 we are looking at. For this, we create a 3d line starting at the position
228 of the camera and going through the lookAt-target of it. Then we ask
229 the collision manager if this line collides with a triangle of the world
230 stored in the triangle selector. If yes, we draw the 3d triangle and
231 set the position of the billboard to the intersection point. </p>
232 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
233 <tr>
234 <td><pre><font size="2"> core::line3d&lt;f32&gt; line;
235 line.start = camera-&gt;getPosition();
236 line.end = line.start +
237 (camera-&gt;getTarget() - line.start).normalize() * <font color="#800080">1000.0f</font>;
238
239 core::vector3df intersection;
240 core::triangle3df tri;
241
242 <b>if </b>(smgr-&gt;getSceneCollisionManager()-&gt;getCollisionPoint(
243 line, selector, intersection, tri))
244 {
245 bill-&gt;setPosition(intersection);
246
247 driver-&gt;setTransform(video::ETS_WORLD, core::matrix4());
248 driver-&gt;setMaterial(material);
249 driver-&gt;draw3DTriangle(tri, video::SColor(<font color="#800080">0</font>,<font color="#800080">255</font>,<font color="#800080">0</font>,<font color="#800080">0</font>));
250 }</font></pre></td>
251 </tr>
252 </table>
253 <p> Another type of picking supported by the Irrlicht Engine is scene
254 node picking based on bouding boxes. Every scene node has got a bounding
255 box, and because of that, it's very fast for example to get the scene
256 node which the camera looks<br>
257 at. Again, we ask the collision manager for this, and if we've got a
258 scene node, we highlight it by disabling Lighting in its material, if
259 it is not the billboard or the quake 3 level. </p>
260 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
261 <tr>
262 <td><pre><font size="2"> selectedSceneNode = smgr-&gt;getSceneCollisionManager()-&gt;
263 getSceneNodeFromCameraBB(camera);
264
265 <b>if </b>(lastSelectedSceneNode)
266 lastSelectedSceneNode-&gt;setMaterialFlag(
267 video::EMF_LIGHTING, <b>true</b>);
268
269 <b>if </b>(selectedSceneNode == q3node ||
270 selectedSceneNode == bill)
271 selectedSceneNode = <font color="#800080">0</font>;
272
273 <b>if </b>(selectedSceneNode)
274 selectedSceneNode-&gt;setMaterialFlag(
275 video::EMF_LIGHTING, <b>false</b>);
276
277 lastSelectedSceneNode = selectedSceneNode;</font></pre></td>
278 </tr>
279 </table>
280 <p> That's it, we just have to finish drawing.</p>
281 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
282 <tr>
283 <td> <pre><font size="2"> driver-&gt;endScene();
284
285 <b>int </b>fps = driver-&gt;getFPS();
286
287 <b>if </b>(lastFPS != fps)
288 {
289 core::stringw str = L&quot;Collision detection example - Irrlicht Engine [&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> }
290 }
291
292 device-&gt;drop();
293
294 <b>return </b><font color="#800080">0</font>;
295}
296
297</font></pre></td>
298 </tr>
299 </table>
300 <p>&nbsp;</p>
301 <p>&nbsp;</p>
302 </div>
303 </td>
304 </tr>
305</table>
306<p>&nbsp;</p>
307 </body>
308</html>
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>
diff --git a/src/others/irrlicht-1.8.1/examples/09.Meshviewer/9.Meshviewer.rc b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/9.Meshviewer.rc
new file mode 100644
index 0000000..3208583
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/9.Meshviewer.rc
@@ -0,0 +1,84 @@
1// Microsoft Visual C++ generated resource script.
2//
3#include "resource.h"
4
5#define APSTUDIO_READONLY_SYMBOLS
6/////////////////////////////////////////////////////////////////////////////
7//
8// Generated from the TEXTINCLUDE 2 resource.
9//
10#include "afxres.h"
11
12/////////////////////////////////////////////////////////////////////////////
13#undef APSTUDIO_READONLY_SYMBOLS
14
15/////////////////////////////////////////////////////////////////////////////
16// English (U.S.) resources
17
18#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
19#ifdef _WIN32
20LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
21#pragma code_page(1252)
22#endif //_WIN32
23
24#ifdef APSTUDIO_INVOKED
25/////////////////////////////////////////////////////////////////////////////
26//
27// TEXTINCLUDE
28//
29
301 TEXTINCLUDE
31BEGIN
32 "resource.h\0"
33END
34
352 TEXTINCLUDE
36BEGIN
37 "#include ""afxres.h""\r\n"
38 "\0"
39END
40
413 TEXTINCLUDE
42BEGIN
43 "\r\n"
44 "\0"
45END
46
47#endif // APSTUDIO_INVOKED
48
49#endif // English (U.S.) resources
50/////////////////////////////////////////////////////////////////////////////
51
52
53/////////////////////////////////////////////////////////////////////////////
54// German (Austria) resources
55
56#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEA)
57#ifdef _WIN32
58LANGUAGE LANG_GERMAN, SUBLANG_GERMAN_AUSTRIAN
59#pragma code_page(1252)
60#endif //_WIN32
61
62/////////////////////////////////////////////////////////////////////////////
63//
64// Icon
65//
66
67// Icon with lowest ID value placed first to ensure application icon
68// remains consistent on all systems.
69IDI_ICON1 ICON "icon.ico"
70#endif // German (Austria) resources
71/////////////////////////////////////////////////////////////////////////////
72
73
74
75#ifndef APSTUDIO_INVOKED
76/////////////////////////////////////////////////////////////////////////////
77//
78// Generated from the TEXTINCLUDE 3 resource.
79//
80
81
82/////////////////////////////////////////////////////////////////////////////
83#endif // not APSTUDIO_INVOKED
84
diff --git a/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Makefile b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Makefile
new file mode 100644
index 0000000..99fe9d0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/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 = 09.Meshviewer
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/09.Meshviewer/MeshViewer.dev b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/MeshViewer.dev
new file mode 100644
index 0000000..47416a1
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/MeshViewer.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 09 Mesh Viewer
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=09.MeshViewer.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/09.Meshviewer/Meshviewer.cbp b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer.cbp
new file mode 100644
index 0000000..4600ffd
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer.cbp
@@ -0,0 +1,55 @@
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 09 Mesh Viewer" />
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\MeshViewer" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option output="..\..\bin\Linux\MeshViewer" 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 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer.vcproj b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer.vcproj
new file mode 100644
index 0000000..4077b86
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer.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="09.MeshViewer"
6 ProjectGUID="{EF198BF9-7446-443D-961E-E617E1BD3AFB}"
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/Meshviewer.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\09.MeshViewer.exe"
44 LinkIncremental="0"
45 SuppressStartupBanner="TRUE"
46 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
47 ProgramDatabaseFile=".\Release/MeshViewer.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Release/Meshviewer.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/Meshviewer.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\09.MeshViewer.exe"
104 LinkIncremental="0"
105 SuppressStartupBanner="TRUE"
106 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
107 GenerateDebugInformation="TRUE"
108 ProgramDatabaseFile=".\Debug/MeshViewer.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Debug/Meshviewer.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/09.Meshviewer/Meshviewer_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc10.vcxproj
new file mode 100644
index 0000000..c9e9e97
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_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>09.Meshviewer</ProjectName>
23 <ProjectGuid>{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}</ProjectGuid>
24 <RootNamespace>Meshviewer</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/Meshviewer.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\09.MeshViewer.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/Meshviewer.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\09.MeshViewer.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/Meshviewer.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\09.MeshViewer.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/Meshviewer.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\09.MeshViewer.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/09.Meshviewer/Meshviewer_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc11.vcxproj
new file mode 100644
index 0000000..24ffe1e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_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>09.Meshviewer</ProjectName>
23 <ProjectGuid>{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}</ProjectGuid>
24 <RootNamespace>Meshviewer</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/Meshviewer.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\09.MeshViewer.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/Meshviewer.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\09.MeshViewer.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/Meshviewer.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\09.MeshViewer.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/Meshviewer.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\09.MeshViewer.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/09.Meshviewer/Meshviewer_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc8.vcproj
new file mode 100644
index 0000000..0346771
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_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="09.Meshviewer_vc8"
6 ProjectGUID="{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}"
7 RootNamespace="Meshviewer_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/Meshviewer.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/Meshviewer.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\09.MeshViewer.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 ProgramDatabaseFile=".\Release/MeshViewer.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/Meshviewer.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/Meshviewer.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\09.MeshViewer.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/MeshViewer.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/09.Meshviewer/Meshviewer_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_vc9.vcproj
new file mode 100644
index 0000000..f6a8038
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/Meshviewer_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="09.Meshviewer_vc9"
6 ProjectGUID="{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}"
7 RootNamespace="Meshviewer_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/Meshviewer.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/Meshviewer.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\09.MeshViewer.exe"
77 LinkIncremental="0"
78 SuppressStartupBanner="true"
79 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
80 ProgramDatabaseFile=".\Release/MeshViewer.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/Meshviewer.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/Meshviewer.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\09.MeshViewer.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/MeshViewer.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/09.Meshviewer/icon.ico b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/icon.ico
new file mode 100644
index 0000000..49f8eab
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/icon.ico
Binary files differ
diff --git a/src/others/irrlicht-1.8.1/examples/09.Meshviewer/main.cpp b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/main.cpp
new file mode 100644
index 0000000..b9dc550
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/main.cpp
@@ -0,0 +1,1042 @@
1/** Example 009 Mesh Viewer
2
3This tutorial show how to create a more complex application with the engine.
4We construct a simple mesh viewer using the user interface API and the
5scene management of Irrlicht. The tutorial show how to create and use Buttons,
6Windows, Toolbars, Menus, ComboBoxes, Tabcontrols, Editboxes, Images,
7MessageBoxes, SkyBoxes, and how to parse XML files with the integrated XML
8reader of the engine.
9
10We start like in most other tutorials: Include all necessary header files, add
11a comment to let the engine be linked with the right .lib file in Visual
12Studio, and declare some global variables. We also add two 'using namespace'
13statements, so we do not need to write the whole names of all classes. In this
14tutorial, we use a lot stuff from the gui namespace.
15*/
16#include <irrlicht.h>
17#include "driverChoice.h"
18
19using namespace irr;
20using namespace gui;
21
22#ifdef _MSC_VER
23#pragma comment(lib, "Irrlicht.lib")
24#endif
25
26
27/*
28Some global variables used later on
29*/
30IrrlichtDevice *Device = 0;
31core::stringc StartUpModelFile;
32core::stringw MessageText;
33core::stringw Caption;
34scene::ISceneNode* Model = 0;
35scene::ISceneNode* SkyBox = 0;
36bool Octree=false;
37bool UseLight=false;
38
39scene::ICameraSceneNode* Camera[2] = {0, 0};
40
41// Values used to identify individual GUI elements
42enum
43{
44 GUI_ID_DIALOG_ROOT_WINDOW = 0x10000,
45
46 GUI_ID_X_SCALE,
47 GUI_ID_Y_SCALE,
48 GUI_ID_Z_SCALE,
49
50 GUI_ID_OPEN_MODEL,
51 GUI_ID_SET_MODEL_ARCHIVE,
52 GUI_ID_LOAD_AS_OCTREE,
53
54 GUI_ID_SKY_BOX_VISIBLE,
55 GUI_ID_TOGGLE_DEBUG_INFO,
56
57 GUI_ID_DEBUG_OFF,
58 GUI_ID_DEBUG_BOUNDING_BOX,
59 GUI_ID_DEBUG_NORMALS,
60 GUI_ID_DEBUG_SKELETON,
61 GUI_ID_DEBUG_WIRE_OVERLAY,
62 GUI_ID_DEBUG_HALF_TRANSPARENT,
63 GUI_ID_DEBUG_BUFFERS_BOUNDING_BOXES,
64 GUI_ID_DEBUG_ALL,
65
66 GUI_ID_MODEL_MATERIAL_SOLID,
67 GUI_ID_MODEL_MATERIAL_TRANSPARENT,
68 GUI_ID_MODEL_MATERIAL_REFLECTION,
69
70 GUI_ID_CAMERA_MAYA,
71 GUI_ID_CAMERA_FIRST_PERSON,
72
73 GUI_ID_POSITION_TEXT,
74
75 GUI_ID_ABOUT,
76 GUI_ID_QUIT,
77
78 GUI_ID_TEXTUREFILTER,
79 GUI_ID_SKIN_TRANSPARENCY,
80 GUI_ID_SKIN_ANIMATION_FPS,
81
82 GUI_ID_BUTTON_SET_SCALE,
83 GUI_ID_BUTTON_SCALE_MUL10,
84 GUI_ID_BUTTON_SCALE_DIV10,
85 GUI_ID_BUTTON_OPEN_MODEL,
86 GUI_ID_BUTTON_SHOW_ABOUT,
87 GUI_ID_BUTTON_SHOW_TOOLBOX,
88 GUI_ID_BUTTON_SELECT_ARCHIVE,
89
90 GUI_ID_ANIMATION_INFO,
91
92 // And some magic numbers
93 MAX_FRAMERATE = 80,
94 DEFAULT_FRAMERATE = 30
95};
96
97
98/*
99Toggle between various cameras
100*/
101void setActiveCamera(scene::ICameraSceneNode* newActive)
102{
103 if (0 == Device)
104 return;
105
106 scene::ICameraSceneNode * active = Device->getSceneManager()->getActiveCamera();
107 active->setInputReceiverEnabled(false);
108
109 newActive->setInputReceiverEnabled(true);
110 Device->getSceneManager()->setActiveCamera(newActive);
111}
112
113/*
114 Set the skin transparency by changing the alpha values of all skin-colors
115*/
116void setSkinTransparency(s32 alpha, irr::gui::IGUISkin * skin)
117{
118 for (s32 i=0; i<irr::gui::EGDC_COUNT ; ++i)
119 {
120 video::SColor col = skin->getColor((EGUI_DEFAULT_COLOR)i);
121 col.setAlpha(alpha);
122 skin->setColor((EGUI_DEFAULT_COLOR)i, col);
123 }
124}
125
126/*
127 Update the display of the model scaling
128*/
129void updateScaleInfo(scene::ISceneNode* model)
130{
131 IGUIElement* toolboxWnd = Device->getGUIEnvironment()->getRootGUIElement()->getElementFromId(GUI_ID_DIALOG_ROOT_WINDOW, true);
132 if (!toolboxWnd)
133 return;
134 if (!model)
135 {
136 toolboxWnd->getElementFromId(GUI_ID_X_SCALE, true)->setText( L"-" );
137 toolboxWnd->getElementFromId(GUI_ID_Y_SCALE, true)->setText( L"-" );
138 toolboxWnd->getElementFromId(GUI_ID_Z_SCALE, true)->setText( L"-" );
139 }
140 else
141 {
142 core::vector3df scale = model->getScale();
143 toolboxWnd->getElementFromId(GUI_ID_X_SCALE, true)->setText( core::stringw(scale.X).c_str() );
144 toolboxWnd->getElementFromId(GUI_ID_Y_SCALE, true)->setText( core::stringw(scale.Y).c_str() );
145 toolboxWnd->getElementFromId(GUI_ID_Z_SCALE, true)->setText( core::stringw(scale.Z).c_str() );
146 }
147}
148
149/*
150Function showAboutText() displays a messagebox with a caption and
151a message text. The texts will be stored in the MessageText and Caption
152variables at startup.
153*/
154void showAboutText()
155{
156 // create modal message box with the text
157 // loaded from the xml file.
158 Device->getGUIEnvironment()->addMessageBox(
159 Caption.c_str(), MessageText.c_str());
160}
161
162
163/*
164Function loadModel() loads a model and displays it using an
165addAnimatedMeshSceneNode and the scene manager. Nothing difficult. It also
166displays a short message box, if the model could not be loaded.
167*/
168void loadModel(const c8* fn)
169{
170 // modify the name if it a .pk3 file
171
172 io::path filename(fn);
173
174 io::path extension;
175 core::getFileNameExtension(extension, filename);
176 extension.make_lower();
177
178 // if a texture is loaded apply it to the current model..
179 if (extension == ".jpg" || extension == ".pcx" ||
180 extension == ".png" || extension == ".ppm" ||
181 extension == ".pgm" || extension == ".pbm" ||
182 extension == ".psd" || extension == ".tga" ||
183 extension == ".bmp" || extension == ".wal" ||
184 extension == ".rgb" || extension == ".rgba")
185 {
186 video::ITexture * texture =
187 Device->getVideoDriver()->getTexture( filename );
188 if ( texture && Model )
189 {
190 // always reload texture
191 Device->getVideoDriver()->removeTexture(texture);
192 texture = Device->getVideoDriver()->getTexture( filename );
193
194 Model->setMaterialTexture(0, texture);
195 }
196 return;
197 }
198 // if a archive is loaded add it to the FileArchive..
199 else if (extension == ".pk3" || extension == ".zip" || extension == ".pak" || extension == ".npk")
200 {
201 Device->getFileSystem()->addFileArchive(filename.c_str());
202 return;
203 }
204
205 // load a model into the engine
206
207 if (Model)
208 Model->remove();
209
210 Model = 0;
211
212 if (extension==".irr")
213 {
214 core::array<scene::ISceneNode*> outNodes;
215 Device->getSceneManager()->loadScene(filename);
216 Device->getSceneManager()->getSceneNodesFromType(scene::ESNT_ANIMATED_MESH, outNodes);
217 if (outNodes.size())
218 Model = outNodes[0];
219 return;
220 }
221
222 scene::IAnimatedMesh* m = Device->getSceneManager()->getMesh( filename.c_str() );
223
224 if (!m)
225 {
226 // model could not be loaded
227
228 if (StartUpModelFile != filename)
229 Device->getGUIEnvironment()->addMessageBox(
230 Caption.c_str(), L"The model could not be loaded. " \
231 L"Maybe it is not a supported file format.");
232 return;
233 }
234
235 // set default material properties
236
237 if (Octree)
238 Model = Device->getSceneManager()->addOctreeSceneNode(m->getMesh(0));
239 else
240 {
241 scene::IAnimatedMeshSceneNode* animModel = Device->getSceneManager()->addAnimatedMeshSceneNode(m);
242 animModel->setAnimationSpeed(30);
243 Model = animModel;
244 }
245 Model->setMaterialFlag(video::EMF_LIGHTING, UseLight);
246 Model->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, UseLight);
247// Model->setMaterialFlag(video::EMF_BACK_FACE_CULLING, false);
248 Model->setDebugDataVisible(scene::EDS_OFF);
249
250 // we need to uncheck the menu entries. would be cool to fake a menu event, but
251 // that's not so simple. so we do it brute force
252 gui::IGUIContextMenu* menu = (gui::IGUIContextMenu*)Device->getGUIEnvironment()->getRootGUIElement()->getElementFromId(GUI_ID_TOGGLE_DEBUG_INFO, true);
253 if (menu)
254 for(int item = 1; item < 6; ++item)
255 menu->setItemChecked(item, false);
256 updateScaleInfo(Model);
257}
258
259
260/*
261Function createToolBox() creates a toolbox window. In this simple mesh
262viewer, this toolbox only contains a tab control with three edit boxes for
263changing the scale of the displayed model.
264*/
265void createToolBox()
266{
267 // remove tool box if already there
268 IGUIEnvironment* env = Device->getGUIEnvironment();
269 IGUIElement* root = env->getRootGUIElement();
270 IGUIElement* e = root->getElementFromId(GUI_ID_DIALOG_ROOT_WINDOW, true);
271 if (e)
272 e->remove();
273
274 // create the toolbox window
275 IGUIWindow* wnd = env->addWindow(core::rect<s32>(600,45,800,480),
276 false, L"Toolset", 0, GUI_ID_DIALOG_ROOT_WINDOW);
277
278 // create tab control and tabs
279 IGUITabControl* tab = env->addTabControl(
280 core::rect<s32>(2,20,800-602,480-7), wnd, true, true);
281
282 IGUITab* t1 = tab->addTab(L"Config");
283
284 // add some edit boxes and a button to tab one
285 env->addStaticText(L"Scale:",
286 core::rect<s32>(10,20,60,45), false, false, t1);
287 env->addStaticText(L"X:", core::rect<s32>(22,48,40,66), false, false, t1);
288 env->addEditBox(L"1.0", core::rect<s32>(40,46,130,66), true, t1, GUI_ID_X_SCALE);
289 env->addStaticText(L"Y:", core::rect<s32>(22,82,40,96), false, false, t1);
290 env->addEditBox(L"1.0", core::rect<s32>(40,76,130,96), true, t1, GUI_ID_Y_SCALE);
291 env->addStaticText(L"Z:", core::rect<s32>(22,108,40,126), false, false, t1);
292 env->addEditBox(L"1.0", core::rect<s32>(40,106,130,126), true, t1, GUI_ID_Z_SCALE);
293
294 env->addButton(core::rect<s32>(10,134,85,165), t1, GUI_ID_BUTTON_SET_SCALE, L"Set");
295
296 // quick scale buttons
297 env->addButton(core::rect<s32>(65,20,95,40), t1, GUI_ID_BUTTON_SCALE_MUL10, L"* 10");
298 env->addButton(core::rect<s32>(100,20,130,40), t1, GUI_ID_BUTTON_SCALE_DIV10, L"* 0.1");
299
300 updateScaleInfo(Model);
301
302 // add transparency control
303 env->addStaticText(L"GUI Transparency Control:",
304 core::rect<s32>(10,200,150,225), true, false, t1);
305 IGUIScrollBar* scrollbar = env->addScrollBar(true,
306 core::rect<s32>(10,225,150,240), t1, GUI_ID_SKIN_TRANSPARENCY);
307 scrollbar->setMax(255);
308 scrollbar->setPos(255);
309
310 // add framerate control
311 env->addStaticText(L":", core::rect<s32>(10,240,150,265), true, false, t1);
312 env->addStaticText(L"Framerate:",
313 core::rect<s32>(12,240,75,265), false, false, t1);
314 // current frame info
315 env->addStaticText(L"", core::rect<s32>(75,240,200,265), false, false, t1,
316 GUI_ID_ANIMATION_INFO);
317 scrollbar = env->addScrollBar(true,
318 core::rect<s32>(10,265,150,280), t1, GUI_ID_SKIN_ANIMATION_FPS);
319 scrollbar->setMax(MAX_FRAMERATE);
320 scrollbar->setMin(-MAX_FRAMERATE);
321 scrollbar->setPos(DEFAULT_FRAMERATE);
322 scrollbar->setSmallStep(1);
323}
324
325/*
326Function updateToolBox() is called each frame to update dynamic information in
327the toolbox.
328*/
329void updateToolBox()
330{
331 IGUIEnvironment* env = Device->getGUIEnvironment();
332 IGUIElement* root = env->getRootGUIElement();
333 IGUIElement* dlg = root->getElementFromId(GUI_ID_DIALOG_ROOT_WINDOW, true);
334 if (!dlg )
335 return;
336
337 // update the info we have about the animation of the model
338 IGUIStaticText * aniInfo = (IGUIStaticText *)(dlg->getElementFromId(GUI_ID_ANIMATION_INFO, true));
339 if (aniInfo)
340 {
341 if ( Model && scene::ESNT_ANIMATED_MESH == Model->getType() )
342 {
343 scene::IAnimatedMeshSceneNode* animatedModel = (scene::IAnimatedMeshSceneNode*)Model;
344
345 core::stringw str( (s32)core::round_(animatedModel->getAnimationSpeed()) );
346 str += L" Frame: ";
347 str += core::stringw((s32)animatedModel->getFrameNr());
348 aniInfo->setText(str.c_str());
349 }
350 else
351 aniInfo->setText(L"");
352 }
353}
354
355void onKillFocus()
356{
357 // Avoid that the FPS-camera continues moving when the user presses alt-tab while
358 // moving the camera.
359 const core::list<scene::ISceneNodeAnimator*>& animators = Camera[1]->getAnimators();
360 core::list<irr::scene::ISceneNodeAnimator*>::ConstIterator iter = animators.begin();
361 while ( iter != animators.end() )
362 {
363 if ( (*iter)->getType() == scene::ESNAT_CAMERA_FPS )
364 {
365 // we send a key-down event for all keys used by this animator
366 scene::ISceneNodeAnimatorCameraFPS * fpsAnimator = static_cast<scene::ISceneNodeAnimatorCameraFPS*>(*iter);
367 const core::array<SKeyMap>& keyMap = fpsAnimator->getKeyMap();
368 for ( irr::u32 i=0; i< keyMap.size(); ++i )
369 {
370 irr::SEvent event;
371 event.EventType = EET_KEY_INPUT_EVENT;
372 event.KeyInput.Key = keyMap[i].KeyCode;
373 event.KeyInput.PressedDown = false;
374 fpsAnimator->OnEvent(event);
375 }
376 }
377 ++iter;
378 }
379}
380
381/*
382Function hasModalDialog() checks if we currently have a modal dialog open.
383*/
384bool hasModalDialog()
385{
386 if ( !Device )
387 return false;
388 IGUIEnvironment* env = Device->getGUIEnvironment();
389 IGUIElement * focused = env->getFocus();
390 while ( focused )
391 {
392 if ( focused->isVisible() && focused->hasType(EGUIET_MODAL_SCREEN) )
393 return true;
394 focused = focused->getParent();
395 }
396 return false;
397}
398
399/*
400To get all the events sent by the GUI Elements, we need to create an event
401receiver. This one is really simple. If an event occurs, it checks the id of
402the caller and the event type, and starts an action based on these values. For
403example, if a menu item with id GUI_ID_OPEN_MODEL was selected, it opens a file-open-dialog.
404*/
405class MyEventReceiver : public IEventReceiver
406{
407public:
408 virtual bool OnEvent(const SEvent& event)
409 {
410 // Escape swaps Camera Input
411 if (event.EventType == EET_KEY_INPUT_EVENT &&
412 event.KeyInput.PressedDown == false)
413 {
414 if ( OnKeyUp(event.KeyInput.Key) )
415 return true;
416 }
417
418 if (event.EventType == EET_GUI_EVENT)
419 {
420 s32 id = event.GUIEvent.Caller->getID();
421 IGUIEnvironment* env = Device->getGUIEnvironment();
422
423 switch(event.GUIEvent.EventType)
424 {
425 case EGET_MENU_ITEM_SELECTED:
426 // a menu item was clicked
427 OnMenuItemSelected( (IGUIContextMenu*)event.GUIEvent.Caller );
428 break;
429
430 case EGET_FILE_SELECTED:
431 {
432 // load the model file, selected in the file open dialog
433 IGUIFileOpenDialog* dialog =
434 (IGUIFileOpenDialog*)event.GUIEvent.Caller;
435 loadModel(core::stringc(dialog->getFileName()).c_str());
436 }
437 break;
438
439 case EGET_SCROLL_BAR_CHANGED:
440
441 // control skin transparency
442 if (id == GUI_ID_SKIN_TRANSPARENCY)
443 {
444 const s32 pos = ((IGUIScrollBar*)event.GUIEvent.Caller)->getPos();
445 setSkinTransparency(pos, env->getSkin());
446 }
447 // control animation speed
448 else if (id == GUI_ID_SKIN_ANIMATION_FPS)
449 {
450 const s32 pos = ((IGUIScrollBar*)event.GUIEvent.Caller)->getPos();
451 if (scene::ESNT_ANIMATED_MESH == Model->getType())
452 ((scene::IAnimatedMeshSceneNode*)Model)->setAnimationSpeed((f32)pos);
453 }
454 break;
455
456 case EGET_COMBO_BOX_CHANGED:
457
458 // control anti-aliasing/filtering
459 if (id == GUI_ID_TEXTUREFILTER)
460 {
461 OnTextureFilterSelected( (IGUIComboBox*)event.GUIEvent.Caller );
462 }
463 break;
464
465 case EGET_BUTTON_CLICKED:
466
467 switch(id)
468 {
469 case GUI_ID_BUTTON_SET_SCALE:
470 {
471 // set scale
472 gui::IGUIElement* root = env->getRootGUIElement();
473 core::vector3df scale;
474 core::stringc s;
475
476 s = root->getElementFromId(GUI_ID_X_SCALE, true)->getText();
477 scale.X = (f32)atof(s.c_str());
478 s = root->getElementFromId(GUI_ID_Y_SCALE, true)->getText();
479 scale.Y = (f32)atof(s.c_str());
480 s = root->getElementFromId(GUI_ID_Z_SCALE, true)->getText();
481 scale.Z = (f32)atof(s.c_str());
482
483 if (Model)
484 Model->setScale(scale);
485 updateScaleInfo(Model);
486 }
487 break;
488 case GUI_ID_BUTTON_SCALE_MUL10:
489 if (Model)
490 Model->setScale(Model->getScale()*10.f);
491 updateScaleInfo(Model);
492 break;
493 case GUI_ID_BUTTON_SCALE_DIV10:
494 if (Model)
495 Model->setScale(Model->getScale()*0.1f);
496 updateScaleInfo(Model);
497 break;
498 case GUI_ID_BUTTON_OPEN_MODEL:
499 env->addFileOpenDialog(L"Please select a model file to open");
500 break;
501 case GUI_ID_BUTTON_SHOW_ABOUT:
502 showAboutText();
503 break;
504 case GUI_ID_BUTTON_SHOW_TOOLBOX:
505 createToolBox();
506 break;
507 case GUI_ID_BUTTON_SELECT_ARCHIVE:
508 env->addFileOpenDialog(L"Please select your game archive/directory");
509 break;
510 }
511
512 break;
513 default:
514 break;
515 }
516 }
517
518 return false;
519 }
520
521
522 /*
523 Handle key-up events
524 */
525 bool OnKeyUp(irr::EKEY_CODE keyCode)
526 {
527 // Don't handle keys if we have a modal dialog open as it would lead
528 // to unexpected application behaviour for the user.
529 if ( hasModalDialog() )
530 return false;
531
532 if (keyCode == irr::KEY_ESCAPE)
533 {
534 if (Device)
535 {
536 scene::ICameraSceneNode * camera =
537 Device->getSceneManager()->getActiveCamera();
538 if (camera)
539 {
540 camera->setInputReceiverEnabled( !camera->isInputReceiverEnabled() );
541 }
542 return true;
543 }
544 }
545 else if (keyCode == irr::KEY_F1)
546 {
547 if (Device)
548 {
549 IGUIElement* elem = Device->getGUIEnvironment()->getRootGUIElement()->getElementFromId(GUI_ID_POSITION_TEXT);
550 if (elem)
551 elem->setVisible(!elem->isVisible());
552 }
553 }
554 else if (keyCode == irr::KEY_KEY_M)
555 {
556 if (Device)
557 Device->minimizeWindow();
558 }
559 else if (keyCode == irr::KEY_KEY_L)
560 {
561 UseLight=!UseLight;
562 if (Model)
563 {
564 Model->setMaterialFlag(video::EMF_LIGHTING, UseLight);
565 Model->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, UseLight);
566 }
567 }
568 return false;
569 }
570
571
572 /*
573 Handle "menu item clicked" events.
574 */
575 void OnMenuItemSelected( IGUIContextMenu* menu )
576 {
577 s32 id = menu->getItemCommandId(menu->getSelectedItem());
578 IGUIEnvironment* env = Device->getGUIEnvironment();
579
580 switch(id)
581 {
582 case GUI_ID_OPEN_MODEL: // FilOnButtonSetScalinge -> Open Model
583 env->addFileOpenDialog(L"Please select a model file to open");
584 break;
585 case GUI_ID_SET_MODEL_ARCHIVE: // File -> Set Model Archive
586 env->addFileOpenDialog(L"Please select your game archive/directory");
587 break;
588 case GUI_ID_LOAD_AS_OCTREE: // File -> LoadAsOctree
589 Octree = !Octree;
590 menu->setItemChecked(menu->getSelectedItem(), Octree);
591 break;
592 case GUI_ID_QUIT: // File -> Quit
593 Device->closeDevice();
594 break;
595 case GUI_ID_SKY_BOX_VISIBLE: // View -> Skybox
596 menu->setItemChecked(menu->getSelectedItem(), !menu->isItemChecked(menu->getSelectedItem()));
597 SkyBox->setVisible(!SkyBox->isVisible());
598 break;
599 case GUI_ID_DEBUG_OFF: // View -> Debug Information
600 menu->setItemChecked(menu->getSelectedItem()+1, false);
601 menu->setItemChecked(menu->getSelectedItem()+2, false);
602 menu->setItemChecked(menu->getSelectedItem()+3, false);
603 menu->setItemChecked(menu->getSelectedItem()+4, false);
604 menu->setItemChecked(menu->getSelectedItem()+5, false);
605 menu->setItemChecked(menu->getSelectedItem()+6, false);
606 if (Model)
607 Model->setDebugDataVisible(scene::EDS_OFF);
608 break;
609 case GUI_ID_DEBUG_BOUNDING_BOX: // View -> Debug Information
610 menu->setItemChecked(menu->getSelectedItem(), !menu->isItemChecked(menu->getSelectedItem()));
611 if (Model)
612 Model->setDebugDataVisible((scene::E_DEBUG_SCENE_TYPE)(Model->isDebugDataVisible()^scene::EDS_BBOX));
613 break;
614 case GUI_ID_DEBUG_NORMALS: // View -> Debug Information
615 menu->setItemChecked(menu->getSelectedItem(), !menu->isItemChecked(menu->getSelectedItem()));
616 if (Model)
617 Model->setDebugDataVisible((scene::E_DEBUG_SCENE_TYPE)(Model->isDebugDataVisible()^scene::EDS_NORMALS));
618 break;
619 case GUI_ID_DEBUG_SKELETON: // View -> Debug Information
620 menu->setItemChecked(menu->getSelectedItem(), !menu->isItemChecked(menu->getSelectedItem()));
621 if (Model)
622 Model->setDebugDataVisible((scene::E_DEBUG_SCENE_TYPE)(Model->isDebugDataVisible()^scene::EDS_SKELETON));
623 break;
624 case GUI_ID_DEBUG_WIRE_OVERLAY: // View -> Debug Information
625 menu->setItemChecked(menu->getSelectedItem(), !menu->isItemChecked(menu->getSelectedItem()));
626 if (Model)
627 Model->setDebugDataVisible((scene::E_DEBUG_SCENE_TYPE)(Model->isDebugDataVisible()^scene::EDS_MESH_WIRE_OVERLAY));
628 break;
629 case GUI_ID_DEBUG_HALF_TRANSPARENT: // View -> Debug Information
630 menu->setItemChecked(menu->getSelectedItem(), !menu->isItemChecked(menu->getSelectedItem()));
631 if (Model)
632 Model->setDebugDataVisible((scene::E_DEBUG_SCENE_TYPE)(Model->isDebugDataVisible()^scene::EDS_HALF_TRANSPARENCY));
633 break;
634 case GUI_ID_DEBUG_BUFFERS_BOUNDING_BOXES: // View -> Debug Information
635 menu->setItemChecked(menu->getSelectedItem(), !menu->isItemChecked(menu->getSelectedItem()));
636 if (Model)
637 Model->setDebugDataVisible((scene::E_DEBUG_SCENE_TYPE)(Model->isDebugDataVisible()^scene::EDS_BBOX_BUFFERS));
638 break;
639 case GUI_ID_DEBUG_ALL: // View -> Debug Information
640 menu->setItemChecked(menu->getSelectedItem()-1, true);
641 menu->setItemChecked(menu->getSelectedItem()-2, true);
642 menu->setItemChecked(menu->getSelectedItem()-3, true);
643 menu->setItemChecked(menu->getSelectedItem()-4, true);
644 menu->setItemChecked(menu->getSelectedItem()-5, true);
645 menu->setItemChecked(menu->getSelectedItem()-6, true);
646 if (Model)
647 Model->setDebugDataVisible(scene::EDS_FULL);
648 break;
649 case GUI_ID_ABOUT: // Help->About
650 showAboutText();
651 break;
652 case GUI_ID_MODEL_MATERIAL_SOLID: // View -> Material -> Solid
653 if (Model)
654 Model->setMaterialType(video::EMT_SOLID);
655 break;
656 case GUI_ID_MODEL_MATERIAL_TRANSPARENT: // View -> Material -> Transparent
657 if (Model)
658 Model->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
659 break;
660 case GUI_ID_MODEL_MATERIAL_REFLECTION: // View -> Material -> Reflection
661 if (Model)
662 Model->setMaterialType(video::EMT_SPHERE_MAP);
663 break;
664
665 case GUI_ID_CAMERA_MAYA:
666 setActiveCamera(Camera[0]);
667 break;
668 case GUI_ID_CAMERA_FIRST_PERSON:
669 setActiveCamera(Camera[1]);
670 break;
671 }
672 }
673
674 /*
675 Handle the event that one of the texture-filters was selected in the corresponding combobox.
676 */
677 void OnTextureFilterSelected( IGUIComboBox* combo )
678 {
679 s32 pos = combo->getSelected();
680 switch (pos)
681 {
682 case 0:
683 if (Model)
684 {
685 Model->setMaterialFlag(video::EMF_BILINEAR_FILTER, false);
686 Model->setMaterialFlag(video::EMF_TRILINEAR_FILTER, false);
687 Model->setMaterialFlag(video::EMF_ANISOTROPIC_FILTER, false);
688 }
689 break;
690 case 1:
691 if (Model)
692 {
693 Model->setMaterialFlag(video::EMF_BILINEAR_FILTER, true);
694 Model->setMaterialFlag(video::EMF_TRILINEAR_FILTER, false);
695 }
696 break;
697 case 2:
698 if (Model)
699 {
700 Model->setMaterialFlag(video::EMF_BILINEAR_FILTER, false);
701 Model->setMaterialFlag(video::EMF_TRILINEAR_FILTER, true);
702 }
703 break;
704 case 3:
705 if (Model)
706 {
707 Model->setMaterialFlag(video::EMF_ANISOTROPIC_FILTER, true);
708 }
709 break;
710 case 4:
711 if (Model)
712 {
713 Model->setMaterialFlag(video::EMF_ANISOTROPIC_FILTER, false);
714 }
715 break;
716 }
717 }
718};
719
720
721/*
722Most of the hard work is done. We only need to create the Irrlicht Engine
723device and all the buttons, menus and toolbars. We start up the engine as
724usual, using createDevice(). To make our application catch events, we set our
725eventreceiver as parameter. As you can see, there is also a call to
726IrrlichtDevice::setResizeable(). This makes the render window resizeable, which
727is quite useful for a mesh viewer.
728*/
729int main(int argc, char* argv[])
730{
731 // ask user for driver
732 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
733 if (driverType==video::EDT_COUNT)
734 return 1;
735
736 // create device and exit if creation failed
737 MyEventReceiver receiver;
738 Device = createDevice(driverType, core::dimension2d<u32>(800, 600),
739 16, false, false, false, &receiver);
740
741 if (Device == 0)
742 return 1; // could not create selected driver.
743
744 Device->setResizable(true);
745
746 Device->setWindowCaption(L"Irrlicht Engine - Loading...");
747
748 video::IVideoDriver* driver = Device->getVideoDriver();
749 IGUIEnvironment* env = Device->getGUIEnvironment();
750 scene::ISceneManager* smgr = Device->getSceneManager();
751 smgr->getParameters()->setAttribute(scene::COLLADA_CREATE_SCENE_INSTANCES, true);
752
753 driver->setTextureCreationFlag(video::ETCF_ALWAYS_32_BIT, true);
754
755 smgr->addLightSceneNode(0, core::vector3df(200,200,200),
756 video::SColorf(1.0f,1.0f,1.0f),2000);
757 smgr->setAmbientLight(video::SColorf(0.3f,0.3f,0.3f));
758 // add our media directory as "search path"
759 Device->getFileSystem()->addFileArchive("../../media/");
760
761 /*
762 The next step is to read the configuration file. It is stored in the xml
763 format and looks a little bit like this:
764
765 @verbatim
766 <?xml version="1.0"?>
767 <config>
768 <startUpModel file="some filename" />
769 <messageText caption="Irrlicht Engine Mesh Viewer">
770 Hello!
771 </messageText>
772 </config>
773 @endverbatim
774
775 We need the data stored in there to be written into the global variables
776 StartUpModelFile, MessageText and Caption. This is now done using the
777 Irrlicht Engine integrated XML parser:
778 */
779
780 // read configuration from xml file
781
782 io::IXMLReader* xml = Device->getFileSystem()->createXMLReader( L"config.xml");
783
784 while(xml && xml->read())
785 {
786 switch(xml->getNodeType())
787 {
788 case io::EXN_TEXT:
789 // in this xml file, the only text which occurs is the
790 // messageText
791 MessageText = xml->getNodeData();
792 break;
793 case io::EXN_ELEMENT:
794 {
795 if (core::stringw("startUpModel") == xml->getNodeName())
796 StartUpModelFile = xml->getAttributeValue(L"file");
797 else
798 if (core::stringw("messageText") == xml->getNodeName())
799 Caption = xml->getAttributeValue(L"caption");
800 }
801 break;
802 default:
803 break;
804 }
805 }
806
807 if (xml)
808 xml->drop(); // don't forget to delete the xml reader
809
810 if (argc > 1)
811 StartUpModelFile = argv[1];
812
813 /*
814 That wasn't difficult. Now we'll set a nicer font and create the Menu.
815 It is possible to create submenus for every menu item. The call
816 menu->addItem(L"File", -1, true, true); for example adds a new menu
817 Item with the name "File" and the id -1. The following parameter says
818 that the menu item should be enabled, and the last one says, that there
819 should be a submenu. The submenu can now be accessed with
820 menu->getSubMenu(0), because the "File" entry is the menu item with
821 index 0.
822 */
823
824 // set a nicer font
825
826 IGUISkin* skin = env->getSkin();
827 IGUIFont* font = env->getFont("fonthaettenschweiler.bmp");
828 if (font)
829 skin->setFont(font);
830
831 // create menu
832 gui::IGUIContextMenu* menu = env->addMenu();
833 menu->addItem(L"File", -1, true, true);
834 menu->addItem(L"View", -1, true, true);
835 menu->addItem(L"Camera", -1, true, true);
836 menu->addItem(L"Help", -1, true, true);
837
838 gui::IGUIContextMenu* submenu;
839 submenu = menu->getSubMenu(0);
840 submenu->addItem(L"Open Model File & Texture...", GUI_ID_OPEN_MODEL);
841 submenu->addItem(L"Set Model Archive...", GUI_ID_SET_MODEL_ARCHIVE);
842 submenu->addItem(L"Load as Octree", GUI_ID_LOAD_AS_OCTREE);
843 submenu->addSeparator();
844 submenu->addItem(L"Quit", GUI_ID_QUIT);
845
846 submenu = menu->getSubMenu(1);
847 submenu->addItem(L"sky box visible", GUI_ID_SKY_BOX_VISIBLE, true, false, true);
848 submenu->addItem(L"toggle model debug information", GUI_ID_TOGGLE_DEBUG_INFO, true, true);
849 submenu->addItem(L"model material", -1, true, true );
850
851 submenu = submenu->getSubMenu(1);
852 submenu->addItem(L"Off", GUI_ID_DEBUG_OFF);
853 submenu->addItem(L"Bounding Box", GUI_ID_DEBUG_BOUNDING_BOX);
854 submenu->addItem(L"Normals", GUI_ID_DEBUG_NORMALS);
855 submenu->addItem(L"Skeleton", GUI_ID_DEBUG_SKELETON);
856 submenu->addItem(L"Wire overlay", GUI_ID_DEBUG_WIRE_OVERLAY);
857 submenu->addItem(L"Half-Transparent", GUI_ID_DEBUG_HALF_TRANSPARENT);
858 submenu->addItem(L"Buffers bounding boxes", GUI_ID_DEBUG_BUFFERS_BOUNDING_BOXES);
859 submenu->addItem(L"All", GUI_ID_DEBUG_ALL);
860
861 submenu = menu->getSubMenu(1)->getSubMenu(2);
862 submenu->addItem(L"Solid", GUI_ID_MODEL_MATERIAL_SOLID);
863 submenu->addItem(L"Transparent", GUI_ID_MODEL_MATERIAL_TRANSPARENT);
864 submenu->addItem(L"Reflection", GUI_ID_MODEL_MATERIAL_REFLECTION);
865
866 submenu = menu->getSubMenu(2);
867 submenu->addItem(L"Maya Style", GUI_ID_CAMERA_MAYA);
868 submenu->addItem(L"First Person", GUI_ID_CAMERA_FIRST_PERSON);
869
870 submenu = menu->getSubMenu(3);
871 submenu->addItem(L"About", GUI_ID_ABOUT);
872
873 /*
874 Below the menu we want a toolbar, onto which we can place colored
875 buttons and important looking stuff like a senseless combobox.
876 */
877
878 // create toolbar
879
880 gui::IGUIToolBar* bar = env->addToolBar();
881
882 video::ITexture* image = driver->getTexture("open.png");
883 bar->addButton(GUI_ID_BUTTON_OPEN_MODEL, 0, L"Open a model",image, 0, false, true);
884
885 image = driver->getTexture("tools.png");
886 bar->addButton(GUI_ID_BUTTON_SHOW_TOOLBOX, 0, L"Open Toolset",image, 0, false, true);
887
888 image = driver->getTexture("zip.png");
889 bar->addButton(GUI_ID_BUTTON_SELECT_ARCHIVE, 0, L"Set Model Archive",image, 0, false, true);
890
891 image = driver->getTexture("help.png");
892 bar->addButton(GUI_ID_BUTTON_SHOW_ABOUT, 0, L"Open Help", image, 0, false, true);
893
894 // create a combobox for texture filters
895
896 gui::IGUIComboBox* box = env->addComboBox(core::rect<s32>(250,4,350,23), bar, GUI_ID_TEXTUREFILTER);
897 box->addItem(L"No filtering");
898 box->addItem(L"Bilinear");
899 box->addItem(L"Trilinear");
900 box->addItem(L"Anisotropic");
901 box->addItem(L"Isotropic");
902
903 /*
904 To make the editor look a little bit better, we disable transparent gui
905 elements, and add an Irrlicht Engine logo. In addition, a text showing
906 the current frames per second value is created and the window caption is
907 changed.
908 */
909
910 // disable alpha
911
912 for (s32 i=0; i<gui::EGDC_COUNT ; ++i)
913 {
914 video::SColor col = env->getSkin()->getColor((gui::EGUI_DEFAULT_COLOR)i);
915 col.setAlpha(255);
916 env->getSkin()->setColor((gui::EGUI_DEFAULT_COLOR)i, col);
917 }
918
919 // add a tabcontrol
920
921 createToolBox();
922
923 // create fps text
924
925 IGUIStaticText* fpstext = env->addStaticText(L"",
926 core::rect<s32>(400,4,570,23), true, false, bar);
927
928 IGUIStaticText* postext = env->addStaticText(L"",
929 core::rect<s32>(10,50,470,80),false, false, 0, GUI_ID_POSITION_TEXT);
930 postext->setVisible(false);
931
932 // set window caption
933
934 Caption += " - [";
935 Caption += driver->getName();
936 Caption += "]";
937 Device->setWindowCaption(Caption.c_str());
938
939 /*
940 That's nearly the whole application. We simply show the about message
941 box at start up, and load the first model. To make everything look
942 better, a skybox is created and a user controlled camera, to make the
943 application a little bit more interactive. Finally, everything is drawn
944 in a standard drawing loop.
945 */
946
947 // show about message box and load default model
948 if (argc==1)
949 showAboutText();
950 loadModel(StartUpModelFile.c_str());
951
952 // add skybox
953
954 SkyBox = smgr->addSkyBoxSceneNode(
955 driver->getTexture("irrlicht2_up.jpg"),
956 driver->getTexture("irrlicht2_dn.jpg"),
957 driver->getTexture("irrlicht2_lf.jpg"),
958 driver->getTexture("irrlicht2_rt.jpg"),
959 driver->getTexture("irrlicht2_ft.jpg"),
960 driver->getTexture("irrlicht2_bk.jpg"));
961
962 // add a camera scene node
963 Camera[0] = smgr->addCameraSceneNodeMaya();
964 Camera[0]->setFarValue(20000.f);
965 // Maya cameras reposition themselves relative to their target, so target the location
966 // where the mesh scene node is placed.
967 Camera[0]->setTarget(core::vector3df(0,30,0));
968
969 Camera[1] = smgr->addCameraSceneNodeFPS();
970 Camera[1]->setFarValue(20000.f);
971 Camera[1]->setPosition(core::vector3df(0,0,-70));
972 Camera[1]->setTarget(core::vector3df(0,30,0));
973
974 setActiveCamera(Camera[0]);
975
976 // load the irrlicht engine logo
977 IGUIImage *img =
978 env->addImage(driver->getTexture("irrlichtlogo2.png"),
979 core::position2d<s32>(10, driver->getScreenSize().Height - 128));
980
981 // lock the logo's edges to the bottom left corner of the screen
982 img->setAlignment(EGUIA_UPPERLEFT, EGUIA_UPPERLEFT,
983 EGUIA_LOWERRIGHT, EGUIA_LOWERRIGHT);
984
985 // remember state so we notice when the window does lose the focus
986 bool hasFocus = Device->isWindowFocused();
987
988 // draw everything
989
990 while(Device->run() && driver)
991 {
992 // Catch focus changes (workaround until Irrlicht has events for this)
993 bool focused = Device->isWindowFocused();
994 if ( hasFocus && !focused )
995 onKillFocus();
996 hasFocus = focused;
997
998 if (Device->isWindowActive())
999 {
1000 driver->beginScene(true, true, video::SColor(150,50,50,50));
1001
1002 smgr->drawAll();
1003 env->drawAll();
1004
1005 driver->endScene();
1006
1007 // update information about current frame-rate
1008 core::stringw str(L"FPS: ");
1009 str.append(core::stringw(driver->getFPS()));
1010 str += L" Tris: ";
1011 str.append(core::stringw(driver->getPrimitiveCountDrawn()));
1012 fpstext->setText(str.c_str());
1013
1014 // update information about the active camera
1015 scene::ICameraSceneNode* cam = Device->getSceneManager()->getActiveCamera();
1016 str = L"Pos: ";
1017 str.append(core::stringw(cam->getPosition().X));
1018 str += L" ";
1019 str.append(core::stringw(cam->getPosition().Y));
1020 str += L" ";
1021 str.append(core::stringw(cam->getPosition().Z));
1022 str += L" Tgt: ";
1023 str.append(core::stringw(cam->getTarget().X));
1024 str += L" ";
1025 str.append(core::stringw(cam->getTarget().Y));
1026 str += L" ";
1027 str.append(core::stringw(cam->getTarget().Z));
1028 postext->setText(str.c_str());
1029
1030 // update the tool dialog
1031 updateToolBox();
1032 }
1033 else
1034 Device->yield();
1035 }
1036
1037 Device->drop();
1038 return 0;
1039}
1040
1041/*
1042**/
diff --git a/src/others/irrlicht-1.8.1/examples/09.Meshviewer/resource.h b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/resource.h
new file mode 100644
index 0000000..a8e8616
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/resource.h
@@ -0,0 +1,16 @@
1//{{NO_DEPENDENCIES}}
2// Microsoft Visual C++ generated include file.
3// Used by 9.Meshviewer.rc
4//
5#define IDI_ICON1 101
6
7// Next default values for new objects
8//
9#ifdef APSTUDIO_INVOKED
10#ifndef APSTUDIO_READONLY_SYMBOLS
11#define _APS_NEXT_RESOURCE_VALUE 102
12#define _APS_NEXT_COMMAND_VALUE 40001
13#define _APS_NEXT_CONTROL_VALUE 1001
14#define _APS_NEXT_SYMED_VALUE 101
15#endif
16#endif
diff --git a/src/others/irrlicht-1.8.1/examples/09.Meshviewer/tutorial.html b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/tutorial.html
new file mode 100644
index 0000000..d296b6c
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/09.Meshviewer/tutorial.html
@@ -0,0 +1,182 @@
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 9. Mesh Viewer</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 tutorial shows how to create a more complex application with
22 the engine. We construct a simple mesh viewer using the user interface
23 API and the scenemanagement of Irrlicht.<br>
24 The tutorial shows how to create and use Buttons, Windows, Toolbars,
25 Menus, ComboBoxes, Tabcontrols, Editboxes, Images, MessageBoxes, SkyBoxes,
26 and how to parse XML files with the integrated XML reader of the engine.</p>
27 <p>The program which is described here will look like this:</p>
28 <p align="center"><img src="../../media/009shot.jpg" width="260" height="203"><br>
29 </p>
30 </div>
31 </td>
32 </tr>
33</table>
34<br>
35<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
36 <tr>
37 <td bgcolor="#666699"> <b><font color="#FFFFFF">Lets start!</font></b></td>
38 </tr>
39 <tr>
40 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
41 <div align="left">
42 <p>We start like in most other tutorials: Include all nesessary header
43 files, add a comment to let the engine be linked with the right .lib
44 file in Visual Studio, and deklare some global variables. We also
45 add two 'using namespece' statements, so we do not need to write the
46 whole names of all classes. In this tutorial, we use a lot stuff from
47 the gui namespace.</p>
48 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
49 <tr>
50 <td> <pre>#include &lt;irrlicht.h&gt;<br>#include &lt;iostream&gt;<br><br>using namespace irr;<br>using namespace gui;<br><br>#pragma comment(lib, &quot;Irrlicht.lib&quot;)<br><br>IrrlichtDevice *Device = 0;<br>core::stringc StartUpModelFile;<br>core::stringw MessageText;<br>core::stringw Caption;<br>scene::IAnimatedMeshSceneNode* Model = 0;<br>scene::ISceneNode* SkyBox = 0;<br></pre></td>
51 </tr>
52 </table>
53 <p> The three following functions do several stuff used by the mesh
54 viewer. The first function showAboutText() simply displays a messagebox
55 with a caption and a message text. The texts will be stored in the
56 MessageText and Caption variables at startup.</p>
57 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
58 <tr>
59 <td> <pre>void showAboutText()<br>{<br><font color="#006600"> // create modal message box with the text<br> // loaded from the xml file</font><font color="#00CC00">.</font><br> Device-&gt;getGUIEnvironment()-&gt;addMessageBox(<br> Caption.c_str(), MessageText.c_str());<br>}</pre></td>
60 </tr>
61 </table>
62 <p> The second function loadModel() loads a model and displays it using
63 an addAnimatedMeshSceneNode and the scene manager. Nothing difficult.
64 It also displays a short message box, if the model could not be loaded.
65 </p>
66 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
67 <tr>
68 <td> <pre>void loadModel(const c8* filename)<br>{<br> <font color="#006600">// load a model into the engine</font><br> if (Model)<br> Model-&gt;remove();<br> Model = 0;<br><br> scene::IAnimatedMesh* m = Device-&gt;getSceneManager()-&gt;getMesh(filename);<br> if (!m) <br> {<br> <font color="#006600">// model could not be loaded</font><br> if (StartUpModelFile != filename)<br> Device-&gt;getGUIEnvironment()-&gt;addMessageBox(<br> Caption.c_str(), L&quot;The model could not be loaded. &quot; \<br> L&quot;Maybe it is not a supported file format.&quot;);<br> return;<br> }<br><br><font color="#006600"> // set default material properties</font><br> Model = Device-&gt;getSceneManager()-&gt;addAnimatedMeshSceneNode(m);<br> Model-&gt;setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);<br> Model-&gt;setMaterialFlag(video::EMF_LIGHTING, false);<br> Model-&gt;setDebugDataVisible(true);<br>}</pre></td>
69 </tr>
70 </table>
71 <p> Finally, the third function creates a toolbox window. In this simple
72 mesh viewer, this toolbox only contains a tab control with three edit
73 boxes for changing the scale of the displayed model.</p>
74 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
75 <tr>
76 <td> <pre>void createToolBox()<br>{<br> <font color="#006600">// remove tool box if already there</font><br> IGUIEnvironment* env = Device-&gt;getGUIEnvironment();<br> IGUIElement* root = env-&gt;getRootGUIElement();<br> IGUIElement* e = root-&gt;getElementFromId(5000, true);<br> if (e) e-&gt;remove();<br><br> <font color="#006600">// create the toolbox window</font><br> IGUIWindow* wnd = env-&gt;addWindow(core::rect&lt;s32&gt;(450,25,640,480),<br> false, L&quot;Toolset&quot;, 0, 5000);<br><br> <font color="#006600">// create tab control and tabs</font><br> IGUITabControl* tab = env-&gt;addTabControl(<br> core::rect&lt;s32&gt;(2,20,640-452,480-7), wnd, true, true);<br> IGUITab* t1 = tab-&gt;addTab(L&quot;Scale&quot;);<br> IGUITab* t2 = tab-&gt;addTab(L&quot;Empty Tab&quot;);<br><br> <font color="#006600">// add some edit boxes and a button to tab one</font><br> env-&gt;addEditBox(L&quot;1.0&quot;, core::rect&lt;s32&gt;(40,50,130,70), true, t1, 901);<br> env-&gt;addEditBox(L&quot;1.0&quot;, core::rect&lt;s32&gt;(40,80,130,100), true, t1, 902);<br> env-&gt;addEditBox(L&quot;1.0&quot;, core::rect&lt;s32&gt;(40,110,130,130), true, t1, 903);<br> env-&gt;addButton(core::rect&lt;s32&gt;(10,150,100,190), t1, 1101, L&quot;set&quot;);<br><br> // bring irrlicht engine logo to front, because it<br> // now may be below the newly created toolbox<br> root-&gt;bringToFront(root-&gt;getElementFromId(666, true));<br>}</pre></td>
77 </tr>
78 </table>
79 <p> To get all the events sent by the GUI Elements, we need to create
80 an event receiver. This one is really simple. If an event occurs,
81 it checks the id of the caller and the event type, and starts an action
82 based on these values. For example, if a menu item with id 100 was
83 selected, if opens a file-open-dialog. </p>
84 </div>
85 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
86 <tr>
87 <td> <pre><font size="2">class MyEventReceiver : public IEventReceiver<br>{<br>public:<br> virtual bool OnEvent(const SEvent&amp; event)<br> {<br> if (event.EventType == EET_GUI_EVENT)<br> {<br> s32 id = event.GUIEvent.Caller-&gt;getID();<br> IGUIEnvironment* env = Device-&gt;getGUIEnvironment();<br> switch(event.GUIEvent.EventType)<br> {<br> case EGET_MENU_ITEM_SELECTED:<br> {<br> <font color="#006600"> // a menu item was clicked</font><br> IGUIContextMenu* menu = (IGUIContextMenu*)event.GUIEvent.Caller;<br> s32 id = menu-&gt;getItemCommandId(menu-&gt;getSelectedItem());<br> <br> switch(id)<br> {<br> case 100<font color="#006600">: // File -&gt; Open Mode</font>l<br> env-&gt;addFileOpenDialog(L&quot;Please select a model file to open&quot;);<br> break;<br> case 200<font color="#006600">: // File -&gt; Quit</font><br> Device-&gt;closeDevice();<br> break;<br> case 300<font color="#006600">: // View -&gt; Skybox</font><br> SkyBox-&gt;setVisible(!SkyBox-&gt;isVisible());<br> break;<br> case 400<font color="#006600">: // View -&gt; Debug Informatio</font>n<br> if (Model)<br> Model-&gt;setDebugDataVisible(!Model-&gt;isDebugDataVisible());<br> break;<br> case 500<font color="#006600">: // Help-&gt;About</font><br> showAboutText();<br> break;<br> case 610<font color="#006600">: // View -&gt; Material -&gt; Soli</font>d<br> if (Model)<br> Model-&gt;setMaterialType(video::EMT_SOLID);<br> break;<br> case 620<font color="#006600">: // View -&gt; Material -&gt; Transparen</font>t<br> if (Model)<br> Model-&gt;setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);<br> break;<br> case 630<font color="#006600">: // View -&gt; Material -&gt; Reflectio</font>n<br> if (Model)<br> Model-&gt;setMaterialType(video::EMT_SPHERE_MAP);<br> break;<br> }<br> break;<br> }<br> case EGET_FILE_SELECTED:<br> {<br> <font color="#006600"> // load the model file, selected in the file open dialo</font>g<br> IGUIFileOpenDialog* dialog = <br> (IGUIFileOpenDialog*)event.GUIEvent.Caller;<br> loadModel(core::stringc(dialog-&gt;getFilename()).c_str());<br> }<br> case EGET_BUTTON_CLICKED:<br> switch(id)<br> {<br> case 1101:<br> {<br> <font color="#006600"> // set scal</font>e<br> gui::IGUIElement* root = env-&gt;getRootGUIElement();<br> core::vector3df scale;<br> core::stringc s;<br> s = root-&gt;getElementFromId(901, true)-&gt;getText();<br> scale.X = (f32)atof(s.c_str());<br> s = root-&gt;getElementFromId(902, true)-&gt;getText();<br> scale.Y = (f32)atof(s.c_str());<br> s = root-&gt;getElementFromId(903, true)-&gt;getText();<br> scale.Z = (f32)atof(s.c_str());<br> if (Model)<br> Model-&gt;setScale(scale);<br> }<br> break;<br> case 1102:<br> env-&gt;addFileOpenDialog(L&quot;Please select a model file to open&quot;);<br> break;<br> case 1103:<br> showAboutText();<br> break;<br> case 1104:<br> createToolBox();<br> break;<br> }<br> break;<br> }<br> }<br> return false;<br> }<br>};</font></pre></td>
88 </tr>
89 </table>
90 <p> Most of the hard work is done. We only need to create the Irrlicht
91 Engine device and all the buttons, menus and toolbars. We start up the
92 engine as usual, using createDevice(). To make our application catch
93 events, we set our eventreceiver as parameter. The #ifdef WIN32 preprocessor
94 commands are not necesarry, but I included them to make the tutorial
95 use DirectX on Windows and OpenGL on all other platforms like Linux.
96 As you can see, there is also a unusual call to IrrlichtDevice::setResizeAble().
97 This makes the render window resizeable, which is quite useful for a
98 mesh viewer. </p>
99 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
100 <tr>
101 <td><pre>int main()<br>{<br> // ask user for driver
102<br> video::E_DRIVER_TYPE driverType;
103<br> 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 key;<br> std::cin &gt;&gt; key;<br><br> switch(key)<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> }
104<br> // create device and exit if creation failed
105<br> MyEventReceiver receiver;<br> Device = createDevice(driverType, core::dimension2d&lt;s32&gt;(640, 480),<br> 16, false, false, false, &amp;receiver);
106<br> if (Device == 0)<br> return 1; // could not create selected driver.<br><br> Device-&gt;setResizable(true);<br> Device-&gt;setWindowCaption(L&quot;Irrlicht Engine - Loading...&quot;);<br><br> video::IVideoDriver* driver = Device-&gt;getVideoDriver();<br> IGUIEnvironment* env = Device-&gt;getGUIEnvironment();<br> scene::ISceneManager* smgr = Device-&gt;getSceneManager();<br></pre></td>
107 </tr>
108 </table>
109 <p> The next step is to read the configuration file. It is stored in the
110 xml format and looks a little bit like this:<br>
111 <br>
112 <font face="Courier New, Courier, mono">&lt;?xml version=&quot;1.0&quot;?&gt;<br>
113 &lt;config&gt;<br>
114 &lt;startUpModel file=&quot;some filename&quot; /&gt;<br>
115 &lt;messageText caption=&quot;Irrlicht Engine Mesh Viewer&quot;&gt;<br>
116 Hello!<br>
117 &lt;/messageText&gt;<br>
118 &lt;/config&gt;</font><br>
119 <br>
120 We need the data stored in there to be written into the global variables
121 StartUpModelFile, MessageText and Caption. This is now done using the
122 Irrlicht Engine integrated XML parser: </p>
123 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
124 <tr>
125 <td><pre> <font color="#006600">// read configuration from xml file</font><br> io::IXMLReader* xml =<br> Device-&gt;getFileSystem()-&gt;createXMLReader(&quot;../../media/config.xml&quot;);<br> while(xml &amp;&amp; xml-&gt;read())<br> {<br> switch(xml-&gt;getNodeType())<br> {<br> case io::EXN_TEXT:<br> <font color="#006600">// in this xml file, the only text which occurs is the messageText</font><br> MessageText = xml-&gt;getNodeData();<br> break;<br> case io::EXN_ELEMENT:<br> {<br> if (core::stringw(&quot;startUpModel&quot;) == xml-&gt;getNodeName())<br> StartUpModelFile = xml-&gt;getAttributeValue(L&quot;file&quot;);<br> else<br> if (core::stringw(&quot;messageText&quot;) == xml-&gt;getNodeName())<br> Caption = xml-&gt;getAttributeValue(L&quot;caption&quot;);<br> }<br> break;<br> }<br> }<br> if (xml)<br> xml-&gt;drop(); <font color="#006600">// don't forget to delete the xml reader </font><br>
126</pre></td>
127 </tr>
128 </table>
129 <p> That wasn't difficult. Now we'll set a nicer font and create the Menu.
130 It is possible to create submenus for every menu item. The call menu-&gt;addItem(L&quot;File&quot;,
131 -1, true, true); for example adds a new menu Item with the name &quot;File&quot;
132 and the id -1. The following parameter says that the menu item should
133 be enabled, and the last one says, that there should be a submenu. The
134 submenu can now be accessed with menu-&gt;getSubMenu(0), because the
135 &quot;File&quot; entry is the menu item with index 0. </p>
136 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
137 <tr>
138 <td><pre> <font color="#006600">// set a nicer font</font><br> IGUISkin* skin = env-&gt;getSkin();<br> IGUIFont* font = env-&gt;getFont(&quot;../../media/fonthaettenschweiler.bmp&quot;);<br> if (font)<br> skin-&gt;setFont(font);<br><br><font color="#006600"> // create menu</font><br> gui::IGUIContextMenu* menu = env-&gt;addMenu();<br> menu-&gt;addItem(L&quot;File&quot;, -1, true, true);<br> menu-&gt;addItem(L&quot;View&quot;, -1, true, true);<br> menu-&gt;addItem(L&quot;Help&quot;, -1, true, true);<br><br> gui::IGUIContextMenu* submenu;<br> submenu = menu-&gt;getSubMenu(0);<br> submenu-&gt;addItem(L&quot;Open Model File...&quot;, 100);<br> submenu-&gt;addSeparator();<br> submenu-&gt;addItem(L&quot;Quit&quot;, 200);<br><br> submenu = menu-&gt;getSubMenu(1);<br> submenu-&gt;addItem(L&quot;toggle sky box visibility&quot;, 300);<br> submenu-&gt;addItem(L&quot;toggle model debug information&quot;, 400);<br> submenu-&gt;addItem(L&quot;model material&quot;, -1, true, true );<br><br> submenu = submenu-&gt;getSubMenu(2);<br> submenu-&gt;addItem(L&quot;Solid&quot;, 610);<br> submenu-&gt;addItem(L&quot;Transparent&quot;, 620);<br> submenu-&gt;addItem(L&quot;Reflection&quot;, 630);<br><br> submenu = menu-&gt;getSubMenu(2);<br> submenu-&gt;addItem(L&quot;About&quot;, 500);
139</pre></td>
140 </tr>
141 </table>
142 <br>
143 We want a toolbar, onto which we can place colored buttons and important
144 looking stuff like a senseless combobox.<br>
145 <br>
146 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
147 <tr>
148 <td><pre><font color="#006600"> // create toolbar</font><br> gui::IGUIToolBar* bar = env-&gt;addToolBar();<br> bar-&gt;addButton(1102, 0, driver-&gt;getTexture(&quot;../../media/open.bmp&quot;));<br> bar-&gt;addButton(1103, 0, driver-&gt;getTexture(&quot;../../media/help.bmp&quot;));<br> bar-&gt;addButton(1104, 0, driver-&gt;getTexture(&quot;../../media/tools.bmp&quot;));<br><br><font color="#006600"> // create a combobox with some senseless texts</font><br> gui::IGUIComboBox* box = env-&gt;addComboBox(core::rect&lt;s32&gt;(100,5,200,25), bar);<br> box-&gt;addItem(L&quot;Bilinear&quot;);<br> box-&gt;addItem(L&quot;Trilinear&quot;);<br> box-&gt;addItem(L&quot;Anisotropic&quot;);<br> box-&gt;addItem(L&quot;Isotropic&quot;);<br> box-&gt;addItem(L&quot;Psychedelic&quot;);<br> box-&gt;addItem(L&quot;No filtering&quot;);</pre></td>
149 </tr>
150 </table>
151 <br>
152 To make the editor look a little bit better, we disable transparent gui
153 elements, and add a Irrlicht Engine logo. In addition, a text, which will
154 show the current frame per second value is created, and the window caption
155 changed.<br>
156 <br>
157 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
158 <tr>
159 <td><pre> <font color="#006600">// disable alpha</font><br> for (s32 i=0; i&lt;gui::EGDC_COUNT ; ++i)<br> {<br> video::SColor col = env-&gt;getSkin()-&gt;getColor((gui::EGUI_DEFAULT_COLOR)i);<br> col.setAlpha(255);<br> env-&gt;getSkin()-&gt;setColor((gui::EGUI_DEFAULT_COLOR)i, col);<br> }<br><br><font color="#006600"> // add a tabcontrol</font><br> createToolBox();<br><br> <font color="#006600">// add the irrlicht engine logo</font><br> IGUIImage* img = env-&gt;addImage(core::rect&lt;s32&gt;(22,429,108,460), 0, 666);<br> img-&gt;setImage(driver-&gt;getTexture(&quot;../../media/irrlichtlogoaligned.jpg&quot;));<br><br> <font color="#006600">// create fps text </font><br> IGUIStaticText* fpstext =<br> env-&gt;addStaticText(L&quot;&quot;, core::rect&lt;s32&gt;(210,26,270,41), true);<br><br> <font color="#006600">// set window caption</font><br> Caption += &quot; - [&quot;;<br> Caption += driver-&gt;getName();<br> Caption += &quot;]&quot;;<br> Device-&gt;setWindowCaption(Caption.c_str());</pre></td>
160 </tr>
161 </table>
162 <br>
163 That's nearly the whole application. We simply show the about message
164 box at start up, and load the first model. To make everything look better,
165 a skybox is created and a user controled camera, to make the application
166 a little bit more interactive. Finally, everything is drawed in a standard
167 drawing loop.<br>
168 <br>
169 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
170 <tr>
171 <td><pre> <font color="#006600">// show about message box and load default model</font><br> showAboutText();<br> loadModel(StartUpModelFile.c_str());<br><font color="#006600"><br> // add skybox</font> <br> SkyBox = smgr-&gt;addSkyBoxSceneNode(<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_up.bmp&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_dn.bmp&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_lf.bmp&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_rt.bmp&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_ft.bmp&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_bk.bmp&quot;));<br><br><font color="#006600"> // add a camera scene node </font><br> smgr-&gt;addCameraSceneNodeMaya();<br> <br> <font color="#006600">// draw everything</font><br> while(Device-&gt;run() &amp;&amp; driver)<br> if (Device-&gt;isWindowActive())<br> {<br> driver-&gt;beginScene(true, true, video::SColor(150,50,50,50));<br> smgr-&gt;drawAll();<br> env-&gt;drawAll();<br> <br> driver-&gt;endScene();<br><br> core::stringw str = L&quot;FPS: &quot;;<br> str += driver-&gt;getFPS();<br> fpstext-&gt;setText(str.c_str());<br> }<br> Device-&gt;drop();<br> return 0;<br>}<br></pre></td>
172 </tr>
173 </table>
174 <br>
175 Compile and run this, and you have a fully functional 3d Mesh viewer.<br>
176 </div>
177 </td>
178 </tr>
179</table>
180<p>&nbsp;</p>
181 </body>
182</html>
diff --git a/src/others/irrlicht-1.8.1/examples/10.Shaders/Makefile b/src/others/irrlicht-1.8.1/examples/10.Shaders/Makefile
new file mode 100644
index 0000000..ff2df2a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/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 = 10.Shaders
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/10.Shaders/Shaders.cbp b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.cbp
new file mode 100644
index 0000000..ec37b22
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.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 10 Shaders" />
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\Shaders" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\Shaders" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 <Add option="-D_IRR_STATIC_LIB_" />
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/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.dev b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.dev
new file mode 100644
index 0000000..bcaa4f8
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 10 Shaders
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=10.Shaders.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/10.Shaders/Shaders.vcproj b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.vcproj
new file mode 100644
index 0000000..e730a2f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders.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="10.Shaders"
6 ProjectGUID="{A4F71E8D-4042-4909-9AB8-1BA4CF5B926D}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/Shaders.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\10.Shaders.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/Shaders.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/Shaders.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/Shaders.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\10.Shaders.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/Shaders.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/Shaders.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc10.vcxproj
new file mode 100644
index 0000000..c2a526e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_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>10.Shaders</ProjectName>
23 <ProjectGuid>{27158C82-CD15-4A9B-9848-35E7065B209F}</ProjectGuid>
24 <RootNamespace>Shaders</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/Shaders.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\10.Shaders.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/Shaders.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\10.Shaders.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/Shaders.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\10.Shaders.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/Shaders.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\10.Shaders.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/10.Shaders/Shaders_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc11.vcxproj
new file mode 100644
index 0000000..30ae642
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_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>10.Shaders</ProjectName>
23 <ProjectGuid>{27158C82-CD15-4A9B-9848-35E7065B209F}</ProjectGuid>
24 <RootNamespace>Shaders</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/Shaders.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\10.Shaders.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/Shaders.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\10.Shaders.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/Shaders.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\10.Shaders.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/Shaders.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\10.Shaders.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/10.Shaders/Shaders_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc8.vcproj
new file mode 100644
index 0000000..f107140
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_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="10.Shaders_vc8"
6 ProjectGUID="{27158C82-CD15-4A9B-9848-35E7065B209F}"
7 RootNamespace="Shaders_vc8"
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 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=".\Debug/Shaders.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/Shaders.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\10.Shaders.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/Shaders.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Shaders.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Shaders.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\10.Shaders.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Shaders.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_vc9.vcproj
new file mode 100644
index 0000000..d870b03
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/Shaders_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="10.Shaders_vc9"
6 ProjectGUID="{27158C82-CD15-4A9B-9848-35E7065B209F}"
7 RootNamespace="Shaders_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/Shaders.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/Shaders.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\10.Shaders.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/Shaders.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/Shaders.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/Shaders.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\10.Shaders.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/Shaders.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/10.Shaders/main.cpp b/src/others/irrlicht-1.8.1/examples/10.Shaders/main.cpp
new file mode 100644
index 0000000..269c47f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/main.cpp
@@ -0,0 +1,443 @@
1/** Example 010 Shaders
2
3This tutorial shows how to use shaders for D3D8, D3D9, OpenGL, and Cg with the
4engine and how to create new material types with them. It also shows how to
5disable the generation of mipmaps at texture loading, and how to use text scene
6nodes.
7
8This tutorial does not explain how shaders work. I would recommend to read the
9D3D, OpenGL, or Cg documentation, to search a tutorial, or to read a book about
10this.
11
12At first, we need to include all headers and do the stuff we always do, like in
13nearly all other tutorials:
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
25/*
26Because we want to use some interesting shaders in this tutorials, we need to
27set some data for them to make them able to compute nice colors. In this
28example, we'll use a simple vertex shader which will calculate the color of the
29vertex based on the position of the camera.
30For this, the shader needs the following data: The inverted world matrix for
31transforming the normal, the clip matrix for transforming the position, the
32camera position and the world position of the object for the calculation of the
33angle of light, and the color of the light. To be able to tell the shader all
34this data every frame, we have to derive a class from the
35IShaderConstantSetCallBack interface and override its only method, namely
36OnSetConstants(). This method will be called every time the material is set.
37The method setVertexShaderConstant() of the IMaterialRendererServices interface
38is used to set the data the shader needs. If the user chose to use a High Level
39shader language like HLSL instead of Assembler in this example, you have to set
40the variable name as parameter instead of the register index.
41*/
42
43IrrlichtDevice* device = 0;
44bool UseHighLevelShaders = false;
45bool UseCgShaders = false;
46
47class MyShaderCallBack : public video::IShaderConstantSetCallBack
48{
49public:
50
51 virtual void OnSetConstants(video::IMaterialRendererServices* services,
52 s32 userData)
53 {
54 video::IVideoDriver* driver = services->getVideoDriver();
55
56 // set inverted world matrix
57 // if we are using highlevel shaders (the user can select this when
58 // starting the program), we must set the constants by name.
59
60 core::matrix4 invWorld = driver->getTransform(video::ETS_WORLD);
61 invWorld.makeInverse();
62
63 if (UseHighLevelShaders)
64 services->setVertexShaderConstant("mInvWorld", invWorld.pointer(), 16);
65 else
66 services->setVertexShaderConstant(invWorld.pointer(), 0, 4);
67
68 // set clip matrix
69
70 core::matrix4 worldViewProj;
71 worldViewProj = driver->getTransform(video::ETS_PROJECTION);
72 worldViewProj *= driver->getTransform(video::ETS_VIEW);
73 worldViewProj *= driver->getTransform(video::ETS_WORLD);
74
75 if (UseHighLevelShaders)
76 services->setVertexShaderConstant("mWorldViewProj", worldViewProj.pointer(), 16);
77 else
78 services->setVertexShaderConstant(worldViewProj.pointer(), 4, 4);
79
80 // set camera position
81
82 core::vector3df pos = device->getSceneManager()->
83 getActiveCamera()->getAbsolutePosition();
84
85 if (UseHighLevelShaders)
86 services->setVertexShaderConstant("mLightPos", reinterpret_cast<f32*>(&pos), 3);
87 else
88 services->setVertexShaderConstant(reinterpret_cast<f32*>(&pos), 8, 1);
89
90 // set light color
91
92 video::SColorf col(0.0f,1.0f,1.0f,0.0f);
93
94 if (UseHighLevelShaders)
95 services->setVertexShaderConstant("mLightColor",
96 reinterpret_cast<f32*>(&col), 4);
97 else
98 services->setVertexShaderConstant(reinterpret_cast<f32*>(&col), 9, 1);
99
100 // set transposed world matrix
101
102 core::matrix4 world = driver->getTransform(video::ETS_WORLD);
103 world = world.getTransposed();
104
105 if (UseHighLevelShaders)
106 {
107 services->setVertexShaderConstant("mTransWorld", world.pointer(), 16);
108
109 // set texture, for textures you can use both an int and a float setPixelShaderConstant interfaces (You need it only for an OpenGL driver).
110 s32 TextureLayerID = 0;
111 if (UseHighLevelShaders)
112 services->setPixelShaderConstant("myTexture", &TextureLayerID, 1);
113 }
114 else
115 services->setVertexShaderConstant(world.pointer(), 10, 4);
116 }
117};
118
119/*
120The next few lines start up the engine just like in most other tutorials
121before. But in addition, we ask the user if he wants to use high level shaders
122in this example, if he selected a driver which is capable of doing so.
123*/
124int main()
125{
126 // ask user for driver
127 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
128 if (driverType==video::EDT_COUNT)
129 return 1;
130
131 // ask the user if we should use high level shaders for this example
132 if (driverType == video::EDT_DIRECT3D9 ||
133 driverType == video::EDT_OPENGL)
134 {
135 char i;
136 printf("Please press 'y' if you want to use high level shaders.\n");
137 std::cin >> i;
138 if (i == 'y')
139 {
140 UseHighLevelShaders = true;
141 printf("Please press 'y' if you want to use Cg shaders.\n");
142 std::cin >> i;
143 if (i == 'y')
144 UseCgShaders = true;
145 }
146 }
147
148 // create device
149 device = createDevice(driverType, core::dimension2d<u32>(640, 480));
150
151 if (device == 0)
152 return 1; // could not create selected driver.
153
154 video::IVideoDriver* driver = device->getVideoDriver();
155 scene::ISceneManager* smgr = device->getSceneManager();
156 gui::IGUIEnvironment* gui = device->getGUIEnvironment();
157
158 // Make sure we don't try Cg without support for it
159 if (UseCgShaders && !driver->queryFeature(video::EVDF_CG))
160 {
161 printf("Warning: No Cg support, disabling.\n");
162 UseCgShaders=false;
163 }
164
165 /*
166 Now for the more interesting parts. If we are using Direct3D, we want
167 to load vertex and pixel shader programs, if we have OpenGL, we want to
168 use ARB fragment and vertex programs. I wrote the corresponding
169 programs down into the files d3d8.ps, d3d8.vs, d3d9.ps, d3d9.vs,
170 opengl.ps and opengl.vs. We only need the right filenames now. This is
171 done in the following switch. Note, that it is not necessary to write
172 the shaders into text files, like in this example. You can even write
173 the shaders directly as strings into the cpp source file, and use later
174 addShaderMaterial() instead of addShaderMaterialFromFiles().
175 */
176
177 io::path vsFileName; // filename for the vertex shader
178 io::path psFileName; // filename for the pixel shader
179
180 switch(driverType)
181 {
182 case video::EDT_DIRECT3D8:
183 psFileName = "../../media/d3d8.psh";
184 vsFileName = "../../media/d3d8.vsh";
185 break;
186 case video::EDT_DIRECT3D9:
187 if (UseHighLevelShaders)
188 {
189 // Cg can also handle this syntax
190 psFileName = "../../media/d3d9.hlsl";
191 vsFileName = psFileName; // both shaders are in the same file
192 }
193 else
194 {
195 psFileName = "../../media/d3d9.psh";
196 vsFileName = "../../media/d3d9.vsh";
197 }
198 break;
199
200 case video::EDT_OPENGL:
201 if (UseHighLevelShaders)
202 {
203 if (!UseCgShaders)
204 {
205 psFileName = "../../media/opengl.frag";
206 vsFileName = "../../media/opengl.vert";
207 }
208 else
209 {
210 // Use HLSL syntax for Cg
211 psFileName = "../../media/d3d9.hlsl";
212 vsFileName = psFileName; // both shaders are in the same file
213 }
214 }
215 else
216 {
217 psFileName = "../../media/opengl.psh";
218 vsFileName = "../../media/opengl.vsh";
219 }
220 break;
221 }
222
223 /*
224 In addition, we check if the hardware and the selected renderer is
225 capable of executing the shaders we want. If not, we simply set the
226 filename string to 0. This is not necessary, but useful in this
227 example: For example, if the hardware is able to execute vertex shaders
228 but not pixel shaders, we create a new material which only uses the
229 vertex shader, and no pixel shader. Otherwise, if we would tell the
230 engine to create this material and the engine sees that the hardware
231 wouldn't be able to fulfill the request completely, it would not
232 create any new material at all. So in this example you would see at
233 least the vertex shader in action, without the pixel shader.
234 */
235
236 if (!driver->queryFeature(video::EVDF_PIXEL_SHADER_1_1) &&
237 !driver->queryFeature(video::EVDF_ARB_FRAGMENT_PROGRAM_1))
238 {
239 device->getLogger()->log("WARNING: Pixel shaders disabled "\
240 "because of missing driver/hardware support.");
241 psFileName = "";
242 }
243
244 if (!driver->queryFeature(video::EVDF_VERTEX_SHADER_1_1) &&
245 !driver->queryFeature(video::EVDF_ARB_VERTEX_PROGRAM_1))
246 {
247 device->getLogger()->log("WARNING: Vertex shaders disabled "\
248 "because of missing driver/hardware support.");
249 vsFileName = "";
250 }
251
252 /*
253 Now lets create the new materials. As you maybe know from previous
254 examples, a material type in the Irrlicht engine is set by simply
255 changing the MaterialType value in the SMaterial struct. And this value
256 is just a simple 32 bit value, like video::EMT_SOLID. So we only need
257 the engine to create a new value for us which we can set there. To do
258 this, we get a pointer to the IGPUProgrammingServices and call
259 addShaderMaterialFromFiles(), which returns such a new 32 bit value.
260 That's all.
261
262 The parameters to this method are the following: First, the names of
263 the files containing the code of the vertex and the pixel shader. If
264 you would use addShaderMaterial() instead, you would not need file
265 names, then you could write the code of the shader directly as string.
266 The following parameter is a pointer to the IShaderConstantSetCallBack
267 class we wrote at the beginning of this tutorial. If you don't want to
268 set constants, set this to 0. The last parameter tells the engine which
269 material it should use as base material.
270
271 To demonstrate this, we create two materials with a different base
272 material, one with EMT_SOLID and one with EMT_TRANSPARENT_ADD_COLOR.
273 */
274
275 // create materials
276
277 video::IGPUProgrammingServices* gpu = driver->getGPUProgrammingServices();
278 s32 newMaterialType1 = 0;
279 s32 newMaterialType2 = 0;
280
281 if (gpu)
282 {
283 MyShaderCallBack* mc = new MyShaderCallBack();
284
285 // create the shaders depending on if the user wanted high level
286 // or low level shaders:
287
288 if (UseHighLevelShaders)
289 {
290 // Choose the desired shader type. Default is the native
291 // shader type for the driver, for Cg pass the special
292 // enum value EGSL_CG
293 const video::E_GPU_SHADING_LANGUAGE shadingLanguage =
294 UseCgShaders ? video::EGSL_CG:video::EGSL_DEFAULT;
295
296 // create material from high level shaders (hlsl, glsl or cg)
297
298 newMaterialType1 = gpu->addHighLevelShaderMaterialFromFiles(
299 vsFileName, "vertexMain", video::EVST_VS_1_1,
300 psFileName, "pixelMain", video::EPST_PS_1_1,
301 mc, video::EMT_SOLID, 0, shadingLanguage);
302
303 newMaterialType2 = gpu->addHighLevelShaderMaterialFromFiles(
304 vsFileName, "vertexMain", video::EVST_VS_1_1,
305 psFileName, "pixelMain", video::EPST_PS_1_1,
306 mc, video::EMT_TRANSPARENT_ADD_COLOR, 0 , shadingLanguage);
307 }
308 else
309 {
310 // create material from low level shaders (asm or arb_asm)
311
312 newMaterialType1 = gpu->addShaderMaterialFromFiles(vsFileName,
313 psFileName, mc, video::EMT_SOLID);
314
315 newMaterialType2 = gpu->addShaderMaterialFromFiles(vsFileName,
316 psFileName, mc, video::EMT_TRANSPARENT_ADD_COLOR);
317 }
318
319 mc->drop();
320 }
321
322 /*
323 Now it's time for testing the materials. We create a test cube and set
324 the material we created. In addition, we add a text scene node to the
325 cube and a rotation animator to make it look more interesting and
326 important.
327 */
328
329 // create test scene node 1, with the new created material type 1
330
331 scene::ISceneNode* node = smgr->addCubeSceneNode(50);
332 node->setPosition(core::vector3df(0,0,0));
333 node->setMaterialTexture(0, driver->getTexture("../../media/wall.bmp"));
334 node->setMaterialFlag(video::EMF_LIGHTING, false);
335 node->setMaterialType((video::E_MATERIAL_TYPE)newMaterialType1);
336
337 smgr->addTextSceneNode(gui->getBuiltInFont(),
338 L"PS & VS & EMT_SOLID",
339 video::SColor(255,255,255,255), node);
340
341 scene::ISceneNodeAnimator* anim = smgr->createRotationAnimator(
342 core::vector3df(0,0.3f,0));
343 node->addAnimator(anim);
344 anim->drop();
345
346 /*
347 Same for the second cube, but with the second material we created.
348 */
349
350 // create test scene node 2, with the new created material type 2
351
352 node = smgr->addCubeSceneNode(50);
353 node->setPosition(core::vector3df(0,-10,50));
354 node->setMaterialTexture(0, driver->getTexture("../../media/wall.bmp"));
355 node->setMaterialFlag(video::EMF_LIGHTING, false);
356 node->setMaterialFlag(video::EMF_BLEND_OPERATION, true);
357 node->setMaterialType((video::E_MATERIAL_TYPE)newMaterialType2);
358
359 smgr->addTextSceneNode(gui->getBuiltInFont(),
360 L"PS & VS & EMT_TRANSPARENT",
361 video::SColor(255,255,255,255), node);
362
363 anim = smgr->createRotationAnimator(core::vector3df(0,0.3f,0));
364 node->addAnimator(anim);
365 anim->drop();
366
367 /*
368 Then we add a third cube without a shader on it, to be able to compare
369 the cubes.
370 */
371
372 // add a scene node with no shader
373
374 node = smgr->addCubeSceneNode(50);
375 node->setPosition(core::vector3df(0,50,25));
376 node->setMaterialTexture(0, driver->getTexture("../../media/wall.bmp"));
377 node->setMaterialFlag(video::EMF_LIGHTING, false);
378 smgr->addTextSceneNode(gui->getBuiltInFont(), L"NO SHADER",
379 video::SColor(255,255,255,255), node);
380
381 /*
382 And last, we add a skybox and a user controlled camera to the scene.
383 For the skybox textures, we disable mipmap generation, because we don't
384 need mipmaps on it.
385 */
386
387 // add a nice skybox
388
389 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
390
391 smgr->addSkyBoxSceneNode(
392 driver->getTexture("../../media/irrlicht2_up.jpg"),
393 driver->getTexture("../../media/irrlicht2_dn.jpg"),
394 driver->getTexture("../../media/irrlicht2_lf.jpg"),
395 driver->getTexture("../../media/irrlicht2_rt.jpg"),
396 driver->getTexture("../../media/irrlicht2_ft.jpg"),
397 driver->getTexture("../../media/irrlicht2_bk.jpg"));
398
399 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, true);
400
401 // add a camera and disable the mouse cursor
402
403 scene::ICameraSceneNode* cam = smgr->addCameraSceneNodeFPS();
404 cam->setPosition(core::vector3df(-100,50,100));
405 cam->setTarget(core::vector3df(0,0,0));
406 device->getCursorControl()->setVisible(false);
407
408 /*
409 Now draw everything. That's all.
410 */
411
412 int lastFPS = -1;
413
414 while(device->run())
415 if (device->isWindowActive())
416 {
417 driver->beginScene(true, true, video::SColor(255,0,0,0));
418 smgr->drawAll();
419 driver->endScene();
420
421 int fps = driver->getFPS();
422
423 if (lastFPS != fps)
424 {
425 core::stringw str = L"Irrlicht Engine - Vertex and pixel shader example [";
426 str += driver->getName();
427 str += "] FPS:";
428 str += fps;
429
430 device->setWindowCaption(str.c_str());
431 lastFPS = fps;
432 }
433 }
434
435 device->drop();
436
437 return 0;
438}
439
440/*
441Compile and run this, and I hope you have fun with your new little shader
442writing tool :).
443**/
diff --git a/src/others/irrlicht-1.8.1/examples/10.Shaders/tutorial.html b/src/others/irrlicht-1.8.1/examples/10.Shaders/tutorial.html
new file mode 100644
index 0000000..05c4f08
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/10.Shaders/tutorial.html
@@ -0,0 +1,566 @@
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 10. Shaders</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 tutorial shows how to use shaders for D3D8, D3D9 and OpenGL with
22 the engine and how to create new material types with them. It also shows
23 how to disable the generation of mipmaps at texture loading, and how
24 to use text scene nodes.</p>
25 <p>This tutorial does not explain how shaders work. I would recommend
26 to read the D3D or OpenGL documentation, to search a tutorial, or to
27 read a book about this.</p>
28 <p>The program which is described here will look like this:</p>
29 <p align="center"><img src="../../media/010shot.jpg" width="260" height="203"><br>
30 </p>
31 </div>
32 </td>
33 </tr>
34</table>
35<br>
36<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
37 <tr>
38 <td bgcolor="#666699"> <b><font color="#FFFFFF">Lets start!</font></b></td>
39 </tr>
40 <tr>
41 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
42 <div align="left">
43 <p>At first, we need to include all headers and do the stuff we always
44 do, like in nearly all other tutorials:</p>
45 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
46 <tr>
47 <td> <pre>#include &lt;irrlicht.h&gt;<br>#include &lt;iostream&gt;<br><br>using namespace irr;<br><br>#pragma comment(lib, &quot;Irrlicht.lib&quot;)<br></pre></td>
48 </tr>
49 </table>
50 <p>Because we want to use some interesting shaders in this tutorials,
51 we need to set some data for them to make them able to compute nice
52 colors. In this example, we'll use a simple vertex shader which will
53 calculate the color of the vertex based on the position of the camera.
54 For this, the shader needs the following data: The inverted world
55 matrix for transforming the normal, the clip matrix for transforming
56 the position, the camera position and the world position of the object
57 for the calculation of the angle of light, and the color of the light.
58 To be able to tell the shader all this data every frame, we have to
59 derive a class from the IShaderConstantSetCallBack interface and override
60 its only method, namely OnSetConstants(). This method will be called
61 every time the material is set. <br>
62 The method setVertexShaderConstant() of the IMaterialRendererServices
63 interface is used to set the data the shader needs. If the user chose
64 to use a High Level shader language like HLSL instead of Assembler
65 in this example, you have to set the variable name as parameter instead
66 of the register index.</p>
67 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
68 <tr>
69 <td> <pre>IrrlichtDevice* device = 0;<br>bool UseHighLevelShaders = false;<br><br>class MyShaderCallBack : public video::IShaderConstantSetCallBack<br>{<br>public:
70<br> virtual void OnSetConstants(video::IMaterialRendererServices* services, s32 userData)<br> {<br> video::IVideoDriver* driver = services-&gt;getVideoDriver();<br><br> <font color="#006600">// set inverted world matrix<br> // if we are using highlevel shaders (the user can select this when<br> // starting the program), we must set the constants by name.</font><br> core::matrix4 invWorld = driver-&gt;getTransform(video::ETS_WORLD);<br> invWorld.makeInverse();<br><br> if (UseHighLevelShaders)<br> services-&gt;setVertexShaderConstant(&quot;mInvWorld&quot;, &amp;invWorld.M[0], 16);<br> else<br> services-&gt;setVertexShaderConstant(&amp;invWorld.M[0], 0, 4);<br><font color="#006600"><br> // set clip matrix<br></font> core::matrix4 worldViewProj;<br> worldViewProj = driver-&gt;getTransform(video::ETS_PROJECTION); <br> worldViewProj *= driver-&gt;getTransform(video::ETS_VIEW);<br> worldViewProj *= driver-&gt;getTransform(video::ETS_WORLD);<br><br> if (UseHighLevelShaders)<br> services-&gt;setVertexShaderConstant(&quot;mWorldViewProj&quot;, &amp;worldViewProj.M[0], 16);<br> else<br> services-&gt;setVertexShaderConstant(&amp;worldViewProj.M[0], 4, 4);<br> <br><font color="#006600"> </font><font color="#006600">// set camera position<br></font> core::vector3df pos = device-&gt;getSceneManager()-&gt;<br> getActiveCamera()-&gt;getAbsolutePosition();<br><br> if (UseHighLevelShaders)<br> services-&gt;setVertexShaderConstant(&quot;mLightPos&quot;, reinterpret_cast&lt;f32*&gt;(&amp;pos), 3);<br> else<br> services-&gt;setVertexShaderConstant(reinterpret_cast&lt;f32*&gt;(&amp;pos), 8, 1);<br><br><font color="#006600"> </font><font color="#006600">// set light color <br></font> video::SColorf col(0.0f,1.0f,1.0f,0.0f);<br><br> if (UseHighLevelShaders)<br> services-&gt;setVertexShaderConstant(&quot;mLightColor&quot;, reinterpret_cast&lt;f32*&gt;(&amp;col), 4);<br> else<br> services-&gt;setVertexShaderConstant(reinterpret_cast&lt;f32*&gt;(&amp;col), 9, 1);<br><br><font color="#006600"> </font><font color="#006600">// set transposed world matrix<br></font> core::matrix4 world = driver-&gt;getTransform(video::ETS_WORLD);<br> world = world.getTransposed();<br><br> if (UseHighLevelShaders)<br> services-&gt;setVertexShaderConstant(&quot;mTransWorld&quot;, &amp;world.M[0], 16);<br> else<br> services-&gt;setVertexShaderConstant(&amp;world.M[0], 10, 4);<br> }<br>};</pre></td>
71 </tr>
72 </table>
73 <p> The next few lines start up the engine. Just like in most other
74 tutorials before. But in addition, we ask the user if he wants this
75 example to use high level shaders if he selected a driver which is
76 capable of doing so.</p>
77 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
78 <tr>
79 <td> <pre>int main()<br>{<br><font color="#006600"> // let user select driver type</font><br><br> video::E_DRIVER_TYPE driverType = video::EDT_DIRECTX9;<br><br> 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> } <br><br><font color="#006600"> </font> <font color="#006600">// ask the user if we should use high level shaders for this example<br> </font> if (driverType == video::EDT_DIRECT3D9 ||<br> driverType == video::EDT_OPENGL)
80 {<br> printf(&quot;<font color="#CC0000">Please press 'y' if you want to use high level shaders.\n</font>&quot;);<br> std::cin &gt;&gt; i;<br> if (i == 'y')<br> UseHighLevelShaders = true;<br> }<br><br><font color="#006600"> // create devic</font>e<br><br> device = createDevice(driverType, core::dimension2d&lt;s32&gt;(640, 480));<br><br> if (device == 0)<br> {<br> printf(<font color="#CC0000">&quot;\nWas not able to create driver.\n&quot;\<br> &quot;Please restart and select another driver.\n&quot;</font>);<br> getch();<br> return 1;<br> } <br><br> video::IVideoDriver* driver = device-&gt;getVideoDriver();<br> scene::ISceneManager* smgr = device-&gt;getSceneManager();<br> gui::IGUIEnvironment* gui = device-&gt;getGUIEnvironment();</pre></td>
81 </tr>
82 </table>
83 <p> Now for the more interesting parts. If we are using Direct3D, we
84 want to load vertex and pixel shader programs, if we have<br>
85 OpenGL, we want to use ARB fragment and vertex programs. I wrote the
86 corresponding programs down into the files d3d8.ps, d3d8.vs, d3d9.ps,
87 d3d9.vs, opengl.ps and opengl.vs. We only need the right filenames
88 now. This is done in the following switch. Note, that it is not necessary
89 to write the shaders into text files, like in this example. You can
90 even write the shaders directly as strings into the cpp source file,
91 and use later addShaderMaterial() instead of addShaderMaterialFromFiles().</p>
92 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
93 <tr>
94 <td> <pre> c8* vsFileName = 0<font color="#006600">; // filename for the vertex shader</font><br> c8* psFileName = 0<font color="#006600">; // filename for the pixel shader</font><br><br> switch(driverType)<br> {<br> case video::EDT_DIRECT3D8:<br> psFileName = &quot;../../media/d3d8.psh&quot;;<br> vsFileName = &quot;../../media/d3d8.vsh&quot;;<br> break;<br> case video::EDT_DIRECT3D9:<br> if (UseHighLevelShaders)<br> {<br> psFileName = &quot;../../media/d3d9.hlsl&quot;;<br> vsFileName = psFileName; <font color="#006600">// both shaders are in the same file</font><br> }<br> else<br> {<br> psFileName = &quot;../../media/d3d9.psh&quot;;<br> vsFileName = &quot;../../media/d3d9.vsh&quot;;<br> }<br> break;<br> case video::EDT_OPENGL:<br> if (UseHighLevelShaders)<br> {<br> psFileName = &quot;../../media/opengl.frag&quot;;<br> vsFileName = &quot;../../media/opengl.vert&quot;;<br> }<br> else<br> {<br> psFileName = &quot;../../media/opengl.psh&quot;;<br> vsFileName = &quot;../../media/opengl.vsh&quot;;<br> }<br> break;<br> }<br></pre>
95 </td>
96 </tr>
97 </table>
98 <p> In addition, we check if the hardware and the selected renderer
99 is capable of executing the shaders we want. If not, we simply set
100 the filename string to 0. This is not necessary, but useful in this
101 example: For example, if the hardware is able to execute vertex shaders
102 but not pixel shaders, we create a new material which only uses the
103 vertex shader, and no pixel shader. Otherwise, if we would tell the
104 engine to create this material and the engine sees that the hardware
105 wouldn't be able to fullfill the request completely,<br>
106 it would not create any new material at all. So in this example you
107 would see at least the vertex shader in action, without the pixel
108 shader.</p>
109 </div>
110 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
111 <tr>
112 <td> <pre> if (!driver-&gt;queryFeature(video::EVDF_PIXEL_SHADER_1_1) &amp;&amp;<br> !driver-&gt;queryFeature(video::EVDF_ARB_FRAGMENT_PROGRAM_1))<br> {<br> device-&gt;getLogger()-&gt;log(&quot;WARNING: Pixel shaders disabled &quot;\<br> &quot;because of missing driver/hardware support.&quot;);<br> psFileName = 0;<br> }<br> <br> if (!driver-&gt;queryFeature(video::EVDF_VERTEX_SHADER_1_1) &amp;&amp;<br> !driver-&gt;queryFeature(video::EVDF_ARB_VERTEX_PROGRAM_1))<br> {<br> device-&gt;getLogger()-&gt;log(&quot;WARNING: Vertex shaders disabled &quot;\<br> &quot;because of missing driver/hardware support.&quot;);<br> vsFileName = 0;<br> }</pre></td>
113 </tr>
114 </table>
115 <p> Now lets create the new materials.<br>
116 As you maybe know from previous examples, a material type in the Irrlicht
117 engine is set by simply changing the MaterialType value in the SMaterial
118 struct. And this value is just a simple 32 bit value, like video::EMT_SOLID.
119 So we only need the engine to create a new value for us which we can
120 set there. To do this, we get a pointer to the IGPUProgrammingServices
121 and call addShaderMaterialFromFiles(), which returns such a new 32 bit
122 value. That's all.<br>
123 The parameters to this method are the following: First, the names of
124 the files containing the code of the vertex and the pixel shader.<br>
125 If you would use addShaderMaterial() instead, you would not need file
126 names, then you could write the code of the shader directly as string.
127 The following parameter is a pointer to the IShaderConstantSetCallBack
128 class we wrote at the beginning of this tutorial. If you don't want
129 to set constants, set this to 0. The last paramter tells the engine
130 which material it should use as base material. <br>
131 To demonstrate this, we create two materials with a different base material,
132 one with EMT_SOLID and one with EMT_TRANSPARENT_ADD_COLOR.</p>
133 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
134 <tr>
135 <td><pre> <font color="#006600">// create materials</font><br><br> video::IGPUProgrammingServices* gpu = driver-&gt;getGPUProgrammingServices();<br><br> s32 newMaterialType1 = 0;<br> s32 newMaterialType2 = 0;<br><br> if (gpu)<br> {<br> MyShaderCallBack* mc = new MyShaderCallBack();<br> <font color="#006600">
136 // create the shaders depending on if the user wanted high level<br> // or low level shaders:</font><br><br> if (UseHighLevelShaders)<br> {<br><font color="#006600"> // create material from high level shaders (hlsl or glsl)<br><br></font> newMaterialType1 = gpu-&gt;addHighLevelShaderMaterialFromFiles(<br> vsFileName, &quot;vertexMain&quot;, video::EVST_VS_1_1,<br> psFileName, &quot;pixelMain&quot;, video::EPST_PS_1_1,<br> mc, video::EMT_SOLID);<br><br> newMaterialType2 = gpu-&gt;addHighLevelShaderMaterialFromFiles(<br> vsFileName, &quot;vertexMain&quot;, video::EVST_VS_1_1,<br> psFileName, &quot;pixelMain&quot;, video::EPST_PS_1_1,<br> mc, video::EMT_TRANSPARENT_ADD_COLOR);<br> }<br> else<br> {<br><font color="#009900"> // create material from low level shaders (asm or arb_asm)<br></font><br> newMaterialType1 = gpu-&gt;addShaderMaterialFromFiles(vsFileName,<br> psFileName, mc, video::EMT_SOLID);<br><br> newMaterialType2 = gpu-&gt;addShaderMaterialFromFiles(vsFileName,<br> psFileName, mc, video::EMT_TRANSPARENT_ADD_COLOR);<br> }<br><br> mc-&gt;drop();<br> }<br></pre></td>
137 </tr>
138 </table>
139 <p> Now its time for testing out the materials. We create a test cube
140 and set the material we created. In addition, we add a text scene node
141 to the cube and a rotatation animator, to make it look more interesting
142 and important. </p>
143 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
144 <tr>
145 <td><pre><font color="#006600">
146 // create test scene node 1, with the new created material type 1</font>
147
148 scene::ISceneNode* node = smgr-&gt;addCubeSceneNode(50);
149 node-&gt;setPosition(core::vector3df(0,0,0));
150 node-&gt;setMaterialTexture(0, driver-&gt;getTexture(&quot;../../media/wall.bmp&quot;));
151 node-&gt;setMaterialFlag(video::EMF_LIGHTING, false);
152 node-&gt;setMaterialType((video::E_MATERIAL_TYPE)newMaterialType1);
153
154 smgr-&gt;addTextSceneNode(gui-&gt;getBuiltInFont(),
155 L&quot;PS &amp; VS &amp; EMT_SOLID&quot;,
156 video::SColor(255,255,255,255), node);
157
158 scene::ISceneNodeAnimator* anim = smgr-&gt;createRotationAnimator(
159 core::vector3df(0,0.3f,0));
160 node-&gt;addAnimator(anim);
161 anim-&gt;drop();</pre></td>
162 </tr>
163 </table>
164 <p> Same for the second cube, but with the second material we created.</p>
165 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
166 <tr>
167 <td><pre> <font color="#006600">// create test scene node 2, with the new created material type 2</font>
168
169 node = smgr-&gt;addCubeSceneNode(50);
170 node-&gt;setPosition(core::vector3df(0,-10,50));
171 node-&gt;setMaterialTexture(0, driver-&gt;getTexture(&quot;../../media/wall.bmp&quot;));
172 node-&gt;setMaterialFlag(video::EMF_LIGHTING, false);
173 node-&gt;setMaterialType((video::E_MATERIAL_TYPE)newMaterialType2);
174
175 smgr-&gt;addTextSceneNode(gui-&gt;getBuiltInFont(),
176 L&quot;PS &amp; VS &amp; EMT_TRANSPARENT&quot;,
177 video::SColor(255,255,255,255), node);
178
179 anim = smgr-&gt;createRotationAnimator(core::vector3df(0,0.3f,0));
180 node-&gt;addAnimator(anim);
181 anim-&gt;drop();</pre></td>
182 </tr>
183 </table>
184 <br>
185 Then we add a third cube without a shader on it, to be able to compare
186 the cubes.<br>
187 <br>
188 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
189 <tr>
190 <td><pre> <font color="#006600">// add a scene node with no shader </font>
191
192 node = smgr-&gt;addCubeSceneNode(50);
193 node-&gt;setPosition(core::vector3df(0,50,25));
194 node-&gt;setMaterialTexture(0, driver-&gt;getTexture(&quot;../../media/wall.bmp&quot;));
195 node-&gt;setMaterialFlag(video::EMF_LIGHTING, false);
196 smgr-&gt;addTextSceneNode(gui-&gt;getBuiltInFont(), L&quot;NO SHADER&quot;,
197 video::SColor(255,255,255,255), node);
198 </pre></td>
199 </tr>
200 </table>
201 <br>
202 And last, we add a skybox and a user controlled camera to the scene. For
203 the skybox textures, we disable mipmap generation, because we don't need
204 mipmaps on it.<br>
205 <br>
206 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
207 <tr>
208 <td><pre> <font color="#006600">// add a nice skybox</font><br><br> driver-&gt;setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);<br><br> smgr-&gt;addSkyBoxSceneNode(<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_up.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_dn.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_lf.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_rt.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_ft.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_bk.jpg&quot;));<br><br> driver-&gt;setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, true);<br><br><font color="#006600"> // add a camera and disable the mouse curso</font>r<br><br> scene::ICameraSceneNode* cam = smgr-&gt;addCameraSceneNodeFPS(0, 100.0f, 100.0f);<br> cam-&gt;setPosition(core::vector3df(-100,50,100));<br> cam-&gt;setTarget(core::vector3df(0,0,0));<br> device-&gt;getCursorControl()-&gt;setVisible(false);</pre></td>
209 </tr>
210 </table>
211 <br>
212 Now draw everything. That's all.<br>
213 <br>
214 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
215 <tr>
216 <td><pre> int lastFPS = -1;<br><br> while(device-&gt;run())<br> if (device-&gt;isWindowActive())<br> {<br> driver-&gt;beginScene(true, true, video::SColor(255,0,0,0));<br> smgr-&gt;drawAll();<br> driver-&gt;endScene();<br><br> int fps = driver-&gt;getFPS();<br><br> if (lastFPS != fps)<br> {<br> core::stringw str = L&quot;Irrlicht Engine - Vertex and pixel shader example [&quot;;<br> str += driver-&gt;getName();<br> str += &quot;] FPS:&quot;;<br> str += fps;<br> device-&gt;setWindowCaption(str.c_str());<br> lastFPS = fps;<br> }<br> }<br><br> device-&gt;drop();<br> <br> return 0;<br></pre></td>
217 </tr>
218 </table>
219 <br>
220 Compile and run this, and I hope you have fun with your new little shader
221 writing tool :).<br>
222 </div>
223 </td>
224 </tr>
225</table>
226<br>
227<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
228 <tr>
229 <td bgcolor="#666699"> <b><font color="#FFFFFF">Shader files</font></b></td>
230 </tr>
231 <tr>
232 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
233 <div align="left">
234 <p>The files containing the shaders can be found in the media directory
235 of the SDK. However, they look like this:</p>
236 <table width="95%" border="0" cellspacing="4" cellpadding="0" bgcolor="#CCCCCC" align="center">
237 <tr>
238 <td><strong>D3D9.HLSL</strong></td>
239 </tr>
240 <tr>
241 <td>
242<pre>
243// part of the Irrlicht Engine Shader example.
244// These simple Direct3D9 pixel and vertex shaders will be loaded by the shaders
245// example. Please note that these example shaders don't do anything really useful.
246// They only demonstrate that shaders can be used in Irrlicht.
247
248//-----------------------------------------------------------------------------
249// Global variables
250//-----------------------------------------------------------------------------
251float4x4 mWorldViewProj; // World * View * Projection transformation
252float4x4 mInvWorld; // Inverted world matrix
253float4x4 mTransWorld; // Transposed world matrix
254float3 mLightPos; // Light position
255float4 mLightColor; // Light color
256
257
258// Vertex shader output structure
259struct VS_OUTPUT
260{
261 float4 Position : POSITION; // vertex position
262 float4 Diffuse : COLOR0; // vertex diffuse color
263 float2 TexCoord : TEXCOORD0; // tex coords
264};
265
266
267VS_OUTPUT vertexMain( in float4 vPosition : POSITION,
268 in float3 vNormal : NORMAL,
269 float2 texCoord : TEXCOORD0 )
270{
271 VS_OUTPUT Output;
272
273 // transform position to clip space
274 Output.Position = mul(vPosition, mWorldViewProj);
275
276 // transform normal
277 float3 normal = mul(vNormal, mInvWorld);
278
279 // renormalize normal
280 normal = normalize(normal);
281
282 // position in world coodinates
283 float3 worldpos = mul(mTransWorld, vPosition);
284
285 // calculate light vector, vtxpos - lightpos
286 float3 lightVector = worldpos - mLightPos;
287
288 // normalize light vector
289 lightVector = normalize(lightVector);
290
291 // calculate light color
292 float3 tmp = dot(-lightVector, normal);
293 tmp = lit(tmp.x, tmp.y, 1.0);
294
295 tmp = mLightColor * tmp.y;
296 Output.Diffuse = float4(tmp.x, tmp.y, tmp.z, 0);
297 Output.TexCoord = texCoord;
298
299 return Output;
300}
301
302
303
304// Pixel shader output structure
305struct PS_OUTPUT
306{
307 float4 RGBColor : COLOR0; // Pixel color
308};
309
310
311sampler2D tex0;
312
313PS_OUTPUT pixelMain( float2 TexCoord : TEXCOORD0,
314 float4 Position : POSITION,
315 float4 Diffuse : COLOR0 )
316{
317 PS_OUTPUT Output;
318
319 float4 col = tex2D( tex0, TexCoord ); // sample color map
320
321 // multiply with diffuse and do other senseless operations
322 Output.RGBColor = Diffuse * col;
323 Output.RGBColor *= 4.0;
324
325 return Output;
326}</pre></td>
327 </tr>
328 </table>
329 <br>
330 <table width="95%" border="0" cellspacing="4" cellpadding="0" bgcolor="#CCCCCC" align="center">
331 <tr>
332 <td><strong>D3D9.VSH</strong></td>
333 </tr>
334 <tr>
335 <td> <pre>
336; part of the Irrlicht Engine Shader example.
337; This Direct3D9 vertex shader will be loaded by the engine.
338; Please note that these example shaders don't do anything really useful.
339; They only demonstrate that shaders can be used in Irrlicht.<br>
340vs.1.1
341
342dcl_position v0; ; declare position
343dcl_normal v1; ; declare normal
344dcl_color v2; ; declare color
345dcl_texcoord0 v3; ; declare texture coordinate<br>
346; transpose and transform position to clip space
347mul r0, v0.x, c4
348mad r0, v0.y, c5, r0
349mad r0, v0.z, c6, r0
350add oPos, c7, r0
351
352; transform normal
353dp3 r1.x, v1, c0
354dp3 r1.y, v1, c1
355dp3 r1.z, v1, c2
356
357; renormalize normal
358dp3 r1.w, r1, r1
359rsq r1.w, r1.w
360mul r1, r1, r1.w
361
362; calculate light vector
363m4x4 r6, v0, c10 ; vertex into world position
364add r2, c8, -r6 ; vtxpos - lightpos
365
366; normalize light vector
367dp3 r2.w, r2, r2
368rsq r2.w, r2.w
369mul r2, r2, r2.w
370
371; calculate light color
372dp3 r3, r1, r2 ; dp3 with negative light vector
373lit r5, r3 ; clamp to zero if r3 < 0, r5 has diffuce component in r5.y
374mul oD0, r5.y, c9 ; ouput diffuse color
375mov oT0, v3 ; store texture coordinates </pre> </td>
376 </tr>
377 </table>
378 <br>
379 <table width="95%" border="0" cellspacing="4" cellpadding="0" bgcolor="#CCCCCC" align="center">
380 <tr>
381 <td><strong>D3D9.PSH</strong></td>
382 </tr>
383 <tr>
384 <td> <pre>
385; part of the Irrlicht Engine Shader example.
386; This simple Direct3D9 pixel shader will be loaded by the engine.
387; Please note that these example shaders don't do anything really useful.
388; They only demonstrate that shaders can be used in Irrlicht.<br>
389ps.1.1
390
391tex t0 ; sample color map
392add r0, v0, v0 ; mulitply with color
393mul t0, t0, r0 ; mulitply with color
394add r0, t0, t0 ; make it brighter and store result
395 </pre> </td>
396 </tr>
397 </table>
398 <br>
399 <table width="95%" border="0" cellspacing="4" cellpadding="0" bgcolor="#CCCCCC" align="center">
400 <tr>
401 <td><strong>D3D8.VSH</strong></td>
402 </tr>
403 <tr>
404 <td> <pre>
405; part of the Irrlicht Engine Shader example.
406; This Direct3D9 vertex shader will be loaded by the engine.
407; Please note that these example shaders don't do anything really useful.
408; They only demonstrate that shaders can be used in Irrlicht.<br>
409vs.1.1
410
411; transpose and transform position to clip space
412mul r0, v0.x, c4
413mad r0, v0.y, c5, r0
414mad r0, v0.z, c6, r0
415add oPos, c7, r0
416
417; transform normal
418dp3 r1.x, v1, c0
419dp3 r1.y, v1, c1
420dp3 r1.z, v1, c2
421
422; renormalize normal
423dp3 r1.w, r1, r1
424rsq r1.w, r1.w
425mul r1, r1, r1.w
426
427; calculate light vector
428m4x4 r6, v0, c10 ; vertex into world position
429add r2, c8, -r6 ; vtxpos - lightpos
430
431; normalize light vector
432dp3 r2.w, r2, r2
433rsq r2.w, r2.w
434mul r2, r2, r2.w
435
436; calculate light color
437dp3 r3, r1, r2 ; dp3 with negative light vector
438lit r5, r3 ; clamp to zero if r3 < 0, r5 has diffuce component in r5.y
439mul oD0, r5.y, c9 ; ouput diffuse color
440mov oT0, v3 ; store texture coordinates </pre> </td>
441 </tr>
442 </table>
443 <br>
444 <table width="95%" border="0" cellspacing="4" cellpadding="0" bgcolor="#CCCCCC" align="center">
445 <tr>
446 <td><strong>D3D8.PSH</strong></td>
447 </tr>
448 <tr>
449 <td> <pre>
450; part of the Irrlicht Engine Shader example.
451; This simple Direct3D9 pixel shader will be loaded by the engine.
452; Please note that these example shaders don't do anything really useful.
453; They only demonstrate that shaders can be used in Irrlicht.<br>
454ps.1.1
455
456tex t0 ; sample color map
457mul_x2 t0, t0, v0 ; mulitply with color
458add r0, t0, t0 ; make it brighter and store result </pre> </td>
459 </tr>
460 </table>
461 <br>
462 <table width="95%" border="0" cellspacing="4" cellpadding="0" bgcolor="#CCCCCC" align="center">
463 <tr>
464 <td><strong>OPENGL.VSH</strong></td>
465 </tr>
466 <tr>
467 <td> <pre>
468!!ARBvp1.0
469# part of the Irrlicht Engine Shader example.
470# Please note that these example shaders don't do anything really useful.
471# They only demonstrate that shaders can be used in Irrlicht.<br>
472#input
473ATTRIB InPos = vertex.position;
474ATTRIB InColor = vertex.color;
475ATTRIB InNormal = vertex.normal;
476ATTRIB InTexCoord = vertex.texcoord;
477
478#output
479OUTPUT OutPos = result.position;
480OUTPUT OutColor = result.color;
481OUTPUT OutTexCoord = result.texcoord;
482
483PARAM MVP[4] = { state.matrix.mvp }; # modelViewProjection matrix.
484TEMP Temp;
485TEMP TempColor;
486TEMP TempNormal;
487TEMP TempPos;
488
489#transform position to clip space
490DP4 Temp.x, MVP[0], InPos;
491DP4 Temp.y, MVP[1], InPos;
492DP4 Temp.z, MVP[2], InPos;
493DP4 Temp.w, MVP[3], InPos;
494
495#transform normal
496DP3 TempNormal.x, InNormal.x, program.local[0];
497DP3 TempNormal.y, InNormal.y, program.local[1];
498DP3 TempNormal.z, InNormal.z, program.local[2];
499
500#renormalize normal
501DP3 TempNormal.w, TempNormal, TempNormal;
502RSQ TempNormal.w, TempNormal.w;
503MUL TempNormal, TempNormal, TempNormal.w;
504
505# calculate light vector
506DP4 TempPos.x, InPos, program.local[10]; # vertex into world position
507DP4 TempPos.y, InPos, program.local[11];
508DP4 TempPos.z, InPos, program.local[12];
509DP4 TempPos.w, InPos, program.local[13];
510
511ADD TempPos, program.local[8], -TempPos; # vtxpos - lightpos
512
513# normalize light vector
514DP3 TempPos.w, TempPos, TempPos;
515RSQ TempPos.w, TempPos.w;
516MUL TempPos, TempPos, TempPos.w;
517
518# calculate light color
519DP3 TempColor, TempNormal, TempPos; # dp3 with negative light vector
520LIT OutColor, TempColor; # clamp to zero if r3 < 0, r5 has diffuce component in r5.y
521MUL OutColor, TempColor.y, program.local[9]; # ouput diffuse color
522MOV OutColor.w, 1.0; # we want alpha to be always 1
523MOV OutTexCoord, InTexCoord; # store texture coordinate
524MOV OutPos, Temp;
525
526END</pre> </td>
527 </tr>
528 </table>
529 <br>
530 <table width="95%" border="0" cellspacing="4" cellpadding="0" bgcolor="#CCCCCC" align="center">
531 <tr>
532 <td><strong>OPENGL.PSH</strong></td>
533 </tr>
534 <tr>
535 <td> <pre>
536!!ARBfp1.0
537# part of the Irrlicht Engine Shader example.
538# Please note that these example shaders don't do anything really useful.
539# They only demonstrate that shaders can be used in Irrlicht.<br>
540#Input
541ATTRIB inTexCoord = fragment.texcoord; # texture coordinates
542ATTRIB inColor = fragment.color.primary; # interpolated diffuse color
543
544#Output
545OUTPUT outColor = result.color;
546
547TEMP texelColor;
548TEMP tmp;
549TXP texelColor, inTexCoord, texture, 2D;
550
551ADD tmp, inColor, inColor; # mulitply with color
552MUL texelColor, texelColor, tmp; # mulitply with color
553ADD outColor, texelColor, texelColor; # make it brighter and store result
554
555END </pre> </td>
556 </tr>
557 </table>
558 <p>&nbsp; </p>
559 </div>
560 </div></td>
561 </tr>
562</table>
563<p>&nbsp;</p>
564<p>&nbsp;</p>
565 </body>
566</html>
diff --git a/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/Makefile b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/Makefile
new file mode 100644
index 0000000..affdc02
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/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 = 11.PerPixelLighting
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/11.PerPixelLighting/PerPixelLighting.cbp b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.cbp
new file mode 100644
index 0000000..2cb49da
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.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 11 Per-Pixel Lighting" />
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\PerPixelLighting" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\PerPixelLighting" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Option projectResourceIncludeDirsRelation="1" />
28 <Compiler>
29 <Add option="-g" />
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/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.dev b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.dev
new file mode 100644
index 0000000..c83a502
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 11 Per-Pixel Lighting
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=11.PerPixelLighting.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/11.PerPixelLighting/PerPixelLighting.vcproj b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.vcproj
new file mode 100644
index 0000000..94d7e6a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting.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="11.PerPixelLighting"
6 ProjectGUID="{EC388ECA-E430-477A-A969-66FE5F84508A}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/PerPixelLighting.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/PerPixelLighting.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/PerPixelLighting.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/PerPixelLighting.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/PerPixelLighting.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/PerPixelLighting.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc10.vcxproj
new file mode 100644
index 0000000..267ded9
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_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>11.PerPixelLighting</ProjectName>
23 <ProjectGuid>{C4B42409-542D-4EFC-9E6B-44713FD47A33}</ProjectGuid>
24 <RootNamespace>PerPixelLighting</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/PerPixelLighting.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/PerPixelLighting.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\11.PerPixelLighting.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/PerPixelLighting.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/PerPixelLighting.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\11.PerPixelLighting.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/11.PerPixelLighting/PerPixelLighting_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc11.vcxproj
new file mode 100644
index 0000000..06fce8f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_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>11.PerPixelLighting</ProjectName>
23 <ProjectGuid>{C4B42409-542D-4EFC-9E6B-44713FD47A33}</ProjectGuid>
24 <RootNamespace>PerPixelLighting</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/PerPixelLighting.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/PerPixelLighting.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\11.PerPixelLighting.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/PerPixelLighting.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/PerPixelLighting.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\11.PerPixelLighting.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/11.PerPixelLighting/PerPixelLighting_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc8.vcproj
new file mode 100644
index 0000000..b6830db
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_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="11.PerPixelLighting_vc8"
6 ProjectGUID="{C4B42409-542D-4EFC-9E6B-44713FD47A33}"
7 RootNamespace="PerPixelLighting_vc8"
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 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=".\Debug/PerPixelLighting.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/PerPixelLighting.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/PerPixelLighting.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/PerPixelLighting.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/PerPixelLighting.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/PerPixelLighting.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_vc9.vcproj
new file mode 100644
index 0000000..c9ed033
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/PerPixelLighting_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="11.PerPixelLighting_vc9"
6 ProjectGUID="{C4B42409-542D-4EFC-9E6B-44713FD47A33}"
7 RootNamespace="PerPixelLighting_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/PerPixelLighting.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/PerPixelLighting.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/PerPixelLighting.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/PerPixelLighting.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/PerPixelLighting.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\11.PerPixelLighting.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/PerPixelLighting.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/main.cpp b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/main.cpp
new file mode 100644
index 0000000..227aa97
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/main.cpp
@@ -0,0 +1,487 @@
1/** Example 011 Per-Pixel Lighting
2
3This tutorial shows how to use one of the built in more complex materials in
4irrlicht: Per pixel lighted surfaces using normal maps and parallax mapping. It
5will also show how to use fog and moving particle systems. And don't panic: You
6do not need any experience with shaders to use these materials in Irrlicht.
7
8At first, we need to include all headers and do the stuff we always do, like in
9nearly all other tutorials.
10*/
11#include <irrlicht.h>
12#include "driverChoice.h"
13
14using namespace irr;
15
16#ifdef _MSC_VER
17#pragma comment(lib, "Irrlicht.lib")
18#endif
19
20/*
21For this example, we need an event receiver, to make it possible for the user
22to switch between the three available material types. In addition, the event
23receiver will create some small GUI window which displays what material is
24currently being used. There is nothing special done in this class, so maybe you
25want to skip reading it.
26*/
27class MyEventReceiver : public IEventReceiver
28{
29public:
30
31 MyEventReceiver(scene::ISceneNode* room,scene::ISceneNode* earth,
32 gui::IGUIEnvironment* env, video::IVideoDriver* driver)
33 {
34 // store pointer to room so we can change its drawing mode
35 Room = room;
36 Earth = earth;
37 Driver = driver;
38
39 // set a nicer font
40 gui::IGUISkin* skin = env->getSkin();
41 gui::IGUIFont* font = env->getFont("../../media/fonthaettenschweiler.bmp");
42 if (font)
43 skin->setFont(font);
44
45 // add window and listbox
46 gui::IGUIWindow* window = env->addWindow(
47 core::rect<s32>(460,375,630,470), false, L"Use 'E' + 'R' to change");
48
49 ListBox = env->addListBox(
50 core::rect<s32>(2,22,165,88), window);
51
52 ListBox->addItem(L"Diffuse");
53 ListBox->addItem(L"Bump mapping");
54 ListBox->addItem(L"Parallax mapping");
55 ListBox->setSelected(1);
56
57 // create problem text
58 ProblemText = env->addStaticText(
59 L"Your hardware or this renderer is not able to use the "\
60 L"needed shaders for this material. Using fall back materials.",
61 core::rect<s32>(150,20,470,80));
62
63 ProblemText->setOverrideColor(video::SColor(100,255,255,255));
64
65 // set start material (prefer parallax mapping if available)
66 video::IMaterialRenderer* renderer =
67 Driver->getMaterialRenderer(video::EMT_PARALLAX_MAP_SOLID);
68 if (renderer && renderer->getRenderCapability() == 0)
69 ListBox->setSelected(2);
70
71 // set the material which is selected in the listbox
72 setMaterial();
73 }
74
75 bool OnEvent(const SEvent& event)
76 {
77 // check if user presses the key 'E' or 'R'
78 if (event.EventType == irr::EET_KEY_INPUT_EVENT &&
79 !event.KeyInput.PressedDown && Room && ListBox)
80 {
81 // change selected item in listbox
82
83 int sel = ListBox->getSelected();
84 if (event.KeyInput.Key == irr::KEY_KEY_R)
85 ++sel;
86 else
87 if (event.KeyInput.Key == irr::KEY_KEY_E)
88 --sel;
89 else
90 return false;
91
92 if (sel > 2) sel = 0;
93 if (sel < 0) sel = 2;
94 ListBox->setSelected(sel);
95
96 // set the material which is selected in the listbox
97 setMaterial();
98 }
99
100 return false;
101 }
102
103private:
104
105 // sets the material of the room mesh the the one set in the
106 // list box.
107 void setMaterial()
108 {
109 video::E_MATERIAL_TYPE type = video::EMT_SOLID;
110
111 // change material setting
112 switch(ListBox->getSelected())
113 {
114 case 0: type = video::EMT_SOLID;
115 break;
116 case 1: type = video::EMT_NORMAL_MAP_SOLID;
117 break;
118 case 2: type = video::EMT_PARALLAX_MAP_SOLID;
119 break;
120 }
121
122 Room->setMaterialType(type);
123
124 // change material setting
125 switch(ListBox->getSelected())
126 {
127 case 0: type = video::EMT_TRANSPARENT_VERTEX_ALPHA;
128 break;
129 case 1: type = video::EMT_NORMAL_MAP_TRANSPARENT_VERTEX_ALPHA;
130 break;
131 case 2: type = video::EMT_PARALLAX_MAP_TRANSPARENT_VERTEX_ALPHA;
132 break;
133 }
134
135 Earth->setMaterialType(type);
136
137 /*
138 We need to add a warning if the materials will not be able to
139 be displayed 100% correctly. This is no problem, they will be
140 rendered using fall back materials, but at least the user
141 should know that it would look better on better hardware. We
142 simply check if the material renderer is able to draw at full
143 quality on the current hardware. The
144 IMaterialRenderer::getRenderCapability() returns 0 if this is
145 the case.
146 */
147 video::IMaterialRenderer* renderer = Driver->getMaterialRenderer(type);
148
149 // display some problem text when problem
150 if (!renderer || renderer->getRenderCapability() != 0)
151 ProblemText->setVisible(true);
152 else
153 ProblemText->setVisible(false);
154 }
155
156private:
157
158 gui::IGUIStaticText* ProblemText;
159 gui::IGUIListBox* ListBox;
160
161 scene::ISceneNode* Room;
162 scene::ISceneNode* Earth;
163 video::IVideoDriver* Driver;
164};
165
166
167/*
168Now for the real fun. We create an Irrlicht Device and start to setup the scene.
169*/
170int main()
171{
172 // ask user for driver
173 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
174 if (driverType==video::EDT_COUNT)
175 return 1;
176
177 // create device
178
179 IrrlichtDevice* device = createDevice(driverType,
180 core::dimension2d<u32>(640, 480));
181
182 if (device == 0)
183 return 1; // could not create selected driver.
184
185 /*
186 Before we start with the interesting stuff, we do some simple things:
187 Store pointers to the most important parts of the engine (video driver,
188 scene manager, gui environment) to safe us from typing too much, add an
189 irrlicht engine logo to the window and a user controlled first person
190 shooter style camera. Also, we let the engine know that it should store
191 all textures in 32 bit. This necessary because for parallax mapping, we
192 need 32 bit textures.
193 */
194
195 video::IVideoDriver* driver = device->getVideoDriver();
196 scene::ISceneManager* smgr = device->getSceneManager();
197 gui::IGUIEnvironment* env = device->getGUIEnvironment();
198
199 driver->setTextureCreationFlag(video::ETCF_ALWAYS_32_BIT, true);
200
201 // add irrlicht logo
202 env->addImage(driver->getTexture("../../media/irrlichtlogo3.png"),
203 core::position2d<s32>(10,10));
204
205 // add camera
206 scene::ICameraSceneNode* camera = smgr->addCameraSceneNodeFPS();
207 camera->setPosition(core::vector3df(-200,200,-200));
208
209 // disable mouse cursor
210 device->getCursorControl()->setVisible(false);
211
212 /*
213 Because we want the whole scene to look a little bit scarier, we add
214 some fog to it. This is done by a call to IVideoDriver::setFog(). There
215 you can set various fog settings. In this example, we use pixel fog,
216 because it will work well with the materials we'll use in this example.
217 Please note that you will have to set the material flag EMF_FOG_ENABLE
218 to 'true' in every scene node which should be affected by this fog.
219 */
220 driver->setFog(video::SColor(0,138,125,81), video::EFT_FOG_LINEAR, 250, 1000, .003f, true, false);
221
222 /*
223 To be able to display something interesting, we load a mesh from a .3ds
224 file which is a room I modeled with anim8or. It is the same room as
225 from the specialFX example. Maybe you remember from that tutorial, I am
226 no good modeler at all and so I totally messed up the texture mapping
227 in this model, but we can simply repair it with the
228 IMeshManipulator::makePlanarTextureMapping() method.
229 */
230
231 scene::IAnimatedMesh* roomMesh = smgr->getMesh("../../media/room.3ds");
232 scene::ISceneNode* room = 0;
233 scene::ISceneNode* earth = 0;
234
235 if (roomMesh)
236 {
237 // The Room mesh doesn't have proper Texture Mapping on the
238 // floor, so we can recreate them on runtime
239 smgr->getMeshManipulator()->makePlanarTextureMapping(
240 roomMesh->getMesh(0), 0.003f);
241
242 /*
243 Now for the first exciting thing: If we successfully loaded the
244 mesh we need to apply textures to it. Because we want this room
245 to be displayed with a very cool material, we have to do a
246 little bit more than just set the textures. Instead of only
247 loading a color map as usual, we also load a height map which
248 is simply a grayscale texture. From this height map, we create
249 a normal map which we will set as second texture of the room.
250 If you already have a normal map, you could directly set it,
251 but I simply didn't find a nice normal map for this texture.
252 The normal map texture is being generated by the
253 makeNormalMapTexture method of the VideoDriver. The second
254 parameter specifies the height of the heightmap. If you set it
255 to a bigger value, the map will look more rocky.
256 */
257
258 video::ITexture* normalMap =
259 driver->getTexture("../../media/rockwall_height.bmp");
260
261 if (normalMap)
262 driver->makeNormalMapTexture(normalMap, 9.0f);
263/*
264 // The Normal Map and the displacement map/height map in the alpha channel
265 video::ITexture* normalMap =
266 driver->getTexture("../../media/rockwall_NRM.tga");
267*/
268 /*
269 But just setting color and normal map is not everything. The
270 material we want to use needs some additional informations per
271 vertex like tangents and binormals. Because we are too lazy to
272 calculate that information now, we let Irrlicht do this for us.
273 That's why we call IMeshManipulator::createMeshWithTangents().
274 It creates a mesh copy with tangents and binormals from another
275 mesh. After we've done that, we simply create a standard
276 mesh scene node with this mesh copy, set color and normal map
277 and adjust some other material settings. Note that we set
278 EMF_FOG_ENABLE to true to enable fog in the room.
279 */
280
281 scene::IMesh* tangentMesh = smgr->getMeshManipulator()->
282 createMeshWithTangents(roomMesh->getMesh(0));
283
284 room = smgr->addMeshSceneNode(tangentMesh);
285 room->setMaterialTexture(0,
286 driver->getTexture("../../media/rockwall.jpg"));
287 room->setMaterialTexture(1, normalMap);
288
289 // Stones don't glitter..
290 room->getMaterial(0).SpecularColor.set(0,0,0,0);
291 room->getMaterial(0).Shininess = 0.f;
292
293 room->setMaterialFlag(video::EMF_FOG_ENABLE, true);
294 room->setMaterialType(video::EMT_PARALLAX_MAP_SOLID);
295 // adjust height for parallax effect
296 room->getMaterial(0).MaterialTypeParam = 1.f / 64.f;
297
298 // drop mesh because we created it with a create.. call.
299 tangentMesh->drop();
300 }
301
302 /*
303 After we've created a room shaded by per pixel lighting, we add a
304 sphere into it with the same material, but we'll make it transparent.
305 In addition, because the sphere looks somehow like a familiar planet,
306 we make it rotate. The procedure is similar as before. The difference
307 is that we are loading the mesh from an .x file which already contains
308 a color map so we do not need to load it manually. But the sphere is a
309 little bit too small for our needs, so we scale it by the factor 50.
310 */
311
312 // add earth sphere
313
314 scene::IAnimatedMesh* earthMesh = smgr->getMesh("../../media/earth.x");
315 if (earthMesh)
316 {
317 //perform various task with the mesh manipulator
318 scene::IMeshManipulator *manipulator = smgr->getMeshManipulator();
319
320 // create mesh copy with tangent informations from original earth.x mesh
321 scene::IMesh* tangentSphereMesh =
322 manipulator->createMeshWithTangents(earthMesh->getMesh(0));
323
324 // set the alpha value of all vertices to 200
325 manipulator->setVertexColorAlpha(tangentSphereMesh, 200);
326
327 // scale the mesh by factor 50
328 core::matrix4 m;
329 m.setScale ( core::vector3df(50,50,50) );
330 manipulator->transform( tangentSphereMesh, m );
331
332 earth = smgr->addMeshSceneNode(tangentSphereMesh);
333
334 earth->setPosition(core::vector3df(-70,130,45));
335
336 // load heightmap, create normal map from it and set it
337 video::ITexture* earthNormalMap = driver->getTexture("../../media/earthbump.jpg");
338 if (earthNormalMap)
339 {
340 driver->makeNormalMapTexture(earthNormalMap, 20.0f);
341 earth->setMaterialTexture(1, earthNormalMap);
342 earth->setMaterialType(video::EMT_NORMAL_MAP_TRANSPARENT_VERTEX_ALPHA);
343 }
344
345 // adjust material settings
346 earth->setMaterialFlag(video::EMF_FOG_ENABLE, true);
347
348 // add rotation animator
349 scene::ISceneNodeAnimator* anim =
350 smgr->createRotationAnimator(core::vector3df(0,0.1f,0));
351 earth->addAnimator(anim);
352 anim->drop();
353
354 // drop mesh because we created it with a create.. call.
355 tangentSphereMesh->drop();
356 }
357
358 /*
359 Per pixel lighted materials only look cool when there are moving
360 lights. So we add some. And because moving lights alone are so boring,
361 we add billboards to them, and a whole particle system to one of them.
362 We start with the first light which is red and has only the billboard
363 attached.
364 */
365
366 // add light 1 (more green)
367 scene::ILightSceneNode* light1 =
368 smgr->addLightSceneNode(0, core::vector3df(0,0,0),
369 video::SColorf(0.5f, 1.0f, 0.5f, 0.0f), 800.0f);
370
371 light1->setDebugDataVisible ( scene::EDS_BBOX );
372
373
374 // add fly circle animator to light 1
375 scene::ISceneNodeAnimator* anim =
376 smgr->createFlyCircleAnimator (core::vector3df(50,300,0),190.0f, -0.003f);
377 light1->addAnimator(anim);
378 anim->drop();
379
380 // attach billboard to the light
381 scene::IBillboardSceneNode* bill =
382 smgr->addBillboardSceneNode(light1, core::dimension2d<f32>(60, 60));
383
384 bill->setMaterialFlag(video::EMF_LIGHTING, false);
385 bill->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
386 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
387 bill->setMaterialTexture(0, driver->getTexture("../../media/particlegreen.jpg"));
388
389 /*
390 Now the same again, with the second light. The difference is that we
391 add a particle system to it too. And because the light moves, the
392 particles of the particlesystem will follow. If you want to know more
393 about how particle systems are created in Irrlicht, take a look at the
394 specialFx example. Maybe you will have noticed that we only add 2
395 lights, this has a simple reason: The low end version of this material
396 was written in ps1.1 and vs1.1, which doesn't allow more lights. You
397 could add a third light to the scene, but it won't be used to shade the
398 walls. But of course, this will change in future versions of Irrlicht
399 where higher versions of pixel/vertex shaders will be implemented too.
400 */
401
402 // add light 2 (red)
403 scene::ISceneNode* light2 =
404 smgr->addLightSceneNode(0, core::vector3df(0,0,0),
405 video::SColorf(1.0f, 0.2f, 0.2f, 0.0f), 800.0f);
406
407 // add fly circle animator to light 2
408 anim = smgr->createFlyCircleAnimator(core::vector3df(0,150,0), 200.0f,
409 0.001f, core::vector3df(0.2f, 0.9f, 0.f));
410 light2->addAnimator(anim);
411 anim->drop();
412
413 // attach billboard to light
414 bill = smgr->addBillboardSceneNode(light2, core::dimension2d<f32>(120, 120));
415 bill->setMaterialFlag(video::EMF_LIGHTING, false);
416 bill->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
417 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
418 bill->setMaterialTexture(0, driver->getTexture("../../media/particlered.bmp"));
419
420 // add particle system
421 scene::IParticleSystemSceneNode* ps =
422 smgr->addParticleSystemSceneNode(false, light2);
423
424 // create and set emitter
425 scene::IParticleEmitter* em = ps->createBoxEmitter(
426 core::aabbox3d<f32>(-3,0,-3,3,1,3),
427 core::vector3df(0.0f,0.03f,0.0f),
428 80,100,
429 video::SColor(10,255,255,255), video::SColor(10,255,255,255),
430 400,1100);
431 em->setMinStartSize(core::dimension2d<f32>(30.0f, 40.0f));
432 em->setMaxStartSize(core::dimension2d<f32>(30.0f, 40.0f));
433
434 ps->setEmitter(em);
435 em->drop();
436
437 // create and set affector
438 scene::IParticleAffector* paf = ps->createFadeOutParticleAffector();
439 ps->addAffector(paf);
440 paf->drop();
441
442 // adjust some material settings
443 ps->setMaterialFlag(video::EMF_LIGHTING, false);
444 ps->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
445 ps->setMaterialTexture(0, driver->getTexture("../../media/fireball.bmp"));
446 ps->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
447
448 MyEventReceiver receiver(room, earth, env, driver);
449 device->setEventReceiver(&receiver);
450
451 /*
452 Finally, draw everything. That's it.
453 */
454
455 int lastFPS = -1;
456
457 while(device->run())
458 if (device->isWindowActive())
459 {
460 driver->beginScene(true, true, 0);
461
462 smgr->drawAll();
463 env->drawAll();
464
465 driver->endScene();
466
467 int fps = driver->getFPS();
468
469 if (lastFPS != fps)
470 {
471 core::stringw str = L"Per pixel lighting example - Irrlicht Engine [";
472 str += driver->getName();
473 str += "] FPS:";
474 str += fps;
475
476 device->setWindowCaption(str.c_str());
477 lastFPS = fps;
478 }
479 }
480
481 device->drop();
482
483 return 0;
484}
485
486/*
487**/
diff --git a/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/tutorial.html b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/tutorial.html
new file mode 100644
index 0000000..89e87bd
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/11.PerPixelLighting/tutorial.html
@@ -0,0 +1,502 @@
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 11. Per pixel lighting</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 tutorial shows how to use one of the built in more complex materials
22 in irrlicht: Per pixel lighted surfaces using normal maps and parallax
23 mapping. It will also show how to use fog and moving particle systems.
24 And don't panic: You dont need any experience with shaders to use these
25 materials in Irrlicht.</p>
26 <p>The program which is described here will look like this:</p>
27 <p align="center"><img src="../../media/011shot.jpg" width="258" height="202"><br>
28 </p>
29 </div>
30 </td>
31 </tr>
32</table>
33<br>
34<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
35 <tr>
36 <td bgcolor="#666699"> <b><font color="#FFFFFF">Lets start!</font></b></td>
37 </tr>
38 <tr>
39 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
40 <div align="left">
41 <p>At first, we need to include all headers and do the stuff we always
42 do, like in nearly all other tutorials.</p>
43 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
44 <tr>
45 <td> <pre>#include &lt;irrlicht.h&gt;<br>#include &lt;iostream&gt;<br><br>using namespace irr;<br><br>#pragma comment(lib, &quot;Irrlicht.lib&quot;)<br></pre></td>
46 </tr>
47 </table>
48 <p>For this example, we need an event receiver, to make it possible
49 for the user to switch between the three available material types.
50 In addition, the event receiver will create some small GUI window
51 which displays what material is currently being used. There is nothing
52 special done in this class, so maybe you want to skip reading it.</p>
53 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
54 <tr>
55 <td><pre>class MyEventReceiver : public IEventReceiver
56{
57public:
58
59 MyEventReceiver(scene::ISceneNode* room,
60 gui::IGUIEnvironment* env, video::IVideoDriver* driver)
61 {
62 // store pointer to room so we can change its drawing mode
63 Room = room;
64 Driver = driver;
65
66 // set a nicer font
67 gui::IGUISkin* skin = env->getSkin();
68 gui::IGUIFont* font = env->getFont("../../media/fonthaettenschweiler.bmp");
69 if (font)
70 skin->setFont(font);
71
72 // add window and listbox
73 gui::IGUIWindow* window = env->addWindow(
74 core::rect<s32>(490,390,630,470), false, L"Use 'E' + 'R' to change");
75
76 ListBox = env->addListBox(
77 core::rect<s32>(2,22,135,78), window);
78
79 ListBox->addItem(L"Diffuse");
80 ListBox->addItem(L"Bump mapping");
81 ListBox->addItem(L"Parallax mapping");
82 ListBox->setSelected(1);
83
84 // create problem text
85 ProblemText = env->addStaticText(
86 L"Your hardware or this renderer is not able to use the "\
87 L"needed shaders for this material. Using fall back materials.",
88 core::rect<s32>(150,20,470,60));
89
90 ProblemText->setOverrideColor(video::SColor(100,255,255,255));
91
92 // set start material (prefer parallax mapping if available)
93 video::IMaterialRenderer* renderer =
94 Driver->getMaterialRenderer(video::EMT_PARALLAX_MAP_SOLID);
95 if (renderer && renderer->getRenderCapability() == 0)
96 ListBox->setSelected(2);
97
98 // set the material which is selected in the listbox
99 setMaterial();
100 }
101
102 bool OnEvent(const SEvent& event)
103 {
104 // check if user presses the key 'E' or 'R'
105 if (event.EventType == irr::EET_KEY_INPUT_EVENT &&
106 !event.KeyInput.PressedDown && Room && ListBox)
107 {
108 // change selected item in listbox
109
110 int sel = ListBox->getSelected();
111 if (event.KeyInput.Key == irr::KEY_KEY_R)
112 ++sel;
113 else
114 if (event.KeyInput.Key == irr::KEY_KEY_E)
115 --sel;
116 else
117 return false;
118
119 if (sel > 2) sel = 0;
120 if (sel < 0) sel = 2;
121 ListBox->setSelected(sel);
122
123 // set the material which is selected in the listbox
124 setMaterial();
125 }
126
127 return false;
128 }
129
130private:
131
132 // sets the material of the room mesh the the one set in the
133 // list box.
134 void setMaterial()
135 {
136 video::E_MATERIAL_TYPE type = video::EMT_SOLID;
137
138 // change material setting
139 switch(ListBox->getSelected())
140 {
141 case 0: type = video::EMT_SOLID;
142 break;
143 case 1: type = video::EMT_NORMAL_MAP_SOLID;
144 break;
145 case 2: type = video::EMT_PARALLAX_MAP_SOLID;
146 break;
147 }
148
149 Room->setMaterialType(type);</pre>
150 </td>
151 </tr>
152 </table>
153 <p>We need to add a warning if the materials will not be able to be
154 displayed 100% correctly. This is no problem, they will be renderered
155 using fall back materials, but at least the user should know that
156 it would look better on better hardware. We simply check if the material
157 renderer is able to draw at full quality on the current hardware.
158 The IMaterialRenderer::getRenderCapability() returns 0 if this is
159 the case.<br>
160 </p>
161 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
162 <tr>
163 <td> <pre>video::IMaterialRenderer* renderer = Driver->getMaterialRenderer(type);
164
165 // display some problem text when problem
166 if (!renderer || renderer->getRenderCapability() != 0)
167 ProblemText->setVisible(true);
168 else
169 ProblemText->setVisible(false);
170 }
171
172private:
173
174 gui::IGUIStaticText* ProblemText;
175 gui::IGUIListBox* ListBox;
176
177 scene::ISceneNode* Room;
178 video::IVideoDriver* Driver;
179};</pre></td>
180 </tr>
181 </table>
182 <p><br>
183 Now for the real fun. We create an Irrlicht Device and start to setup
184 the scene.<br>
185 </p>
186 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
187 <tr>
188 <td> <pre>int main()
189{
190 // let user select driver type
191
192 video::E_DRIVER_TYPE driverType = video::EDT_DIRECT3D9;
193<br> 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>
194 char i;
195 std::cin >> i;
196
197 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 0;<br> }
198
199 // create device
200
201 IrrlichtDevice* device = createDevice(driverType, core::dimension2d<s32>(640, 480));
202
203 if (device == 0)
204 return 1; // could not create selected driver.
205</pre></td>
206 </tr>
207 </table>
208 <br>
209 Before we start with the interesting stuff, we do some simple things:
210 Store pointers to the most important parts of the engine (video driver,<br>
211 scene manager, gui environment) to safe us from typing too much, add
212 an irrlicht engine logo to the window and a user controlled first person
213 shooter style camera. Also, we let the engine now that it should store
214 all textures in 32 bit. This necessary because for parallax mapping,
215 we need 32 bit textures.<br>
216 <br>
217 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
218 <tr>
219 <td> <pre>
220 video::IVideoDriver* driver = device->getVideoDriver();
221 scene::ISceneManager* smgr = device->getSceneManager();
222 gui::IGUIEnvironment* env = device->getGUIEnvironment();
223
224 driver->setTextureCreationFlag(video::ETCF_ALWAYS_32_BIT, true);
225
226 // add irrlicht logo
227 env->addImage(driver->getTexture("../../media/irrlichtlogoalpha.tga"),
228 core::position2d<s32>(10,10));
229
230 // add camera
231 scene::ICameraSceneNode* camera =
232 smgr->addCameraSceneNodeFPS(0,100.0f,300.0f);
233 camera->setPosition(core::vector3df(-200,200,-200));
234
235 // disable mouse cursor
236 device->getCursorControl()->setVisible(false);</pre></td>
237 </tr>
238 </table>
239 <br>
240 Because we want the whole scene to look a little bit scarier, we add
241 some fog to it. This is done by a call to IVideoDriver::setFog(). There
242 you can set<br>
243 various fog settings. In this example, we use pixel fog, because it
244 will work well with the materials we'll use in this example. Please
245 note that you will have to set the material flag EMF_FOG_ENABLE to 'true'
246 in every scene node which should be affected by this fog.<br>
247 <br>
248 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
249 <tr>
250 <td> <pre>driver-&gt;setFog(video::SColor(0,138,125,81), true, 250, 1000, 0, true);<br></pre></td>
251 </tr>
252 </table>
253 <br>
254 To be able to display something interesting, we load a mesh from a .3ds
255 file which is a room I modeled with anim8or. It is the same room as
256 <br>
257 from the specialFX example. Maybe you remember from that tutorial, I
258 am no good modeler at all and so I totally messed up the texture mapping
259 in this model, but we can simply repair it with the IMeshManipulator::makePlanarTextureMapping()
260 method.<br>
261 <br>
262 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
263 <tr>
264 <td> <pre> scene::IAnimatedMesh* roomMesh = smgr->getMesh(
265 "../../media/room.3ds");
266 scene::ISceneNode* room = 0;
267
268 if (roomMesh)
269 {
270 smgr->getMeshManipulator()->makePlanarTextureMapping(
271 roomMesh->getMesh(0), 0.003f);</pre></td>
272 </tr>
273 </table>
274 <br>
275 Now for the first exciting thing: If we successfully loaded the mesh
276 we need to apply textures to it. Because we want this room to be displayed
277 with a very cool material, we have to do a little bit more than just
278 set the textures. Instead of only loading a color map as usual, we also
279 load a height map which is simply a grayscale texture. From this height
280 map, we create a normal map which we will set as second texture of the
281 room. If you already have a normal map, you could directly set it, but
282 I simply didn&acute;t find a nice normal map for this texture. The normal
283 map texture is being generated by the makeNormalMapTexture method<br>
284 of the VideoDriver. The second parameter specifies the height of the
285 heightmap. If you set it to a bigger value, the map will look more rocky.<br>
286 <br>
287 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
288 <tr>
289 <td> <pre> video::ITexture* colorMap = driver->getTexture("../../media/rockwall.bmp");
290 video::ITexture* normalMap = driver->getTexture("../../media/rockwall_height.bmp");
291
292 driver->makeNormalMapTexture(normalMap, 9.0f);</pre></td>
293 </tr>
294 </table>
295 <br>
296 But just setting color and normal map is not everything. The material
297 we want to use needs some additional informations per vertex like tangents
298 and binormals.<br>
299 Because we are too lazy to calculate that information now, we let Irrlicht
300 do this for us. That's why we call IMeshManipulator::createMeshWithTangents().
301 It<br>
302 creates a mesh copy with tangents and binormals from any other mesh.
303 After we've done that, we simply create a standard mesh scene node with
304 this<br>
305 mesh copy, set color and normal map and adjust some other material settings.
306 Note that we set EMF_FOG_ENABLE to true to enable fog in the room.<br>
307 <br>
308 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
309 <tr>
310 <td> <pre>scene::IMesh* tangentMesh = smgr-&gt;getMeshManipulator()-&gt;createMeshWithTangents(<br> roomMesh-&gt;getMesh(0));<br> <br> room = smgr-&gt;addMeshSceneNode(tangentMesh);<br> room-&gt;setMaterialTexture(0, colorMap);<br> room-&gt;setMaterialTexture(1, normalMap);<br> room-&gt;getMaterial(0).SpecularColor.set(0,0,0,0);<br> room-&gt;setMaterialFlag(video::EMF_FOG_ENABLE, true);<br> room-&gt;setMaterialType(video::EMT_PARALLAX_MAP_SOLID); <br> room-&gt;getMaterial(0).MaterialTypeParam = 0.02f; // adjust height for parallax effect<br> // drop mesh because we created it with a create.. call.<br> tangentMesh-&gt;drop();<br> }<br></pre></td>
311 </tr>
312 </table>
313 <br>
314 After we've created a room shaded by per pixel lighting, we add a sphere
315 into it with the same material, but we'll make it transparent. In addition,<br>
316 because the sphere looks somehow like a familiar planet, we make it
317 rotate. The procedure is similar as before. The difference is that we
318 are loading <br>
319 the mesh from an .x file which already contains a color map so we do
320 not need to load it manually. But the sphere is a little bit too small
321 for our needs, so we scale it by the factor 50.<br>
322 <br>
323 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
324 <tr>
325 <td> <pre>// add earth sphere
326
327 scene::IAnimatedMesh* earthMesh = smgr->getMesh("../../media/earth.x");
328 if (earthMesh)
329 {
330 // create mesh copy with tangent informations from original earth.x mesh
331 scene::IMesh* tangentSphereMesh =
332 smgr->getMeshManipulator()->createMeshWithTangents(earthMesh->getMesh(0));
333
334 // set the alpha value of all vertices to 200
335 smgr->getMeshManipulator()->setVertexColorAlpha(tangentSphereMesh, 200);
336
337 // scale the mesh by factor 50
338 smgr->getMeshManipulator()->scaleMesh(
339 tangentSphereMesh, core::vector3df(50,50,50));
340
341 // create mesh scene node
342 scene::ISceneNode* sphere = smgr->addMeshSceneNode(tangentSphereMesh);
343 sphere->setPosition(core::vector3df(-70,130,45));
344
345 // load heightmap, create normal map from it and set it
346 video::ITexture* earthNormalMap = driver->getTexture("../../media/earthbump.bmp");
347 driver->makeNormalMapTexture(earthNormalMap, 20.0f);
348 sphere->setMaterialTexture(1, earthNormalMap);
349
350 // adjust material settings
351 sphere->setMaterialFlag(video::EMF_FOG_ENABLE, true);
352 sphere->setMaterialType(video::EMT_NORMAL_MAP_TRANSPARENT_VERTEX_ALPHA);
353
354 // add rotation animator
355 scene::ISceneNodeAnimator* anim =
356 smgr->createRotationAnimator(core::vector3df(0,0.1f,0));
357 sphere->addAnimator(anim);
358 anim->drop();
359
360 // drop mesh because we created it with a create.. call.
361 tangentSphereMesh->drop();
362 }</pre></td>
363 </tr>
364 </table>
365 <br>
366 Per pixel lighted materials only look cool when there are moving lights.
367 So we add some. And because moving lights alone are so boring, we add
368 billboards <br>
369 to them, and a whole particle system to one of them. We start with the
370 first light which is red and has only the billboard attached.<br>
371 <br>
372 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
373 <tr>
374 <td> <pre>// add light 1 (nearly red)
375 scene::ILightSceneNode* light1 =
376 smgr->addLightSceneNode(0, core::vector3df(0,0,0),
377 video::SColorf(0.5f, 1.0f, 0.5f, 0.0f), 200.0f);
378
379 // add fly circle animator to light 1
380 scene::ISceneNodeAnimator* anim =
381 smgr->createFlyCircleAnimator (core::vector3df(50,300,0),190.0f, -0.003f);
382 light1->addAnimator(anim);
383 anim->drop();
384
385 // attach billboard to the light
386 scene::ISceneNode* bill =
387 smgr->addBillboardSceneNode(light1, core::dimension2d<f32>(60, 60));
388
389 bill->setMaterialFlag(video::EMF_LIGHTING, false);
390 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
391 bill->setMaterialTexture(0, driver->getTexture("../../media/particlered.bmp"));</pre></td>
392 </tr>
393 </table>
394 <br>
395 Now the same again, with the second light. The difference is that we
396 add a particle system to it too. And because the light moves, the particles
397 of the particlesystem will follow. If you want to know more about how
398 particle systems are created in Irrlicht, take a look at the specialFx
399 example.<br>
400 Maybe you will have noticed that we only add 2 lights, this has a simple
401 reason: The low end version of this material was written in ps1.1 and
402 vs1.1, which doesn't allow more lights. You could add a third light
403 to the scene, but it won't be used to shade the walls. But of course,
404 this will change in future versions of Irrlicht were higher versions
405 of pixel/vertex shaders will be implemented too.<br>
406 <br>
407 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
408 <tr>
409 <td> <pre>// add light 2 (gray)
410 scene::ISceneNode* light2 =
411 smgr->addLightSceneNode(0, core::vector3df(0,0,0),
412 video::SColorf(1.0f, 0.2f, 0.2f, 0.0f), 200.0f);
413
414 // add fly circle animator to light 2
415 anim = smgr->createFlyCircleAnimator (core::vector3df(0,150,0),200.0f);
416 light2->addAnimator(anim);
417 anim->drop();
418
419 // attach billboard to light
420 bill = smgr->addBillboardSceneNode(light2, core::dimension2d<f32>(120, 120));
421 bill->setMaterialFlag(video::EMF_LIGHTING, false);
422 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
423 bill->setMaterialTexture(0, driver->getTexture("../../media/particlewhite.bmp"));
424
425 // add particle system
426 scene::IParticleSystemSceneNode* ps =
427 smgr->addParticleSystemSceneNode(false, light2);
428
429 ps->setParticleSize(core::dimension2d<f32>(30.0f, 40.0f));
430
431 // create and set emitter
432 scene::IParticleEmitter* em = ps->createBoxEmitter(
433 core::aabbox3d<f32>(-3,0,-3,3,1,3),
434 core::vector3df(0.0f,0.03f,0.0f),
435 80,100,
436 video::SColor(0,255,255,255), video::SColor(0,255,255,255),
437 400,1100);
438 ps->setEmitter(em);
439 em->drop();
440
441 // create and set affector
442 scene::IParticleAffector* paf = ps->createFadeOutParticleAffector();
443 ps->addAffector(paf);
444 paf->drop();
445
446 // adjust some material settings
447 ps->setMaterialFlag(video::EMF_LIGHTING, false);
448 ps->setMaterialTexture(0, driver->getTexture("../../media/fireball.bmp"));
449 ps->setMaterialType(video::EMT_TRANSPARENT_VERTEX_ALPHA);
450
451
452 MyEventReceiver receiver(room, env, driver);
453 device->setEventReceiver(&receiver);</pre></td>
454 </tr>
455 </table>
456 <br>
457 Finally, draw everything. That's it.<br>
458 <br>
459 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
460 <tr>
461 <td> <pre>int lastFPS = -1;
462
463 while(device->run())
464 if (device->isWindowActive())
465 {
466 driver->beginScene(true, true, 0);
467
468 smgr->drawAll();
469 env->drawAll();
470
471 driver->endScene();
472
473 int fps = driver->getFPS();
474
475 if (lastFPS != fps)
476 {
477 core::stringw str = L"Per pixel lighting example - Irrlicht Engine [";
478 str += driver->getName();
479 str += "] FPS:";
480 str += fps;
481
482 device->setWindowCaption(str.c_str());
483 lastFPS = fps;
484 }
485 }
486
487 device->drop();
488
489 return 0;
490}
491</pre></td>
492 </tr>
493 </table>
494 <br>
495 </div>
496 </div>
497 </td>
498 </tr>
499</table>
500<p>&nbsp;</p>
501 </body>
502</html>
diff --git a/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/Makefile b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/Makefile
new file mode 100644
index 0000000..92b529f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/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 = 12.TerrainRendering
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/12.TerrainRendering/TerrainRendering.cbp b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.cbp
new file mode 100644
index 0000000..a0c93b7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.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 12 Terrain Rendering" />
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\TerrainRendering" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\TerrainRendering" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-w" />
29 <Add option="-g" />
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/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.dev b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.dev
new file mode 100644
index 0000000..678e536
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 12 Terrain Rendering
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=12.TerrainRendering.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/12.TerrainRendering/TerrainRendering.vcproj b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.vcproj
new file mode 100644
index 0000000..2200562
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering.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="12.TerrainRendering"
6 ProjectGUID="{D70CD59D-853A-4343-9DE0-A73B3D48914D}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/TerrainRendering.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/TerrainRendering.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/TerrainRendering.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/TerrainRendering.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/TerrainRendering.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/TerrainRendering.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc10.vcxproj
new file mode 100644
index 0000000..c68f9ff
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_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>12.TerrainRendering</ProjectName>
23 <ProjectGuid>{3A5B74E5-6390-43B0-A459-2793B81FFD31}</ProjectGuid>
24 <RootNamespace>TerrainRendering</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/TerrainRendering.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/TerrainRendering.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\12.TerrainRendering.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/TerrainRendering.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/TerrainRendering.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\12.TerrainRendering.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/12.TerrainRendering/TerrainRendering_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc11.vcxproj
new file mode 100644
index 0000000..d91cb76
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_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>12.TerrainRendering</ProjectName>
23 <ProjectGuid>{3A5B74E5-6390-43B0-A459-2793B81FFD31}</ProjectGuid>
24 <RootNamespace>TerrainRendering</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/TerrainRendering.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/TerrainRendering.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\12.TerrainRendering.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/TerrainRendering.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/TerrainRendering.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\12.TerrainRendering.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/12.TerrainRendering/TerrainRendering_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc8.vcproj
new file mode 100644
index 0000000..757e2f6
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_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="12.TerrainRendering_vc8"
6 ProjectGUID="{3A5B74E5-6390-43B0-A459-2793B81FFD31}"
7 RootNamespace="TerrainRendering_vc8"
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 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=".\Debug/TerrainRendering.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/TerrainRendering.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/TerrainRendering.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/TerrainRendering.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/TerrainRendering.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/TerrainRendering.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_vc9.vcproj
new file mode 100644
index 0000000..8a7f2f1
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/TerrainRendering_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="12.TerrainRendering_vc9"
6 ProjectGUID="{3A5B74E5-6390-43B0-A459-2793B81FFD31}"
7 RootNamespace="TerrainRendering_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/TerrainRendering.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/TerrainRendering.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/TerrainRendering.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/TerrainRendering.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/TerrainRendering.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\12.TerrainRendering.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/TerrainRendering.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/main.cpp b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/main.cpp
new file mode 100644
index 0000000..d829244
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/main.cpp
@@ -0,0 +1,285 @@
1/** Example 012 Terrain Rendering
2
3This tutorial will briefly show how to use the terrain renderer of Irrlicht. It
4will also show the terrain renderer triangle selector to be able to do
5collision detection with terrain.
6
7Note that the Terrain Renderer in Irrlicht is based on Spintz'
8GeoMipMapSceneNode, lots of thanks go to him. DeusXL provided a new elegant
9simple solution for building larger area on small heightmaps -> terrain
10smoothing.
11
12In the beginning there is nothing special. We include the needed header files
13and create an event listener to listen if the user presses a key: The 'W' key
14switches to wireframe mode, the 'P' key to pointcloud mode, and the 'D' key
15toggles between solid and detail mapped material.
16*/
17#include <irrlicht.h>
18#include "driverChoice.h"
19
20using namespace irr;
21
22#ifdef _MSC_VER
23#pragma comment(lib, "Irrlicht.lib")
24#endif
25
26
27class MyEventReceiver : public IEventReceiver
28{
29public:
30
31 MyEventReceiver(scene::ISceneNode* terrain, scene::ISceneNode* skybox, scene::ISceneNode* skydome) :
32 Terrain(terrain), Skybox(skybox), Skydome(skydome), showBox(true), showDebug(false)
33 {
34 Skybox->setVisible(showBox);
35 Skydome->setVisible(!showBox);
36 }
37
38 bool OnEvent(const SEvent& event)
39 {
40 // check if user presses the key 'W' or 'D'
41 if (event.EventType == irr::EET_KEY_INPUT_EVENT && !event.KeyInput.PressedDown)
42 {
43 switch (event.KeyInput.Key)
44 {
45 case irr::KEY_KEY_W: // switch wire frame mode
46 Terrain->setMaterialFlag(video::EMF_WIREFRAME,
47 !Terrain->getMaterial(0).Wireframe);
48 Terrain->setMaterialFlag(video::EMF_POINTCLOUD, false);
49 return true;
50 case irr::KEY_KEY_P: // switch wire frame mode
51 Terrain->setMaterialFlag(video::EMF_POINTCLOUD,
52 !Terrain->getMaterial(0).PointCloud);
53 Terrain->setMaterialFlag(video::EMF_WIREFRAME, false);
54 return true;
55 case irr::KEY_KEY_D: // toggle detail map
56 Terrain->setMaterialType(
57 Terrain->getMaterial(0).MaterialType == video::EMT_SOLID ?
58 video::EMT_DETAIL_MAP : video::EMT_SOLID);
59 return true;
60 case irr::KEY_KEY_S: // toggle skies
61 showBox=!showBox;
62 Skybox->setVisible(showBox);
63 Skydome->setVisible(!showBox);
64 return true;
65 case irr::KEY_KEY_X: // toggle debug information
66 showDebug=!showDebug;
67 Terrain->setDebugDataVisible(showDebug?scene::EDS_BBOX_ALL:scene::EDS_OFF);
68 return true;
69 default:
70 break;
71 }
72 }
73
74 return false;
75 }
76
77private:
78 scene::ISceneNode* Terrain;
79 scene::ISceneNode* Skybox;
80 scene::ISceneNode* Skydome;
81 bool showBox;
82 bool showDebug;
83};
84
85
86/*
87The start of the main function starts like in most other example. We ask the
88user for the desired renderer and start it up. This time with the advanced
89parameter handling.
90*/
91int main()
92{
93 // ask user for driver
94 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
95 if (driverType==video::EDT_COUNT)
96 return 1;
97
98 // create device with full flexibility over creation parameters
99 // you can add more parameters if desired, check irr::SIrrlichtCreationParameters
100 irr::SIrrlichtCreationParameters params;
101 params.DriverType=driverType;
102 params.WindowSize=core::dimension2d<u32>(640, 480);
103 IrrlichtDevice* device = createDeviceEx(params);
104
105 if (device == 0)
106 return 1; // could not create selected driver.
107
108
109 /*
110 First, we add standard stuff to the scene: A nice irrlicht engine
111 logo, a small help text, a user controlled camera, and we disable
112 the mouse cursor.
113 */
114
115 video::IVideoDriver* driver = device->getVideoDriver();
116 scene::ISceneManager* smgr = device->getSceneManager();
117 gui::IGUIEnvironment* env = device->getGUIEnvironment();
118
119 driver->setTextureCreationFlag(video::ETCF_ALWAYS_32_BIT, true);
120
121 // add irrlicht logo
122 env->addImage(driver->getTexture("../../media/irrlichtlogo2.png"),
123 core::position2d<s32>(10,10));
124
125 //set other font
126 env->getSkin()->setFont(env->getFont("../../media/fontlucida.png"));
127
128 // add some help text
129 env->addStaticText(
130 L"Press 'W' to change wireframe mode\nPress 'D' to toggle detail map\nPress 'S' to toggle skybox/skydome",
131 core::rect<s32>(10,421,250,475), true, true, 0, -1, true);
132
133 // add camera
134 scene::ICameraSceneNode* camera =
135 smgr->addCameraSceneNodeFPS(0,100.0f,1.2f);
136
137 camera->setPosition(core::vector3df(2700*2,255*2,2600*2));
138 camera->setTarget(core::vector3df(2397*2,343*2,2700*2));
139 camera->setFarValue(42000.0f);
140
141 // disable mouse cursor
142 device->getCursorControl()->setVisible(false);
143
144 /*
145 Here comes the terrain renderer scene node: We add it just like any
146 other scene node to the scene using
147 ISceneManager::addTerrainSceneNode(). The only parameter we use is a
148 file name to the heightmap we use. A heightmap is simply a gray scale
149 texture. The terrain renderer loads it and creates the 3D terrain from
150 it.
151
152 To make the terrain look more big, we change the scale factor of
153 it to (40, 4.4, 40). Because we don't have any dynamic lights in the
154 scene, we switch off the lighting, and we set the file
155 terrain-texture.jpg as texture for the terrain and detailmap3.jpg as
156 second texture, called detail map. At last, we set the scale values for
157 the texture: The first texture will be repeated only one time over the
158 whole terrain, and the second one (detail map) 20 times.
159 */
160
161 // add terrain scene node
162 scene::ITerrainSceneNode* terrain = smgr->addTerrainSceneNode(
163 "../../media/terrain-heightmap.bmp",
164 0, // parent node
165 -1, // node id
166 core::vector3df(0.f, 0.f, 0.f), // position
167 core::vector3df(0.f, 0.f, 0.f), // rotation
168 core::vector3df(40.f, 4.4f, 40.f), // scale
169 video::SColor ( 255, 255, 255, 255 ), // vertexColor
170 5, // maxLOD
171 scene::ETPS_17, // patchSize
172 4 // smoothFactor
173 );
174
175 terrain->setMaterialFlag(video::EMF_LIGHTING, false);
176
177 terrain->setMaterialTexture(0,
178 driver->getTexture("../../media/terrain-texture.jpg"));
179 terrain->setMaterialTexture(1,
180 driver->getTexture("../../media/detailmap3.jpg"));
181
182 terrain->setMaterialType(video::EMT_DETAIL_MAP);
183
184 terrain->scaleTexture(1.0f, 20.0f);
185
186 /*
187 To be able to do collision with the terrain, we create a triangle selector.
188 If you want to know what triangle selectors do, just take a look into the
189 collision tutorial. The terrain triangle selector works together with the
190 terrain. To demonstrate this, we create a collision response animator
191 and attach it to the camera, so that the camera will not be able to fly
192 through the terrain.
193 */
194
195 // create triangle selector for the terrain
196 scene::ITriangleSelector* selector
197 = smgr->createTerrainTriangleSelector(terrain, 0);
198 terrain->setTriangleSelector(selector);
199
200 // create collision response animator and attach it to the camera
201 scene::ISceneNodeAnimator* anim = smgr->createCollisionResponseAnimator(
202 selector, camera, core::vector3df(60,100,60),
203 core::vector3df(0,0,0),
204 core::vector3df(0,50,0));
205 selector->drop();
206 camera->addAnimator(anim);
207 anim->drop();
208
209 /* If you need access to the terrain data you can also do this directly via the following code fragment.
210 */
211 scene::CDynamicMeshBuffer* buffer = new scene::CDynamicMeshBuffer(video::EVT_2TCOORDS, video::EIT_16BIT);
212 terrain->getMeshBufferForLOD(*buffer, 0);
213 video::S3DVertex2TCoords* data = (video::S3DVertex2TCoords*)buffer->getVertexBuffer().getData();
214 // Work on data or get the IndexBuffer with a similar call.
215 buffer->drop(); // When done drop the buffer again.
216
217 /*
218 To make the user be able to switch between normal and wireframe mode,
219 we create an instance of the event receiver from above and let Irrlicht
220 know about it. In addition, we add the skybox which we already used in
221 lots of Irrlicht examples and a skydome, which is shown mutually
222 exclusive with the skybox by pressing 'S'.
223 */
224
225 // create skybox and skydome
226 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
227
228 scene::ISceneNode* skybox=smgr->addSkyBoxSceneNode(
229 driver->getTexture("../../media/irrlicht2_up.jpg"),
230 driver->getTexture("../../media/irrlicht2_dn.jpg"),
231 driver->getTexture("../../media/irrlicht2_lf.jpg"),
232 driver->getTexture("../../media/irrlicht2_rt.jpg"),
233 driver->getTexture("../../media/irrlicht2_ft.jpg"),
234 driver->getTexture("../../media/irrlicht2_bk.jpg"));
235 scene::ISceneNode* skydome=smgr->addSkyDomeSceneNode(driver->getTexture("../../media/skydome.jpg"),16,8,0.95f,2.0f);
236
237 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, true);
238
239 // create event receiver
240 MyEventReceiver receiver(terrain, skybox, skydome);
241 device->setEventReceiver(&receiver);
242
243 /*
244 That's it, draw everything.
245 */
246
247 int lastFPS = -1;
248
249 while(device->run())
250 if (device->isWindowActive())
251 {
252 driver->beginScene(true, true, 0 );
253
254 smgr->drawAll();
255 env->drawAll();
256
257 driver->endScene();
258
259 // display frames per second in window title
260 int fps = driver->getFPS();
261 if (lastFPS != fps)
262 {
263 core::stringw str = L"Terrain Renderer - Irrlicht Engine [";
264 str += driver->getName();
265 str += "] FPS:";
266 str += fps;
267 // Also print terrain height of current camera position
268 // We can use camera position because terrain is located at coordinate origin
269 str += " Height: ";
270 str += terrain->getHeight(camera->getAbsolutePosition().X,
271 camera->getAbsolutePosition().Z);
272
273 device->setWindowCaption(str.c_str());
274 lastFPS = fps;
275 }
276 }
277
278 device->drop();
279
280 return 0;
281}
282
283/*
284Now you know how to use terrain in Irrlicht.
285**/
diff --git a/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/tutorial.html b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/tutorial.html
new file mode 100644
index 0000000..f3d765f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/12.TerrainRendering/tutorial.html
@@ -0,0 +1,122 @@
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 12. Terrain Rendering</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 tutorial will briefly show how to use the terrain renderer of
22 Irrlicht. It will also show the terrain renderer triangle selector to
23 be able to do collision detection with terrain.</p>
24 <p>The program which is described here will look like this:</p>
25 <p align="center"><img src="../../media/012shot.jpg" width="258" height="202"></p>
26 <p align="left"><br>
27 Note that the terrain renderer in Irrlicht is based the terrain renderer
28 by Soconne and the GeoMipMapSceneNode developed by Spinz, lots of thanks
29 go to them.</p>
30 </div>
31 </td>
32 </tr>
33</table>
34<br>
35<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
36 <tr>
37 <td bgcolor="#666699"> <b><font color="#FFFFFF">Lets start!</font></b></td>
38 </tr>
39 <tr>
40 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
41 <div align="left">
42 <p> In the beginning there is nothing special. We include the needed
43 header files and create an event listener to listen if the user presses
44 the 'W' key so we can switch to wireframe mode and if he presses 'D'
45 we toggle to material between solid and detail mapped.</p>
46 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
47 <tr>
48 <td> <pre>#include &lt;irrlicht.h&gt;<br>#include &lt;iostream&gt;<br>using namespace irr;<br><br>#pragma comment(lib, &quot;Irrlicht.lib&quot;)<br><br>class MyEventReceiver : public IEventReceiver<br>{<br>public:<br> MyEventReceiver(scene::ISceneNode* terrain)<br> {<br><font color="#006600"> // store pointer to terrain so we can change its drawing mode<br></font> Terrain = terrain;<br> }<br><br> bool OnEvent(const SEvent& event)<br> {<br> <font color="#006600"> // check if user presses the key 'W' or 'D'</font><br> if (event.EventType == irr::EET_KEY_INPUT_EVENT &amp;&amp; !event.KeyInput.PressedDown)<br> {<br> switch (event.KeyInput.Key)<br> {<br> case irr::KEY_KEY_W:<font color="#006600"> // switch wire frame mode</font><br> Terrain-&gt;setMaterialFlag(video::EMF_WIREFRAME, !Terrain-&gt;getMaterial(0).Wireframe);<br> return true;<br> case irr::KEY_KEY_D:<font color="#006600"> // toggle detail map</font><br> Terrain-&gt;setMaterialType(<br> Terrain-&gt;getMaterial(0).MaterialType == video::EMT_SOLID ? <br> video::EMT_DETAIL_MAP : video::EMT_SOLID);<br> return true;<br> }<br> }<br> return false;<br> }<br><br>private:<br> scene::ISceneNode* Terrain;<br>};<br><br></pre></td>
49 </tr>
50 </table>
51 <p>The start of the main function starts like in most other example.
52 We ask the user for the desired renderer and start it up. </p>
53 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
54 <tr>
55 <td> <pre>int main()<br>{<br><font color="#006600"> // let user select driver type<br></font><br> video::E_DRIVER_TYPE driverType = video::EDT_DIRECT3D9;<br><br> 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> } <br><font color="#006600"><br> // create device<br></font> IrrlichtDevice* device = createDevice(driverType, core::dimension2d&lt;s32&gt;(640, 480));<br><br> if (device == 0)<br> return 1; <font color="#006600">// could not create selected driver.</font><br></pre></td>
56 </tr>
57 </table>
58 <p> First, we add standard stuff to the scene: A nice irrlicht engine
59 logo, a small help text, a user controlled camera, and we disable
60 the mouse cursor.</p>
61 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
62 <tr>
63 <td> <pre>video::IVideoDriver* driver = device-&gt;getVideoDriver();<br>scene::ISceneManager* smgr = device-&gt;getSceneManager();<br>gui::IGUIEnvironment* env = device-&gt;getGUIEnvironment();<br><br>driver-&gt;setTextureCreationFlag(video::ETCF_ALWAYS_32_BIT, true);<br><br><font color="#006600">// add irrlicht logo<br></font>env-&gt;addImage(driver-&gt;getTexture(&quot;../../media/irrlichtlogoalpha.tga&quot;),<br> core::position2d&lt;s32&gt;(10,10));<br>
64<font color="#006600">// add some help text<br></font>gui::IGUIStaticText* text = env-&gt;addStaticText(<br> L&quot;Press 'W' to change wireframe mode\nPress 'D' to toggle detail map&quot;,<br> core::rect&lt;s32&gt;(10,453,200,475), true, true, 0, -1, true);<br>
65<font color="#006600">// add camera<br></font>scene::ICameraSceneNode* camera = <br> smgr-&gt;addCameraSceneNodeFPS(0,100.0f,1200.0f);<br>camera-&gt;setPosition(core::vector3df(1900*2,255*2,3700*2));<br>camera-&gt;setTarget(core::vector3df(2397*2,343*2,2700*2));<br>camera-&gt;setFarValue(12000.0f);<br><br><font color="#006600">// disable mouse cursor<br></font>device-&gt;getCursorControl()-&gt;setVisible(false);</pre></td>
66 </tr>
67 </table>
68 <p> Here comes the terrain renderer scene node: We add it just like
69 any other scene node to the scene using ISceneManager::addTerrainSceneNode().
70 The only parameter we use is a file name to the heightmap we use.
71 A heightmap is simply a gray scale texture. The terrain renderer loads
72 it and creates the 3D terrain from it.<br>
73 To make the terrain look more big, we change the scale factor of it
74 to (40, 4.4, 40). Because we don't have any dynamic lights in the
75 scene, we switch off the lighting, and we set the file terrain-texture.jpg
76 as texture for the terrain and detailmap3.jpg as second texture, called
77 detail map. At last, we set the scale values for the texture: The
78 first texture will be repeated only one time over the whole terrain,
79 and the second one (detail map) 20 times. </p>
80 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
81 <tr>
82 <td> <pre><font color="#006600">// add terrain scene node<br></font>scene::ITerrainSceneNode* terrain = smgr-&gt;addTerrainSceneNode( <br> &quot;../../media/terrain-heightmap.bmp&quot;);<br><br>terrain-&gt;setScale(core::vector3df(40, 4.4f, 40));<br>terrain-&gt;setMaterialFlag(video::EMF_LIGHTING, false);<br><br>terrain-&gt;setMaterialTexture(0, driver-&gt;getTexture(&quot;../../media/terrain-texture.jpg&quot;));<br>terrain-&gt;setMaterialTexture(1, driver-&gt;getTexture(&quot;../../media/detailmap3.jpg&quot;));<br> <br>terrain-&gt;setMaterialType(video::EMT_DETAIL_MAP);<br>terrain-&gt;scaleTexture(1.0f, 20.0f);<font color="#006600"><br></font></pre></td>
83 </tr>
84 </table>
85 <p> To be able to do collision with the terrain, we create a triangle
86 selector. If you want to know what triangle selectors do, just take
87 a look into the collision tutorial. The terrain triangle selector
88 works together with the terrain. To demonstrate this, we create a
89 collision response animator and attach it to the camera, so that the
90 camera will not be able to fly through the terrain. </p>
91 </div>
92 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
93 <tr>
94 <td> <pre><font color="#006600">// create triangle selector for the terrain <br></font>scene::ITriangleSelector* selector =<br> smgr-&gt;createTerrainTriangleSelector(terrain, 0);<br>terrain-&gt;setTriangleSelector(selector);<br><br><font color="#006600">// create collision response animator and attach it to the camera<br></font>scene::ISceneNodeAnimator* anim = smgr-&gt;createCollisionResponseAnimator(<br> selector, camera, core::vector3df(60,100,60),<br> core::vector3df(0,0,0), <br> core::vector3df(0,50,0));<br>selector-&gt;drop();<br>camera-&gt;addAnimator(anim);<br>anim-&gt;drop();</pre></td>
95 </tr>
96 </table>
97 <p> To make the user be able to switch between normal and wireframe mode,
98 we create an instance of the event reciever from above and let Irrlicht
99 know about it. In addition, we add the skybox which we already used
100 in lots of Irrlicht examples.</p>
101 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
102 <tr>
103 <td><pre><font color="#006600">// create event receiver<br></font>MyEventReceiver receiver(terrain);<br>device-&gt;setEventReceiver(&amp;receiver);<br><br><font color="#006600">// create skybox<br></font>driver-&gt;setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);<br><br>smgr-&gt;addSkyBoxSceneNode(<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_up.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_dn.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_lf.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_rt.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_ft.jpg&quot;),<br> driver-&gt;getTexture(&quot;../../media/irrlicht2_bk.jpg&quot;));<br>
104driver-&gt;setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, true);<br></pre></td>
105 </tr>
106 </table>
107 <p> That's it, draw everything. Now you know how to use terrain in Irrlicht.</p>
108 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
109 <tr>
110 <td><pre> int lastFPS = -1;<br><br> while(device-&gt;run())<br> if (device-&gt;isWindowActive())<br> {<br> driver-&gt;beginScene(true, true, 0 );<br><br> smgr-&gt;drawAll();<br> env-&gt;drawAll();<br><br> driver-&gt;endScene();
111<br><font color="#006600"> // display frames per second in window title
112</font> int fps = driver-&gt;getFPS();<br><br> if (lastFPS != fps)<br> {<br> core::stringw str = L&quot;Terrain Renderer - Irrlicht Engine [&quot;;<br> str += driver-&gt;getName();<br> str += &quot;] FPS:&quot;;<br> str += fps;<br> device-&gt;setWindowCaption(str.c_str());<br> lastFPS = fps;<br> }<br> }<br><br> device-&gt;drop();<br> <br> return 0;<br>}</pre></td>
113 </tr>
114 </table>
115 <p>&nbsp; </p>
116 </div>
117 </td>
118 </tr>
119</table>
120<p>&nbsp;</p>
121 </body>
122</html>
diff --git a/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/Makefile b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/Makefile
new file mode 100644
index 0000000..7888648
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/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 = 13.RenderToTexture
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/13.RenderToTexture/RenderToTexture.cbp b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.cbp
new file mode 100644
index 0000000..db3911e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.cbp
@@ -0,0 +1,55 @@
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 13 Render to Texture" />
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\RenderToTexture" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\RenderToTexture" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.dev b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.dev
new file mode 100644
index 0000000..0ebdf28
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 13 Render To Texture
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=13.RenderToTexture.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/13.RenderToTexture/RenderToTexture.vcproj b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.vcproj
new file mode 100644
index 0000000..8fd8e6c
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture.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="13.RenderToTexture"
6 ProjectGUID="{AFC223BD-4371-4A8B-A90B-0D338BD2DEBB}"
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/RenderToTexture.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\13.RenderToTexture.exe"
44 LinkIncremental="0"
45 SuppressStartupBanner="TRUE"
46 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
47 ProgramDatabaseFile=".\Release/RenderToTexture.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Release/RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.exe"
104 LinkIncremental="0"
105 SuppressStartupBanner="TRUE"
106 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
107 GenerateDebugInformation="TRUE"
108 ProgramDatabaseFile=".\Debug/RenderToTexture.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Debug/RenderToTexture.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/13.RenderToTexture/RenderToTexture_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc10.vcxproj
new file mode 100644
index 0000000..e376054
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_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>13.RenderToTexture</ProjectName>
23 <ProjectGuid>{0914E5C8-5352-467B-8421-C9EB35BD5596}</ProjectGuid>
24 <RootNamespace>RenderToTexture</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/RenderToTexture.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\13.RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.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/13.RenderToTexture/RenderToTexture_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc11.vcxproj
new file mode 100644
index 0000000..f80b7c7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_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>13.RenderToTexture</ProjectName>
23 <ProjectGuid>{0914E5C8-5352-467B-8421-C9EB35BD5596}</ProjectGuid>
24 <RootNamespace>RenderToTexture</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/RenderToTexture.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\13.RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.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/13.RenderToTexture/RenderToTexture_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc8.vcproj
new file mode 100644
index 0000000..dc2840c
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_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="13.RenderToTexture_vc8"
6 ProjectGUID="{0914E5C8-5352-467B-8421-C9EB35BD5596}"
7 RootNamespace="RenderToTexture_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/RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 ProgramDatabaseFile=".\Release/RenderToTexture.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/RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/RenderToTexture.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/13.RenderToTexture/RenderToTexture_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_vc9.vcproj
new file mode 100644
index 0000000..7ee213b
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/RenderToTexture_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="13.RenderToTexture_vc9"
6 ProjectGUID="{0914E5C8-5352-467B-8421-C9EB35BD5596}"
7 RootNamespace="RenderToTexture_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/RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.exe"
77 LinkIncremental="0"
78 SuppressStartupBanner="true"
79 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
80 ProgramDatabaseFile=".\Release/RenderToTexture.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/RenderToTexture.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/RenderToTexture.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\13.RenderToTexture.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/RenderToTexture.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/13.RenderToTexture/main.cpp b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/main.cpp
new file mode 100644
index 0000000..35ea009
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/main.cpp
@@ -0,0 +1,211 @@
1/** Example 013 Render To Texture
2
3This tutorial shows how to render to a texture using Irrlicht. Render to
4texture is a feature with which it is possible to create nice special effects.
5In addition, this tutorial shows how to enable specular highlights.
6
7In the beginning, everything as usual. Include the needed headers, ask the user
8for the rendering driver, create the Irrlicht Device:
9*/
10
11#include <irrlicht.h>
12#include "driverChoice.h"
13
14using namespace irr;
15
16#ifdef _MSC_VER
17#pragma comment(lib, "Irrlicht.lib")
18#endif
19
20int main()
21{
22 // ask user for driver
23 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
24 if (driverType==video::EDT_COUNT)
25 return 1;
26
27 // create device and exit if creation failed
28
29 IrrlichtDevice *device =
30 createDevice(driverType, core::dimension2d<u32>(640, 480),
31 16, false, false);
32
33 if (device == 0)
34 return 1; // could not create selected driver.
35
36 video::IVideoDriver* driver = device->getVideoDriver();
37 scene::ISceneManager* smgr = device->getSceneManager();
38 gui::IGUIEnvironment* env = device->getGUIEnvironment();
39
40 /*
41 Now, we load an animated mesh to be displayed. As in most examples,
42 we'll take the fairy md2 model. The difference here: We set the
43 shininess of the model to a value other than 0 which is the default
44 value. This enables specular highlights on the model if dynamic
45 lighting is on. The value influences the size of the highlights.
46 */
47
48 // load and display animated fairy mesh
49
50 scene::IAnimatedMeshSceneNode* fairy = smgr->addAnimatedMeshSceneNode(
51 smgr->getMesh("../../media/faerie.md2"));
52
53 if (fairy)
54 {
55 fairy->setMaterialTexture(0,
56 driver->getTexture("../../media/faerie2.bmp")); // set diffuse texture
57 fairy->setMaterialFlag(video::EMF_LIGHTING, true); // enable dynamic lighting
58 fairy->getMaterial(0).Shininess = 20.0f; // set size of specular highlights
59 fairy->setPosition(core::vector3df(-10,0,-100));
60 fairy->setMD2Animation ( scene::EMAT_STAND );
61 }
62
63 /*
64 To make specular highlights appear on the model, we need a dynamic
65 light in the scene. We add one directly in vicinity of the model. In
66 addition, to make the model not that dark, we set the ambient light to
67 gray.
68 */
69
70 // add white light
71 smgr->addLightSceneNode(0, core::vector3df(-15,5,-105),
72 video::SColorf(1.0f, 1.0f, 1.0f));
73
74 // set ambient light
75 smgr->setAmbientLight(video::SColor(0,60,60,60));
76
77 /*
78 The next is just some standard stuff: Add a test cube and let it rotate
79 to make the scene more interesting. The user defined camera and cursor
80 setup is made later on, right before the render loop.
81 */
82
83 // create test cube
84 scene::ISceneNode* test = smgr->addCubeSceneNode(60);
85
86 // let the cube rotate and set some light settings
87 scene::ISceneNodeAnimator* anim = smgr->createRotationAnimator(
88 core::vector3df(0.3f, 0.3f,0));
89
90 test->setPosition(core::vector3df(-100,0,-100));
91 test->setMaterialFlag(video::EMF_LIGHTING, false); // disable dynamic lighting
92 test->addAnimator(anim);
93 anim->drop();
94
95 // set window caption
96 device->setWindowCaption(L"Irrlicht Engine - Render to Texture and Specular Highlights example");
97
98 /*
99 To test out the render to texture feature, we need a render target
100 texture. These are not like standard textures, but need to be created
101 first. To create one, we call IVideoDriver::addRenderTargetTexture()
102 and specify the size of the texture. Please don't use sizes bigger than
103 the frame buffer for this, because the render target shares the zbuffer
104 with the frame buffer.
105 Because we want to render the scene not from the user camera into the
106 texture, we add another fixed camera to the scene. But before we do all
107 this, we check if the current running driver is able to render to
108 textures. If it is not, we simply display a warning text.
109 */
110
111 // create render target
112 video::ITexture* rt = 0;
113 scene::ICameraSceneNode* fixedCam = 0;
114
115
116 if (driver->queryFeature(video::EVDF_RENDER_TO_TARGET))
117 {
118 rt = driver->addRenderTargetTexture(core::dimension2d<u32>(256,256), "RTT1");
119 test->setMaterialTexture(0, rt); // set material of cube to render target
120
121 // add fixed camera
122 fixedCam = smgr->addCameraSceneNode(0, core::vector3df(10,10,-80),
123 core::vector3df(-10,10,-100));
124 }
125 else
126 {
127 // create problem text
128 gui::IGUISkin* skin = env->getSkin();
129 gui::IGUIFont* font = env->getFont("../../media/fonthaettenschweiler.bmp");
130 if (font)
131 skin->setFont(font);
132
133 gui::IGUIStaticText* text = env->addStaticText(
134 L"Your hardware or this renderer is not able to use the "\
135 L"render to texture feature. RTT Disabled.",
136 core::rect<s32>(150,20,470,60));
137
138 text->setOverrideColor(video::SColor(100,255,255,255));
139 }
140
141 // add fps camera
142 scene::ICameraSceneNode* fpsCamera = smgr->addCameraSceneNodeFPS();
143 fpsCamera->setPosition(core::vector3df(-50,50,-150));
144
145 // disable mouse cursor
146 device->getCursorControl()->setVisible(false);
147
148 /*
149 Nearly finished. Now we need to draw everything. Every frame, we draw
150 the scene twice. Once from the fixed camera into the render target
151 texture and once as usual. When rendering into the render target, we
152 need to disable the visibility of the test cube, because it has the
153 render target texture applied to it. That's it, wasn't too complicated
154 I hope. :)
155 */
156
157 int lastFPS = -1;
158
159 while(device->run())
160 if (device->isWindowActive())
161 {
162 driver->beginScene(true, true, 0);
163
164 if (rt)
165 {
166 // draw scene into render target
167
168 // set render target texture
169 driver->setRenderTarget(rt, true, true, video::SColor(0,0,0,255));
170
171 // make cube invisible and set fixed camera as active camera
172 test->setVisible(false);
173 smgr->setActiveCamera(fixedCam);
174
175 // draw whole scene into render buffer
176 smgr->drawAll();
177
178 // set back old render target
179 // The buffer might have been distorted, so clear it
180 driver->setRenderTarget(0, true, true, 0);
181
182 // make the cube visible and set the user controlled camera as active one
183 test->setVisible(true);
184 smgr->setActiveCamera(fpsCamera);
185 }
186
187 // draw scene normally
188 smgr->drawAll();
189 env->drawAll();
190
191 driver->endScene();
192
193 // display frames per second in window title
194 int fps = driver->getFPS();
195 if (lastFPS != fps)
196 {
197 core::stringw str = L"Irrlicht Engine - Render to Texture and Specular Highlights example";
198 str += " FPS:";
199 str += fps;
200
201 device->setWindowCaption(str.c_str());
202 lastFPS = fps;
203 }
204 }
205
206 device->drop(); // drop device
207 return 0;
208}
209
210/*
211**/
diff --git a/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/tutorial.html b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/tutorial.html
new file mode 100644
index 0000000..26340a3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/13.RenderToTexture/tutorial.html
@@ -0,0 +1,244 @@
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 13. Render to Texture</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 tutorial shows how to render to a texture using Irrlicht. Render
22 to texture is a feature with which it is possible to create nice special
23 effects. In addition, this tutorial shows how to enable specular highlights.</p>
24 <p>The program which is described here will look like this:</p>
25 <p align="center"><img src="../../media/013shot.jpg" width="256" height="200"><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>In the beginning, everything as usual. Include the needed headers,
40 ask the user for the rendering driver, create the Irrlicht Device:</p>
41 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
42 <tr>
43 <td><pre>#include &lt;irrlicht.h>
44#include &lt;iostream>
45
46using namespace irr;
47
48#pragma comment(lib, "Irrlicht.lib")
49
50int main()
51{
52 // let user select driver type
53
54 video::E_DRIVER_TYPE driverType = video::EDT_DIRECT3D9;
55
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;);
57
58 char i;
59 std::cin >> i;
60
61 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> }
62
63 // create device and exit if creation failed
64
65 IrrlichtDevice *device =
66 createDevice(driverType, core::dimension2d<s32>(640, 480),
67 16, false, false);
68
69 if (device == 0)
70 return 1; // could not create selected driver.
71
72 video::IVideoDriver* driver = device->getVideoDriver();
73 scene::ISceneManager* smgr = device->getSceneManager();
74 gui::IGUIEnvironment* env = device->getGUIEnvironment();</pre></td>
75 </tr>
76 </table>
77 <p>Now, we load an animated mesh to be displayed. As in most examples,
78 we'll take the fairy md2 model. The difference here: We set the shininess<br>
79 of the model to a value other than 0 which is the default value. This
80 enables specular highlights on the model if dynamic lighting is on.
81 The value influences the size of the highlights.</p>
82 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
83 <tr>
84 <td><pre>// load and display animated fairy mesh
85
86 scene::IAnimatedMeshSceneNode* fairy = smgr->addAnimatedMeshSceneNode(
87 smgr->getMesh("../../media/faerie.md2"));
88
89 if (fairy)
90 {
91 fairy->setMaterialTexture(0, driver->getTexture("../../media/faerie2.bmp")); // set diffuse texture
92 fairy->setMaterialFlag(video::EMF_LIGHTING, true); // enable dynamic lighting
93 fairy->getMaterial(0).Shininess = 20.0f; // set size of specular highlights
94 fairy->setPosition(core::vector3df(-10,0,-100));
95 }</pre></td>
96 </tr>
97 </table>
98 <p> To make specular highlights appear on the model, we need a dynamic
99 light in the scene. We add one directly in vicinity of the model.
100 In addition, to make the model not that dark, we set the ambient light
101 to gray. </p>
102 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
103 <tr>
104 <td><pre>
105 // add white light
106 scene::ILightSceneNode* light = smgr->addLightSceneNode(0,
107 core::vector3df(-15,5,-105), video::SColorf(1.0f, 1.0f, 1.0f));
108
109 // set ambient light
110 driver->setAmbientLight(video::SColor(0,60,60,60));</pre></td>
111 </tr>
112 </table>
113 <p>The next is just some standard stuff: Add a user controlled camera
114 to the scene, disable mouse cursor, and add a test cube and let it
115 rotate to make the scene more interesting.</p>
116 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
117 <tr>
118 <td><pre>
119 // add fps camera
120 scene::ICameraSceneNode* fpsCamera = smgr->addCameraSceneNodeFPS();
121 fpsCamera->setPosition(core::vector3df(-50,50,-150));
122
123 // disable mouse cursor
124 device->getCursorControl()->setVisible(false);
125
126 // create test cube
127 scene::ISceneNode* test = smgr->addCubeSceneNode(60);
128
129 // let the cube rotate and set some light settings
130 scene::ISceneNodeAnimator* anim = smgr->createRotationAnimator(
131 core::vector3df(0.3f, 0.3f,0));
132
133 test->setPosition(core::vector3df(-100,0,-100));
134 test->setMaterialFlag(video::EMF_LIGHTING, false); // disable dynamic lighting
135 test->addAnimator(anim);
136 anim->drop();
137
138 // set window caption
139 device->setWindowCaption(L"Irrlicht Engine - Render to Texture and Specular Highlights example");</pre></td>
140 </tr>
141 </table>
142 <p> To test out the render to texture feature, we need a render target
143 texture. These are not like standard textures, but need to be created
144 first. To create one, we call IVideoDriver::createRenderTargetTexture()
145 and specify the size of the texture. Please don't use sizes bigger
146 than the frame buffer for this, because the render target shares the
147 zbuffer with the frame buffer. And because we want to render the scene
148 not from the user camera into the texture, we add another, fixed camera
149 to the scene. But before we do all this, we check if the current running
150 driver is able to render to textures. If it is not, we simply display
151 a warning text.</p>
152 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
153 <tr>
154 <td><pre>// create render target
155 video::ITexture* rt = 0;
156 scene::ICameraSceneNode* fixedCam = 0;
157
158
159 if (driver->queryFeature(video::EVDF_RENDER_TO_TARGET))
160 {
161 rt = driver->createRenderTargetTexture(core::dimension2d<s32>(256,256));
162 test->setMaterialTexture(0, rt); // set material of cube to render target
163
164 // add fixed camera
165 fixedCam = smgr->addCameraSceneNode(0, core::vector3df(10,10,-80),
166 core::vector3df(-10,10,-100));
167 }
168 else
169 {
170 // create problem text
171 gui::IGUISkin* skin = env->getSkin();
172 gui::IGUIFont* font = env->getFont("../../media/fonthaettenschweiler.bmp");
173 if (font)
174 skin->setFont(font);
175
176 gui::IGUIStaticText* text = env->addStaticText(
177 L"Your hardware or this renderer is not able to use the "\
178 L"render to texture feature. RTT Disabled.",
179 core::rect<s32>(150,20,470,60));
180
181 text->setOverrideColor(video::SColor(100,255,255,255));
182 }</pre></td>
183 </tr>
184 </table>
185 <p> Nearly finished. Now we need to draw everything. Every frame, we
186 draw the scene twice. Once from the fixed camera into the render target
187 texture and once as usual. When rendering into the render target,
188 we need to disable the visibilty of the test cube, because it has
189 the render target texture applied to it.<br>
190 That's, wasn't quite complicated I hope. :)</p>
191 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
192 <tr>
193 <td><pre>while(device->run())
194 if (device->isWindowActive())
195 {
196 driver->beginScene(true, true, 0);
197
198 if (rt)
199 {
200 // draw scene into render target
201
202 // set render target texture
203 driver->setRenderTarget(rt, true, true, video::SColor(0,0,0,255));
204
205 // make cube invisible and set fixed camera as active camera
206 test->setVisible(false);
207 smgr->setActiveCamera(fixedCam);
208
209 // draw whole scene into render buffer
210 smgr->drawAll();
211
212 // set back old render target
213 driver->setRenderTarget(0);
214
215 // make the cube visible and set the user controlled camera as active one
216 test->setVisible(true);
217 smgr->setActiveCamera(fpsCamera);
218 }
219
220 // draw scene normally
221 smgr->drawAll();
222 env->drawAll();
223
224 driver->endScene();
225 }
226
227 if (rt)
228 rt->drop(); // drop render target because we created if with a create() method
229
230 device->drop(); // drop device
231 return 0;
232}
233</pre></td>
234 </tr>
235 </table>
236
237 <p>&nbsp;</p></div>
238 </div>
239 </td>
240 </tr>
241</table>
242<p>&nbsp;</p>
243 </body>
244</html>
diff --git a/src/others/irrlicht-1.8.1/examples/14.Win32Window/Makefile b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Makefile
new file mode 100644
index 0000000..e76f2ff
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/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 = 14.Win32Window
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/14.Win32Window/Win32Window.cbp b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.cbp
new file mode 100644
index 0000000..06f310b
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.cbp
@@ -0,0 +1,43 @@
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 14 Win32 Window" />
6 <Option platforms="Windows;" />
7 <Option pch_mode="0" />
8 <Option compiler="gcc" />
9 <Build>
10 <Target title="Windows">
11 <Option platforms="Windows;" />
12 <Option output="..\..\bin\Win32-gcc\Win32Window" prefix_auto="0" extension_auto="1" />
13 <Option type="1" />
14 <Option compiler="gcc" />
15 <Option projectCompilerOptionsRelation="0" />
16 <Compiler>
17 <Add option="-g" />
18 </Compiler>
19 <Linker>
20 <Add library="opengl32" />
21 <Add library="gdi32" />
22 <Add directory="..\..\lib\Win32-gcc" />
23 </Linker>
24 </Target>
25 </Build>
26 <VirtualTargets>
27 <Add alias="All" targets="Windows;" />
28 </VirtualTargets>
29 <Compiler>
30 <Add option="-g" />
31 <Add directory="..\..\include" />
32 </Compiler>
33 <Linker>
34 <Add library="Irrlicht" />
35 </Linker>
36 <Unit filename="main.cpp" />
37 <Extensions>
38 <code_completion />
39 <debugger />
40 <envvars />
41 </Extensions>
42 </Project>
43</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.dev b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.dev
new file mode 100644
index 0000000..6192563
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 14 Win32 Window
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=14.Win32Window.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/14.Win32Window/Win32Window.vcproj b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.vcproj
new file mode 100644
index 0000000..c8576c7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window.vcproj
@@ -0,0 +1,165 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="14.Win32Window"
6 ProjectGUID="{3A73BAFE-60DE-4E40-9E37-710760BC25C6}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/Win32Window.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 AdditionalDependencies="opengl32.lib"
43 OutputFile="..\..\bin\Win32-VisualStudio\14.Win32Window.exe"
44 LinkIncremental="0"
45 SuppressStartupBanner="TRUE"
46 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
47 GenerateDebugInformation="TRUE"
48 ProgramDatabaseFile=".\Debug/Win32Window.pdb"
49 SubSystem="1"
50 TargetMachine="1"/>
51 <Tool
52 Name="VCMIDLTool"
53 TypeLibraryName=".\Debug/Win32Window.tlb"
54 HeaderFileName=""/>
55 <Tool
56 Name="VCPostBuildEventTool"/>
57 <Tool
58 Name="VCPreBuildEventTool"/>
59 <Tool
60 Name="VCPreLinkEventTool"/>
61 <Tool
62 Name="VCResourceCompilerTool"
63 PreprocessorDefinitions="_DEBUG"
64 Culture="3079"/>
65 <Tool
66 Name="VCWebServiceProxyGeneratorTool"/>
67 <Tool
68 Name="VCXMLDataGeneratorTool"/>
69 <Tool
70 Name="VCWebDeploymentTool"/>
71 <Tool
72 Name="VCManagedWrapperGeneratorTool"/>
73 <Tool
74 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
75 </Configuration>
76 <Configuration
77 Name="Release|Win32"
78 OutputDirectory=".\Release"
79 IntermediateDirectory=".\Release"
80 ConfigurationType="1"
81 UseOfMFC="0"
82 ATLMinimizesCRunTimeLibraryUsage="FALSE"
83 CharacterSet="2">
84 <Tool
85 Name="VCCLCompilerTool"
86 Optimization="2"
87 InlineFunctionExpansion="1"
88 AdditionalIncludeDirectories="..\..\include"
89 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
90 StringPooling="TRUE"
91 RuntimeLibrary="4"
92 EnableFunctionLevelLinking="TRUE"
93 UsePrecompiledHeader="2"
94 PrecompiledHeaderFile=".\Release/Win32Window.pch"
95 AssemblerListingLocation=".\Release/"
96 ObjectFile=".\Release/"
97 ProgramDataBaseFileName=".\Release/"
98 WarningLevel="3"
99 SuppressStartupBanner="TRUE"
100 CompileAs="0"/>
101 <Tool
102 Name="VCCustomBuildTool"/>
103 <Tool
104 Name="VCLinkerTool"
105 AdditionalDependencies="opengl32.lib"
106 OutputFile="..\..\bin\Win32-VisualStudio\14.Win32Window.exe"
107 LinkIncremental="0"
108 SuppressStartupBanner="TRUE"
109 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
110 ProgramDatabaseFile=".\Release/Win32Window.pdb"
111 SubSystem="1"
112 TargetMachine="1"/>
113 <Tool
114 Name="VCMIDLTool"
115 TypeLibraryName=".\Release/Win32Window.tlb"
116 HeaderFileName=""/>
117 <Tool
118 Name="VCPostBuildEventTool"/>
119 <Tool
120 Name="VCPreBuildEventTool"/>
121 <Tool
122 Name="VCPreLinkEventTool"/>
123 <Tool
124 Name="VCResourceCompilerTool"
125 PreprocessorDefinitions="NDEBUG"
126 Culture="3079"/>
127 <Tool
128 Name="VCWebServiceProxyGeneratorTool"/>
129 <Tool
130 Name="VCXMLDataGeneratorTool"/>
131 <Tool
132 Name="VCWebDeploymentTool"/>
133 <Tool
134 Name="VCManagedWrapperGeneratorTool"/>
135 <Tool
136 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
137 </Configuration>
138 </Configurations>
139 <References>
140 </References>
141 <Files>
142 <File
143 RelativePath="main.cpp">
144 <FileConfiguration
145 Name="Debug|Win32">
146 <Tool
147 Name="VCCLCompilerTool"
148 Optimization="0"
149 AdditionalIncludeDirectories=""
150 PreprocessorDefinitions=""
151 BasicRuntimeChecks="3"/>
152 </FileConfiguration>
153 <FileConfiguration
154 Name="Release|Win32">
155 <Tool
156 Name="VCCLCompilerTool"
157 Optimization="2"
158 AdditionalIncludeDirectories=""
159 PreprocessorDefinitions=""/>
160 </FileConfiguration>
161 </File>
162 </Files>
163 <Globals>
164 </Globals>
165</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc10.vcxproj
new file mode 100644
index 0000000..f18c583
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc10.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>14.Win32Window</ProjectName>
23 <ProjectGuid>{772FBE05-D05A-467B-9842-BEC409EEA8D0}</ProjectGuid>
24 <RootNamespace>Win32Window</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/Win32Window.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
113 <OutputFile>..\..\bin\Win32-VisualStudio\14.Win32Window.exe</OutputFile>
114 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
115 <GenerateDebugInformation>true</GenerateDebugInformation>
116 <SubSystem>Console</SubSystem>
117 <DataExecutionPrevention>
118 </DataExecutionPrevention>
119 </Link>
120 </ItemDefinitionGroup>
121 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
122 <Midl>
123 <TypeLibraryName>.\Debug/Win32Window.tlb</TypeLibraryName>
124 <HeaderFileName>
125 </HeaderFileName>
126 </Midl>
127 <ClCompile>
128 <Optimization>Disabled</Optimization>
129 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
130 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
131 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
132 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
133 <PrecompiledHeader>
134 </PrecompiledHeader>
135 <WarningLevel>Level3</WarningLevel>
136 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
137 </ClCompile>
138 <ResourceCompile>
139 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
140 <Culture>0x0c07</Culture>
141 </ResourceCompile>
142 <Link>
143 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
144 <OutputFile>..\..\bin\Win64-VisualStudio\14.Win32Window.exe</OutputFile>
145 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
146 <GenerateDebugInformation>true</GenerateDebugInformation>
147 <SubSystem>Console</SubSystem>
148 <DataExecutionPrevention>
149 </DataExecutionPrevention>
150 </Link>
151 </ItemDefinitionGroup>
152 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
153 <Midl>
154 <TypeLibraryName>.\Release/Win32Window.tlb</TypeLibraryName>
155 <HeaderFileName>
156 </HeaderFileName>
157 </Midl>
158 <ClCompile>
159 <Optimization>MaxSpeed</Optimization>
160 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
161 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
162 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
163 <StringPooling>true</StringPooling>
164 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
165 <FunctionLevelLinking>true</FunctionLevelLinking>
166 <PrecompiledHeader>
167 </PrecompiledHeader>
168 <WarningLevel>Level3</WarningLevel>
169 </ClCompile>
170 <ResourceCompile>
171 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
172 <Culture>0x0c07</Culture>
173 </ResourceCompile>
174 <Link>
175 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
176 <OutputFile>..\..\bin\Win32-VisualStudio\14.Win32Window.exe</OutputFile>
177 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
178 <SubSystem>Console</SubSystem>
179 <DataExecutionPrevention>
180 </DataExecutionPrevention>
181 </Link>
182 </ItemDefinitionGroup>
183 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
184 <Midl>
185 <TypeLibraryName>.\Release/Win32Window.tlb</TypeLibraryName>
186 <HeaderFileName>
187 </HeaderFileName>
188 </Midl>
189 <ClCompile>
190 <Optimization>MaxSpeed</Optimization>
191 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
192 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
193 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
194 <StringPooling>true</StringPooling>
195 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
196 <FunctionLevelLinking>true</FunctionLevelLinking>
197 <PrecompiledHeader>
198 </PrecompiledHeader>
199 <WarningLevel>Level3</WarningLevel>
200 </ClCompile>
201 <ResourceCompile>
202 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
203 <Culture>0x0c07</Culture>
204 </ResourceCompile>
205 <Link>
206 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
207 <OutputFile>..\..\bin\Win64-VisualStudio\14.Win32Window.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/14.Win32Window/Win32Window_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc11.vcxproj
new file mode 100644
index 0000000..07a2fce
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc11.vcxproj
@@ -0,0 +1,239 @@
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>14.Win32Window</ProjectName>
23 <ProjectGuid>{772FBE05-D05A-467B-9842-BEC409EEA8D0}</ProjectGuid>
24 <RootNamespace>Win32Window</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/Win32Window.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
117 <OutputFile>..\..\bin\Win32-VisualStudio\14.Win32Window.exe</OutputFile>
118 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
119 <GenerateDebugInformation>true</GenerateDebugInformation>
120 <SubSystem>Console</SubSystem>
121 <DataExecutionPrevention>
122 </DataExecutionPrevention>
123 </Link>
124 </ItemDefinitionGroup>
125 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
126 <Midl>
127 <TypeLibraryName>.\Debug/Win32Window.tlb</TypeLibraryName>
128 <HeaderFileName>
129 </HeaderFileName>
130 </Midl>
131 <ClCompile>
132 <Optimization>Disabled</Optimization>
133 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
134 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
135 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
136 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
137 <PrecompiledHeader>
138 </PrecompiledHeader>
139 <WarningLevel>Level3</WarningLevel>
140 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
141 </ClCompile>
142 <ResourceCompile>
143 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
144 <Culture>0x0c07</Culture>
145 </ResourceCompile>
146 <Link>
147 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
148 <OutputFile>..\..\bin\Win64-VisualStudio\14.Win32Window.exe</OutputFile>
149 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
150 <GenerateDebugInformation>true</GenerateDebugInformation>
151 <SubSystem>Console</SubSystem>
152 <DataExecutionPrevention>
153 </DataExecutionPrevention>
154 </Link>
155 </ItemDefinitionGroup>
156 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
157 <Midl>
158 <TypeLibraryName>.\Release/Win32Window.tlb</TypeLibraryName>
159 <HeaderFileName>
160 </HeaderFileName>
161 </Midl>
162 <ClCompile>
163 <Optimization>MaxSpeed</Optimization>
164 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
165 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
166 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
167 <StringPooling>true</StringPooling>
168 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
169 <FunctionLevelLinking>true</FunctionLevelLinking>
170 <PrecompiledHeader>
171 </PrecompiledHeader>
172 <WarningLevel>Level3</WarningLevel>
173 </ClCompile>
174 <ResourceCompile>
175 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
176 <Culture>0x0c07</Culture>
177 </ResourceCompile>
178 <Link>
179 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
180 <OutputFile>..\..\bin\Win32-VisualStudio\14.Win32Window.exe</OutputFile>
181 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
182 <SubSystem>Console</SubSystem>
183 <DataExecutionPrevention>
184 </DataExecutionPrevention>
185 </Link>
186 </ItemDefinitionGroup>
187 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
188 <Midl>
189 <TypeLibraryName>.\Release/Win32Window.tlb</TypeLibraryName>
190 <HeaderFileName>
191 </HeaderFileName>
192 </Midl>
193 <ClCompile>
194 <Optimization>MaxSpeed</Optimization>
195 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
196 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
197 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
198 <StringPooling>true</StringPooling>
199 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
200 <FunctionLevelLinking>true</FunctionLevelLinking>
201 <PrecompiledHeader>
202 </PrecompiledHeader>
203 <WarningLevel>Level3</WarningLevel>
204 </ClCompile>
205 <ResourceCompile>
206 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
207 <Culture>0x0c07</Culture>
208 </ResourceCompile>
209 <Link>
210 <AdditionalDependencies>opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
211 <OutputFile>..\..\bin\Win64-VisualStudio\14.Win32Window.exe</OutputFile>
212 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
213 <SubSystem>Console</SubSystem>
214 <DataExecutionPrevention>
215 </DataExecutionPrevention>
216 </Link>
217 </ItemDefinitionGroup>
218 <ItemGroup>
219 <ClCompile Include="main.cpp">
220 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
221 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
222 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
223 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
224 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
225 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
226 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
227 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
228 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
229 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
230 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
231 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
232 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
233 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
234 </ClCompile>
235 </ItemGroup>
236 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
237 <ImportGroup Label="ExtensionTargets">
238 </ImportGroup>
239</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc8.vcproj
new file mode 100644
index 0000000..efbf43d
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc8.vcproj
@@ -0,0 +1,232 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8.00"
5 Name="14.Win32Window_vc8"
6 ProjectGUID="{772FBE05-D05A-467B-9842-BEC409EEA8D0}"
7 RootNamespace="Win32Window_vc8"
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 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=".\Debug/Win32Window.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/Win32Window.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 AdditionalDependencies="kernel32.lib user32.lib gdi32.lib opengl32.lib"
75 OutputFile="..\..\bin\Win32-VisualStudio\14.Win32Window.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/Win32Window.pdb"
81 SubSystem="1"
82 TargetMachine="1"
83 />
84 <Tool
85 Name="VCALinkTool"
86 />
87 <Tool
88 Name="VCManifestTool"
89 />
90 <Tool
91 Name="VCXDCMakeTool"
92 />
93 <Tool
94 Name="VCBscMakeTool"
95 />
96 <Tool
97 Name="VCFxCopTool"
98 />
99 <Tool
100 Name="VCAppVerifierTool"
101 />
102 <Tool
103 Name="VCWebDeploymentTool"
104 />
105 <Tool
106 Name="VCPostBuildEventTool"
107 />
108 </Configuration>
109 <Configuration
110 Name="Release|Win32"
111 OutputDirectory=".\Release"
112 IntermediateDirectory=".\Release"
113 ConfigurationType="1"
114 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
115 UseOfMFC="0"
116 ATLMinimizesCRunTimeLibraryUsage="false"
117 CharacterSet="2"
118 >
119 <Tool
120 Name="VCPreBuildEventTool"
121 />
122 <Tool
123 Name="VCCustomBuildTool"
124 />
125 <Tool
126 Name="VCXMLDataGeneratorTool"
127 />
128 <Tool
129 Name="VCWebServiceProxyGeneratorTool"
130 />
131 <Tool
132 Name="VCMIDLTool"
133 TypeLibraryName=".\Release/Win32Window.tlb"
134 HeaderFileName=""
135 />
136 <Tool
137 Name="VCCLCompilerTool"
138 Optimization="2"
139 InlineFunctionExpansion="1"
140 AdditionalIncludeDirectories="..\..\include"
141 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
142 StringPooling="true"
143 RuntimeLibrary="0"
144 EnableFunctionLevelLinking="true"
145 UsePrecompiledHeader="0"
146 PrecompiledHeaderFile=".\Release/Win32Window.pch"
147 AssemblerListingLocation=".\Release/"
148 ObjectFile=".\Release/"
149 ProgramDataBaseFileName=".\Release/"
150 WarningLevel="3"
151 SuppressStartupBanner="true"
152 CompileAs="0"
153 />
154 <Tool
155 Name="VCManagedResourceCompilerTool"
156 />
157 <Tool
158 Name="VCResourceCompilerTool"
159 PreprocessorDefinitions="NDEBUG"
160 Culture="3079"
161 />
162 <Tool
163 Name="VCPreLinkEventTool"
164 />
165 <Tool
166 Name="VCLinkerTool"
167 OutputFile="..\..\bin\Win32-VisualStudio\14.Win32Window.exe"
168 LinkIncremental="0"
169 SuppressStartupBanner="true"
170 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
171 ProgramDatabaseFile=".\Release/Win32Window.pdb"
172 SubSystem="1"
173 TargetMachine="1"
174 />
175 <Tool
176 Name="VCALinkTool"
177 />
178 <Tool
179 Name="VCManifestTool"
180 />
181 <Tool
182 Name="VCXDCMakeTool"
183 />
184 <Tool
185 Name="VCBscMakeTool"
186 />
187 <Tool
188 Name="VCFxCopTool"
189 />
190 <Tool
191 Name="VCAppVerifierTool"
192 />
193 <Tool
194 Name="VCWebDeploymentTool"
195 />
196 <Tool
197 Name="VCPostBuildEventTool"
198 />
199 </Configuration>
200 </Configurations>
201 <References>
202 </References>
203 <Files>
204 <File
205 RelativePath="main.cpp"
206 >
207 <FileConfiguration
208 Name="Debug|Win32"
209 >
210 <Tool
211 Name="VCCLCompilerTool"
212 Optimization="0"
213 AdditionalIncludeDirectories=""
214 PreprocessorDefinitions=""
215 BasicRuntimeChecks="3"
216 />
217 </FileConfiguration>
218 <FileConfiguration
219 Name="Release|Win32"
220 >
221 <Tool
222 Name="VCCLCompilerTool"
223 Optimization="2"
224 AdditionalIncludeDirectories=""
225 PreprocessorDefinitions=""
226 />
227 </FileConfiguration>
228 </File>
229 </Files>
230 <Globals>
231 </Globals>
232</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc9.vcproj
new file mode 100644
index 0000000..2902fba
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/Win32Window_vc9.vcproj
@@ -0,0 +1,232 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="14.Win32Window_vc9"
6 ProjectGUID="{772FBE05-D05A-467B-9842-BEC409EEA8D0}"
7 RootNamespace="Win32Window_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/Win32Window.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/Win32Window.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 AdditionalDependencies="kernel32.lib user32.lib gdi32.lib opengl32.lib"
76 OutputFile="..\..\bin\Win32-VisualStudio\14.Win32Window.exe"
77 LinkIncremental="0"
78 SuppressStartupBanner="true"
79 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
80 GenerateDebugInformation="true"
81 ProgramDatabaseFile=".\Debug/Win32Window.pdb"
82 SubSystem="1"
83 RandomizedBaseAddress="1"
84 DataExecutionPrevention="0"
85 TargetMachine="1"
86 />
87 <Tool
88 Name="VCALinkTool"
89 />
90 <Tool
91 Name="VCManifestTool"
92 />
93 <Tool
94 Name="VCXDCMakeTool"
95 />
96 <Tool
97 Name="VCBscMakeTool"
98 />
99 <Tool
100 Name="VCFxCopTool"
101 />
102 <Tool
103 Name="VCAppVerifierTool"
104 />
105 <Tool
106 Name="VCPostBuildEventTool"
107 />
108 </Configuration>
109 <Configuration
110 Name="Release|Win32"
111 OutputDirectory=".\Release"
112 IntermediateDirectory=".\Release"
113 ConfigurationType="1"
114 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
115 UseOfMFC="0"
116 ATLMinimizesCRunTimeLibraryUsage="false"
117 CharacterSet="2"
118 >
119 <Tool
120 Name="VCPreBuildEventTool"
121 />
122 <Tool
123 Name="VCCustomBuildTool"
124 />
125 <Tool
126 Name="VCXMLDataGeneratorTool"
127 />
128 <Tool
129 Name="VCWebServiceProxyGeneratorTool"
130 />
131 <Tool
132 Name="VCMIDLTool"
133 TypeLibraryName=".\Release/Win32Window.tlb"
134 HeaderFileName=""
135 />
136 <Tool
137 Name="VCCLCompilerTool"
138 Optimization="2"
139 InlineFunctionExpansion="1"
140 AdditionalIncludeDirectories="..\..\include"
141 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
142 StringPooling="true"
143 RuntimeLibrary="0"
144 EnableFunctionLevelLinking="true"
145 UsePrecompiledHeader="0"
146 PrecompiledHeaderFile=".\Release/Win32Window.pch"
147 AssemblerListingLocation=".\Release/"
148 ObjectFile=".\Release/"
149 ProgramDataBaseFileName=".\Release/"
150 WarningLevel="3"
151 SuppressStartupBanner="true"
152 CompileAs="0"
153 />
154 <Tool
155 Name="VCManagedResourceCompilerTool"
156 />
157 <Tool
158 Name="VCResourceCompilerTool"
159 PreprocessorDefinitions="NDEBUG"
160 Culture="3079"
161 />
162 <Tool
163 Name="VCPreLinkEventTool"
164 />
165 <Tool
166 Name="VCLinkerTool"
167 AdditionalDependencies="opengl32.lib"
168 OutputFile="..\..\bin\Win32-VisualStudio\14.Win32Window.exe"
169 LinkIncremental="0"
170 SuppressStartupBanner="true"
171 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
172 ProgramDatabaseFile=".\Release/Win32Window.pdb"
173 SubSystem="1"
174 RandomizedBaseAddress="1"
175 DataExecutionPrevention="0"
176 TargetMachine="1"
177 />
178 <Tool
179 Name="VCALinkTool"
180 />
181 <Tool
182 Name="VCManifestTool"
183 />
184 <Tool
185 Name="VCXDCMakeTool"
186 />
187 <Tool
188 Name="VCBscMakeTool"
189 />
190 <Tool
191 Name="VCFxCopTool"
192 />
193 <Tool
194 Name="VCAppVerifierTool"
195 />
196 <Tool
197 Name="VCPostBuildEventTool"
198 />
199 </Configuration>
200 </Configurations>
201 <References>
202 </References>
203 <Files>
204 <File
205 RelativePath="main.cpp"
206 >
207 <FileConfiguration
208 Name="Debug|Win32"
209 >
210 <Tool
211 Name="VCCLCompilerTool"
212 Optimization="0"
213 AdditionalIncludeDirectories=""
214 PreprocessorDefinitions=""
215 BasicRuntimeChecks="3"
216 />
217 </FileConfiguration>
218 <FileConfiguration
219 Name="Release|Win32"
220 >
221 <Tool
222 Name="VCCLCompilerTool"
223 Optimization="2"
224 AdditionalIncludeDirectories=""
225 PreprocessorDefinitions=""
226 />
227 </FileConfiguration>
228 </File>
229 </Files>
230 <Globals>
231 </Globals>
232</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/14.Win32Window/main.cpp b/src/others/irrlicht-1.8.1/examples/14.Win32Window/main.cpp
new file mode 100644
index 0000000..33d111e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/main.cpp
@@ -0,0 +1,251 @@
1/** Example 014 Win32 Window
2
3This example only runs under MS Windows and demonstrates that Irrlicht can
4render inside a win32 window. MFC and .NET Windows.Forms windows are possible,
5too.
6
7In the beginning, we create a windows window using the windows API. I'm not
8going to explain this code, because it is windows specific. See the MSDN or a
9windows book for details.
10*/
11
12#include <irrlicht.h>
13#ifndef _IRR_WINDOWS_
14#error Windows only example
15#else
16#include <windows.h> // this example only runs with windows
17#include <iostream>
18#include "driverChoice.h"
19
20using namespace irr;
21
22#pragma comment(lib, "irrlicht.lib")
23
24HWND hOKButton;
25HWND hWnd;
26
27static LRESULT CALLBACK CustomWndProc(HWND hWnd, UINT message,
28 WPARAM wParam, LPARAM lParam)
29{
30 switch (message)
31 {
32 case WM_COMMAND:
33 {
34 HWND hwndCtl = (HWND)lParam;
35 int code = HIWORD(wParam);
36
37 if (hwndCtl == hOKButton)
38 {
39 DestroyWindow(hWnd);
40 PostQuitMessage(0);
41 return 0;
42 }
43 }
44 break;
45 case WM_DESTROY:
46 PostQuitMessage(0);
47 return 0;
48
49 }
50
51 return DefWindowProc(hWnd, message, wParam, lParam);
52}
53
54
55/*
56 Now ask for the driver and create the Windows specific window.
57*/
58int main()
59{
60 // ask user for driver
61 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
62 if (driverType==video::EDT_COUNT)
63 return 1;
64
65 printf("Select the render window (some dead window may exist too):\n"\
66 " (a) Window with button (via CreationParam)\n"\
67 " (b) Window with button (via beginScene)\n"\
68 " (c) Own Irrlicht window (default behavior)\n"\
69 " (otherKey) exit\n\n");
70
71 char key;
72 std::cin >> key;
73 if (key != 'a' && key != 'b' && key != 'c')
74 return 1;
75
76 HINSTANCE hInstance = 0;
77 // create dialog
78
79 const char* Win32ClassName = "CIrrlichtWindowsTestDialog";
80
81 WNDCLASSEX wcex;
82 wcex.cbSize = sizeof(WNDCLASSEX);
83 wcex.style = CS_HREDRAW | CS_VREDRAW;
84 wcex.lpfnWndProc = (WNDPROC)CustomWndProc;
85 wcex.cbClsExtra = 0;
86 wcex.cbWndExtra = DLGWINDOWEXTRA;
87 wcex.hInstance = hInstance;
88 wcex.hIcon = NULL;
89 wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
90 wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW);
91 wcex.lpszMenuName = 0;
92 wcex.lpszClassName = Win32ClassName;
93 wcex.hIconSm = 0;
94
95 RegisterClassEx(&wcex);
96
97 DWORD style = WS_SYSMENU | WS_BORDER | WS_CAPTION |
98 WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_MAXIMIZEBOX | WS_MINIMIZEBOX | WS_SIZEBOX;
99
100 int windowWidth = 440;
101 int windowHeight = 380;
102
103 hWnd = CreateWindow( Win32ClassName, "Irrlicht Win32 window example",
104 style, 100, 100, windowWidth, windowHeight,
105 NULL, NULL, hInstance, NULL);
106
107 RECT clientRect;
108 GetClientRect(hWnd, &clientRect);
109 windowWidth = clientRect.right;
110 windowHeight = clientRect.bottom;
111
112 // create ok button
113
114 hOKButton = CreateWindow("BUTTON", "OK - Close", WS_CHILD | WS_VISIBLE | BS_TEXT,
115 windowWidth - 160, windowHeight - 40, 150, 30, hWnd, NULL, hInstance, NULL);
116
117 // create some text
118
119 CreateWindow("STATIC", "This is Irrlicht running inside a standard Win32 window.\n"\
120 "Also mixing with MFC and .NET Windows.Forms is possible.",
121 WS_CHILD | WS_VISIBLE, 20, 20, 400, 40, hWnd, NULL, hInstance, NULL);
122
123 // create window to put irrlicht in
124
125 HWND hIrrlichtWindow = CreateWindow("BUTTON", "",
126 WS_CHILD | WS_VISIBLE | BS_OWNERDRAW,
127 50, 80, 320, 220, hWnd, NULL, hInstance, NULL);
128 video::SExposedVideoData videodata((key=='b')?hIrrlichtWindow:0);
129
130 /*
131 So now that we have some window, we can create an Irrlicht device
132 inside of it. We use Irrlicht createEx() function for this. We only
133 need the handle (HWND) to that window, set it as windowsID parameter
134 and start up the engine as usual. That's it.
135 */
136 // create irrlicht device in the button window
137
138 irr::SIrrlichtCreationParameters param;
139 param.DriverType = driverType;
140 if (key=='a')
141 param.WindowId = reinterpret_cast<void*>(hIrrlichtWindow);
142
143 irr::IrrlichtDevice* device = irr::createDeviceEx(param);
144 if (!device)
145 return 1;
146
147 // setup a simple 3d scene
148
149 irr::scene::ISceneManager* smgr = device->getSceneManager();
150 video::IVideoDriver* driver = device->getVideoDriver();
151
152 if (driverType==video::EDT_OPENGL)
153 {
154 HDC HDc=GetDC(hIrrlichtWindow);
155 PIXELFORMATDESCRIPTOR pfd={0};
156 pfd.nSize=sizeof(PIXELFORMATDESCRIPTOR);
157 int pf = GetPixelFormat(HDc);
158 DescribePixelFormat(HDc, pf, sizeof(PIXELFORMATDESCRIPTOR), &pfd);
159 pfd.dwFlags |= PFD_DOUBLEBUFFER | PFD_SUPPORT_OPENGL | PFD_DRAW_TO_WINDOW;
160 pfd.cDepthBits=16;
161 pf = ChoosePixelFormat(HDc, &pfd);
162 SetPixelFormat(HDc, pf, &pfd);
163 videodata.OpenGLWin32.HDc = HDc;
164 videodata.OpenGLWin32.HRc=wglCreateContext(HDc);
165 wglShareLists((HGLRC)driver->getExposedVideoData().OpenGLWin32.HRc, (HGLRC)videodata.OpenGLWin32.HRc);
166 }
167 scene::ICameraSceneNode* cam = smgr->addCameraSceneNode();
168 cam->setTarget(core::vector3df(0,0,0));
169
170 scene::ISceneNodeAnimator* anim =
171 smgr->createFlyCircleAnimator(core::vector3df(0,15,0), 30.0f);
172 cam->addAnimator(anim);
173 anim->drop();
174
175 scene::ISceneNode* cube = smgr->addCubeSceneNode(20);
176
177 cube->setMaterialTexture(0, driver->getTexture("../../media/wall.bmp"));
178 cube->setMaterialTexture(1, driver->getTexture("../../media/water.jpg"));
179 cube->setMaterialFlag( video::EMF_LIGHTING, false );
180 cube->setMaterialType( video::EMT_REFLECTION_2_LAYER );
181
182 smgr->addSkyBoxSceneNode(
183 driver->getTexture("../../media/irrlicht2_up.jpg"),
184 driver->getTexture("../../media/irrlicht2_dn.jpg"),
185 driver->getTexture("../../media/irrlicht2_lf.jpg"),
186 driver->getTexture("../../media/irrlicht2_rt.jpg"),
187 driver->getTexture("../../media/irrlicht2_ft.jpg"),
188 driver->getTexture("../../media/irrlicht2_bk.jpg"));
189
190 // show and execute dialog
191
192 ShowWindow(hWnd , SW_SHOW);
193 UpdateWindow(hWnd);
194
195 // do message queue
196
197 /*
198 Now the only thing missing is the drawing loop using
199 IrrlichtDevice::run(). We do this as usual. But instead of this, there
200 is another possibility: You can also simply use your own message loop
201 using GetMessage, DispatchMessage and whatever. Calling
202 Device->run() will cause Irrlicht to dispatch messages internally too.
203 You need not call Device->run() if you want to do your own message
204 dispatching loop, but Irrlicht will not be able to fetch user input
205 then and you have to do it on your own using the window messages,
206 DirectInput, or whatever.
207 */
208
209 while (device->run())
210 {
211 driver->beginScene(true, true, 0, videodata);
212 smgr->drawAll();
213 driver->endScene();
214 }
215
216 /*
217 The alternative, own message dispatching loop without Device->run()
218 would look like this:
219 */
220
221 /*MSG msg;
222 while (true)
223 {
224 if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
225 {
226 TranslateMessage(&msg);
227 DispatchMessage(&msg);
228
229 if (msg.message == WM_QUIT)
230 break;
231 }
232
233 // advance virtual time
234 device->getTimer()->tick();
235
236 // draw engine picture
237 driver->beginScene(true, true, 0, (key=='c')?hIrrlichtWindow:0);
238 smgr->drawAll();
239 driver->endScene();
240 }*/
241
242 device->closeDevice();
243 device->drop();
244
245 return 0;
246}
247#endif // if windows
248
249/*
250That's it, Irrlicht now runs in your own windows window.
251**/
diff --git a/src/others/irrlicht-1.8.1/examples/14.Win32Window/tutorial.html b/src/others/irrlicht-1.8.1/examples/14.Win32Window/tutorial.html
new file mode 100644
index 0000000..6c5d5ba
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/14.Win32Window/tutorial.html
@@ -0,0 +1,247 @@
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 14. Win32 Window</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 example only runs in Windows and demonstrates that Irrlicht can
22 run inside a win32 window. MFC and .NET Windows.Forms windows are possible
23 too. </p>
24 <p>The program which is described here will look like this:</p>
25 <p align="center"><img src="../../media/014shot.jpg" width="256" height="200"><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> In the begining, we create a windows window using the windows API.
40 I'm not going to explain this code, because it is windows specific.
41 See the MSDN or a windows book for details.</p>
42 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
43 <tr>
44 <td><pre>#include &lt;irrlicht.h&gt;
45#include &lt;windows.h&gt; <font color="#006600">// this example only runs with windows</font>
46
47using namespace irr;
48
49#pragma comment(lib, "irrlicht.lib")
50
51HWND hOKButton;
52HWND hWnd;
53
54static LRESULT CALLBACK CustomWndProc(HWND hWnd, UINT message,
55 WPARAM wParam, LPARAM lParam)
56{
57 switch (message)
58 {
59 case WM_COMMAND:
60 {
61 HWND hwndCtl = (HWND)lParam;
62 int code = HIWORD(wParam);
63
64 if (hwndCtl == hOKButton)
65 {
66 DestroyWindow(hWnd);
67 PostQuitMessage(0);
68 return 0;
69 }
70 }
71 break;
72 case WM_DESTROY:
73 PostQuitMessage(0);
74 return 0;
75
76 }
77
78 return DefWindowProc(hWnd, message, wParam, lParam);
79}
80
81int main()
82<font color="#006600">//int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hpre, LPSTR cmd, int cc)</font>
83{
84 HINSTANCE hInstance = 0;
85<font color="#006600"> // create dialog</font>
86
87 const char* Win32ClassName = "CIrrlichtWindowsTestDialog";
88
89 WNDCLASSEX wcex;
90 wcex.cbSize = sizeof(WNDCLASSEX);
91 wcex.style = CS_HREDRAW | CS_VREDRAW;
92 wcex.lpfnWndProc = (WNDPROC)CustomWndProc;
93 wcex.cbClsExtra = 0;
94 wcex.cbWndExtra = DLGWINDOWEXTRA;
95 wcex.hInstance = hInstance;
96 wcex.hIcon = NULL;
97 wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
98 wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW);
99 wcex.lpszMenuName = 0;
100 wcex.lpszClassName = Win32ClassName;
101 wcex.hIconSm = 0;
102
103 RegisterClassEx(&wcex);
104
105 DWORD style = WS_SYSMENU | WS_BORDER | WS_CAPTION |
106 WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_MAXIMIZEBOX
107 | WS_MINIMIZEBOX | WS_SIZEBOX;
108
109 int windowWidth = 440;
110 int windowHeight = 380;
111
112 hWnd = CreateWindow( Win32ClassName, "Irrlicht Win32 window example",
113 style, 100, 100, windowWidth, windowHeight,
114 NULL, NULL, hInstance, NULL);
115
116 RECT clientRect;
117 GetClientRect(hWnd, &clientRect);
118 windowWidth = clientRect.right;
119 windowHeight = clientRect.bottom;
120
121<font color="#006600"> // create ok butt</font>on
122
123 hOKButton = CreateWindow(
124 "BUTTON", "OK - Close", WS_CHILD | WS_VISIBLE | BS_TEXT,
125 windowWidth - 160, windowHeight - 40, 150, 30, hWnd, NULL,
126 hInstance, NULL);
127
128<font color="#006600"> // create some text</font>
129
130 CreateWindow("STATIC",
131 "This is Irrlicht running inside a standard Win32 window.\n"\
132 "Also mixing with MFC and .NET Windows.Forms is possible.",
133 WS_CHILD | WS_VISIBLE, 20, 20, 400, 40, hWnd, NULL, hInstance, NULL);
134
135<font color="#006600"> // create window to put irrlicht in</font>
136
137 HWND hIrrlichtWindow =<br /> CreateWindow("BUTTON", "", WS_CHILD | WS_VISIBLE | BS_OWNERDRAW,
138 50, 80, 320, 220, hWnd, NULL, hInstance, NULL);
139
140</pre></td>
141 </tr>
142 </table>
143 <p>So now that we have some window, we can create an Irrlicht device
144 inside of it. We use Irrlicht createEx() function for this. We only
145 need the handle (HWND) to that window, set it as windowsID parameter
146 and start up the engine as usual. That's it.</p>
147 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
148 <tr>
149 <td><pre><font color="#006600"> // create irrlicht device in the button window</font>
150
151 irr::SIrrlichtCreationParameters param;
152 param.WindowId = reinterpret_cast<s32>(hIrrlichtWindow); // hColorButton
153 param.DriverType = video::EDT_OPENGL;
154
155 irr::IrrlichtDevice* device = irr::createDeviceEx(param);
156
157<font color="#006600"> // setup a simple 3d scene</font>
158
159 irr::scene::ISceneManager* smgr = device->getSceneManager();
160 video::IVideoDriver* driver = device->getVideoDriver();
161
162 scene::ICameraSceneNode* cam = smgr->addCameraSceneNode();
163 cam->setTarget(core::vector3df(0,0,0));
164
165 scene::ISceneNodeAnimator* anim =
166 smgr->createFlyCircleAnimator(core::vector3df(0,10,0), 30.0f);
167 cam->addAnimator(anim);
168 anim->drop();
169
170 scene::ISceneNode* cube = smgr->addCubeSceneNode(25);
171 cube->setMaterialFlag(video::EMF_LIGHTING, false);
172
173 cube->setMaterialTexture(0, driver->getTexture("../../media/rockwall.bmp"));
174
175 smgr->addSkyBoxSceneNode(
176 driver->getTexture("../../media/irrlicht2_up.jpg"),
177 driver->getTexture("../../media/irrlicht2_dn.jpg"),
178 driver->getTexture("../../media/irrlicht2_lf.jpg"),
179 driver->getTexture("../../media/irrlicht2_rt.jpg"),
180 driver->getTexture("../../media/irrlicht2_ft.jpg"),
181 driver->getTexture("../../media/irrlicht2_bk.jpg"));
182
183<font color="#006600"> // show and execute dialog</font>
184
185 ShowWindow(hWnd , SW_SHOW);
186 UpdateWindow(hWnd);
187</pre></td>
188 </tr>
189 </table>
190 <p>Now the only thing missing is the drawing loop using IrrlichtDevice::run().
191 We do this as usual. But instead of this, there is another possibility:
192 You can also simply use your own message loop using GetMessage, DispatchMessage
193 and whatever. Calling<br />
194 Device-&gt;run() will cause Irrlicht to dispatch messages internally
195 too. You need not call Device-&gt;run() if you want to do your own
196 message dispatching loop, but Irrlicht will not be able to fetch user
197 input then and you have to do it on your own using the window messages,
198 DirectInput, or whatever.</p>
199 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
200 <tr>
201 <td><pre> while (device->run())
202 {
203 driver->beginScene(true, true, 0);
204 smgr->drawAll();
205 driver->endScene();
206 }
207
208<font color="#006600"> // the alternative, own message dispatching loop without Device->run() would
209 // look like this:</font>
210
211 <font color="#006600">/*MSG msg;
212 while (true)
213 {
214 if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
215 {
216 TranslateMessage(&msg);
217 DispatchMessage(&msg);
218
219 if (msg.message == WM_QUIT)
220 break;
221 }
222
223 // advance virtual time
224 device->getTimer()->tick();
225
226 // draw engine picture
227 driver->beginScene(true, true, 0);
228 smgr->drawAll();
229 driver->endScene();
230 }*/</font>
231
232 device->closeDevice();
233 device->drop();
234
235 return 0;
236}</pre></td>
237 </tr>
238 </table>
239 <p> That's it, Irrlicht now runs in your own windows window.</p>
240 </div>
241 </div>
242 </td>
243 </tr>
244</table>
245<p>&nbsp;</p>
246 </body>
247</html>
diff --git a/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.cbp b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.cbp
new file mode 100644
index 0000000..edb64dc
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.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 15 Load .irr File" />
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\LoadIrrFile" 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\LoadIrrFile" 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/15.LoadIrrFile/LoadIrrFile.dev b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.dev
new file mode 100644
index 0000000..b43fe68
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 15 Load .irr File
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=15.LoadIrrFile.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/15.LoadIrrFile/LoadIrrFile.vcproj b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.vcproj
new file mode 100644
index 0000000..fef4626
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile.vcproj
@@ -0,0 +1,162 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="15.LoadIrrFile"
6 ProjectGUID="{1AD3DB5E-D751-42D5-8F3E-7C3010539F5C}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/LoadIrrFile.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/LoadIrrFile.pdb"
48 SubSystem="1"/>
49 <Tool
50 Name="VCMIDLTool"
51 TypeLibraryName=".\Debug/LoadIrrFile.tlb"
52 HeaderFileName=""/>
53 <Tool
54 Name="VCPostBuildEventTool"/>
55 <Tool
56 Name="VCPreBuildEventTool"/>
57 <Tool
58 Name="VCPreLinkEventTool"/>
59 <Tool
60 Name="VCResourceCompilerTool"
61 PreprocessorDefinitions="_DEBUG"
62 Culture="3079"/>
63 <Tool
64 Name="VCWebServiceProxyGeneratorTool"/>
65 <Tool
66 Name="VCXMLDataGeneratorTool"/>
67 <Tool
68 Name="VCWebDeploymentTool"/>
69 <Tool
70 Name="VCManagedWrapperGeneratorTool"/>
71 <Tool
72 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
73 </Configuration>
74 <Configuration
75 Name="Release|Win32"
76 OutputDirectory=".\Release"
77 IntermediateDirectory=".\Release"
78 ConfigurationType="1"
79 UseOfMFC="0"
80 ATLMinimizesCRunTimeLibraryUsage="FALSE"
81 CharacterSet="2">
82 <Tool
83 Name="VCCLCompilerTool"
84 Optimization="2"
85 InlineFunctionExpansion="1"
86 AdditionalIncludeDirectories="..\..\include"
87 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
88 StringPooling="TRUE"
89 RuntimeLibrary="4"
90 EnableFunctionLevelLinking="TRUE"
91 UsePrecompiledHeader="2"
92 PrecompiledHeaderFile=".\Release/LoadIrrFile.pch"
93 AssemblerListingLocation=".\Release/"
94 ObjectFile=".\Release/"
95 ProgramDataBaseFileName=".\Release/"
96 WarningLevel="3"
97 SuppressStartupBanner="TRUE"
98 CompileAs="0"/>
99 <Tool
100 Name="VCCustomBuildTool"/>
101 <Tool
102 Name="VCLinkerTool"
103 OutputFile="..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe"
104 LinkIncremental="0"
105 SuppressStartupBanner="TRUE"
106 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
107 ProgramDatabaseFile=".\Release/LoadIrrFile.pdb"
108 SubSystem="1"
109 TargetMachine="1"/>
110 <Tool
111 Name="VCMIDLTool"
112 TypeLibraryName=".\Release/LoadIrrFile.tlb"
113 HeaderFileName=""/>
114 <Tool
115 Name="VCPostBuildEventTool"/>
116 <Tool
117 Name="VCPreBuildEventTool"/>
118 <Tool
119 Name="VCPreLinkEventTool"/>
120 <Tool
121 Name="VCResourceCompilerTool"
122 PreprocessorDefinitions="NDEBUG"
123 Culture="3079"/>
124 <Tool
125 Name="VCWebServiceProxyGeneratorTool"/>
126 <Tool
127 Name="VCXMLDataGeneratorTool"/>
128 <Tool
129 Name="VCWebDeploymentTool"/>
130 <Tool
131 Name="VCManagedWrapperGeneratorTool"/>
132 <Tool
133 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
134 </Configuration>
135 </Configurations>
136 <References>
137 </References>
138 <Files>
139 <File
140 RelativePath="main.cpp">
141 <FileConfiguration
142 Name="Debug|Win32">
143 <Tool
144 Name="VCCLCompilerTool"
145 Optimization="0"
146 AdditionalIncludeDirectories=""
147 PreprocessorDefinitions=""
148 BasicRuntimeChecks="3"/>
149 </FileConfiguration>
150 <FileConfiguration
151 Name="Release|Win32">
152 <Tool
153 Name="VCCLCompilerTool"
154 Optimization="2"
155 AdditionalIncludeDirectories=""
156 PreprocessorDefinitions=""/>
157 </FileConfiguration>
158 </File>
159 </Files>
160 <Globals>
161 </Globals>
162</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc10.vcxproj
new file mode 100644
index 0000000..ffc91ed
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_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>15.LoadIrrFile</ProjectName>
23 <ProjectGuid>{78C9F424-523C-49AC-94B7-823AA4A26BF9}</ProjectGuid>
24 <RootNamespace>LoadIrrFile</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/LoadIrrFile.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/LoadIrrFile.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\15.LoadIrrFile.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/LoadIrrFile.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/LoadIrrFile.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\15.LoadIrrFile.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/15.LoadIrrFile/LoadIrrFile_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc11.vcxproj
new file mode 100644
index 0000000..4230696
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_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>15.LoadIrrFile</ProjectName>
23 <ProjectGuid>{78C9F424-523C-49AC-94B7-823AA4A26BF9}</ProjectGuid>
24 <RootNamespace>LoadIrrFile</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug/LoadIrrFile.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug/LoadIrrFile.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\15.LoadIrrFile.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release/LoadIrrFile.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release/LoadIrrFile.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\15.LoadIrrFile.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/15.LoadIrrFile/LoadIrrFile_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc8.vcproj
new file mode 100644
index 0000000..d78a263
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_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="15.LoadIrrFile_vc8"
6 ProjectGUID="{78C9F424-523C-49AC-94B7-823AA4A26BF9}"
7 RootNamespace="LoadIrrFile_vc8"
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 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=".\Debug/LoadIrrFile.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/LoadIrrFile.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/LoadIrrFile.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/LoadIrrFile.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/LoadIrrFile.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/LoadIrrFile.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_vc9.vcproj
new file mode 100644
index 0000000..a7bea1b
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/LoadIrrFile_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="15.LoadIrrFile_vc9"
6 ProjectGUID="{78C9F424-523C-49AC-94B7-823AA4A26BF9}"
7 RootNamespace="LoadIrrFile_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/LoadIrrFile.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/LoadIrrFile.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/LoadIrrFile.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/LoadIrrFile.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/LoadIrrFile.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\15.LoadIrrFile.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/LoadIrrFile.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/Makefile b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/Makefile
new file mode 100644
index 0000000..f00e494
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/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 = 15.LoadIrrFile
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/15.LoadIrrFile/main.cpp b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/main.cpp
new file mode 100644
index 0000000..42327cd
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/main.cpp
@@ -0,0 +1,173 @@
1/** Example 015 Loading Scenes from .irr Files
2
3Since version 1.1, Irrlicht is able to save and load
4the full scene graph into an .irr file, an xml based
5format. There is an editor available to edit
6those files, named irrEdit (http://www.ambiera.com/irredit)
7which can also be used as world and particle editor.
8This tutorial shows how to use .irr files.
9
10Lets start: Create an Irrlicht device and setup the window.
11*/
12
13#include <irrlicht.h>
14#include "driverChoice.h"
15
16using namespace irr;
17
18#ifdef _MSC_VER
19#pragma comment(lib, "Irrlicht.lib")
20#endif
21
22int main(int argc, char** argv)
23{
24 // ask user for driver
25 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
26 if (driverType==video::EDT_COUNT)
27 return 1;
28
29 // create device and exit if creation failed
30
31 IrrlichtDevice* device =
32 createDevice(driverType, core::dimension2d<u32>(640, 480));
33
34 if (device == 0)
35 return 1; // could not create selected driver.
36
37 device->setWindowCaption(L"Load .irr file example");
38
39 video::IVideoDriver* driver = device->getVideoDriver();
40 scene::ISceneManager* smgr = device->getSceneManager();
41
42 /*
43 Now load our .irr file.
44 .irr files can store the whole scene graph including animators,
45 materials and particle systems. And there is also the possibility to
46 store arbitrary user data for every scene node in that file. To keep
47 this example simple, we are simply loading the scene here. See the
48 documentation at ISceneManager::loadScene and ISceneManager::saveScene
49 for more information. So to load and display a complicated huge scene,
50 we only need a single call to loadScene().
51 */
52
53 // load the scene
54 if (argc>1)
55 smgr->loadScene(argv[1]);
56 else
57 smgr->loadScene("../../media/example.irr");
58
59 /*
60 Now we'll create a camera, and give it a collision response animator
61 that's built from the mesh nodes in the scene we just loaded.
62 */
63 scene::ICameraSceneNode * camera = smgr->addCameraSceneNodeFPS(0, 50.f, 0.1f);
64
65 // Create a meta triangle selector to hold several triangle selectors.
66 scene::IMetaTriangleSelector * meta = smgr->createMetaTriangleSelector();
67
68 /*
69 Now we will find all the nodes in the scene and create triangle
70 selectors for all suitable nodes. Typically, you would want to make a
71 more informed decision about which nodes to performs collision checks
72 on; you could capture that information in the node name or Id.
73 */
74 core::array<scene::ISceneNode *> nodes;
75 smgr->getSceneNodesFromType(scene::ESNT_ANY, nodes); // Find all nodes
76
77 for (u32 i=0; i < nodes.size(); ++i)
78 {
79 scene::ISceneNode * node = nodes[i];
80 scene::ITriangleSelector * selector = 0;
81
82 switch(node->getType())
83 {
84 case scene::ESNT_CUBE:
85 case scene::ESNT_ANIMATED_MESH:
86 // Because the selector won't animate with the mesh,
87 // and is only being used for camera collision, we'll just use an approximate
88 // bounding box instead of ((scene::IAnimatedMeshSceneNode*)node)->getMesh(0)
89 selector = smgr->createTriangleSelectorFromBoundingBox(node);
90 break;
91
92 case scene::ESNT_MESH:
93 case scene::ESNT_SPHERE: // Derived from IMeshSceneNode
94 selector = smgr->createTriangleSelector(((scene::IMeshSceneNode*)node)->getMesh(), node);
95 break;
96
97 case scene::ESNT_TERRAIN:
98 selector = smgr->createTerrainTriangleSelector((scene::ITerrainSceneNode*)node);
99 break;
100
101 case scene::ESNT_OCTREE:
102 selector = smgr->createOctreeTriangleSelector(((scene::IMeshSceneNode*)node)->getMesh(), node);
103 break;
104
105 default:
106 // Don't create a selector for this node type
107 break;
108 }
109
110 if(selector)
111 {
112 // Add it to the meta selector, which will take a reference to it
113 meta->addTriangleSelector(selector);
114 // And drop my reference to it, so that the meta selector owns it.
115 selector->drop();
116 }
117 }
118
119 /*
120 Now that the mesh scene nodes have had triangle selectors created and added
121 to the meta selector, create a collision response animator from that meta selector.
122 */
123 scene::ISceneNodeAnimator* anim = smgr->createCollisionResponseAnimator(
124 meta, camera, core::vector3df(5,5,5),
125 core::vector3df(0,0,0));
126 meta->drop(); // I'm done with the meta selector now
127
128 camera->addAnimator(anim);
129 anim->drop(); // I'm done with the animator now
130
131 // And set the camera position so that it doesn't start off stuck in the geometry
132 camera->setPosition(core::vector3df(0.f, 20.f, 0.f));
133
134 // Point the camera at the cube node, by finding the first node of type ESNT_CUBE
135 scene::ISceneNode * cube = smgr->getSceneNodeFromType(scene::ESNT_CUBE);
136 if(cube)
137 camera->setTarget(cube->getAbsolutePosition());
138
139 /*
140 That's it. Draw everything and finish as usual.
141 */
142
143 int lastFPS = -1;
144
145 while(device->run())
146 if (device->isWindowActive())
147 {
148 driver->beginScene(true, true, video::SColor(0,200,200,200));
149 smgr->drawAll();
150 driver->endScene();
151
152 int fps = driver->getFPS();
153
154 if (lastFPS != fps)
155 {
156 core::stringw str = L"Load Irrlicht File example - Irrlicht Engine [";
157 str += driver->getName();
158 str += "] FPS:";
159 str += fps;
160
161 device->setWindowCaption(str.c_str());
162 lastFPS = fps;
163 }
164
165 }
166
167 device->drop();
168
169 return 0;
170}
171
172/*
173**/
diff --git a/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/tutorial.html b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/tutorial.html
new file mode 100644
index 0000000..e3e4a6b
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/15.LoadIrrFile/tutorial.html
@@ -0,0 +1,129 @@
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%"> <div align="center"><b><font color="#FFFFFF"></font></b></div>
13 <b><font color="#FFFFFF">Tutorial 15. Load .irr File</font></b></td>
14 </tr>
15 <tr bgcolor="#eeeeff">
16 <td height="90" colspan="2"> <div align="left">
17 <p>Since version 1.1, Irrlicht is able to save and load the full scene
18 graph into an .irr file, an xml based format. There is also an editor
19 available to edit those files, named irrEdit on <a href="http://www.ambiera.com/irredit" target="_blank">http://www.ambiera.com/irredit</a>,
20 which can also be used as world and particle editor. This tutorial shows
21 how to use .irr files.</p>
22 <p align="center"><img src="../../media/015shot.jpg" width="256" height="200"><br>
23 </p>
24 </div></td>
25 </tr>
26</table>
27<br>
28<table width="95%" border="0" cellspacing="0" cellpadding="2" align="center">
29 <tr>
30 <td bgcolor="#666699"> <div align="center"><b><font color="#000000"></font></b></div>
31 <font color="#FFFFFF"><b>Lets start!</b></font></td>
32 </tr>
33 <tr>
34 <td height="90" bgcolor="#eeeeff" valign="top"> <div align="left">
35 <p>Lets start: Create an Irrlicht device and setup the window.</p>
36 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
37 <tr>
38 <td> <pre>#include <irrlicht.h>
39#include <iostream>
40using namespace irr;
41
42#pragma comment(lib, "Irrlicht.lib")
43
44int main()
45{
46 // ask user for driver
47
48 video::E_DRIVER_TYPE driverType;
49
50 printf("Please select the driver you want for this example:\n"\
51 " (a) Direct3D 9.0c\n (b) Direct3D 8.1\n (c) OpenGL 1.5\n"\
52 " (d) Software Renderer\n (e) Apfelbaum Software Renderer\n"\
53 " (f) NullDevice\n (otherKey) exit\n\n");
54
55 char i;
56 std::cin >> i;
57
58 switch(i)
59 {
60 case 'a': driverType = video::EDT_DIRECT3D9;break;
61 case 'b': driverType = video::EDT_DIRECT3D8;break;
62 case 'c': driverType = video::EDT_OPENGL; break;
63 case 'd': driverType = video::EDT_SOFTWARE; break;
64 case 'e': driverType = video::EDT_BURNINGSVIDEO;break;
65 case 'f': driverType = video::EDT_NULL; break;
66 default: return 1;
67 }
68
69 // create device and exit if creation failed
70
71 IrrlichtDevice* device =
72 createDevice(driverType, core::dimension2d<s32>(640, 480));
73
74 if (device == 0)
75 return 1; // could not create selected driver.
76
77 device->setWindowCaption(L"Load .irr file example");
78
79 video::IVideoDriver* driver = device->getVideoDriver();
80 scene::ISceneManager* smgr = device->getSceneManager();
81</pre></td>
82 </tr>
83 </table>
84 <p>Now load our .irr file. .irr files can store the whole scene graph
85 including animators, materials and particle systems. And there is also
86 the possibility to store arbitrary user data for every scene node in
87 that file. To keep this example simple, we are simply loading the scene
88 here. See the documentation at ISceneManager::loadScene and ISceneManager::saveScene
89 for more information. So to load and display a complicated huge scene,
90 we only need a single call to loadScene().</p>
91 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
92 <tr>
93 <td><pre>// load the scene<br>smgr-&gt;loadScene(&quot;../../media/example.irr&quot;); </pre></td>
94 </tr>
95 </table>
96 <p>That was it already. Now add a camera and draw the scene.</p>
97 <table width="95%" border="0" cellspacing="2" cellpadding="0" bgcolor="#CCCCCC" align="center">
98 <tr>
99 <td> <pre> // add a user controlled camera
100
101 smgr->addCameraSceneNodeFPS();
102
103 // and draw everything.
104
105 while(device->run())
106 if (device->isWindowActive())
107 {
108 driver->beginScene(true, true, video::SColor(0,200,200,200));
109 smgr->drawAll();
110 driver->endScene();
111 }
112
113 device->drop();
114
115 return 0;
116}
117</pre> </td>
118 </tr>
119 </table>
120
121 </div>
122 <p>&nbsp;</p>
123 </td>
124 </tr>
125</table>
126<p>&nbsp;</p>
127<p>&nbsp;</p>
128</body>
129</html>
diff --git a/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Makefile b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Makefile
new file mode 100644
index 0000000..952b309
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/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
4Target = 16.Quake3MapShader
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/16.Quake3MapShader/Quake3MapShader.cbp b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.cbp
new file mode 100644
index 0000000..6fc6bb3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/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/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.dev b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.dev
new file mode 100644
index 0000000..14ebb42
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 16 Quake3 Map Shader
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=16.Quake3MapShader.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/16.Quake3MapShader/Quake3MapShader.vcproj b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader.vcproj
new file mode 100644
index 0000000..de658b3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/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/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc10.vcxproj
new file mode 100644
index 0000000..ea09774
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/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/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc11.vcxproj
new file mode 100644
index 0000000..1bd3735
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/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/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc8.vcproj
new file mode 100644
index 0000000..65fc83c
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/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/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/Quake3MapShader_vc9.vcproj
new file mode 100644
index 0000000..a533ce0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/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/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/main.cpp b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/main.cpp
new file mode 100644
index 0000000..6391705
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/16.Quake3MapShader/main.cpp
@@ -0,0 +1,389 @@
1/** Example 016 Quake3 Map Shader Support
2
3This Tutorial shows how to load a Quake 3 map into the
4engine, create a SceneNode for optimizing the speed of
5rendering and how to create a user controlled camera.
6
7Lets start like the HelloWorld example: We include
8the irrlicht header files and an additional file to be able
9to 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
39using namespace irr;
40using namespace scene;
41
42/*
43Again, to be able to use the Irrlicht.DLL file, we need to link with the
44Irrlicht.lib. We could set this option in the project settings, but
45to 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/*
53A class to produce a series of screenshots
54*/
55class CScreenShotFactory : public IEventReceiver
56{
57public:
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
97private:
98 IrrlichtDevice *Device;
99 u32 Number;
100 core::stringc FilenameTemplate;
101 ISceneNode* Node;
102};
103
104
105/*
106Ok, lets start.
107*/
108
109int 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#ifdef _IRR_SCENEMANAGER_DEBUG
364 str += " Cull:";
365 str += attr->getAttributeAsInt("calls");
366 str += "/";
367 str += attr->getAttributeAsInt("culled");
368 str += " Draw: ";
369 str += attr->getAttributeAsInt("drawn_solid");
370 str += "/";
371 str += attr->getAttributeAsInt("drawn_transparent");
372 str += "/";
373 str += attr->getAttributeAsInt("drawn_transparent_effect");
374#endif
375 device->setWindowCaption(str.c_str());
376 lastFPS = fps;
377 }
378 }
379
380 /*
381 In the end, delete the Irrlicht device.
382 */
383 device->drop();
384
385 return 0;
386}
387
388/*
389**/
diff --git a/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v8.vcproj b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v8.vcproj
new file mode 100644
index 0000000..be07354
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v8.vcproj
@@ -0,0 +1,185 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8,00"
5 Name="17.HelloWorld for Windows Mobile on PC"
6 ProjectGUID="{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}"
7 RootNamespace="My17HelloWorldforWindowsMobileonPC"
8 Keyword="Win32Proj"
9 >
10 <Platforms>
11 <Platform
12 Name="Win32"
13 />
14 </Platforms>
15 <ToolFiles>
16 </ToolFiles>
17 <Configurations>
18 <Configuration
19 Name="Debug|Win32"
20 OutputDirectory="$(SolutionDir)$(ConfigurationName)"
21 IntermediateDirectory="$(ConfigurationName)"
22 ConfigurationType="1"
23 CharacterSet="1"
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;_CONSOLE"
45 MinimalRebuild="true"
46 BasicRuntimeChecks="3"
47 RuntimeLibrary="3"
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\17.HelloWorld_Mobile on PC.exe"
65 LinkIncremental="2"
66 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
67 GenerateDebugInformation="true"
68 SubSystem="1"
69 TargetMachine="1"
70 />
71 <Tool
72 Name="VCALinkTool"
73 />
74 <Tool
75 Name="VCManifestTool"
76 />
77 <Tool
78 Name="VCXDCMakeTool"
79 />
80 <Tool
81 Name="VCBscMakeTool"
82 />
83 <Tool
84 Name="VCFxCopTool"
85 />
86 <Tool
87 Name="VCAppVerifierTool"
88 />
89 <Tool
90 Name="VCWebDeploymentTool"
91 />
92 <Tool
93 Name="VCPostBuildEventTool"
94 />
95 </Configuration>
96 <Configuration
97 Name="Release|Win32"
98 OutputDirectory="$(SolutionDir)$(ConfigurationName)"
99 IntermediateDirectory="$(ConfigurationName)"
100 ConfigurationType="1"
101 CharacterSet="1"
102 WholeProgramOptimization="1"
103 >
104 <Tool
105 Name="VCPreBuildEventTool"
106 />
107 <Tool
108 Name="VCCustomBuildTool"
109 />
110 <Tool
111 Name="VCXMLDataGeneratorTool"
112 />
113 <Tool
114 Name="VCWebServiceProxyGeneratorTool"
115 />
116 <Tool
117 Name="VCMIDLTool"
118 />
119 <Tool
120 Name="VCCLCompilerTool"
121 AdditionalIncludeDirectories="..\..\include"
122 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
123 RuntimeLibrary="2"
124 UsePrecompiledHeader="0"
125 WarningLevel="3"
126 Detect64BitPortabilityProblems="true"
127 DebugInformationFormat="3"
128 />
129 <Tool
130 Name="VCManagedResourceCompilerTool"
131 />
132 <Tool
133 Name="VCResourceCompilerTool"
134 />
135 <Tool
136 Name="VCPreLinkEventTool"
137 />
138 <Tool
139 Name="VCLinkerTool"
140 OutputFile="..\..\bin\Win32-VisualStudio\17.HelloWorld_Mobile on PC.exe"
141 LinkIncremental="1"
142 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
143 GenerateDebugInformation="true"
144 SubSystem="1"
145 OptimizeReferences="2"
146 EnableCOMDATFolding="2"
147 TargetMachine="1"
148 />
149 <Tool
150 Name="VCALinkTool"
151 />
152 <Tool
153 Name="VCManifestTool"
154 />
155 <Tool
156 Name="VCXDCMakeTool"
157 />
158 <Tool
159 Name="VCBscMakeTool"
160 />
161 <Tool
162 Name="VCFxCopTool"
163 />
164 <Tool
165 Name="VCAppVerifierTool"
166 />
167 <Tool
168 Name="VCWebDeploymentTool"
169 />
170 <Tool
171 Name="VCPostBuildEventTool"
172 />
173 </Configuration>
174 </Configurations>
175 <References>
176 </References>
177 <Files>
178 <File
179 RelativePath=".\main.cpp"
180 >
181 </File>
182 </Files>
183 <Globals>
184 </Globals>
185</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v9.vcproj b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v9.vcproj
new file mode 100644
index 0000000..acdc249
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_v9.vcproj
@@ -0,0 +1,184 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="17.HelloWorld_Mobile_v9"
6 ProjectGUID="{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}"
7 RootNamespace="My17HelloWorldforWindowsMobileonPC"
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="$(SolutionDir)$(ConfigurationName)"
22 IntermediateDirectory="$(ConfigurationName)"
23 ConfigurationType="1"
24 CharacterSet="1"
25 >
26 <Tool
27 Name="VCPreBuildEventTool"
28 />
29 <Tool
30 Name="VCCustomBuildTool"
31 />
32 <Tool
33 Name="VCXMLDataGeneratorTool"
34 />
35 <Tool
36 Name="VCWebServiceProxyGeneratorTool"
37 />
38 <Tool
39 Name="VCMIDLTool"
40 />
41 <Tool
42 Name="VCCLCompilerTool"
43 Optimization="0"
44 AdditionalIncludeDirectories="..\..\include"
45 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
46 MinimalRebuild="true"
47 BasicRuntimeChecks="3"
48 RuntimeLibrary="3"
49 UsePrecompiledHeader="0"
50 WarningLevel="3"
51 Detect64BitPortabilityProblems="false"
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\17.HelloWorld_Mobile on PC.exe"
66 LinkIncremental="2"
67 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
68 GenerateDebugInformation="true"
69 SubSystem="1"
70 RandomizedBaseAddress="1"
71 DataExecutionPrevention="0"
72 TargetMachine="1"
73 />
74 <Tool
75 Name="VCALinkTool"
76 />
77 <Tool
78 Name="VCManifestTool"
79 />
80 <Tool
81 Name="VCXDCMakeTool"
82 />
83 <Tool
84 Name="VCBscMakeTool"
85 />
86 <Tool
87 Name="VCFxCopTool"
88 />
89 <Tool
90 Name="VCAppVerifierTool"
91 />
92 <Tool
93 Name="VCPostBuildEventTool"
94 />
95 </Configuration>
96 <Configuration
97 Name="Release|Win32"
98 OutputDirectory="$(SolutionDir)$(ConfigurationName)"
99 IntermediateDirectory="$(ConfigurationName)"
100 ConfigurationType="1"
101 CharacterSet="1"
102 WholeProgramOptimization="1"
103 >
104 <Tool
105 Name="VCPreBuildEventTool"
106 />
107 <Tool
108 Name="VCCustomBuildTool"
109 />
110 <Tool
111 Name="VCXMLDataGeneratorTool"
112 />
113 <Tool
114 Name="VCWebServiceProxyGeneratorTool"
115 />
116 <Tool
117 Name="VCMIDLTool"
118 />
119 <Tool
120 Name="VCCLCompilerTool"
121 AdditionalIncludeDirectories="..\..\include"
122 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
123 RuntimeLibrary="2"
124 UsePrecompiledHeader="0"
125 WarningLevel="3"
126 Detect64BitPortabilityProblems="false"
127 DebugInformationFormat="3"
128 />
129 <Tool
130 Name="VCManagedResourceCompilerTool"
131 />
132 <Tool
133 Name="VCResourceCompilerTool"
134 />
135 <Tool
136 Name="VCPreLinkEventTool"
137 />
138 <Tool
139 Name="VCLinkerTool"
140 OutputFile="..\..\bin\Win32-VisualStudio\17.HelloWorld_Mobile on PC.exe"
141 LinkIncremental="1"
142 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
143 GenerateDebugInformation="true"
144 SubSystem="1"
145 OptimizeReferences="2"
146 EnableCOMDATFolding="2"
147 RandomizedBaseAddress="1"
148 DataExecutionPrevention="0"
149 TargetMachine="1"
150 />
151 <Tool
152 Name="VCALinkTool"
153 />
154 <Tool
155 Name="VCManifestTool"
156 />
157 <Tool
158 Name="VCXDCMakeTool"
159 />
160 <Tool
161 Name="VCBscMakeTool"
162 />
163 <Tool
164 Name="VCFxCopTool"
165 />
166 <Tool
167 Name="VCAppVerifierTool"
168 />
169 <Tool
170 Name="VCPostBuildEventTool"
171 />
172 </Configuration>
173 </Configurations>
174 <References>
175 </References>
176 <Files>
177 <File
178 RelativePath=".\main.cpp"
179 >
180 </File>
181 </Files>
182 <Globals>
183 </Globals>
184</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc10.vcxproj
new file mode 100644
index 0000000..e46cb0c
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc10.vcxproj
@@ -0,0 +1,176 @@
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>17.HelloWorld_Mobile</ProjectName>
23 <ProjectGuid>{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}</ProjectGuid>
24 <RootNamespace>My17HelloWorldforWindowsMobileonPC</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>Unicode</CharacterSet>
31 <WholeProgramOptimization>true</WholeProgramOptimization>
32 </PropertyGroup>
33 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
34 <ConfigurationType>Application</ConfigurationType>
35 <CharacterSet>Unicode</CharacterSet>
36 <WholeProgramOptimization>true</WholeProgramOptimization>
37 </PropertyGroup>
38 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
39 <ConfigurationType>Application</ConfigurationType>
40 <CharacterSet>Unicode</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
43 <ConfigurationType>Application</ConfigurationType>
44 <CharacterSet>Unicode</CharacterSet>
45 </PropertyGroup>
46 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
47 <ImportGroup Label="ExtensionSettings">
48 </ImportGroup>
49 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
50 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
51 </ImportGroup>
52 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
53 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
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 </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 </ImportGroup>
61 <PropertyGroup Label="UserMacros" />
62 <PropertyGroup>
63 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
64 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
65 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
66 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
67 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
68 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
70 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
72 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
73 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
74 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
75 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
76 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
77 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
78 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
79 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
80 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
81 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
82 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
83 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
84 </PropertyGroup>
85 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
86 <ClCompile>
87 <Optimization>Disabled</Optimization>
88 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
89 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
90 <MinimalRebuild>true</MinimalRebuild>
91 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
92 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
93 <PrecompiledHeader>
94 </PrecompiledHeader>
95 <WarningLevel>Level3</WarningLevel>
96 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
97 </ClCompile>
98 <Link>
99 <OutputFile>..\..\bin\Win32-VisualStudio\17.HelloWorld_Mobile.exe</OutputFile>
100 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
101 <GenerateDebugInformation>true</GenerateDebugInformation>
102 <SubSystem>Console</SubSystem>
103 <DataExecutionPrevention>
104 </DataExecutionPrevention>
105 </Link>
106 </ItemDefinitionGroup>
107 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
108 <ClCompile>
109 <Optimization>Disabled</Optimization>
110 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
111 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
112 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
113 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
114 <PrecompiledHeader>
115 </PrecompiledHeader>
116 <WarningLevel>Level3</WarningLevel>
117 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
118 </ClCompile>
119 <Link>
120 <OutputFile>..\..\bin\Win64-VisualStudio\17.HelloWorld_Mobile.exe</OutputFile>
121 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
122 <GenerateDebugInformation>true</GenerateDebugInformation>
123 <SubSystem>Console</SubSystem>
124 <DataExecutionPrevention>
125 </DataExecutionPrevention>
126 </Link>
127 </ItemDefinitionGroup>
128 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
129 <ClCompile>
130 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
131 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
132 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
133 <PrecompiledHeader>
134 </PrecompiledHeader>
135 <WarningLevel>Level3</WarningLevel>
136 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
137 </ClCompile>
138 <Link>
139 <OutputFile>..\..\bin\Win32-VisualStudio\17.HelloWorld_Mobile.exe</OutputFile>
140 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
141 <GenerateDebugInformation>false</GenerateDebugInformation>
142 <SubSystem>Console</SubSystem>
143 <OptimizeReferences>true</OptimizeReferences>
144 <EnableCOMDATFolding>true</EnableCOMDATFolding>
145 <DataExecutionPrevention>
146 </DataExecutionPrevention>
147 </Link>
148 </ItemDefinitionGroup>
149 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
150 <ClCompile>
151 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
152 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
153 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
154 <PrecompiledHeader>
155 </PrecompiledHeader>
156 <WarningLevel>Level3</WarningLevel>
157 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
158 </ClCompile>
159 <Link>
160 <OutputFile>..\..\bin\Win64-VisualStudio\17.HelloWorld_Mobile.exe</OutputFile>
161 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
162 <GenerateDebugInformation>false</GenerateDebugInformation>
163 <SubSystem>Console</SubSystem>
164 <OptimizeReferences>true</OptimizeReferences>
165 <EnableCOMDATFolding>true</EnableCOMDATFolding>
166 <DataExecutionPrevention>
167 </DataExecutionPrevention>
168 </Link>
169 </ItemDefinitionGroup>
170 <ItemGroup>
171 <ClCompile Include="main.cpp" />
172 </ItemGroup>
173 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
174 <ImportGroup Label="ExtensionTargets">
175 </ImportGroup>
176</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc11.vcxproj
new file mode 100644
index 0000000..27b8ed4
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/17. HelloWorld for Windows Mobile on PC_vc11.vcxproj
@@ -0,0 +1,180 @@
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>17.HelloWorld_Mobile</ProjectName>
23 <ProjectGuid>{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}</ProjectGuid>
24 <RootNamespace>My17HelloWorldforWindowsMobileonPC</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>Unicode</CharacterSet>
31 <WholeProgramOptimization>true</WholeProgramOptimization>
32 <PlatformToolset>v110</PlatformToolset>
33 </PropertyGroup>
34 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
35 <ConfigurationType>Application</ConfigurationType>
36 <CharacterSet>Unicode</CharacterSet>
37 <WholeProgramOptimization>true</WholeProgramOptimization>
38 <PlatformToolset>v110</PlatformToolset>
39 </PropertyGroup>
40 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
41 <ConfigurationType>Application</ConfigurationType>
42 <CharacterSet>Unicode</CharacterSet>
43 <PlatformToolset>v110</PlatformToolset>
44 </PropertyGroup>
45 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
46 <ConfigurationType>Application</ConfigurationType>
47 <CharacterSet>Unicode</CharacterSet>
48 <PlatformToolset>v110</PlatformToolset>
49 </PropertyGroup>
50 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
51 <ImportGroup Label="ExtensionSettings">
52 </ImportGroup>
53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
54 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
55 </ImportGroup>
56 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
57 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
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 </ImportGroup>
62 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
63 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
64 </ImportGroup>
65 <PropertyGroup Label="UserMacros" />
66 <PropertyGroup>
67 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
68 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
70 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
72 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
73 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
74 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
75 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
76 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
77 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
78 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
79 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
80 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
81 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
82 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
83 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
84 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
85 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
86 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
87 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
88 </PropertyGroup>
89 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
90 <ClCompile>
91 <Optimization>Disabled</Optimization>
92 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
93 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
94 <MinimalRebuild>true</MinimalRebuild>
95 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
96 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
97 <PrecompiledHeader>
98 </PrecompiledHeader>
99 <WarningLevel>Level3</WarningLevel>
100 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
101 </ClCompile>
102 <Link>
103 <OutputFile>..\..\bin\Win32-VisualStudio\17.HelloWorld_Mobile.exe</OutputFile>
104 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
105 <GenerateDebugInformation>true</GenerateDebugInformation>
106 <SubSystem>Console</SubSystem>
107 <DataExecutionPrevention>
108 </DataExecutionPrevention>
109 </Link>
110 </ItemDefinitionGroup>
111 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
112 <ClCompile>
113 <Optimization>Disabled</Optimization>
114 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
115 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
116 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
117 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
118 <PrecompiledHeader>
119 </PrecompiledHeader>
120 <WarningLevel>Level3</WarningLevel>
121 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
122 </ClCompile>
123 <Link>
124 <OutputFile>..\..\bin\Win64-VisualStudio\17.HelloWorld_Mobile.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 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
135 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
136 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
137 <PrecompiledHeader>
138 </PrecompiledHeader>
139 <WarningLevel>Level3</WarningLevel>
140 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
141 </ClCompile>
142 <Link>
143 <OutputFile>..\..\bin\Win32-VisualStudio\17.HelloWorld_Mobile.exe</OutputFile>
144 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
145 <GenerateDebugInformation>false</GenerateDebugInformation>
146 <SubSystem>Console</SubSystem>
147 <OptimizeReferences>true</OptimizeReferences>
148 <EnableCOMDATFolding>true</EnableCOMDATFolding>
149 <DataExecutionPrevention>
150 </DataExecutionPrevention>
151 </Link>
152 </ItemDefinitionGroup>
153 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
154 <ClCompile>
155 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
156 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
157 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
158 <PrecompiledHeader>
159 </PrecompiledHeader>
160 <WarningLevel>Level3</WarningLevel>
161 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
162 </ClCompile>
163 <Link>
164 <OutputFile>..\..\bin\Win64-VisualStudio\17.HelloWorld_Mobile.exe</OutputFile>
165 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
166 <GenerateDebugInformation>false</GenerateDebugInformation>
167 <SubSystem>Console</SubSystem>
168 <OptimizeReferences>true</OptimizeReferences>
169 <EnableCOMDATFolding>true</EnableCOMDATFolding>
170 <DataExecutionPrevention>
171 </DataExecutionPrevention>
172 </Link>
173 </ItemDefinitionGroup>
174 <ItemGroup>
175 <ClCompile Include="main.cpp" />
176 </ItemGroup>
177 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
178 <ImportGroup Label="ExtensionTargets">
179 </ImportGroup>
180</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.sln b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.sln
new file mode 100644
index 0000000..31932b7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.sln
@@ -0,0 +1,33 @@
1ďťż
2Microsoft Visual Studio Solution File, Format Version 9.00
3# Visual Studio 2005
4Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "17.HelloWorld_mobile", "HelloWorld_mobile.vcproj", "{AD95D5D7-91D2-4030-B28D-23A6FE5C0359}"
5 ProjectSection(ProjectDependencies) = postProject
6 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
7 EndProjectSection
8EndProject
9Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Irrlicht", "..\..\source\Irrlicht\Irrlicht_mobile6.vcproj", "{E08E042A-6C45-411B-92BE-3CC31331019F}"
10EndProject
11Global
12 GlobalSection(SolutionConfigurationPlatforms) = preSolution
13 Debug|Windows Mobile 6 Professional SDK (ARMV4I) = Debug|Windows Mobile 6 Professional SDK (ARMV4I)
14 Release|Windows Mobile 6 Professional SDK (ARMV4I) = Release|Windows Mobile 6 Professional SDK (ARMV4I)
15 EndGlobalSection
16 GlobalSection(ProjectConfigurationPlatforms) = postSolution
17 {AD95D5D7-91D2-4030-B28D-23A6FE5C0359}.Debug|Windows Mobile 6 Professional SDK (ARMV4I).ActiveCfg = Debug|Windows Mobile 6 Professional SDK (ARMV4I)
18 {AD95D5D7-91D2-4030-B28D-23A6FE5C0359}.Debug|Windows Mobile 6 Professional SDK (ARMV4I).Build.0 = Debug|Windows Mobile 6 Professional SDK (ARMV4I)
19 {AD95D5D7-91D2-4030-B28D-23A6FE5C0359}.Debug|Windows Mobile 6 Professional SDK (ARMV4I).Deploy.0 = Debug|Windows Mobile 6 Professional SDK (ARMV4I)
20 {AD95D5D7-91D2-4030-B28D-23A6FE5C0359}.Release|Windows Mobile 6 Professional SDK (ARMV4I).ActiveCfg = Release|Windows Mobile 6 Professional SDK (ARMV4I)
21 {AD95D5D7-91D2-4030-B28D-23A6FE5C0359}.Release|Windows Mobile 6 Professional SDK (ARMV4I).Build.0 = Release|Windows Mobile 6 Professional SDK (ARMV4I)
22 {AD95D5D7-91D2-4030-B28D-23A6FE5C0359}.Release|Windows Mobile 6 Professional SDK (ARMV4I).Deploy.0 = Release|Windows Mobile 6 Professional SDK (ARMV4I)
23 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Windows Mobile 6 Professional SDK (ARMV4I).ActiveCfg = Debug|Windows Mobile 6 Professional SDK (ARMV4I)
24 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Windows Mobile 6 Professional SDK (ARMV4I).Build.0 = Debug|Windows Mobile 6 Professional SDK (ARMV4I)
25 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Windows Mobile 6 Professional SDK (ARMV4I).Deploy.0 = Debug|Windows Mobile 6 Professional SDK (ARMV4I)
26 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Windows Mobile 6 Professional SDK (ARMV4I).ActiveCfg = Release|Windows Mobile 6 Professional SDK (ARMV4I)
27 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Windows Mobile 6 Professional SDK (ARMV4I).Build.0 = Release|Windows Mobile 6 Professional SDK (ARMV4I)
28 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Windows Mobile 6 Professional SDK (ARMV4I).Deploy.0 = Release|Windows Mobile 6 Professional SDK (ARMV4I)
29 EndGlobalSection
30 GlobalSection(SolutionProperties) = preSolution
31 HideSolutionNode = FALSE
32 EndGlobalSection
33EndGlobal
diff --git a/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.vcproj b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.vcproj
new file mode 100644
index 0000000..dcaca9e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/HelloWorld_mobile.vcproj
@@ -0,0 +1,198 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8,00"
5 Name="17.HelloWorld_mobile"
6 ProjectGUID="{AD95D5D7-91D2-4030-B28D-23A6FE5C0359}"
7 RootNamespace="17.HelloWorld_mobile"
8 Keyword="Win32Proj"
9 >
10 <Platforms>
11 <Platform
12 Name="Windows Mobile 6 Professional SDK (ARMV4I)"
13 />
14 </Platforms>
15 <ToolFiles>
16 </ToolFiles>
17 <Configurations>
18 <Configuration
19 Name="Debug|Windows Mobile 6 Professional SDK (ARMV4I)"
20 OutputDirectory="..\..\bin\WinCE-visualstudio\"
21 IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
22 ConfigurationType="1"
23 CharacterSet="1"
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 ExecutionBucket="7"
43 Optimization="0"
44 AdditionalIncludeDirectories="..\..\include"
45 PreprocessorDefinitions="_DEBUG;_WIN32_WCE=$(CEVER);UNDER_CE;$(PLATFORMDEFINES);WINCE;DEBUG;_WINDOWS;$(ARCHFAM);$(_ARCHFAM_);_UNICODE;UNICODE"
46 MinimalRebuild="true"
47 RuntimeLibrary="1"
48 UsePrecompiledHeader="0"
49 WarningLevel="3"
50 DebugInformationFormat="3"
51 EnableFloatingPointEmulation="true"
52 />
53 <Tool
54 Name="VCManagedResourceCompilerTool"
55 />
56 <Tool
57 Name="VCResourceCompilerTool"
58 PreprocessorDefinitions="_DEBUG;_WIN32_WCE=$(CEVER);UNDER_CE;$(PLATFORMDEFINES)"
59 Culture="1033"
60 AdditionalIncludeDirectories="$(IntDir)"
61 />
62 <Tool
63 Name="VCPreLinkEventTool"
64 />
65 <Tool
66 Name="VCLinkerTool"
67 AdditionalOptions=" /subsystem:windowsce,5.02"
68 OutputFile="$(OutDir)\17.HelloWorld_mobile.exe"
69 LinkIncremental="2"
70 AdditionalLibraryDirectories="..\..\lib\WinCE-visualstudio\"
71 DelayLoadDLLs="$(NOINHERIT)"
72 GenerateDebugInformation="true"
73 ProgramDatabaseFile="$(OutDir)/HelloWorld_mobile.pdb"
74 SubSystem="0"
75 StackReserveSize="65536"
76 StackCommitSize="4096"
77 />
78 <Tool
79 Name="VCALinkTool"
80 />
81 <Tool
82 Name="VCXDCMakeTool"
83 />
84 <Tool
85 Name="VCBscMakeTool"
86 />
87 <Tool
88 Name="VCCodeSignTool"
89 />
90 <Tool
91 Name="VCPostBuildEventTool"
92 />
93 <DeploymentTool
94 ForceDirty="-1"
95 RemoteDirectory="%CSIDL_PROGRAM_FILES%\irrlicht\bin\wince-visualstudio"
96 RegisterOutput="0"
97 AdditionalFiles="sydney.md2|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;sydney.bmp|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;ninja.b3d|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;nskinbl.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlichtlogo3.png|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;terrain-heightmap.bmp|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;terrain-texture.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;detailmap3.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_up.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_dn.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_lf.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_rt.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_ft.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_bk.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;skydome.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht.dll|$(InputDir)$(OutDir)|%CSIDL_PROGRAM_FILES%\irrlicht\bin\wince-visualstudio|0"
98 />
99 <DebuggerTool
100 />
101 </Configuration>
102 <Configuration
103 Name="Release|Windows Mobile 6 Professional SDK (ARMV4I)"
104 OutputDirectory="..\..\bin\WinCE-visualstudio\"
105 IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
106 ConfigurationType="1"
107 CharacterSet="1"
108 >
109 <Tool
110 Name="VCPreBuildEventTool"
111 />
112 <Tool
113 Name="VCCustomBuildTool"
114 />
115 <Tool
116 Name="VCXMLDataGeneratorTool"
117 />
118 <Tool
119 Name="VCWebServiceProxyGeneratorTool"
120 />
121 <Tool
122 Name="VCMIDLTool"
123 />
124 <Tool
125 Name="VCCLCompilerTool"
126 ExecutionBucket="7"
127 Optimization="2"
128 AdditionalIncludeDirectories="..\..\include"
129 PreprocessorDefinitions="NDEBUG;_WIN32_WCE=$(CEVER);UNDER_CE;$(PLATFORMDEFINES);WINCE;_WINDOWS;$(ARCHFAM);$(_ARCHFAM_);_UNICODE;UNICODE"
130 RuntimeLibrary="0"
131 UsePrecompiledHeader="0"
132 WarningLevel="3"
133 DebugInformationFormat="0"
134 EnableFloatingPointEmulation="true"
135 />
136 <Tool
137 Name="VCManagedResourceCompilerTool"
138 />
139 <Tool
140 Name="VCResourceCompilerTool"
141 PreprocessorDefinitions="NDEBUG;_WIN32_WCE=$(CEVER);UNDER_CE;$(PLATFORMDEFINES)"
142 Culture="1033"
143 AdditionalIncludeDirectories="$(IntDir)"
144 />
145 <Tool
146 Name="VCPreLinkEventTool"
147 />
148 <Tool
149 Name="VCLinkerTool"
150 AdditionalOptions=" /subsystem:windowsce,5.02"
151 OutputFile="$(OutDir)\17.HelloWorld_mobile.exe"
152 LinkIncremental="0"
153 AdditionalLibraryDirectories="..\..\lib\WinCE-visualstudio\"
154 DelayLoadDLLs="$(NOINHERIT)"
155 GenerateDebugInformation="true"
156 ProgramDatabaseFile="$(OutDir)/HelloWorld_mobile.pdb"
157 SubSystem="0"
158 StackReserveSize="65536"
159 StackCommitSize="4096"
160 OptimizeReferences="2"
161 EnableCOMDATFolding="2"
162 />
163 <Tool
164 Name="VCALinkTool"
165 />
166 <Tool
167 Name="VCXDCMakeTool"
168 />
169 <Tool
170 Name="VCBscMakeTool"
171 />
172 <Tool
173 Name="VCCodeSignTool"
174 />
175 <Tool
176 Name="VCPostBuildEventTool"
177 />
178 <DeploymentTool
179 ForceDirty="-1"
180 RemoteDirectory="%CSIDL_PROGRAM_FILES%\irrlicht\bin\wince-visualstudio"
181 RegisterOutput="0"
182 AdditionalFiles="sydney.md2|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;sydney.bmp|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;ninja.b3d|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;nskinbl.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlichtlogo3.png|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;terrain-heightmap.bmp|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;terrain-texture.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;detailmap3.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_up.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_dn.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_lf.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_rt.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_ft.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht2_bk.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;skydome.jpg|$(InputDir)..\..\media|%CSIDL_PROGRAM_FILES%\irrlicht\media|0;irrlicht.dll|$(InputDir)$(OutDir)|%CSIDL_PROGRAM_FILES%\irrlicht\bin\wince-visualstudio|0"
183 />
184 <DebuggerTool
185 />
186 </Configuration>
187 </Configurations>
188 <References>
189 </References>
190 <Files>
191 <File
192 RelativePath=".\main.cpp"
193 >
194 </File>
195 </Files>
196 <Globals>
197 </Globals>
198</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/main.cpp b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/main.cpp
new file mode 100644
index 0000000..4fc15cd
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/17.HelloWorld_Mobile/main.cpp
@@ -0,0 +1,503 @@
1/** Example 017 Helloworld mobile
2 This example show Hello World for Windows mobile.
3 It compiles on other platform too. The only differences between the original
4 examples are. You need a GUI, because otherwise you can't quit the application.
5 You need a Filesystem, which is relative based to your executable.
6*/
7
8#include <irrlicht.h>
9
10#if defined ( _IRR_WINDOWS_ )
11 #include <windows.h>
12#endif
13
14using namespace irr;
15using namespace core;
16using namespace scene;
17using namespace video;
18using namespace io;
19using namespace gui;
20
21#pragma comment(lib, "Irrlicht.lib")
22
23class EventReceiver_basic : public IEventReceiver
24{
25private:
26 IrrlichtDevice *Device;
27public:
28 EventReceiver_basic ( IrrlichtDevice *device ): Device ( device ) {}
29
30 virtual bool OnEvent(const SEvent& event)
31 {
32 if (event.EventType == EET_GUI_EVENT)
33 {
34 s32 id = event.GUIEvent.Caller->getID();
35
36 switch(event.GUIEvent.EventType)
37 {
38 case EGET_BUTTON_CLICKED:
39 if (id == 2)
40 {
41 Device->closeDevice();
42 return true;
43 } break;
44 }
45 }
46
47 return false;
48 }
49};
50
51class CSampleSceneNode : public ISceneNode
52{
53 aabbox3d<f32> Box;
54 S3DVertex Vertices[4];
55 SMaterial Material;
56public:
57
58 CSampleSceneNode(ISceneNode* parent, ISceneManager* mgr, s32 id)
59 : ISceneNode(parent, mgr, id)
60 {
61 Material.Wireframe = false;
62 Material.Lighting = false;
63
64 Vertices[0] = S3DVertex(0,0,10, 1,1,0, SColor(255,0,255,255), 0, 1);
65 Vertices[1] = S3DVertex(10,0,-10, 1,0,0, SColor(255,255,0,255), 1, 1);
66 Vertices[2] = S3DVertex(0,20,0, 0,1,1, SColor(255,255,255,0), 1, 0);
67 Vertices[3] = S3DVertex(-10,0,-10, 0,0,1, SColor(255,0,255,0), 0, 0);
68 Box.reset(Vertices[0].Pos);
69 for (s32 i=1; i<4; ++i)
70 Box.addInternalPoint(Vertices[i].Pos);
71 }
72 virtual void OnRegisterSceneNode()
73 {
74 if (IsVisible)
75 SceneManager->registerNodeForRendering(this);
76
77 ISceneNode::OnRegisterSceneNode();
78 }
79
80 virtual void render()
81 {
82 u16 indices[] = { 0,2,3, 2,1,3, 1,0,3, 2,0,1 };
83 IVideoDriver* driver = SceneManager->getVideoDriver();
84
85 driver->setMaterial(Material);
86 driver->setTransform(ETS_WORLD, AbsoluteTransformation);
87 driver->drawIndexedTriangleList(&Vertices[0], 4, &indices[0], 4);
88 }
89
90 virtual const aabbox3d<f32>& getBoundingBox() const
91 {
92 return Box;
93 }
94
95 virtual u32 getMaterialCount()
96 {
97 return 1;
98 }
99
100 virtual SMaterial& getMaterial(u32 i)
101 {
102 return Material;
103 }
104};
105
106/*!
107 Startup a Windows Mobile Device
108*/
109IrrlichtDevice *startup()
110{
111 // both software and burnings video can be used
112 E_DRIVER_TYPE driverType = EDT_SOFTWARE; // EDT_BURNINGSVIDEO;
113
114 // create device
115 IrrlichtDevice *device = 0;
116
117#if defined (_IRR_USE_WINDOWS_CE_DEVICE_)
118 // set to standard mobile fullscreen 240x320
119 device = createDevice(driverType, dimension2d<u32>(240, 320), 16, true );
120#else
121 // on PC. use window mode
122 device = createDevice(driverType, dimension2d<u32>(240, 320), 16, false );
123#endif
124 if ( 0 == device )
125 return 0;
126
127 IVideoDriver* driver = device->getVideoDriver();
128 ISceneManager* smgr = device->getSceneManager();
129 IGUIEnvironment* guienv = device->getGUIEnvironment();
130
131 // set the filesystem relative to the executable
132#if defined (_IRR_WINDOWS_)
133 {
134 wchar_t buf[255];
135 GetModuleFileNameW ( 0, buf, 255 );
136
137 io::path base = buf;
138 base = base.subString ( 0, base.findLast ( '\\' ) + 1 );
139 device->getFileSystem()->addFileArchive ( base );
140 }
141#endif
142
143 IGUIStaticText *text = guienv->addStaticText(L"FPS: 25",
144 rect<s32>(140,15,200,30), false, false, 0, 100 );
145
146 guienv->addButton(core::rect<int>(200,10,238,30), 0, 2, L"Quit");
147
148 // add irrlicht logo
149 guienv->addImage(driver->getTexture("../../media/irrlichtlogo3.png"),
150 core::position2d<s32>(0,-2));
151 return device;
152}
153
154/*!
155*/
156int run ( IrrlichtDevice *device )
157{
158 while(device->run())
159 if (device->isWindowActive())
160 {
161 device->getVideoDriver()->beginScene(true, true, SColor(0,100,100,100));
162 device->getSceneManager()->drawAll();
163 device->getGUIEnvironment()->drawAll();
164 device->getVideoDriver()->endScene ();
165
166 IGUIElement *stat = device->getGUIEnvironment()->
167 getRootGUIElement()->getElementFromId ( 100 );
168 if ( stat )
169 {
170 stringw str = L"FPS: ";
171 str += (s32)device->getVideoDriver()->getFPS();
172
173 stat->setText ( str.c_str() );
174 }
175 }
176
177 device->drop();
178 return 0;
179}
180
181/*!
182*/
183int example_customscenenode()
184{
185 // create device
186 IrrlichtDevice *device = startup();
187 if (device == 0)
188 return 1; // could not create selected driver.
189
190 // create engine and camera
191 EventReceiver_basic receiver(device);
192 device->setEventReceiver(&receiver);
193
194 IVideoDriver* driver = device->getVideoDriver();
195 ISceneManager* smgr = device->getSceneManager();
196 IGUIEnvironment* guienv = device->getGUIEnvironment();
197
198
199 smgr->addCameraSceneNode(0, vector3df(0,-40,0), vector3df(0,0,0));
200
201 CSampleSceneNode *myNode =
202 new CSampleSceneNode(smgr->getRootSceneNode(), smgr, 666);
203
204 ISceneNodeAnimator* anim =
205 smgr->createRotationAnimator(vector3df(0.8f, 0, 0.8f));
206
207 if(anim)
208 {
209 myNode->addAnimator(anim);
210 anim->drop();
211 anim = 0; // As I shouldn't refer to it again, ensure that I can't
212 }
213
214 myNode->drop();
215 myNode = 0; // As I shouldn't refer to it again, ensure that I can't
216
217 return run ( device );
218}
219
220class EventReceiver_terrain : public IEventReceiver
221{
222public:
223
224 EventReceiver_terrain(IrrlichtDevice *device, scene::ISceneNode* terrain, scene::ISceneNode* skybox, scene::ISceneNode* skydome) :
225 Device ( device ), Terrain(terrain), Skybox(skybox), Skydome(skydome), showBox(true)
226 {
227 Skybox->setVisible(true);
228 Skydome->setVisible(false);
229 }
230
231 bool OnEvent(const SEvent& event)
232 {
233 if (event.EventType == EET_GUI_EVENT)
234 {
235 s32 id = event.GUIEvent.Caller->getID();
236
237 switch(event.GUIEvent.EventType)
238 {
239 case EGET_BUTTON_CLICKED:
240 if (id == 2)
241 {
242 Device->closeDevice();
243 return true;
244 } break;
245 }
246 }
247
248 // check if user presses the key 'W' or 'D'
249 if (event.EventType == irr::EET_KEY_INPUT_EVENT && !event.KeyInput.PressedDown)
250 {
251 switch (event.KeyInput.Key)
252 {
253 case irr::KEY_KEY_W: // switch wire frame mode
254 Terrain->setMaterialFlag(video::EMF_WIREFRAME,
255 !Terrain->getMaterial(0).Wireframe);
256 Terrain->setMaterialFlag(video::EMF_POINTCLOUD, false);
257 return true;
258 case irr::KEY_KEY_P: // switch wire frame mode
259 Terrain->setMaterialFlag(video::EMF_POINTCLOUD,
260 !Terrain->getMaterial(0).PointCloud);
261 Terrain->setMaterialFlag(video::EMF_WIREFRAME, false);
262 return true;
263 case irr::KEY_KEY_D: // toggle detail map
264 Terrain->setMaterialType(
265 Terrain->getMaterial(0).MaterialType == video::EMT_SOLID ?
266 video::EMT_DETAIL_MAP : video::EMT_SOLID);
267 return true;
268 case irr::KEY_KEY_S: // toggle skies
269 showBox=!showBox;
270 Skybox->setVisible(showBox);
271 Skydome->setVisible(!showBox);
272 return true;
273 default:
274 break;
275 }
276 }
277
278 return false;
279 }
280
281private:
282 IrrlichtDevice *Device;
283 scene::ISceneNode* Terrain;
284 scene::ISceneNode* Skybox;
285 scene::ISceneNode* Skydome;
286 bool showBox;
287};
288
289
290/*
291The start of the main function starts like in most other example. We ask the user
292for the desired renderer and start it up. This time with the advanced parameter handling.
293*/
294int example_terrain()
295{
296 // create device
297 IrrlichtDevice *device = startup();
298 if (device == 0)
299 return 1; // could not create selected driver.
300
301 /*
302 First, we add standard stuff to the scene: A nice irrlicht engine
303 logo, a small help text, a user controlled camera, and we disable
304 the mouse cursor.
305 */
306
307 video::IVideoDriver* driver = device->getVideoDriver();
308 scene::ISceneManager* smgr = device->getSceneManager();
309 gui::IGUIEnvironment* env = device->getGUIEnvironment();
310
311
312 //set other font
313 //env->getSkin()->setFont(env->getFont("../../media/fontlucida.png"));
314
315 // add some help text
316 env->addStaticText(
317 L"Press 'W' to change wireframe mode\nPress 'D' to toggle detail map\nPress 'S' to toggle skybox/skydome",
318 core::rect<s32>(5,250,235,320), true, true, 0, -1, true);
319
320 // add camera
321 scene::ICameraSceneNode* camera =
322 smgr->addCameraSceneNodeFPS(0,100.0f,1.2f);
323
324 camera->setPosition(core::vector3df(2700*2,255*2,2600*2));
325 camera->setTarget(core::vector3df(2397*2,343*2,2700*2));
326 camera->setFarValue(42000.0f);
327
328 // disable mouse cursor
329 device->getCursorControl()->setVisible(false);
330
331 /*
332 Here comes the terrain renderer scene node: We add it just like any
333 other scene node to the scene using
334 ISceneManager::addTerrainSceneNode(). The only parameter we use is a
335 file name to the heightmap we use. A heightmap is simply a gray scale
336 texture. The terrain renderer loads it and creates the 3D terrain from
337 it.
338
339 To make the terrain look more big, we change the scale factor of
340 it to (40, 4.4, 40). Because we don't have any dynamic lights in the
341 scene, we switch off the lighting, and we set the file
342 terrain-texture.jpg as texture for the terrain and detailmap3.jpg as
343 second texture, called detail map. At last, we set the scale values for
344 the texture: The first texture will be repeated only one time over the
345 whole terrain, and the second one (detail map) 20 times.
346 */
347
348 // add terrain scene node
349 scene::ITerrainSceneNode* terrain = smgr->addTerrainSceneNode(
350 "../../media/terrain-heightmap.bmp",
351 0, // parent node
352 -1, // node id
353 core::vector3df(0.f, 0.f, 0.f), // position
354 core::vector3df(0.f, 0.f, 0.f), // rotation
355 core::vector3df(40.f, 4.4f, 40.f), // scale
356 video::SColor ( 255, 255, 255, 255 ), // vertexColor
357 5, // maxLOD
358 scene::ETPS_17, // patchSize
359 4 // smoothFactor
360 );
361
362 if ( terrain )
363 {
364 terrain->setMaterialFlag(video::EMF_LIGHTING, false);
365
366 terrain->setMaterialTexture(0,
367 driver->getTexture("../../media/terrain-texture.jpg"));
368 terrain->setMaterialTexture(1,
369 driver->getTexture("../../media/detailmap3.jpg"));
370
371 terrain->setMaterialType(video::EMT_DETAIL_MAP);
372
373 terrain->scaleTexture(1.0f, 20.0f);
374 //terrain->setDebugDataVisible ( true );
375
376 /*
377 To be able to do collision with the terrain, we create a triangle selector.
378 If you want to know what triangle selectors do, just take a look into the
379 collision tutorial. The terrain triangle selector works together with the
380 terrain. To demonstrate this, we create a collision response animator
381 and attach it to the camera, so that the camera will not be able to fly
382 through the terrain.
383 */
384
385 // create triangle selector for the terrain
386 scene::ITriangleSelector* selector
387 = smgr->createTerrainTriangleSelector(terrain, 0);
388 terrain->setTriangleSelector(selector);
389
390 // create collision response animator and attach it to the camera
391 scene::ISceneNodeAnimator* anim = smgr->createCollisionResponseAnimator(
392 selector, camera, core::vector3df(60,100,60),
393 core::vector3df(0,0,0),
394 core::vector3df(0,50,0));
395 selector->drop();
396 camera->addAnimator(anim);
397 anim->drop();
398
399 /* If you need access to the terrain data you can also do this directly via the following code fragment.
400 */
401 scene::CDynamicMeshBuffer* buffer = new scene::CDynamicMeshBuffer(video::EVT_2TCOORDS, video::EIT_16BIT);
402 terrain->getMeshBufferForLOD(*buffer, 0);
403 video::S3DVertex2TCoords* data = (video::S3DVertex2TCoords*)buffer->getVertexBuffer().getData();
404 // Work on data or get the IndexBuffer with a similar call.
405 buffer->drop(); // When done drop the buffer again.
406 }
407
408 /*
409 To make the user be able to switch between normal and wireframe mode,
410 we create an instance of the event receiver from above and let Irrlicht
411 know about it. In addition, we add the skybox which we already used in
412 lots of Irrlicht examples and a skydome, which is shown mutually
413 exclusive with the skybox by pressing 'S'.
414 */
415
416 // create skybox and skydome
417 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
418
419 scene::ISceneNode* skybox=smgr->addSkyBoxSceneNode(
420 driver->getTexture("../../media/irrlicht2_up.jpg"),
421 driver->getTexture("../../media/irrlicht2_dn.jpg"),
422 driver->getTexture("../../media/irrlicht2_lf.jpg"),
423 driver->getTexture("../../media/irrlicht2_rt.jpg"),
424 driver->getTexture("../../media/irrlicht2_ft.jpg"),
425 driver->getTexture("../../media/irrlicht2_bk.jpg"));
426 scene::ISceneNode* skydome=smgr->addSkyDomeSceneNode(driver->getTexture("../../media/skydome.jpg"),16,8,0.95f,2.0f);
427
428 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, true);
429
430 // create event receiver
431 EventReceiver_terrain receiver( device, terrain, skybox, skydome);
432 device->setEventReceiver(&receiver);
433
434 return run ( device );
435}
436
437/*
438*/
439int example_helloworld()
440{
441 // create device
442 IrrlichtDevice *device = startup();
443 if (device == 0)
444 return 1; // could not create selected driver.
445
446 IVideoDriver* driver = device->getVideoDriver();
447 ISceneManager* smgr = device->getSceneManager();
448 IGUIEnvironment* guienv = device->getGUIEnvironment();
449
450 IAnimatedMesh* mesh = smgr->getMesh("../../media/sydney.md2");
451 if (!mesh)
452 {
453 device->drop();
454 return 1;
455 }
456 IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode( mesh );
457
458 /*
459 To let the mesh look a little bit nicer, we change its material. We
460 disable lighting because we do not have a dynamic light in here, and
461 the mesh would be totally black otherwise. Then we set the frame loop,
462 such that the predefined STAND animation is used. And last, we apply a
463 texture to the mesh. Without it the mesh would be drawn using only a
464 color.
465 */
466 if (node)
467 {
468 node->setMaterialFlag(EMF_LIGHTING, false);
469 node->setMD2Animation(scene::EMAT_STAND);
470 node->setMaterialTexture( 0, driver->getTexture("../../media/sydney.bmp") );
471 }
472
473 /*
474 To look at the mesh, we place a camera into 3d space at the position
475 (0, 30, -40). The camera looks from there to (0,5,0), which is
476 approximately the place where our md2 model is.
477 */
478 smgr->addCameraSceneNode(0, vector3df(0,30,-40), vector3df(0,5,0));
479
480 EventReceiver_basic receiver(device);
481 device->setEventReceiver(&receiver);
482
483 return run ( device );
484
485}
486
487#if defined (_IRR_USE_WINDOWS_CE_DEVICE_)
488 #pragma comment(linker, "/subsystem:WINDOWSCE /ENTRY:main")
489#elif defined (_IRR_WINDOWS_)
490 #pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup")
491#endif
492
493/*
494*/
495int main()
496{
497 example_helloworld ();
498 example_customscenenode();
499 //example_terrain();
500}
501
502/*
503**/
diff --git a/src/others/irrlicht-1.8.1/examples/18.SplitScreen/Makefile b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/Makefile
new file mode 100644
index 0000000..5ad6913
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/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 = 18.SplitScreen
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/18.SplitScreen/SplitScreen.cbp b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.cbp
new file mode 100644
index 0000000..93ff1d8
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.cbp
@@ -0,0 +1,55 @@
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 18 Split Screen" />
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\SplitScreen" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\SplitScreen" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.dev b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.dev
new file mode 100644
index 0000000..cd843c6
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 18 SplitScreen
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=18.SplitScreen.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/18.SplitScreen/SplitScreen.vcproj b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.vcproj
new file mode 100644
index 0000000..46cb6b7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen.vcproj
@@ -0,0 +1,132 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="18.SplitScreen"
6 ProjectGUID="{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}"
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\18.SplitScreen.exe"
36 LinkIncremental="0"
37 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
38 GenerateDebugInformation="TRUE"
39 ProgramDatabaseFile="$(OutDir)/SplitScreen.pdb"
40 SubSystem="1"
41 TargetMachine="1"/>
42 <Tool
43 Name="VCMIDLTool"/>
44 <Tool
45 Name="VCPostBuildEventTool"/>
46 <Tool
47 Name="VCPreBuildEventTool"/>
48 <Tool
49 Name="VCPreLinkEventTool"/>
50 <Tool
51 Name="VCResourceCompilerTool"/>
52 <Tool
53 Name="VCWebServiceProxyGeneratorTool"/>
54 <Tool
55 Name="VCXMLDataGeneratorTool"/>
56 <Tool
57 Name="VCWebDeploymentTool"/>
58 <Tool
59 Name="VCManagedWrapperGeneratorTool"/>
60 <Tool
61 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
62 </Configuration>
63 <Configuration
64 Name="Release|Win32"
65 OutputDirectory="Release"
66 IntermediateDirectory="Release"
67 ConfigurationType="1"
68 CharacterSet="2"
69 WholeProgramOptimization="TRUE">
70 <Tool
71 Name="VCCLCompilerTool"
72 AdditionalOptions="/QIfist /Oa"
73 Optimization="3"
74 GlobalOptimizations="TRUE"
75 InlineFunctionExpansion="2"
76 EnableIntrinsicFunctions="TRUE"
77 FavorSizeOrSpeed="1"
78 OmitFramePointers="TRUE"
79 AdditionalIncludeDirectories="..\..\include"
80 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
81 RuntimeLibrary="4"
82 BufferSecurityCheck="FALSE"
83 UsePrecompiledHeader="0"
84 WarningLevel="3"
85 Detect64BitPortabilityProblems="TRUE"
86 DebugInformationFormat="0"
87 CallingConvention="1"/>
88 <Tool
89 Name="VCCustomBuildTool"/>
90 <Tool
91 Name="VCLinkerTool"
92 OutputFile="..\..\bin\Win32-VisualStudio\18.SplitScreen.exe"
93 LinkIncremental="0"
94 SuppressStartupBanner="TRUE"
95 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
96 GenerateDebugInformation="FALSE"
97 SubSystem="1"
98 OptimizeReferences="2"
99 EnableCOMDATFolding="2"
100 TargetMachine="1"/>
101 <Tool
102 Name="VCMIDLTool"/>
103 <Tool
104 Name="VCPostBuildEventTool"/>
105 <Tool
106 Name="VCPreBuildEventTool"/>
107 <Tool
108 Name="VCPreLinkEventTool"/>
109 <Tool
110 Name="VCResourceCompilerTool"/>
111 <Tool
112 Name="VCWebServiceProxyGeneratorTool"/>
113 <Tool
114 Name="VCXMLDataGeneratorTool"/>
115 <Tool
116 Name="VCWebDeploymentTool"/>
117 <Tool
118 Name="VCManagedWrapperGeneratorTool"/>
119 <Tool
120 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
121 </Configuration>
122 </Configurations>
123 <References>
124 </References>
125 <Files>
126 <File
127 RelativePath=".\main.cpp">
128 </File>
129 </Files>
130 <Globals>
131 </Globals>
132</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc10.vcxproj
new file mode 100644
index 0000000..7db11fe
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_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>18.SplitScreen</ProjectName>
23 <ProjectGuid>{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}</ProjectGuid>
24 <RootNamespace>18.SplitScreen</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 </ClCompile>
100 <Link>
101 <OutputFile>..\..\bin\Win32-VisualStudio\18.SplitScreen.exe</OutputFile>
102 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
103 <GenerateDebugInformation>true</GenerateDebugInformation>
104 <ProgramDatabaseFile>$(OutDir)SplitScreen.pdb</ProgramDatabaseFile>
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 </ClCompile>
122 <Link>
123 <OutputFile>..\..\bin\Win64-VisualStudio\18.SplitScreen.exe</OutputFile>
124 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
125 <GenerateDebugInformation>true</GenerateDebugInformation>
126 <ProgramDatabaseFile>$(OutDir)SplitScreen.pdb</ProgramDatabaseFile>
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\18.SplitScreen.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\18.SplitScreen.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/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc11.vcxproj
new file mode 100644
index 0000000..954ace3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_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>18.SplitScreen</ProjectName>
23 <ProjectGuid>{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}</ProjectGuid>
24 <RootNamespace>18.SplitScreen</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 </ClCompile>
104 <Link>
105 <OutputFile>..\..\bin\Win32-VisualStudio\18.SplitScreen.exe</OutputFile>
106 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
107 <GenerateDebugInformation>true</GenerateDebugInformation>
108 <ProgramDatabaseFile>$(OutDir)SplitScreen.pdb</ProgramDatabaseFile>
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 </ClCompile>
126 <Link>
127 <OutputFile>..\..\bin\Win64-VisualStudio\18.SplitScreen.exe</OutputFile>
128 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
129 <GenerateDebugInformation>true</GenerateDebugInformation>
130 <ProgramDatabaseFile>$(OutDir)SplitScreen.pdb</ProgramDatabaseFile>
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\18.SplitScreen.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\18.SplitScreen.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/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc8.vcproj
new file mode 100644
index 0000000..906b950
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc8.vcproj
@@ -0,0 +1,189 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8,00"
5 Name="18.SplitScreen_vc8"
6 ProjectGUID="{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}"
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\18.SplitScreen.exe"
65 LinkIncremental="2"
66 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
67 GenerateDebugInformation="true"
68 ProgramDatabaseFile="$(OutDir)/SplitScreen.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 />
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\18.SplitScreen.exe"
145 LinkIncremental="0"
146 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
147 GenerateDebugInformation="false"
148 SubSystem="1"
149 OptimizeReferences="2"
150 EnableCOMDATFolding="2"
151 TargetMachine="1"
152 />
153 <Tool
154 Name="VCALinkTool"
155 />
156 <Tool
157 Name="VCManifestTool"
158 />
159 <Tool
160 Name="VCXDCMakeTool"
161 />
162 <Tool
163 Name="VCBscMakeTool"
164 />
165 <Tool
166 Name="VCFxCopTool"
167 />
168 <Tool
169 Name="VCAppVerifierTool"
170 />
171 <Tool
172 Name="VCWebDeploymentTool"
173 />
174 <Tool
175 Name="VCPostBuildEventTool"
176 />
177 </Configuration>
178 </Configurations>
179 <References>
180 </References>
181 <Files>
182 <File
183 RelativePath=".\main.cpp"
184 >
185 </File>
186 </Files>
187 <Globals>
188 </Globals>
189</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_vc9.vcproj
new file mode 100644
index 0000000..86f6552
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/SplitScreen_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="18.SplitScreen_vc9"
6 ProjectGUID="{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}"
7 RootNamespace="18.SplitScreen_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\18.SplitScreen.exe"
66 LinkIncremental="2"
67 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
68 GenerateDebugInformation="true"
69 ProgramDatabaseFile="$(OutDir)/SplitScreen.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="0"
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\18.SplitScreen.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/src/others/irrlicht-1.8.1/examples/18.SplitScreen/main.cpp b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/main.cpp
new file mode 100644
index 0000000..32266c5
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/18.SplitScreen/main.cpp
@@ -0,0 +1,244 @@
1/** Example 018 Splitscreen
2
3A tutorial by Max Winkel.
4
5In this tutorial we'll learn how to use splitscreen (e.g. for racing-games)
6with Irrlicht. We'll create a viewport divided
7into 4 parts, with 3 fixed cameras and one user-controlled.
8
9Ok, let's start with the headers (I think there's
10nothing to say about it)
11*/
12
13#include <irrlicht.h>
14#include "driverChoice.h"
15
16#ifdef _MSC_VER
17#pragma comment(lib, "Irrlicht.lib")
18#endif
19
20//Namespaces for the engine
21using namespace irr;
22using namespace core;
23using namespace video;
24using namespace scene;
25
26/*
27Now we'll define the resolution in a constant for use in
28initializing the device and setting up the viewport. In addition
29we set up a global variable saying splitscreen is active or not.
30*/
31//Resolution
32const int ResX=800;
33const int ResY=600;
34const bool fullScreen=false;
35
36//Use SplitScreen?
37bool SplitScreen=true;
38
39/*
40Now we need four pointers to our cameras which are created later:
41*/
42//cameras
43ICameraSceneNode *camera[4]={0,0,0,0};
44/*
45In our event-receiver we switch the SplitScreen-variable,
46whenever the user press the S-key. All other events are sent
47to the FPS camera.
48*/
49
50class MyEventReceiver : public IEventReceiver
51{
52 public:
53 virtual bool OnEvent(const SEvent& event)
54 {
55 //Key S enables/disables SplitScreen
56 if (event.EventType == irr::EET_KEY_INPUT_EVENT &&
57 event.KeyInput.Key == KEY_KEY_S && event.KeyInput.PressedDown)
58 {
59 SplitScreen = !SplitScreen;
60 return true;
61 }
62 //Send all other events to camera4
63 if (camera[3])
64 return camera[3]->OnEvent(event);
65 return false;
66 }
67};
68
69/*
70Ok, now the main-function:
71First, we initialize the device, get the SourceManager and
72VideoDriver, load an animated mesh from .md2 and a map from
73.pk3. Because that's old stuff, I won't explain every step.
74Just take care of the maps position.
75*/
76int main()
77{
78 // ask user for driver
79 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
80 if (driverType==video::EDT_COUNT)
81 return 1;
82
83 //Instance of the EventReceiver
84 MyEventReceiver receiver;
85
86 //Initialise the engine
87 IrrlichtDevice *device = createDevice(driverType,
88 dimension2du(ResX,ResY), 32, fullScreen,
89 false, false, &receiver);
90 if (!device)
91 return 1;
92
93 ISceneManager *smgr = device->getSceneManager();
94 IVideoDriver *driver = device->getVideoDriver();
95
96 //Load model
97 IAnimatedMesh *model = smgr->getMesh("../../media/sydney.md2");
98 if (!model)
99 return 1;
100 IAnimatedMeshSceneNode *model_node = smgr->addAnimatedMeshSceneNode(model);
101 //Load texture
102 if (model_node)
103 {
104 ITexture *texture = driver->getTexture("../../media/sydney.bmp");
105 model_node->setMaterialTexture(0,texture);
106 model_node->setMD2Animation(scene::EMAT_RUN);
107 //Disable lighting (we've got no light)
108 model_node->setMaterialFlag(EMF_LIGHTING,false);
109 }
110
111 //Load map
112 device->getFileSystem()->addFileArchive("../../media/map-20kdm2.pk3");
113 IAnimatedMesh *map = smgr->getMesh("20kdm2.bsp");
114 if (map)
115 {
116 ISceneNode *map_node = smgr->addOctreeSceneNode(map->getMesh(0));
117 //Set position
118 map_node->setPosition(vector3df(-850,-220,-850));
119 }
120
121/*
122Now we create our four cameras. One is looking at the model
123from the front, one from the top and one from the side. In
124addition there's a FPS-camera which can be controlled by the
125user.
126*/
127 // Create 3 fixed and one user-controlled cameras
128 //Front
129 camera[0] = smgr->addCameraSceneNode(0, vector3df(50,0,0), vector3df(0,0,0));
130 //Top
131 camera[1] = smgr->addCameraSceneNode(0, vector3df(0,50,0), vector3df(0,0,0));
132 //Left
133 camera[2] = smgr->addCameraSceneNode(0, vector3df(0,0,50), vector3df(0,0,0));
134 //User-controlled
135 camera[3] = smgr->addCameraSceneNodeFPS();
136 // don't start at sydney's position
137 if (camera[3])
138 camera[3]->setPosition(core::vector3df(-50,0,-50));
139
140/*
141Create a variable for counting the fps and hide the mouse:
142*/
143 //Hide mouse
144 device->getCursorControl()->setVisible(false);
145 //We want to count the fps
146 int lastFPS = -1;
147
148/*
149There wasn't much new stuff - till now!
150Only by defining four cameras, the game won't be splitscreen.
151To do this you need several steps:
152 - Set the viewport to the whole screen
153 - Begin a new scene (Clear screen)
154
155 - The following 3 steps are repeated for every viewport in the splitscreen
156 - Set the viewport to the area you wish
157 - Activate the camera which should be "linked" with the viewport
158 - Render all objects
159
160 - If you have a GUI:
161 - Set the viewport the whole screen
162 - Display the GUI
163 - End scene
164
165Sounds a little complicated, but you'll see it isn't:
166*/
167
168 while(device->run())
169 {
170 //Set the viewpoint to the whole screen and begin scene
171 driver->setViewPort(rect<s32>(0,0,ResX,ResY));
172 driver->beginScene(true,true,SColor(255,100,100,100));
173 //If SplitScreen is used
174 if (SplitScreen)
175 {
176 //Activate camera1
177 smgr->setActiveCamera(camera[0]);
178 //Set viewpoint to the first quarter (left top)
179 driver->setViewPort(rect<s32>(0,0,ResX/2,ResY/2));
180 //Draw scene
181 smgr->drawAll();
182 //Activate camera2
183 smgr->setActiveCamera(camera[1]);
184 //Set viewpoint to the second quarter (right top)
185 driver->setViewPort(rect<s32>(ResX/2,0,ResX,ResY/2));
186 //Draw scene
187 smgr->drawAll();
188 //Activate camera3
189 smgr->setActiveCamera(camera[2]);
190 //Set viewpoint to the third quarter (left bottom)
191 driver->setViewPort(rect<s32>(0,ResY/2,ResX/2,ResY));
192 //Draw scene
193 smgr->drawAll();
194 //Set viewport the last quarter (right bottom)
195 driver->setViewPort(rect<s32>(ResX/2,ResY/2,ResX,ResY));
196 }
197 //Activate camera4
198 smgr->setActiveCamera(camera[3]);
199 //Draw scene
200 smgr->drawAll();
201 driver->endScene();
202
203 /*
204 As you can probably see, the image is rendered for every
205 viewport separately. That means, that you'll loose much performance.
206 Ok, if you're asking "How do I have to set the viewport
207 to get this or that screen?", don't panic. It's really
208 easy: In the rect-function you define 4 coordinates:
209 - X-coordinate of the corner left top
210 - Y-coordinate of the corner left top
211 - X-coordinate of the corner right bottom
212 - Y-coordinate of the corner right bottom
213
214 That means, if you want to split the screen into 2 viewports
215 you would give the following coordinates:
216 - 1st viewport: 0,0,ResX/2,ResY
217 - 2nd viewport: ResX/2,0,ResX,ResY
218
219 If you didn't fully understand, just play around with the example
220 to check out what happens.
221
222 Now we just view the current fps and shut down the engine,
223 when the user wants to:
224 */
225 //Get and show fps
226 if (driver->getFPS() != lastFPS)
227 {
228 lastFPS = driver->getFPS();
229 core::stringw tmp = L"Irrlicht SplitScreen-Example (FPS: ";
230 tmp += lastFPS;
231 tmp += ")";
232 device->setWindowCaption(tmp.c_str());
233 }
234 }
235 //Delete device
236 device->drop();
237 return 0;
238}
239/*
240That's it! Just compile and play around with the program.
241Note: With the S-Key you can switch between using splitscreen
242and not.
243**/
244
diff --git a/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/Makefile b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/Makefile
new file mode 100644
index 0000000..2462ea8
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/Makefile
@@ -0,0 +1,39 @@
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 = 19.MouseAndJoystick
5Sources = main.cpp
6
7# general compiler settings
8CPPFLAGS = -I../../include -I/usr/X11R6/include
9#CXXFLAGS = -O3 -ffast-math
10CXXFLAGS = -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: CPPFLAGS += -D__GNUWIN32__ -D_WIN32 -DWIN32 -D_WINDOWS -D_MBCS -D_USRDLL
24all_win32 clean_win32: SYSTEM=Win32-gcc
25all_win32 clean_win32: SUF=.exe
26# name of the binary - only valid for targets which set SYSTEM
27DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF)
28
29all_linux all_win32:
30 $(warning Building...)
31 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
32
33clean: clean_linux clean_win32
34 $(warning Cleaning...)
35
36clean_linux clean_win32:
37 @$(RM) $(DESTPATH)
38
39.PHONY: all all_win32 clean clean_linux clean_win32
diff --git a/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.cbp b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.cbp
new file mode 100644
index 0000000..808c0a7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.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 19 MouseAndJoystick" />
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\MouseAndJoystick" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\MouseAndJoystick" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 <Add option="-D_IRR_STATIC_LIB_" />
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/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.dev b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.dev
new file mode 100644
index 0000000..cac8418
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 04 MouseAndJoystick
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=19.MouseAndJoystick.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/19.MouseAndJoystick/MouseAndJoystick.vcproj b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.vcproj
new file mode 100644
index 0000000..84d8396
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick.vcproj
@@ -0,0 +1,162 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="19.MouseAndJoystick"
6 ProjectGUID="{FE853A36-E0D1-4AC5-A792-B643E70D2953}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/MouseAndJoystick.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/MouseAndJoystick.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/MouseAndJoystick.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/MouseAndJoystick.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 SubSystem="1"
109 TargetMachine="1"/>
110 <Tool
111 Name="VCMIDLTool"
112 TypeLibraryName=".\Release/MouseAndJoystick.tlb"
113 HeaderFileName=""/>
114 <Tool
115 Name="VCPostBuildEventTool"/>
116 <Tool
117 Name="VCPreBuildEventTool"/>
118 <Tool
119 Name="VCPreLinkEventTool"/>
120 <Tool
121 Name="VCResourceCompilerTool"
122 PreprocessorDefinitions="NDEBUG"
123 Culture="3079"/>
124 <Tool
125 Name="VCWebServiceProxyGeneratorTool"/>
126 <Tool
127 Name="VCXMLDataGeneratorTool"/>
128 <Tool
129 Name="VCWebDeploymentTool"/>
130 <Tool
131 Name="VCManagedWrapperGeneratorTool"/>
132 <Tool
133 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
134 </Configuration>
135 </Configurations>
136 <References>
137 </References>
138 <Files>
139 <File
140 RelativePath="main.cpp">
141 <FileConfiguration
142 Name="Debug|Win32">
143 <Tool
144 Name="VCCLCompilerTool"
145 Optimization="0"
146 AdditionalIncludeDirectories=""
147 PreprocessorDefinitions=""
148 BasicRuntimeChecks="3"/>
149 </FileConfiguration>
150 <FileConfiguration
151 Name="Release|Win32">
152 <Tool
153 Name="VCCLCompilerTool"
154 Optimization="2"
155 AdditionalIncludeDirectories=""
156 PreprocessorDefinitions=""/>
157 </FileConfiguration>
158 </File>
159 </Files>
160 <Globals>
161 </Globals>
162</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc10.vcxproj
new file mode 100644
index 0000000..aaa8027
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc10.vcxproj
@@ -0,0 +1,227 @@
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>19.MouseAndJoystick</ProjectName>
23 <ProjectGuid>{FE853A36-E0D1-4AC5-A792-B643E70D2953}</ProjectGuid>
24 <RootNamespace>MouseAndJoystick</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <CharacterSet>MultiByte</CharacterSet>
30 </PropertyGroup>
31 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
32 <ConfigurationType>Application</ConfigurationType>
33 <CharacterSet>MultiByte</CharacterSet>
34 </PropertyGroup>
35 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
36 <ConfigurationType>Application</ConfigurationType>
37 <CharacterSet>MultiByte</CharacterSet>
38 </PropertyGroup>
39 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
40 <ConfigurationType>Application</ConfigurationType>
41 <CharacterSet>MultiByte</CharacterSet>
42 </PropertyGroup>
43 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
44 <ImportGroup Label="ExtensionSettings">
45 </ImportGroup>
46 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
47 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
48 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
49 </ImportGroup>
50 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" 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|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 <PropertyGroup Label="UserMacros" />
63 <PropertyGroup>
64 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
65 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
66 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
67 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
68 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
74 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
75 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
76 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
77 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
78 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
79 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
80 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
81 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
82 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
83 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
84 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
85 </PropertyGroup>
86 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
87 <Midl>
88 <TypeLibraryName>.\Debug/MouseAndJoystick.tlb</TypeLibraryName>
89 <HeaderFileName>
90 </HeaderFileName>
91 </Midl>
92 <ClCompile>
93 <Optimization>Disabled</Optimization>
94 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
95 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
96 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
97 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
98 <PrecompiledHeader>
99 </PrecompiledHeader>
100 <WarningLevel>Level3</WarningLevel>
101 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
102 </ClCompile>
103 <ResourceCompile>
104 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
105 <Culture>0x0c07</Culture>
106 </ResourceCompile>
107 <Link>
108 <OutputFile>..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
109 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
110 <GenerateDebugInformation>true</GenerateDebugInformation>
111 <SubSystem>Console</SubSystem>
112 <DataExecutionPrevention>
113 </DataExecutionPrevention>
114 </Link>
115 </ItemDefinitionGroup>
116 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
117 <Midl>
118 <TypeLibraryName>.\Debug/MouseAndJoystick.tlb</TypeLibraryName>
119 <HeaderFileName>
120 </HeaderFileName>
121 </Midl>
122 <ClCompile>
123 <Optimization>Disabled</Optimization>
124 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
125 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
126 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
127 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
128 <PrecompiledHeader>
129 </PrecompiledHeader>
130 <WarningLevel>Level3</WarningLevel>
131 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
132 </ClCompile>
133 <ResourceCompile>
134 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
135 <Culture>0x0c07</Culture>
136 </ResourceCompile>
137 <Link>
138 <OutputFile>..\..\bin\Win64-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
139 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
140 <GenerateDebugInformation>true</GenerateDebugInformation>
141 <SubSystem>Console</SubSystem>
142 <DataExecutionPrevention>
143 </DataExecutionPrevention>
144 </Link>
145 </ItemDefinitionGroup>
146 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
147 <Midl>
148 <TypeLibraryName>.\Release/MouseAndJoystick.tlb</TypeLibraryName>
149 <HeaderFileName>
150 </HeaderFileName>
151 </Midl>
152 <ClCompile>
153 <Optimization>MaxSpeed</Optimization>
154 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
155 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
156 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
157 <StringPooling>true</StringPooling>
158 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
159 <FunctionLevelLinking>true</FunctionLevelLinking>
160 <PrecompiledHeader>
161 </PrecompiledHeader>
162 <WarningLevel>Level3</WarningLevel>
163 </ClCompile>
164 <ResourceCompile>
165 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
166 <Culture>0x0c07</Culture>
167 </ResourceCompile>
168 <Link>
169 <OutputFile>..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
170 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
171 <SubSystem>Console</SubSystem>
172 <DataExecutionPrevention>
173 </DataExecutionPrevention>
174 </Link>
175 </ItemDefinitionGroup>
176 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
177 <Midl>
178 <TypeLibraryName>.\Release/MouseAndJoystick.tlb</TypeLibraryName>
179 <HeaderFileName>
180 </HeaderFileName>
181 </Midl>
182 <ClCompile>
183 <Optimization>MaxSpeed</Optimization>
184 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
185 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
186 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
187 <StringPooling>true</StringPooling>
188 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
189 <FunctionLevelLinking>true</FunctionLevelLinking>
190 <PrecompiledHeader>
191 </PrecompiledHeader>
192 <WarningLevel>Level3</WarningLevel>
193 </ClCompile>
194 <ResourceCompile>
195 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
196 <Culture>0x0c07</Culture>
197 </ResourceCompile>
198 <Link>
199 <OutputFile>..\..\bin\Win64-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
200 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
201 <SubSystem>Console</SubSystem>
202 <DataExecutionPrevention>
203 </DataExecutionPrevention>
204 </Link>
205 </ItemDefinitionGroup>
206 <ItemGroup>
207 <ClCompile Include="main.cpp">
208 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
209 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
210 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
211 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
212 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
213 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
214 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
215 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
216 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
217 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
218 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
219 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
220 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
221 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
222 </ClCompile>
223 </ItemGroup>
224 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
225 <ImportGroup Label="ExtensionTargets">
226 </ImportGroup>
227</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc11.vcxproj
new file mode 100644
index 0000000..44c2b07
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc11.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>19.MouseAndJoystick</ProjectName>
23 <ProjectGuid>{FE853A36-E0D1-4AC5-A792-B643E70D2953}</ProjectGuid>
24 <RootNamespace>MouseAndJoystick</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <CharacterSet>MultiByte</CharacterSet>
30 <PlatformToolset>v110</PlatformToolset>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <CharacterSet>MultiByte</CharacterSet>
35 <PlatformToolset>v110</PlatformToolset>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <CharacterSet>MultiByte</CharacterSet>
40 <PlatformToolset>v110</PlatformToolset>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
43 <ConfigurationType>Application</ConfigurationType>
44 <CharacterSet>MultiByte</CharacterSet>
45 <PlatformToolset>v110</PlatformToolset>
46 </PropertyGroup>
47 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
48 <ImportGroup Label="ExtensionSettings">
49 </ImportGroup>
50 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/MouseAndJoystick.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug/MouseAndJoystick.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release/MouseAndJoystick.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release/MouseAndJoystick.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\19.MouseAndJoystick.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/19.MouseAndJoystick/MouseAndJoystick_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc8.vcproj
new file mode 100644
index 0000000..51b7fac
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_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="19.MouseAndJoystick_vc8"
6 ProjectGUID="{FE853A36-E0D1-4AC5-A792-B643E70D2953}"
7 RootNamespace="MouseAndJoystick_vc8"
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 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=".\Debug/MouseAndJoystick.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/MouseAndJoystick.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/MouseAndJoystick.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/MouseAndJoystick.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/MouseAndJoystick.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/MouseAndJoystick.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_vc9.vcproj
new file mode 100644
index 0000000..e121452
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/MouseAndJoystick_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="19.MouseAndJoystick_vc9"
6 ProjectGUID="{FE853A36-E0D1-4AC5-A792-B643E70D2953}"
7 RootNamespace="MouseAndJoystick_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/MouseAndJoystick.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/MouseAndJoystick.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/MouseAndJoystick.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/MouseAndJoystick.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/MouseAndJoystick.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\19.MouseAndJoystick.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/MouseAndJoystick.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/main.cpp b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/main.cpp
new file mode 100644
index 0000000..4563278
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/19.MouseAndJoystick/main.cpp
@@ -0,0 +1,285 @@
1/** Example 019 Mouse and Joystick
2
3This tutorial builds on example 04.Movement which showed how to
4handle keyboard events in Irrlicht. Here we'll handle mouse events
5and joystick events, if you have a joystick connected and a device
6that supports joysticks. These are currently Windows, Linux and SDL
7devices.
8*/
9
10#ifdef _MSC_VER
11// We'll define this to stop MSVC complaining about sprintf().
12#define _CRT_SECURE_NO_WARNINGS
13#pragma comment(lib, "Irrlicht.lib")
14#endif
15
16#include <irrlicht.h>
17#include "driverChoice.h"
18
19using namespace irr;
20
21/*
22Just as we did in example 04.Movement, we'll store the latest state of the
23mouse and the first joystick, updating them as we receive events.
24*/
25class MyEventReceiver : public IEventReceiver
26{
27public:
28 // We'll create a struct to record info on the mouse state
29 struct SMouseState
30 {
31 core::position2di Position;
32 bool LeftButtonDown;
33 SMouseState() : LeftButtonDown(false) { }
34 } MouseState;
35
36 // This is the one method that we have to implement
37 virtual bool OnEvent(const SEvent& event)
38 {
39 // Remember the mouse state
40 if (event.EventType == irr::EET_MOUSE_INPUT_EVENT)
41 {
42 switch(event.MouseInput.Event)
43 {
44 case EMIE_LMOUSE_PRESSED_DOWN:
45 MouseState.LeftButtonDown = true;
46 break;
47
48 case EMIE_LMOUSE_LEFT_UP:
49 MouseState.LeftButtonDown = false;
50 break;
51
52 case EMIE_MOUSE_MOVED:
53 MouseState.Position.X = event.MouseInput.X;
54 MouseState.Position.Y = event.MouseInput.Y;
55 break;
56
57 default:
58 // We won't use the wheel
59 break;
60 }
61 }
62
63 // The state of each connected joystick is sent to us
64 // once every run() of the Irrlicht device. Store the
65 // state of the first joystick, ignoring other joysticks.
66 // This is currently only supported on Windows and Linux.
67 if (event.EventType == irr::EET_JOYSTICK_INPUT_EVENT
68 && event.JoystickEvent.Joystick == 0)
69 {
70 JoystickState = event.JoystickEvent;
71 }
72
73 return false;
74 }
75
76 const SEvent::SJoystickEvent & GetJoystickState(void) const
77 {
78 return JoystickState;
79 }
80
81 const SMouseState & GetMouseState(void) const
82 {
83 return MouseState;
84 }
85
86
87 MyEventReceiver()
88 {
89 }
90
91private:
92 SEvent::SJoystickEvent JoystickState;
93};
94
95
96/*
97The event receiver for keeping the pressed keys is ready, the actual responses
98will be made inside the render loop, right before drawing the scene. So lets
99just create an irr::IrrlichtDevice and the scene node we want to move. We also
100create some other additional scene nodes, to show that there are also some
101different possibilities to move and animate scene nodes.
102*/
103int main()
104{
105 // ask user for driver
106 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
107 if (driverType==video::EDT_COUNT)
108 return 1;
109
110 // create device
111 MyEventReceiver receiver;
112
113 IrrlichtDevice* device = createDevice(driverType,
114 core::dimension2d<u32>(640, 480), 16, false, false, false, &receiver);
115
116 if (device == 0)
117 return 1; // could not create selected driver.
118
119
120 core::array<SJoystickInfo> joystickInfo;
121 if(device->activateJoysticks(joystickInfo))
122 {
123 std::cout << "Joystick support is enabled and " << joystickInfo.size() << " joystick(s) are present." << std::endl;
124
125 for(u32 joystick = 0; joystick < joystickInfo.size(); ++joystick)
126 {
127 std::cout << "Joystick " << joystick << ":" << std::endl;
128 std::cout << "\tName: '" << joystickInfo[joystick].Name.c_str() << "'" << std::endl;
129 std::cout << "\tAxes: " << joystickInfo[joystick].Axes << std::endl;
130 std::cout << "\tButtons: " << joystickInfo[joystick].Buttons << std::endl;
131
132 std::cout << "\tHat is: ";
133
134 switch(joystickInfo[joystick].PovHat)
135 {
136 case SJoystickInfo::POV_HAT_PRESENT:
137 std::cout << "present" << std::endl;
138 break;
139
140 case SJoystickInfo::POV_HAT_ABSENT:
141 std::cout << "absent" << std::endl;
142 break;
143
144 case SJoystickInfo::POV_HAT_UNKNOWN:
145 default:
146 std::cout << "unknown" << std::endl;
147 break;
148 }
149 }
150 }
151 else
152 {
153 std::cout << "Joystick support is not enabled." << std::endl;
154 }
155
156 core::stringw tmp = L"Irrlicht Joystick Example (";
157 tmp += joystickInfo.size();
158 tmp += " joysticks)";
159 device->setWindowCaption(tmp.c_str());
160
161 video::IVideoDriver* driver = device->getVideoDriver();
162 scene::ISceneManager* smgr = device->getSceneManager();
163
164 /*
165 We'll create an arrow mesh and move it around either with the joystick axis/hat,
166 or make it follow the mouse pointer. */
167 scene::ISceneNode * node = smgr->addMeshSceneNode(
168 smgr->addArrowMesh( "Arrow",
169 video::SColor(255, 255, 0, 0),
170 video::SColor(255, 0, 255, 0),
171 16,16,
172 2.f, 1.3f,
173 0.1f, 0.6f
174 )
175 );
176 node->setMaterialFlag(video::EMF_LIGHTING, false);
177
178 scene::ICameraSceneNode * camera = smgr->addCameraSceneNode();
179 camera->setPosition(core::vector3df(0, 0, -10));
180
181 // As in example 04, we'll use framerate independent movement.
182 u32 then = device->getTimer()->getTime();
183 const f32 MOVEMENT_SPEED = 5.f;
184
185 while(device->run())
186 {
187 // Work out a frame delta time.
188 const u32 now = device->getTimer()->getTime();
189 const f32 frameDeltaTime = (f32)(now - then) / 1000.f; // Time in seconds
190 then = now;
191
192 bool movedWithJoystick = false;
193 core::vector3df nodePosition = node->getPosition();
194
195 if(joystickInfo.size() > 0)
196 {
197 f32 moveHorizontal = 0.f; // Range is -1.f for full left to +1.f for full right
198 f32 moveVertical = 0.f; // -1.f for full down to +1.f for full up.
199
200 const SEvent::SJoystickEvent & joystickData = receiver.GetJoystickState();
201
202 // We receive the full analog range of the axes, and so have to implement our
203 // own dead zone. This is an empirical value, since some joysticks have more
204 // jitter or creep around the center point than others. We'll use 5% of the
205 // range as the dead zone, but generally you would want to give the user the
206 // option to change this.
207 const f32 DEAD_ZONE = 0.05f;
208
209 moveHorizontal =
210 (f32)joystickData.Axis[SEvent::SJoystickEvent::AXIS_X] / 32767.f;
211 if(fabs(moveHorizontal) < DEAD_ZONE)
212 moveHorizontal = 0.f;
213
214 moveVertical =
215 (f32)joystickData.Axis[SEvent::SJoystickEvent::AXIS_Y] / -32767.f;
216 if(fabs(moveVertical) < DEAD_ZONE)
217 moveVertical = 0.f;
218
219 // POV hat info is only currently supported on Windows, but the value is
220 // guaranteed to be 65535 if it's not supported, so we can check its range.
221 const u16 povDegrees = joystickData.POV / 100;
222 if(povDegrees < 360)
223 {
224 if(povDegrees > 0 && povDegrees < 180)
225 moveHorizontal = 1.f;
226 else if(povDegrees > 180)
227 moveHorizontal = -1.f;
228
229 if(povDegrees > 90 && povDegrees < 270)
230 moveVertical = -1.f;
231 else if(povDegrees > 270 || povDegrees < 90)
232 moveVertical = +1.f;
233 }
234
235 if(!core::equals(moveHorizontal, 0.f) || !core::equals(moveVertical, 0.f))
236 {
237 nodePosition.X += MOVEMENT_SPEED * frameDeltaTime * moveHorizontal;
238 nodePosition.Y += MOVEMENT_SPEED * frameDeltaTime * moveVertical;
239 movedWithJoystick = true;
240 }
241 }
242
243 // If the arrow node isn't being moved with the joystick, then have it follow the mouse cursor.
244 if(!movedWithJoystick)
245 {
246 // Create a ray through the mouse cursor.
247 core::line3df ray = smgr->getSceneCollisionManager()->getRayFromScreenCoordinates(
248 receiver.GetMouseState().Position, camera);
249
250 // And intersect the ray with a plane around the node facing towards the camera.
251 core::plane3df plane(nodePosition, core::vector3df(0, 0, -1));
252 core::vector3df mousePosition;
253 if(plane.getIntersectionWithLine(ray.start, ray.getVector(), mousePosition))
254 {
255 // We now have a mouse position in 3d space; move towards it.
256 core::vector3df toMousePosition(mousePosition - nodePosition);
257 const f32 availableMovement = MOVEMENT_SPEED * frameDeltaTime;
258
259 if(toMousePosition.getLength() <= availableMovement)
260 nodePosition = mousePosition; // Jump to the final position
261 else
262 nodePosition += toMousePosition.normalize() * availableMovement; // Move towards it
263 }
264 }
265
266 node->setPosition(nodePosition);
267
268 // Turn lighting on and off depending on whether the left mouse button is down.
269 node->setMaterialFlag(video::EMF_LIGHTING, receiver.GetMouseState().LeftButtonDown);
270
271 driver->beginScene(true, true, video::SColor(255,113,113,133));
272 smgr->drawAll(); // draw the 3d scene
273 driver->endScene();
274 }
275
276 /*
277 In the end, delete the Irrlicht device.
278 */
279 device->drop();
280
281 return 0;
282}
283
284/*
285**/
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/Makefile b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/Makefile
new file mode 100644
index 0000000..1a40866
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/Makefile
@@ -0,0 +1,39 @@
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 = 20.ManagedLights
5Sources = main.cpp
6
7# general compiler settings
8CPPFLAGS = -I../../include -I/usr/X11R6/include
9#CXXFLAGS = -O3 -ffast-math
10CXXFLAGS = -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: CPPFLAGS += -D__GNUWIN32__ -D_WIN32 -DWIN32 -D_WINDOWS -D_MBCS -D_USRDLL
24all_win32 clean_win32: SYSTEM=Win32-gcc
25all_win32 clean_win32: SUF=.exe
26# name of the binary - only valid for targets which set SYSTEM
27DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF)
28
29all_linux all_win32:
30 $(warning Building...)
31 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
32
33clean: clean_linux clean_win32
34 $(warning Cleaning...)
35
36clean_linux clean_win32:
37 @$(RM) $(DESTPATH)
38
39.PHONY: all all_win32 clean clean_linux clean_win32
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.cbp b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.cbp
new file mode 100644
index 0000000..7ec0427
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.cbp
@@ -0,0 +1,57 @@
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 20 ManagedLights" />
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\ManagedLights" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\ManagedLights" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Option projectResourceIncludeDirsRelation="1" />
28 <Compiler>
29 <Add option="-g" />
30 <Add option="-D_IRR_STATIC_LIB_" />
31 </Compiler>
32 <Linker>
33 <Add library="Xxf86vm" />
34 <Add library="Xcursor" />
35 <Add library="GL" />
36 <Add directory="..\..\lib\Linux" />
37 </Linker>
38 </Target>
39 </Build>
40 <VirtualTargets>
41 <Add alias="All" targets="Windows;Linux;" />
42 </VirtualTargets>
43 <Compiler>
44 <Add option="-g" />
45 <Add directory="..\..\include" />
46 </Compiler>
47 <Linker>
48 <Add library="Irrlicht" />
49 </Linker>
50 <Unit filename="main.cpp" />
51 <Extensions>
52 <code_completion />
53 <debugger />
54 <envvars />
55 </Extensions>
56 </Project>
57</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.dev b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.dev
new file mode 100644
index 0000000..9804fee
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 20 ManagedLights
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=20.ManagedLights.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/20.ManagedLights/ManagedLights.vcproj b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.vcproj
new file mode 100644
index 0000000..850a8d2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights.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="20.ManagedLights"
6 ProjectGUID="{16007FE2-142B-47F8-93E1-519BA3F39E71}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug/ManagedLights.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\20.ManagedLights.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug/ManagedLights.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug/ManagedLights.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release/ManagedLights.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\20.ManagedLights.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release/ManagedLights.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release/ManagedLights.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc10.vcxproj
new file mode 100644
index 0000000..0144522
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc10.vcxproj
@@ -0,0 +1,230 @@
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>20.ManagedLights</ProjectName>
23 <ProjectGuid>{16007FE2-142B-47F8-93E1-519BA3F39E71}</ProjectGuid>
24 <RootNamespace>ManagedLights</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <CharacterSet>MultiByte</CharacterSet>
30 </PropertyGroup>
31 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
32 <ConfigurationType>Application</ConfigurationType>
33 <CharacterSet>MultiByte</CharacterSet>
34 </PropertyGroup>
35 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
36 <ConfigurationType>Application</ConfigurationType>
37 <CharacterSet>MultiByte</CharacterSet>
38 </PropertyGroup>
39 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
40 <ConfigurationType>Application</ConfigurationType>
41 <CharacterSet>MultiByte</CharacterSet>
42 </PropertyGroup>
43 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
44 <ImportGroup Label="ExtensionSettings">
45 </ImportGroup>
46 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
47 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
48 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
49 </ImportGroup>
50 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" 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|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 <PropertyGroup Label="UserMacros" />
63 <PropertyGroup>
64 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
65 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
66 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
67 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
68 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
74 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
75 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
76 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
77 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
78 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
79 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
80 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
81 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
82 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
83 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
84 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
85 </PropertyGroup>
86 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
87 <Midl>
88 <TypeLibraryName>.\Debug/ManagedLights.tlb</TypeLibraryName>
89 <HeaderFileName>
90 </HeaderFileName>
91 </Midl>
92 <ClCompile>
93 <Optimization>Disabled</Optimization>
94 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
95 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
96 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
97 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
98 <PrecompiledHeader>
99 </PrecompiledHeader>
100 <WarningLevel>Level3</WarningLevel>
101 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
102 </ClCompile>
103 <ResourceCompile>
104 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
105 <Culture>0x0c07</Culture>
106 </ResourceCompile>
107 <Link>
108 <AdditionalDependencies>..\..\Lib\Win32-visualstudio\Irrlicht.lib;%(AdditionalDependencies)</AdditionalDependencies>
109 <OutputFile>..\..\bin\Win32-VisualStudio\20.ManagedLights.exe</OutputFile>
110 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
111 <GenerateDebugInformation>true</GenerateDebugInformation>
112 <SubSystem>Console</SubSystem>
113 <DataExecutionPrevention>
114 </DataExecutionPrevention>
115 </Link>
116 </ItemDefinitionGroup>
117 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
118 <Midl>
119 <TypeLibraryName>.\Debug/ManagedLights.tlb</TypeLibraryName>
120 <HeaderFileName>
121 </HeaderFileName>
122 </Midl>
123 <ClCompile>
124 <Optimization>Disabled</Optimization>
125 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
126 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
127 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
128 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
129 <PrecompiledHeader>
130 </PrecompiledHeader>
131 <WarningLevel>Level3</WarningLevel>
132 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
133 </ClCompile>
134 <ResourceCompile>
135 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
136 <Culture>0x0c07</Culture>
137 </ResourceCompile>
138 <Link>
139 <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
140 <OutputFile>..\..\bin\Win64-VisualStudio\20.ManagedLights.exe</OutputFile>
141 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
142 <GenerateDebugInformation>true</GenerateDebugInformation>
143 <SubSystem>Console</SubSystem>
144 <DataExecutionPrevention>
145 </DataExecutionPrevention>
146 </Link>
147 </ItemDefinitionGroup>
148 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
149 <Midl>
150 <TypeLibraryName>.\Release/ManagedLights.tlb</TypeLibraryName>
151 <HeaderFileName>
152 </HeaderFileName>
153 </Midl>
154 <ClCompile>
155 <Optimization>MaxSpeed</Optimization>
156 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
157 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
158 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
159 <StringPooling>true</StringPooling>
160 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
161 <FunctionLevelLinking>true</FunctionLevelLinking>
162 <PrecompiledHeader>
163 </PrecompiledHeader>
164 <WarningLevel>Level3</WarningLevel>
165 </ClCompile>
166 <ResourceCompile>
167 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
168 <Culture>0x0c07</Culture>
169 </ResourceCompile>
170 <Link>
171 <OutputFile>..\..\bin\Win32-VisualStudio\20.ManagedLights.exe</OutputFile>
172 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
173 <SubSystem>Console</SubSystem>
174 <DataExecutionPrevention>
175 </DataExecutionPrevention>
176 </Link>
177 </ItemDefinitionGroup>
178 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
179 <Midl>
180 <TypeLibraryName>.\Release/ManagedLights.tlb</TypeLibraryName>
181 <HeaderFileName>
182 </HeaderFileName>
183 </Midl>
184 <ClCompile>
185 <Optimization>MaxSpeed</Optimization>
186 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
187 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
188 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
189 <StringPooling>true</StringPooling>
190 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
191 <FunctionLevelLinking>true</FunctionLevelLinking>
192 <PrecompiledHeader>
193 </PrecompiledHeader>
194 <WarningLevel>Level3</WarningLevel>
195 </ClCompile>
196 <ResourceCompile>
197 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
198 <Culture>0x0c07</Culture>
199 </ResourceCompile>
200 <Link>
201 <OutputFile>..\..\bin\Win64-VisualStudio\20.ManagedLights.exe</OutputFile>
202 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
203 <SubSystem>Console</SubSystem>
204 <DataExecutionPrevention>
205 </DataExecutionPrevention>
206 <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
207 </Link>
208 </ItemDefinitionGroup>
209 <ItemGroup>
210 <ClCompile Include="main.cpp">
211 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
212 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
213 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
214 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
215 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
216 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
217 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
218 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
219 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
220 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
221 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
222 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
223 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
224 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
225 </ClCompile>
226 </ItemGroup>
227 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
228 <ImportGroup Label="ExtensionTargets">
229 </ImportGroup>
230</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc11.vcxproj
new file mode 100644
index 0000000..7a86129
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc11.vcxproj
@@ -0,0 +1,234 @@
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>20.ManagedLights</ProjectName>
23 <ProjectGuid>{16007FE2-142B-47F8-93E1-519BA3F39E71}</ProjectGuid>
24 <RootNamespace>ManagedLights</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <CharacterSet>MultiByte</CharacterSet>
30 <PlatformToolset>v110</PlatformToolset>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <CharacterSet>MultiByte</CharacterSet>
35 <PlatformToolset>v110</PlatformToolset>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <CharacterSet>MultiByte</CharacterSet>
40 <PlatformToolset>v110</PlatformToolset>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
43 <ConfigurationType>Application</ConfigurationType>
44 <CharacterSet>MultiByte</CharacterSet>
45 <PlatformToolset>v110</PlatformToolset>
46 </PropertyGroup>
47 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
48 <ImportGroup Label="ExtensionSettings">
49 </ImportGroup>
50 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug/ManagedLights.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <AdditionalDependencies>..\..\Lib\Win32-visualstudio\Irrlicht.lib;%(AdditionalDependencies)</AdditionalDependencies>
113 <OutputFile>..\..\bin\Win32-VisualStudio\20.ManagedLights.exe</OutputFile>
114 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
115 <GenerateDebugInformation>true</GenerateDebugInformation>
116 <SubSystem>Console</SubSystem>
117 <DataExecutionPrevention>
118 </DataExecutionPrevention>
119 </Link>
120 </ItemDefinitionGroup>
121 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
122 <Midl>
123 <TypeLibraryName>.\Debug/ManagedLights.tlb</TypeLibraryName>
124 <HeaderFileName>
125 </HeaderFileName>
126 </Midl>
127 <ClCompile>
128 <Optimization>Disabled</Optimization>
129 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
130 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
131 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
132 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
133 <PrecompiledHeader>
134 </PrecompiledHeader>
135 <WarningLevel>Level3</WarningLevel>
136 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
137 </ClCompile>
138 <ResourceCompile>
139 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
140 <Culture>0x0c07</Culture>
141 </ResourceCompile>
142 <Link>
143 <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
144 <OutputFile>..\..\bin\Win64-VisualStudio\20.ManagedLights.exe</OutputFile>
145 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
146 <GenerateDebugInformation>true</GenerateDebugInformation>
147 <SubSystem>Console</SubSystem>
148 <DataExecutionPrevention>
149 </DataExecutionPrevention>
150 </Link>
151 </ItemDefinitionGroup>
152 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
153 <Midl>
154 <TypeLibraryName>.\Release/ManagedLights.tlb</TypeLibraryName>
155 <HeaderFileName>
156 </HeaderFileName>
157 </Midl>
158 <ClCompile>
159 <Optimization>MaxSpeed</Optimization>
160 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
161 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
162 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
163 <StringPooling>true</StringPooling>
164 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
165 <FunctionLevelLinking>true</FunctionLevelLinking>
166 <PrecompiledHeader>
167 </PrecompiledHeader>
168 <WarningLevel>Level3</WarningLevel>
169 </ClCompile>
170 <ResourceCompile>
171 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
172 <Culture>0x0c07</Culture>
173 </ResourceCompile>
174 <Link>
175 <OutputFile>..\..\bin\Win32-VisualStudio\20.ManagedLights.exe</OutputFile>
176 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
177 <SubSystem>Console</SubSystem>
178 <DataExecutionPrevention>
179 </DataExecutionPrevention>
180 </Link>
181 </ItemDefinitionGroup>
182 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
183 <Midl>
184 <TypeLibraryName>.\Release/ManagedLights.tlb</TypeLibraryName>
185 <HeaderFileName>
186 </HeaderFileName>
187 </Midl>
188 <ClCompile>
189 <Optimization>MaxSpeed</Optimization>
190 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
191 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
192 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
193 <StringPooling>true</StringPooling>
194 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
195 <FunctionLevelLinking>true</FunctionLevelLinking>
196 <PrecompiledHeader>
197 </PrecompiledHeader>
198 <WarningLevel>Level3</WarningLevel>
199 </ClCompile>
200 <ResourceCompile>
201 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
202 <Culture>0x0c07</Culture>
203 </ResourceCompile>
204 <Link>
205 <OutputFile>..\..\bin\Win64-VisualStudio\20.ManagedLights.exe</OutputFile>
206 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
207 <SubSystem>Console</SubSystem>
208 <DataExecutionPrevention>
209 </DataExecutionPrevention>
210 <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
211 </Link>
212 </ItemDefinitionGroup>
213 <ItemGroup>
214 <ClCompile Include="main.cpp">
215 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
216 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
217 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
218 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
219 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
220 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
221 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
222 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
223 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
224 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
225 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
226 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
227 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
228 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
229 </ClCompile>
230 </ItemGroup>
231 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
232 <ImportGroup Label="ExtensionTargets">
233 </ImportGroup>
234</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc8.vcproj
new file mode 100644
index 0000000..2f37f63
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_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="20.ManagedLights_vc8"
6 ProjectGUID="{16007FE2-142B-47F8-93E1-519BA3F39E71}"
7 RootNamespace="ManagedLights_vc8"
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 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=".\Debug/ManagedLights.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/ManagedLights.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\20.ManagedLights.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug/ManagedLights.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release/ManagedLights.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/ManagedLights.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\20.ManagedLights.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release/ManagedLights.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc9.vcproj
new file mode 100644
index 0000000..736faa6
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/ManagedLights_vc9.vcproj
@@ -0,0 +1,231 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9.00"
5 Name="20.ManagedLights_vc9"
6 ProjectGUID="{16007FE2-142B-47F8-93E1-519BA3F39E71}"
7 RootNamespace="ManagedLights_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug/ManagedLights.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug/ManagedLights.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 AdditionalDependencies="..\..\Lib\Win32-visualstudio\Irrlicht.lib"
76 OutputFile="..\..\bin\Win32-VisualStudio\20.ManagedLights.exe"
77 LinkIncremental="0"
78 SuppressStartupBanner="true"
79 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
80 GenerateDebugInformation="true"
81 ProgramDatabaseFile=".\Debug/ManagedLights.pdb"
82 SubSystem="1"
83 RandomizedBaseAddress="1"
84 DataExecutionPrevention="0"
85 TargetMachine="1"
86 />
87 <Tool
88 Name="VCALinkTool"
89 />
90 <Tool
91 Name="VCManifestTool"
92 />
93 <Tool
94 Name="VCXDCMakeTool"
95 />
96 <Tool
97 Name="VCBscMakeTool"
98 />
99 <Tool
100 Name="VCFxCopTool"
101 />
102 <Tool
103 Name="VCAppVerifierTool"
104 />
105 <Tool
106 Name="VCPostBuildEventTool"
107 />
108 </Configuration>
109 <Configuration
110 Name="Release|Win32"
111 OutputDirectory=".\Release"
112 IntermediateDirectory=".\Release"
113 ConfigurationType="1"
114 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
115 UseOfMFC="0"
116 ATLMinimizesCRunTimeLibraryUsage="false"
117 CharacterSet="2"
118 >
119 <Tool
120 Name="VCPreBuildEventTool"
121 />
122 <Tool
123 Name="VCCustomBuildTool"
124 />
125 <Tool
126 Name="VCXMLDataGeneratorTool"
127 />
128 <Tool
129 Name="VCWebServiceProxyGeneratorTool"
130 />
131 <Tool
132 Name="VCMIDLTool"
133 TypeLibraryName=".\Release/ManagedLights.tlb"
134 HeaderFileName=""
135 />
136 <Tool
137 Name="VCCLCompilerTool"
138 Optimization="2"
139 InlineFunctionExpansion="1"
140 AdditionalIncludeDirectories="..\..\include"
141 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
142 StringPooling="true"
143 RuntimeLibrary="0"
144 EnableFunctionLevelLinking="true"
145 UsePrecompiledHeader="0"
146 PrecompiledHeaderFile=".\Release/ManagedLights.pch"
147 AssemblerListingLocation=".\Release/"
148 ObjectFile=".\Release/"
149 ProgramDataBaseFileName=".\Release/"
150 WarningLevel="3"
151 SuppressStartupBanner="true"
152 CompileAs="0"
153 />
154 <Tool
155 Name="VCManagedResourceCompilerTool"
156 />
157 <Tool
158 Name="VCResourceCompilerTool"
159 PreprocessorDefinitions="NDEBUG"
160 Culture="3079"
161 />
162 <Tool
163 Name="VCPreLinkEventTool"
164 />
165 <Tool
166 Name="VCLinkerTool"
167 OutputFile="..\..\bin\Win32-VisualStudio\20.ManagedLights.exe"
168 LinkIncremental="0"
169 SuppressStartupBanner="true"
170 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
171 ProgramDatabaseFile=".\Release/ManagedLights.pdb"
172 SubSystem="1"
173 RandomizedBaseAddress="1"
174 DataExecutionPrevention="0"
175 TargetMachine="1"
176 />
177 <Tool
178 Name="VCALinkTool"
179 />
180 <Tool
181 Name="VCManifestTool"
182 />
183 <Tool
184 Name="VCXDCMakeTool"
185 />
186 <Tool
187 Name="VCBscMakeTool"
188 />
189 <Tool
190 Name="VCFxCopTool"
191 />
192 <Tool
193 Name="VCAppVerifierTool"
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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/20.ManagedLights/main.cpp b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/main.cpp
new file mode 100644
index 0000000..f67337a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/20.ManagedLights/main.cpp
@@ -0,0 +1,386 @@
1/** Example 020 Managed Lights
2
3Written by Colin MacDonald. This tutorial explains the use of the Light Manager
4of Irrlicht. It enables the use of more dynamic light sources than the actual
5hardware supports. Further applications of the Light Manager, such as per scene
6node callbacks, are left out for simplicity of the example.
7*/
8
9#include <irrlicht.h>
10#include "driverChoice.h"
11
12using namespace irr;
13using namespace core;
14
15#if defined(_MSC_VER)
16#pragma comment(lib, "Irrlicht.lib")
17#endif // MSC_VER
18
19/*
20 Normally, you are limited to 8 dynamic lights per scene: this is a hardware limit. If you
21 want to use more dynamic lights in your scene, then you can register an optional light
22 manager that allows you to to turn lights on and off at specific point during rendering.
23 You are still limited to 8 lights, but the limit is per scene node.
24
25 This is completely optional: if you do not register a light manager, then a default
26 distance-based scheme will be used to prioritise hardware lights based on their distance
27 from the active camera.
28
29 NO_MANAGEMENT disables the light manager and shows Irrlicht's default light behaviour.
30 The 8 lights nearest to the camera will be turned on, and other lights will be turned off.
31 In this example, this produces a funky looking but incoherent light display.
32
33 LIGHTS_NEAREST_NODE shows an implementation that turns on a limited number of lights
34 per mesh scene node. If finds the 3 lights that are nearest to the node being rendered,
35 and turns them on, turning all other lights off. This works, but as it operates on every
36 light for every node, it does not scale well with many lights. The flickering you can see
37 in this demo is due to the lights swapping their relative positions from the cubes
38 (a deliberate demonstration of the limitations of this technique).
39
40 LIGHTS_IN_ZONE shows a technique for turning on lights based on a 'zone'. Each empty scene
41 node is considered to be the parent of a zone. When nodes are rendered, they turn off all
42 lights, then find their parent 'zone' and turn on all lights that are inside that zone, i.e.
43 are descendents of it in the scene graph. This produces true 'local' lighting for each cube
44 in this example. You could use a similar technique to locally light all meshes in (e.g.)
45 a room, without the lights spilling out to other rooms.
46
47 This light manager is also an event receiver; this is purely for simplicity in this example,
48 it's neither necessary nor recommended for a real application.
49*/
50class CMyLightManager : public scene::ILightManager, public IEventReceiver
51{
52 typedef enum
53 {
54 NO_MANAGEMENT,
55 LIGHTS_NEAREST_NODE,
56 LIGHTS_IN_ZONE
57 }
58 LightManagementMode;
59
60 LightManagementMode Mode;
61 LightManagementMode RequestedMode;
62
63 // These data represent the state information that this light manager
64 // is interested in.
65 scene::ISceneManager * SceneManager;
66 core::array<scene::ISceneNode*> * SceneLightList;
67 scene::E_SCENE_NODE_RENDER_PASS CurrentRenderPass;
68 scene::ISceneNode * CurrentSceneNode;
69
70public:
71 CMyLightManager(scene::ISceneManager* sceneManager)
72 : Mode(NO_MANAGEMENT), RequestedMode(NO_MANAGEMENT),
73 SceneManager(sceneManager), SceneLightList(0),
74 CurrentRenderPass(scene::ESNRP_NONE), CurrentSceneNode(0)
75 { }
76
77 // The input receiver interface, which just switches light management strategy
78 bool OnEvent(const SEvent & event)
79 {
80 bool handled = false;
81
82 if (event.EventType == irr::EET_KEY_INPUT_EVENT && event.KeyInput.PressedDown)
83 {
84 handled = true;
85 switch(event.KeyInput.Key)
86 {
87 case irr::KEY_KEY_1:
88 RequestedMode = NO_MANAGEMENT;
89 break;
90 case irr::KEY_KEY_2:
91 RequestedMode = LIGHTS_NEAREST_NODE;
92 break;
93 case irr::KEY_KEY_3:
94 RequestedMode = LIGHTS_IN_ZONE;
95 break;
96 default:
97 handled = false;
98 break;
99 }
100
101 if(NO_MANAGEMENT == RequestedMode)
102 SceneManager->setLightManager(0); // Show that it's safe to register the light manager
103 else
104 SceneManager->setLightManager(this);
105 }
106
107 return handled;
108 }
109
110
111 // This is called before the first scene node is rendered.
112 virtual void OnPreRender(core::array<scene::ISceneNode*> & lightList)
113 {
114 // Update the mode; changing it here ensures that it's consistent throughout a render
115 Mode = RequestedMode;
116
117 // Store the light list. I am free to alter this list until the end of OnPostRender().
118 SceneLightList = &lightList;
119 }
120
121 // Called after the last scene node is rendered.
122 virtual void OnPostRender()
123 {
124 // Since light management might be switched off in the event handler, we'll turn all
125 // lights on to ensure that they are in a consistent state. You wouldn't normally have
126 // to do this when using a light manager, since you'd continue to do light management
127 // yourself.
128 for (u32 i = 0; i < SceneLightList->size(); i++)
129 (*SceneLightList)[i]->setVisible(true);
130 }
131
132 virtual void OnRenderPassPreRender(scene::E_SCENE_NODE_RENDER_PASS renderPass)
133 {
134 // I don't have to do anything here except remember which render pass I am in.
135 CurrentRenderPass = renderPass;
136 }
137
138 virtual void OnRenderPassPostRender(scene::E_SCENE_NODE_RENDER_PASS renderPass)
139 {
140 // I only want solid nodes to be lit, so after the solid pass, turn all lights off.
141 if (scene::ESNRP_SOLID == renderPass)
142 {
143 for (u32 i = 0; i < SceneLightList->size(); ++i)
144 (*SceneLightList)[i]->setVisible(false);
145 }
146 }
147
148 // This is called before the specified scene node is rendered
149 virtual void OnNodePreRender(scene::ISceneNode* node)
150 {
151 CurrentSceneNode = node;
152
153 // This light manager only considers solid objects, but you are free to manipulate
154 // lights during any phase, depending on your requirements.
155 if (scene::ESNRP_SOLID != CurrentRenderPass)
156 return;
157
158 // And in fact for this example, I only want to consider lighting for cube scene
159 // nodes. You will probably want to deal with lighting for (at least) mesh /
160 // animated mesh scene nodes as well.
161 if (node->getType() != scene::ESNT_CUBE)
162 return;
163
164 if (LIGHTS_NEAREST_NODE == Mode)
165 {
166 // This is a naive implementation that prioritises every light in the scene
167 // by its proximity to the node being rendered. This produces some flickering
168 // when lights orbit closer to a cube than its 'zone' lights.
169 const vector3df nodePosition = node->getAbsolutePosition();
170
171 // Sort the light list by prioritising them based on their distance from the node
172 // that's about to be rendered.
173 array<LightDistanceElement> sortingArray;
174 sortingArray.reallocate(SceneLightList->size());
175
176 u32 i;
177 for(i = 0; i < SceneLightList->size(); ++i)
178 {
179 scene::ISceneNode* lightNode = (*SceneLightList)[i];
180 const f64 distance = lightNode->getAbsolutePosition().getDistanceFromSQ(nodePosition);
181 sortingArray.push_back(LightDistanceElement(lightNode, distance));
182 }
183
184 sortingArray.sort();
185
186 // The list is now sorted by proximity to the node.
187 // Turn on the three nearest lights, and turn the others off.
188 for(i = 0; i < sortingArray.size(); ++i)
189 sortingArray[i].node->setVisible(i < 3);
190 }
191 else if(LIGHTS_IN_ZONE == Mode)
192 {
193 // Empty scene nodes are used to represent 'zones'. For each solid mesh that
194 // is being rendered, turn off all lights, then find its 'zone' parent, and turn
195 // on all lights that are found under that node in the scene graph.
196 // This is a general purpose algorithm that doesn't use any special
197 // knowledge of how this particular scene graph is organised.
198 for (u32 i = 0; i < SceneLightList->size(); ++i)
199 {
200 if ((*SceneLightList)[i]->getType() != scene::ESNT_LIGHT)
201 continue;
202 scene::ILightSceneNode* lightNode = static_cast<scene::ILightSceneNode*>((*SceneLightList)[i]);
203 video::SLight & lightData = lightNode->getLightData();
204
205 if (video::ELT_DIRECTIONAL != lightData.Type)
206 lightNode->setVisible(false);
207 }
208
209 scene::ISceneNode * parentZone = findZone(node);
210 if (parentZone)
211 turnOnZoneLights(parentZone);
212 }
213 }
214
215 // Called after the specified scene node is rendered
216 virtual void OnNodePostRender(scene::ISceneNode* node)
217 {
218 // I don't need to do any light management after individual node rendering.
219 }
220
221private:
222
223 // Find the empty scene node that is the parent of the specified node
224 scene::ISceneNode * findZone(scene::ISceneNode * node)
225 {
226 if (!node)
227 return 0;
228
229 if (node->getType() == scene::ESNT_EMPTY)
230 return node;
231
232 return findZone(node->getParent());
233 }
234
235 // Turn on all lights that are children (directly or indirectly) of the
236 // specified scene node.
237 void turnOnZoneLights(scene::ISceneNode * node)
238 {
239 core::list<scene::ISceneNode*> const & children = node->getChildren();
240 for (core::list<scene::ISceneNode*>::ConstIterator child = children.begin();
241 child != children.end(); ++child)
242 {
243 if ((*child)->getType() == scene::ESNT_LIGHT)
244 (*child)->setVisible(true);
245 else // Assume that lights don't have any children that are also lights
246 turnOnZoneLights(*child);
247 }
248 }
249
250
251 // A utility class to aid in sorting scene nodes into a distance order
252 class LightDistanceElement
253 {
254 public:
255 LightDistanceElement() {};
256
257 LightDistanceElement(scene::ISceneNode* n, f64 d)
258 : node(n), distance(d) { }
259
260 scene::ISceneNode* node;
261 f64 distance;
262
263 // Lower distance elements are sorted to the start of the array
264 bool operator < (const LightDistanceElement& other) const
265 {
266 return (distance < other.distance);
267 }
268 };
269};
270
271
272/*
273*/
274int main(int argumentCount, char * argumentValues[])
275{
276 // ask user for driver
277 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
278 if (driverType==video::EDT_COUNT)
279 return 1;
280
281 IrrlichtDevice *device = createDevice(driverType,
282 dimension2d<u32>(640, 480), 32);
283
284 if(!device)
285 return -1;
286
287 f32 const lightRadius = 60.f; // Enough to reach the far side of each 'zone'
288
289 video::IVideoDriver* driver = device->getVideoDriver();
290 scene::ISceneManager* smgr = device->getSceneManager();
291 gui::IGUIEnvironment* guienv = device->getGUIEnvironment();
292
293 gui::IGUISkin* skin = guienv->getSkin();
294 if (skin)
295 {
296 skin->setColor(gui::EGDC_BUTTON_TEXT, video::SColor(255, 255, 255, 255));
297 gui::IGUIFont* font = guienv->getFont("../../media/fontlucida.png");
298 if(font)
299 skin->setFont(font);
300 }
301
302 guienv->addStaticText(L"1 - No light management", core::rect<s32>(10,10,200,30));
303 guienv->addStaticText(L"2 - Closest 3 lights", core::rect<s32>(10,30,200,50));
304 guienv->addStaticText(L"3 - Lights in zone", core::rect<s32>(10,50,200,70));
305
306/*
307Add several "zones". You could use this technique to light individual rooms, for example.
308*/
309 for(f32 zoneX = -100.f; zoneX <= 100.f; zoneX += 50.f)
310 for(f32 zoneY = -60.f; zoneY <= 60.f; zoneY += 60.f)
311 {
312 // Start with an empty scene node, which we will use to represent a zone.
313 scene::ISceneNode * zoneRoot = smgr->addEmptySceneNode();
314 zoneRoot->setPosition(vector3df(zoneX, zoneY, 0));
315
316 // Each zone contains a rotating cube
317 scene::IMeshSceneNode * node = smgr->addCubeSceneNode(15, zoneRoot);
318 scene::ISceneNodeAnimator * rotation = smgr->createRotationAnimator(vector3df(0.25f, 0.5f, 0.75f));
319 node->addAnimator(rotation);
320 rotation->drop();
321
322 // And each cube has three lights attached to it. The lights are attached to billboards so
323 // that we can see where they are. The billboards are attached to the cube, so that the
324 // lights are indirect descendents of the same empty scene node as the cube.
325 scene::IBillboardSceneNode * billboard = smgr->addBillboardSceneNode(node);
326 billboard->setPosition(vector3df(0, -14, 30));
327 billboard->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR );
328 billboard->setMaterialTexture(0, driver->getTexture("../../media/particle.bmp"));
329 billboard->setMaterialFlag(video::EMF_LIGHTING, false);
330 smgr->addLightSceneNode(billboard, vector3df(0, 0, 0), video::SColorf(1, 0, 0), lightRadius);
331
332 billboard = smgr->addBillboardSceneNode(node);
333 billboard->setPosition(vector3df(-21, -14, -21));
334 billboard->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR );
335 billboard->setMaterialTexture(0, driver->getTexture("../../media/particle.bmp"));
336 billboard->setMaterialFlag(video::EMF_LIGHTING, false);
337 smgr->addLightSceneNode(billboard, vector3df(0, 0, 0), video::SColorf(0, 1, 0), lightRadius);
338
339 billboard = smgr->addBillboardSceneNode(node);
340 billboard->setPosition(vector3df(21, -14, -21));
341 billboard->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR );
342 billboard->setMaterialTexture(0, driver->getTexture("../../media/particle.bmp"));
343 billboard->setMaterialFlag(video::EMF_LIGHTING, false);
344 smgr->addLightSceneNode(billboard, vector3df(0, 0, 0), video::SColorf(0, 0, 1), lightRadius);
345
346 // Each cube also has a smaller cube rotating around it, to show that the cubes are being
347 // lit by the lights in their 'zone', not just lights that are their direct children.
348 node = smgr->addCubeSceneNode(5, node);
349 node->setPosition(vector3df(0, 21, 0));
350 }
351
352 smgr->addCameraSceneNode(0, vector3df(0,0,-130), vector3df(0,0,0));
353
354 CMyLightManager * myLightManager = new CMyLightManager(smgr);
355 smgr->setLightManager(0); // This is the default: we won't do light management until told to do it.
356 device->setEventReceiver(myLightManager);
357
358 int lastFps = -1;
359
360 while(device->run())
361 {
362 driver->beginScene(true, true, video::SColor(255,100,101,140));
363 smgr->drawAll();
364 guienv->drawAll();
365 driver->endScene();
366
367 int fps = driver->getFPS();
368 if(fps != lastFps)
369 {
370 lastFps = fps;
371 core::stringw str = L"Managed Lights [";
372 str += driver->getName();
373 str += "] FPS:";
374 str += fps;
375 device->setWindowCaption(str.c_str());
376 }
377 }
378
379 myLightManager->drop(); // Drop my implicit reference
380 device->drop();
381 return 0;
382}
383
384/*
385**/
386
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Makefile b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Makefile
new file mode 100644
index 0000000..b2c6927
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/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 = 21.Quake3Explorer
5Sources = main.cpp sound.cpp q3factory.cpp
6
7# general compiler settings
8CPPFLAGS = -I../../include -I/usr/X11R6/include
9#CXXFLAGS = -O3 -ffast-math
10CXXFLAGS = -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/21.Quake3Explorer/Quake3Explorer.cbp b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.cbp
new file mode 100644
index 0000000..af962e2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.cbp
@@ -0,0 +1,59 @@
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 21 Quake 3 Explorer" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Linux">
10 <Option platforms="Unix;" />
11 <Option output="..\..\bin\Linux\Quake3Explorer" prefix_auto="0" extension_auto="0" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Compiler>
15 <Add option="-g" />
16 <Add option="-D_IRR_STATIC_LIB_" />
17 </Compiler>
18 <Linker>
19 <Add library="Xxf86vm" />
20 <Add library="Xcursor" />
21 <Add library="GL" />
22 <Add directory="..\..\lib\Linux" />
23 </Linker>
24 </Target>
25 <Target title="Windows">
26 <Option platforms="Windows;" />
27 <Option output="..\..\bin\Win32-gcc\Quake3Explorer" prefix_auto="0" extension_auto="1" />
28 <Option type="1" />
29 <Option compiler="gcc" />
30 <Compiler>
31 <Add option="-g" />
32 </Compiler>
33 <Linker>
34 <Add directory="..\..\lib\Win32-gcc" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Unit filename="q3factory.cpp" />
50 <Unit filename="q3factory.h" />
51 <Unit filename="sound.cpp" />
52 <Unit filename="sound.h" />
53 <Extensions>
54 <code_completion />
55 <debugger />
56 <envvars />
57 </Extensions>
58 </Project>
59</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.dev b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.dev
new file mode 100644
index 0000000..193c6bd
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.dev
@@ -0,0 +1,99 @@
1[Project]
2FileName=Quake3Explorer.dev
3Name=Irrlicht Example 21 Quake3 Explorer
4UnitCount=5
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=21.Quake3Explorer.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
60[Unit2]
61FileName=q3factory.cpp
62CompileCpp=1
63Folder=Irrlicht Example 21 Quake3 Explorer
64Compile=1
65Link=1
66Priority=1000
67OverrideBuildCmd=0
68BuildCmd=
69
70[Unit3]
71FileName=q3factory.h
72CompileCpp=1
73Folder=Irrlicht Example 21 Quake3 Explorer
74Compile=1
75Link=1
76Priority=1000
77OverrideBuildCmd=0
78BuildCmd=
79
80[Unit4]
81FileName=sound.cpp
82CompileCpp=1
83Folder=Irrlicht Example 21 Quake3 Explorer
84Compile=1
85Link=1
86Priority=1000
87OverrideBuildCmd=0
88BuildCmd=
89
90[Unit5]
91FileName=sound.h
92CompileCpp=1
93Folder=Irrlicht Example 21 Quake3 Explorer
94Compile=1
95Link=1
96Priority=1000
97OverrideBuildCmd=0
98BuildCmd=
99
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.vcproj b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.vcproj
new file mode 100644
index 0000000..b869cc4
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer.vcproj
@@ -0,0 +1,132 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="21.Quake3Explorer"
6 ProjectGUID="{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
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\21.Quake3MapExplorer.exe"
36 LinkIncremental="1"
37 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
38 GenerateDebugInformation="TRUE"
39 ProgramDatabaseFile="$(OutDir)/Quake3MapShader.pdb"
40 SubSystem="1"
41 TargetMachine="1"/>
42 <Tool
43 Name="VCMIDLTool"/>
44 <Tool
45 Name="VCPostBuildEventTool"/>
46 <Tool
47 Name="VCPreBuildEventTool"/>
48 <Tool
49 Name="VCPreLinkEventTool"/>
50 <Tool
51 Name="VCResourceCompilerTool"/>
52 <Tool
53 Name="VCWebServiceProxyGeneratorTool"/>
54 <Tool
55 Name="VCXMLDataGeneratorTool"/>
56 <Tool
57 Name="VCWebDeploymentTool"/>
58 <Tool
59 Name="VCManagedWrapperGeneratorTool"/>
60 <Tool
61 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
62 </Configuration>
63 <Configuration
64 Name="Release|Win32"
65 OutputDirectory="Release"
66 IntermediateDirectory="Release"
67 ConfigurationType="1"
68 CharacterSet="2"
69 WholeProgramOptimization="TRUE">
70 <Tool
71 Name="VCCLCompilerTool"
72 AdditionalOptions="/QIfist /Oa"
73 Optimization="3"
74 GlobalOptimizations="TRUE"
75 InlineFunctionExpansion="2"
76 EnableIntrinsicFunctions="TRUE"
77 FavorSizeOrSpeed="1"
78 OmitFramePointers="TRUE"
79 AdditionalIncludeDirectories="..\..\include"
80 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
81 RuntimeLibrary="4"
82 BufferSecurityCheck="FALSE"
83 UsePrecompiledHeader="0"
84 WarningLevel="3"
85 Detect64BitPortabilityProblems="TRUE"
86 DebugInformationFormat="0"
87 CallingConvention="1"/>
88 <Tool
89 Name="VCCustomBuildTool"/>
90 <Tool
91 Name="VCLinkerTool"
92 OutputFile="..\..\bin\Win32-VisualStudio\21.Quake3MapExplorer.exe"
93 LinkIncremental="1"
94 SuppressStartupBanner="TRUE"
95 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
96 GenerateDebugInformation="FALSE"
97 SubSystem="1"
98 OptimizeReferences="2"
99 EnableCOMDATFolding="2"
100 TargetMachine="1"/>
101 <Tool
102 Name="VCMIDLTool"/>
103 <Tool
104 Name="VCPostBuildEventTool"/>
105 <Tool
106 Name="VCPreBuildEventTool"/>
107 <Tool
108 Name="VCPreLinkEventTool"/>
109 <Tool
110 Name="VCResourceCompilerTool"/>
111 <Tool
112 Name="VCWebServiceProxyGeneratorTool"/>
113 <Tool
114 Name="VCXMLDataGeneratorTool"/>
115 <Tool
116 Name="VCWebDeploymentTool"/>
117 <Tool
118 Name="VCManagedWrapperGeneratorTool"/>
119 <Tool
120 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
121 </Configuration>
122 </Configurations>
123 <References>
124 </References>
125 <Files>
126 <File
127 RelativePath=".\main.cpp">
128 </File>
129 </Files>
130 <Globals>
131 </Globals>
132</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc10.vcxproj
new file mode 100644
index 0000000..8ba3e72
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc10.vcxproj
@@ -0,0 +1,196 @@
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>21.Quake3Explorer</ProjectName>
23 <ProjectGuid>{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}</ProjectGuid>
24 <RootNamespace>21.Quake3Explorer</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'">false</LinkIncremental>
73 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
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 </ClCompile>
100 <Link>
101 <OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
102 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
103 <GenerateDebugInformation>true</GenerateDebugInformation>
104 <ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
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 </ClCompile>
122 <Link>
123 <OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
124 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
125 <GenerateDebugInformation>true</GenerateDebugInformation>
126 <ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
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>FastCall</CallingConvention>
146 </ClCompile>
147 <Link>
148 <OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.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>FastCall</CallingConvention>
172 </ClCompile>
173 <Link>
174 <OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.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 <ClCompile Include="q3factory.cpp" />
187 <ClCompile Include="sound.cpp" />
188 </ItemGroup>
189 <ItemGroup>
190 <ClInclude Include="q3factory.h" />
191 <ClInclude Include="sound.h" />
192 </ItemGroup>
193 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
194 <ImportGroup Label="ExtensionTargets">
195 </ImportGroup>
196</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc11.vcxproj
new file mode 100644
index 0000000..d0c29b2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc11.vcxproj
@@ -0,0 +1,200 @@
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>21.Quake3Explorer</ProjectName>
23 <ProjectGuid>{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}</ProjectGuid>
24 <RootNamespace>21.Quake3Explorer</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'">false</LinkIncremental>
77 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
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 </ClCompile>
104 <Link>
105 <OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.exe</OutputFile>
106 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
107 <GenerateDebugInformation>true</GenerateDebugInformation>
108 <ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
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 </ClCompile>
126 <Link>
127 <OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.exe</OutputFile>
128 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
129 <GenerateDebugInformation>true</GenerateDebugInformation>
130 <ProgramDatabaseFile>$(OutDir)Quake3MapShader.pdb</ProgramDatabaseFile>
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>FastCall</CallingConvention>
150 </ClCompile>
151 <Link>
152 <OutputFile>..\..\bin\Win32-VisualStudio\21.Quake3Explorer.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>FastCall</CallingConvention>
176 </ClCompile>
177 <Link>
178 <OutputFile>..\..\bin\Win64-VisualStudio\21.Quake3Explorer.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 <ClCompile Include="q3factory.cpp" />
191 <ClCompile Include="sound.cpp" />
192 </ItemGroup>
193 <ItemGroup>
194 <ClInclude Include="q3factory.h" />
195 <ClInclude Include="sound.h" />
196 </ItemGroup>
197 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
198 <ImportGroup Label="ExtensionTargets">
199 </ImportGroup>
200</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc8.vcproj
new file mode 100644
index 0000000..9045027
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc8.vcproj
@@ -0,0 +1,210 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8,00"
5 Name="21.Quake3Explorer_vc8"
6 ProjectGUID="{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
7 RootNamespace="21.Quake3Explorer_vc8"
8 Keyword="Win32Proj"
9 >
10 <Platforms>
11 <Platform
12 Name="Win32"
13 />
14 </Platforms>
15 <ToolFiles>
16 </ToolFiles>
17 <Configurations>
18 <Configuration
19 Name="Debug|Win32"
20 OutputDirectory="Debug"
21 IntermediateDirectory="Debug"
22 ConfigurationType="1"
23 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
24 CharacterSet="2"
25 >
26 <Tool
27 Name="VCPreBuildEventTool"
28 />
29 <Tool
30 Name="VCCustomBuildTool"
31 />
32 <Tool
33 Name="VCXMLDataGeneratorTool"
34 />
35 <Tool
36 Name="VCWebServiceProxyGeneratorTool"
37 />
38 <Tool
39 Name="VCMIDLTool"
40 />
41 <Tool
42 Name="VCCLCompilerTool"
43 Optimization="0"
44 AdditionalIncludeDirectories="..\..\include"
45 PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
46 MinimalRebuild="true"
47 BasicRuntimeChecks="3"
48 RuntimeLibrary="1"
49 UsePrecompiledHeader="0"
50 WarningLevel="3"
51 Detect64BitPortabilityProblems="true"
52 DebugInformationFormat="4"
53 DisableSpecificWarnings="4996"
54 />
55 <Tool
56 Name="VCManagedResourceCompilerTool"
57 />
58 <Tool
59 Name="VCResourceCompilerTool"
60 />
61 <Tool
62 Name="VCPreLinkEventTool"
63 />
64 <Tool
65 Name="VCLinkerTool"
66 OutputFile="..\..\bin\Win32-VisualStudio\21.Quake3MapExplorer.exe"
67 LinkIncremental="2"
68 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
69 GenerateDebugInformation="true"
70 ProgramDatabaseFile="$(OutDir)/Quake3MapShader.pdb"
71 SubSystem="1"
72 TargetMachine="1"
73 />
74 <Tool
75 Name="VCALinkTool"
76 />
77 <Tool
78 Name="VCManifestTool"
79 />
80 <Tool
81 Name="VCXDCMakeTool"
82 />
83 <Tool
84 Name="VCBscMakeTool"
85 />
86 <Tool
87 Name="VCFxCopTool"
88 />
89 <Tool
90 Name="VCAppVerifierTool"
91 />
92 <Tool
93 Name="VCWebDeploymentTool"
94 />
95 <Tool
96 Name="VCPostBuildEventTool"
97 />
98 </Configuration>
99 <Configuration
100 Name="Release|Win32"
101 OutputDirectory="Release"
102 IntermediateDirectory="Release"
103 ConfigurationType="1"
104 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
105 CharacterSet="2"
106 >
107 <Tool
108 Name="VCPreBuildEventTool"
109 />
110 <Tool
111 Name="VCCustomBuildTool"
112 />
113 <Tool
114 Name="VCXMLDataGeneratorTool"
115 />
116 <Tool
117 Name="VCWebServiceProxyGeneratorTool"
118 />
119 <Tool
120 Name="VCMIDLTool"
121 />
122 <Tool
123 Name="VCCLCompilerTool"
124 Optimization="2"
125 EnableIntrinsicFunctions="true"
126 FavorSizeOrSpeed="1"
127 AdditionalIncludeDirectories="..\..\include"
128 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
129 RuntimeLibrary="0"
130 BufferSecurityCheck="false"
131 UsePrecompiledHeader="0"
132 WarningLevel="3"
133 Detect64BitPortabilityProblems="true"
134 DebugInformationFormat="0"
135 CallingConvention="1"
136 DisableSpecificWarnings="4996"
137 />
138 <Tool
139 Name="VCManagedResourceCompilerTool"
140 />
141 <Tool
142 Name="VCResourceCompilerTool"
143 />
144 <Tool
145 Name="VCPreLinkEventTool"
146 />
147 <Tool
148 Name="VCLinkerTool"
149 OutputFile="..\..\bin\Win32-VisualStudio\21.Quake3MapExplorer.exe"
150 LinkIncremental="1"
151 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
152 GenerateDebugInformation="false"
153 SubSystem="1"
154 OptimizeReferences="2"
155 EnableCOMDATFolding="2"
156 TargetMachine="1"
157 />
158 <Tool
159 Name="VCALinkTool"
160 />
161 <Tool
162 Name="VCManifestTool"
163 />
164 <Tool
165 Name="VCXDCMakeTool"
166 />
167 <Tool
168 Name="VCBscMakeTool"
169 />
170 <Tool
171 Name="VCFxCopTool"
172 />
173 <Tool
174 Name="VCAppVerifierTool"
175 />
176 <Tool
177 Name="VCWebDeploymentTool"
178 />
179 <Tool
180 Name="VCPostBuildEventTool"
181 />
182 </Configuration>
183 </Configurations>
184 <References>
185 </References>
186 <Files>
187 <File
188 RelativePath=".\main.cpp"
189 >
190 </File>
191 <File
192 RelativePath=".\q3factory.cpp"
193 >
194 </File>
195 <File
196 RelativePath=".\q3factory.h"
197 >
198 </File>
199 <File
200 RelativePath=".\sound.cpp"
201 >
202 </File>
203 <File
204 RelativePath=".\sound.h"
205 >
206 </File>
207 </Files>
208 <Globals>
209 </Globals>
210</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc9.vcproj
new file mode 100644
index 0000000..36aee41
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/Quake3Explorer_vc9.vcproj
@@ -0,0 +1,204 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="21.Quake3Explorer_vc9"
6 ProjectGUID="{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
7 RootNamespace="21.Quake3Explorer_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\21.Quake3MapExplorer.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\21.Quake3MapExplorer.exe"
145 LinkIncremental="1"
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 <File
186 RelativePath=".\q3factory.cpp"
187 >
188 </File>
189 <File
190 RelativePath=".\q3factory.h"
191 >
192 </File>
193 <File
194 RelativePath=".\sound.cpp"
195 >
196 </File>
197 <File
198 RelativePath=".\sound.h"
199 >
200 </File>
201 </Files>
202 <Globals>
203 </Globals>
204</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/main.cpp b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/main.cpp
new file mode 100644
index 0000000..b2277e6
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/main.cpp
@@ -0,0 +1,2188 @@
1/** Example 021 Quake3 Explorer
2
3This Tutorial shows how to load different Quake 3 maps.
4
5Features:
6 - Load BSP Archives at Runtime from the menu
7 - Load a Map from the menu. Showing with Screenshot
8 - Set the VideoDriver at runtime from menu
9 - Adjust GammaLevel at runtime
10 - Create SceneNodes for the Shaders
11 - Load EntityList and create Entity SceneNodes
12 - Create Players with Weapons and with Collision Response
13 - Play music
14
15You can download the Quake III Arena demo ( copyright id software )
16at the following location:
17ftp://ftp.idsoftware.com/idstuff/quake3/win32/q3ademo.exe
18
19Copyright 2006-2011 Burningwater, Thomas Alten
20*/
21
22#include "driverChoice.h"
23#include <irrlicht.h>
24#include "q3factory.h"
25#include "sound.h"
26
27/*
28 Game Data is used to hold Data which is needed to drive the game
29*/
30struct GameData
31{
32 GameData ( const path &startupDir) :
33 retVal(0), StartupDir(startupDir), createExDevice(0), Device(0)
34 {
35 setDefault ();
36 }
37
38 void setDefault ();
39 s32 save ( const path &filename );
40 s32 load ( const path &filename );
41
42 s32 debugState;
43 s32 gravityState;
44 s32 flyTroughState;
45 s32 wireFrame;
46 s32 guiActive;
47 s32 guiInputActive;
48 f32 GammaValue;
49 s32 retVal;
50 s32 sound;
51
52 path StartupDir;
53 stringw CurrentMapName;
54 array<path> CurrentArchiveList;
55
56 vector3df PlayerPosition;
57 vector3df PlayerRotation;
58
59 tQ3EntityList Variable;
60
61 Q3LevelLoadParameter loadParam;
62 SIrrlichtCreationParameters deviceParam;
63 funcptr_createDeviceEx createExDevice;
64 IrrlichtDevice *Device;
65};
66
67/*
68 set default settings
69*/
70void GameData::setDefault ()
71{
72 debugState = EDS_OFF;
73 gravityState = 1;
74 flyTroughState = 0;
75 wireFrame = 0;
76 guiActive = 1;
77 guiInputActive = 0;
78 GammaValue = 1.f;
79
80 // default deviceParam;
81#if defined ( _IRR_WINDOWS_ )
82 deviceParam.DriverType = EDT_DIRECT3D9;
83#else
84 deviceParam.DriverType = EDT_OPENGL;
85#endif
86 deviceParam.WindowSize.Width = 800;
87 deviceParam.WindowSize.Height = 600;
88 deviceParam.Fullscreen = false;
89 deviceParam.Bits = 24;
90 deviceParam.ZBufferBits = 16;
91 deviceParam.Vsync = false;
92 deviceParam.AntiAlias = false;
93
94 // default Quake3 loadParam
95 loadParam.defaultLightMapMaterial = EMT_LIGHTMAP;
96 loadParam.defaultModulate = EMFN_MODULATE_1X;
97 loadParam.defaultFilter = EMF_ANISOTROPIC_FILTER;
98 loadParam.verbose = 2;
99 loadParam.mergeShaderBuffer = 1; // merge meshbuffers with same material
100 loadParam.cleanUnResolvedMeshes = 1; // should unresolved meshes be cleaned. otherwise blue texture
101 loadParam.loadAllShaders = 1; // load all scripts in the script directory
102 loadParam.loadSkyShader = 0; // load sky Shader
103 loadParam.alpharef = 1;
104
105 sound = 0;
106
107 CurrentMapName = "";
108 CurrentArchiveList.clear ();
109
110 // Explorer Media directory
111 CurrentArchiveList.push_back ( StartupDir + "../../media/" );
112
113 // Add the original quake3 files before you load your custom map
114 // Most mods are using the original shaders, models&items&weapons
115 CurrentArchiveList.push_back("/q/baseq3/");
116
117 CurrentArchiveList.push_back(StartupDir + "../../media/map-20kdm2.pk3");
118}
119
120/*
121 Load the current game State from a typical quake3 cfg file
122*/
123s32 GameData::load ( const path &filename )
124{
125 if (!Device)
126 return 0;
127
128 // the quake3 mesh loader can also handle *.shader and *.cfg file
129 IQ3LevelMesh* mesh = (IQ3LevelMesh*) Device->getSceneManager()->getMesh ( filename );
130 if (!mesh)
131 return 0;
132
133 tQ3EntityList &entityList = mesh->getEntityList ();
134
135 stringc s;
136 u32 pos;
137
138 for ( u32 e = 0; e != entityList.size (); ++e )
139 {
140 //dumpShader ( s, &entityList[e], false );
141 //printf ( s.c_str () );
142
143 for ( u32 g = 0; g != entityList[e].getGroupSize (); ++g )
144 {
145 const SVarGroup *group = entityList[e].getGroup ( g );
146
147 for ( u32 index = 0; index < group->Variable.size (); ++index )
148 {
149 const SVariable &v = group->Variable[index];
150 pos = 0;
151 if ( v.name == "playerposition" )
152 {
153 PlayerPosition = getAsVector3df ( v.content, pos );
154 }
155 else
156 if ( v.name == "playerrotation" )
157 {
158 PlayerRotation = getAsVector3df ( v.content, pos );
159 }
160 }
161 }
162 }
163
164 return 1;
165}
166
167/*
168 Store the current game State in a quake3 configuration file
169*/
170s32 GameData::save ( const path &filename )
171{
172 return 0;
173 if (!Device)
174 return 0;
175
176 c8 buf[128];
177 u32 i;
178
179 // Store current Archive for restart
180 CurrentArchiveList.clear();
181 IFileSystem *fs = Device->getFileSystem();
182 for ( i = 0; i != fs->getFileArchiveCount(); ++i )
183 {
184 CurrentArchiveList.push_back ( fs->getFileArchive(i)->getFileList()->getPath() );
185 }
186
187 // Store Player Position and Rotation
188 ICameraSceneNode * camera = Device->getSceneManager()->getActiveCamera ();
189 if ( camera )
190 {
191 PlayerPosition = camera->getPosition ();
192 PlayerRotation = camera->getRotation ();
193 }
194
195 IWriteFile *file = fs->createAndWriteFile ( filename );
196 if (!file)
197 return 0;
198
199 snprintf ( buf, 128, "playerposition %.f %.f %.f\nplayerrotation %.f %.f %.f\n",
200 PlayerPosition.X, PlayerPosition.Z, PlayerPosition.Y,
201 PlayerRotation.X, PlayerRotation.Z, PlayerRotation.Y);
202 file->write ( buf, (s32) strlen ( buf ) );
203 for ( i = 0; i != fs->getFileArchiveCount(); ++i )
204 {
205 snprintf ( buf, 128, "archive %s\n",stringc ( fs->getFileArchive(i)->getFileList()->getPath() ).c_str () );
206 file->write ( buf, (s32) strlen ( buf ) );
207 }
208
209 file->drop ();
210 return 1;
211}
212
213/*
214 Representing a player
215*/
216struct Q3Player : public IAnimationEndCallBack
217{
218 Q3Player ()
219 : Device(0), MapParent(0), Mesh(0), WeaponNode(0), StartPositionCurrent(0)
220 {
221 animation[0] = 0;
222 memset(Anim, 0, sizeof(TimeFire)*4);
223 }
224
225 virtual void OnAnimationEnd(IAnimatedMeshSceneNode* node);
226
227 void create ( IrrlichtDevice *device,
228 IQ3LevelMesh* mesh,
229 ISceneNode *mapNode,
230 IMetaTriangleSelector *meta
231 );
232 void shutdown ();
233 void setAnim ( const c8 *name );
234 void respawn ();
235 void setpos ( const vector3df &pos, const vector3df& rotation );
236
237 ISceneNodeAnimatorCollisionResponse * cam() { return camCollisionResponse ( Device ); }
238
239 IrrlichtDevice *Device;
240 ISceneNode* MapParent;
241 IQ3LevelMesh* Mesh;
242 IAnimatedMeshSceneNode* WeaponNode;
243 s32 StartPositionCurrent;
244 TimeFire Anim[4];
245 c8 animation[64];
246 c8 buf[64];
247};
248
249
250/* End player
251*/
252void Q3Player::shutdown ()
253{
254 setAnim ( 0 );
255
256 dropElement (WeaponNode);
257
258 if ( Device )
259 {
260 ICameraSceneNode* camera = Device->getSceneManager()->getActiveCamera();
261 dropElement ( camera );
262 Device = 0;
263 }
264
265 MapParent = 0;
266 Mesh = 0;
267}
268
269
270/* create a new player
271*/
272void Q3Player::create ( IrrlichtDevice *device, IQ3LevelMesh* mesh, ISceneNode *mapNode, IMetaTriangleSelector *meta )
273{
274 setTimeFire ( Anim + 0, 200, FIRED );
275 setTimeFire ( Anim + 1, 5000 );
276
277 if (!device)
278 return;
279 // load FPS weapon to Camera
280 Device = device;
281 Mesh = mesh;
282 MapParent = mapNode;
283
284 ISceneManager *smgr = device->getSceneManager ();
285 IVideoDriver * driver = device->getVideoDriver();
286
287 ICameraSceneNode* camera = 0;
288
289 SKeyMap keyMap[10];
290 keyMap[0].Action = EKA_MOVE_FORWARD;
291 keyMap[0].KeyCode = KEY_UP;
292 keyMap[1].Action = EKA_MOVE_FORWARD;
293 keyMap[1].KeyCode = KEY_KEY_W;
294
295 keyMap[2].Action = EKA_MOVE_BACKWARD;
296 keyMap[2].KeyCode = KEY_DOWN;
297 keyMap[3].Action = EKA_MOVE_BACKWARD;
298 keyMap[3].KeyCode = KEY_KEY_S;
299
300 keyMap[4].Action = EKA_STRAFE_LEFT;
301 keyMap[4].KeyCode = KEY_LEFT;
302 keyMap[5].Action = EKA_STRAFE_LEFT;
303 keyMap[5].KeyCode = KEY_KEY_A;
304
305 keyMap[6].Action = EKA_STRAFE_RIGHT;
306 keyMap[6].KeyCode = KEY_RIGHT;
307 keyMap[7].Action = EKA_STRAFE_RIGHT;
308 keyMap[7].KeyCode = KEY_KEY_D;
309
310 keyMap[8].Action = EKA_JUMP_UP;
311 keyMap[8].KeyCode = KEY_KEY_J;
312
313 keyMap[9].Action = EKA_CROUCH;
314 keyMap[9].KeyCode = KEY_KEY_C;
315
316 camera = smgr->addCameraSceneNodeFPS(0, 100.0f, 0.6f, -1, keyMap, 10, false, 0.6f);
317 camera->setName ( "First Person Camera" );
318 //camera->setFOV ( 100.f * core::DEGTORAD );
319 camera->setFarValue( 20000.f );
320
321 IAnimatedMeshMD2* weaponMesh = (IAnimatedMeshMD2*) smgr->getMesh("gun.md2");
322 if ( 0 == weaponMesh )
323 return;
324
325 if ( weaponMesh->getMeshType() == EAMT_MD2 )
326 {
327 s32 count = weaponMesh->getAnimationCount();
328 for ( s32 i = 0; i != count; ++i )
329 {
330 snprintf ( buf, 64, "Animation: %s", weaponMesh->getAnimationName(i) );
331 device->getLogger()->log(buf, ELL_INFORMATION);
332 }
333 }
334
335 WeaponNode = smgr->addAnimatedMeshSceneNode(
336 weaponMesh,
337 smgr->getActiveCamera(),
338 10,
339 vector3df( 0, 0, 0),
340 vector3df(-90,-90,90)
341 );
342 WeaponNode->setMaterialFlag(EMF_LIGHTING, false);
343 WeaponNode->setMaterialTexture(0, driver->getTexture( "gun.jpg"));
344 WeaponNode->setLoopMode ( false );
345 WeaponNode->setName ( "tommi the gun man" );
346
347 //create a collision auto response animator
348 ISceneNodeAnimator* anim =
349 smgr->createCollisionResponseAnimator( meta, camera,
350 vector3df(30,45,30),
351 getGravity ( "earth" ),
352 vector3df(0,40,0),
353 0.0005f
354 );
355
356 camera->addAnimator( anim );
357 anim->drop();
358
359 if ( meta )
360 {
361 meta->drop ();
362 }
363
364 respawn ();
365 setAnim ( "idle" );
366}
367
368
369/*
370 so we need a good starting Position in the level.
371 we can ask the Quake3 Loader for all entities with class_name "info_player_deathmatch"
372*/
373void Q3Player::respawn ()
374{
375 if (!Device)
376 return;
377 ICameraSceneNode* camera = Device->getSceneManager()->getActiveCamera();
378
379 Device->getLogger()->log( "respawn" );
380
381 if ( StartPositionCurrent >= Q3StartPosition (
382 Mesh, camera,StartPositionCurrent++,
383 cam ()->getEllipsoidTranslation() )
384 )
385 {
386 StartPositionCurrent = 0;
387 }
388}
389
390/*
391 set Player position from saved coordinates
392*/
393void Q3Player::setpos ( const vector3df &pos, const vector3df &rotation )
394{
395 if (!Device)
396 return;
397 Device->getLogger()->log( "setpos" );
398
399 ICameraSceneNode* camera = Device->getSceneManager()->getActiveCamera();
400 if ( camera )
401 {
402 camera->setPosition ( pos );
403 camera->setRotation ( rotation );
404 //! New. FPSCamera and animators catches reset on animate 0
405 camera->OnAnimate ( 0 );
406 }
407}
408
409/* set the Animation of the player and weapon
410*/
411void Q3Player::setAnim ( const c8 *name )
412{
413 if ( name )
414 {
415 snprintf ( animation, 64, "%s", name );
416 if ( WeaponNode )
417 {
418 WeaponNode->setAnimationEndCallback ( this );
419 WeaponNode->setMD2Animation ( animation );
420 }
421 }
422 else
423 {
424 animation[0] = 0;
425 if ( WeaponNode )
426 {
427 WeaponNode->setAnimationEndCallback ( 0 );
428 }
429 }
430}
431
432
433// Callback
434void Q3Player::OnAnimationEnd(IAnimatedMeshSceneNode* node)
435{
436 setAnim ( 0 );
437}
438
439
440
441/* GUI Elements
442*/
443struct GUI
444{
445 GUI ()
446 {
447 memset ( this, 0, sizeof ( *this ) );
448 }
449
450 void drop()
451 {
452 dropElement ( Window );
453 dropElement ( Logo );
454 }
455
456 IGUIComboBox* VideoDriver;
457 IGUIComboBox* VideoMode;
458 IGUICheckBox* FullScreen;
459 IGUICheckBox* Bit32;
460 IGUIScrollBar* MultiSample;
461 IGUIButton* SetVideoMode;
462
463 IGUIScrollBar* Tesselation;
464 IGUIScrollBar* Gamma;
465 IGUICheckBox* Collision;
466 IGUICheckBox* Visible_Map;
467 IGUICheckBox* Visible_Shader;
468 IGUICheckBox* Visible_Fog;
469 IGUICheckBox* Visible_Unresolved;
470 IGUICheckBox* Visible_Skydome;
471 IGUIButton* Respawn;
472
473 IGUITable* ArchiveList;
474 IGUIButton* ArchiveAdd;
475 IGUIButton* ArchiveRemove;
476 IGUIFileOpenDialog* ArchiveFileOpen;
477 IGUIButton* ArchiveUp;
478 IGUIButton* ArchiveDown;
479
480 IGUIListBox* MapList;
481 IGUITreeView* SceneTree;
482 IGUIStaticText* StatusLine;
483 IGUIImage* Logo;
484 IGUIWindow* Window;
485};
486
487
488/*
489 CQuake3EventHandler controls the game
490*/
491class CQuake3EventHandler : public IEventReceiver
492{
493public:
494
495 CQuake3EventHandler( GameData *gameData );
496 virtual ~CQuake3EventHandler ();
497
498 void Animate();
499 void Render();
500
501 void AddArchive ( const path& archiveName );
502 void LoadMap ( const stringw& mapName, s32 collision );
503 void CreatePlayers();
504 void AddSky( u32 dome, const c8 *texture );
505 Q3Player *GetPlayer ( u32 index ) { return &Player[index]; }
506
507 void CreateGUI();
508 void SetGUIActive( s32 command);
509
510 bool OnEvent(const SEvent& eve);
511
512
513private:
514
515 GameData *Game;
516
517 IQ3LevelMesh* Mesh;
518 ISceneNode* MapParent;
519 ISceneNode* ShaderParent;
520 ISceneNode* ItemParent;
521 ISceneNode* UnresolvedParent;
522 ISceneNode* BulletParent;
523 ISceneNode* FogParent;
524 ISceneNode * SkyNode;
525 IMetaTriangleSelector *Meta;
526
527 c8 buf[256];
528
529 Q3Player Player[2];
530
531 struct SParticleImpact
532 {
533 u32 when;
534 vector3df pos;
535 vector3df outVector;
536 };
537 array<SParticleImpact> Impacts;
538 void useItem( Q3Player * player);
539 void createParticleImpacts( u32 now );
540
541 void createTextures ();
542 void addSceneTreeItem( ISceneNode * parent, IGUITreeViewNode* nodeParent);
543
544 GUI gui;
545 void dropMap ();
546};
547
548/* Constructor
549*/
550CQuake3EventHandler::CQuake3EventHandler( GameData *game )
551: Game(game), Mesh(0), MapParent(0), ShaderParent(0), ItemParent(0), UnresolvedParent(0),
552 BulletParent(0), FogParent(0), SkyNode(0), Meta(0)
553{
554 buf[0]=0;
555 // Also use 16 Bit Textures for 16 Bit RenderDevice
556 if ( Game->deviceParam.Bits == 16 )
557 {
558 game->Device->getVideoDriver()->setTextureCreationFlag(ETCF_ALWAYS_16_BIT, true);
559 }
560
561 // Quake3 Shader controls Z-Writing
562 game->Device->getSceneManager()->getParameters()->setAttribute(scene::ALLOW_ZWRITE_ON_TRANSPARENT, true);
563
564 // create internal textures
565 createTextures ();
566
567 sound_init ( game->Device );
568
569 Game->Device->setEventReceiver ( this );
570}
571
572
573// destructor
574CQuake3EventHandler::~CQuake3EventHandler ()
575{
576 Player[0].shutdown ();
577 sound_shutdown ();
578
579 Game->save( "explorer.cfg" );
580
581 Game->Device->drop();
582}
583
584
585// create runtime textures smog, fog
586void CQuake3EventHandler::createTextures()
587{
588 IVideoDriver * driver = Game->Device->getVideoDriver();
589
590 dimension2du dim(64, 64);
591
592 video::IImage* image;
593 u32 i;
594 u32 x;
595 u32 y;
596 u32 * data;
597 for ( i = 0; i != 8; ++i )
598 {
599 image = driver->createImage ( video::ECF_A8R8G8B8, dim);
600 data = (u32*) image->lock ();
601 for ( y = 0; y != dim.Height; ++y )
602 {
603 for ( x = 0; x != dim.Width; ++x )
604 {
605 data [x] = 0xFFFFFFFF;
606 }
607 data = (u32*) ( (u8*) data + image->getPitch() );
608 }
609 image->unlock();
610 snprintf ( buf, 64, "smoke_%02d", i );
611 driver->addTexture( buf, image );
612 image->drop ();
613 }
614
615 // fog
616 for ( i = 0; i != 1; ++i )
617 {
618 image = driver->createImage ( video::ECF_A8R8G8B8, dim);
619 data = (u32*) image->lock ();
620 for ( y = 0; y != dim.Height; ++y )
621 {
622 for ( x = 0; x != dim.Width; ++x )
623 {
624 data [x] = 0xFFFFFFFF;
625 }
626 data = (u32*) ( (u8*) data + image->getPitch() );
627 }
628 image->unlock();
629 snprintf ( buf, 64, "fog_%02d", i );
630 driver->addTexture( buf, image );
631 image->drop ();
632 }
633}
634
635
636/*
637 create the GUI
638*/
639void CQuake3EventHandler::CreateGUI()
640{
641
642 IGUIEnvironment *env = Game->Device->getGUIEnvironment();
643 IVideoDriver * driver = Game->Device->getVideoDriver();
644
645 gui.drop();
646
647 // set skin font
648 IGUIFont* font = env->getFont("fontlucida.png");
649 if (font)
650 env->getSkin()->setFont(font);
651 env->getSkin()->setColor ( EGDC_BUTTON_TEXT, video::SColor(240,0xAA,0xAA,0xAA) );
652 env->getSkin()->setColor ( EGDC_3D_HIGH_LIGHT, video::SColor(240,0x22,0x22,0x22) );
653 env->getSkin()->setColor ( EGDC_3D_FACE, video::SColor(240,0x44,0x44,0x44) );
654 env->getSkin()->setColor ( EGDC_EDITABLE, video::SColor(240,0x44,0x44,0x44) );
655 env->getSkin()->setColor ( EGDC_FOCUSED_EDITABLE, video::SColor(240,0x54,0x54,0x54) );
656 env->getSkin()->setColor ( EGDC_WINDOW, video::SColor(240,0x66,0x66,0x66) );
657
658 // minimal gui size 800x600
659 dimension2d<u32> dim ( 800, 600 );
660 dimension2d<u32> vdim ( Game->Device->getVideoDriver()->getScreenSize() );
661
662 if ( vdim.Height >= dim.Height && vdim.Width >= dim.Width )
663 {
664 //dim = vdim;
665 }
666 else
667 {
668 }
669
670 gui.Window = env->addWindow ( rect<s32> ( 0, 0, dim.Width, dim.Height ), false, L"Quake3 Explorer" );
671 gui.Window->setToolTipText ( L"Quake3Explorer. Loads and show various BSP File Format and Shaders." );
672 gui.Window->getCloseButton()->setToolTipText ( L"Quit Quake3 Explorer" );
673
674 // add a status line help text
675 gui.StatusLine = env->addStaticText( 0, rect<s32>( 5,dim.Height - 30,dim.Width - 5,dim.Height - 10),
676 false, false, gui.Window, -1, true
677 );
678
679
680 env->addStaticText ( L"VideoDriver:", rect<s32>( dim.Width - 400, 24, dim.Width - 310, 40 ),false, false, gui.Window, -1, false );
681 gui.VideoDriver = env->addComboBox(rect<s32>( dim.Width - 300, 24, dim.Width - 10, 40 ),gui.Window);
682 gui.VideoDriver->addItem(L"Direct3D 9.0c", EDT_DIRECT3D9 );
683 gui.VideoDriver->addItem(L"Direct3D 8.1", EDT_DIRECT3D8 );
684 gui.VideoDriver->addItem(L"OpenGL 1.5", EDT_OPENGL);
685 gui.VideoDriver->addItem(L"Software Renderer", EDT_SOFTWARE);
686 gui.VideoDriver->addItem(L"Burning's Video (TM) Thomas Alten", EDT_BURNINGSVIDEO);
687 gui.VideoDriver->setSelected ( gui.VideoDriver->getIndexForItemData ( Game->deviceParam.DriverType ) );
688 gui.VideoDriver->setToolTipText ( L"Use a VideoDriver" );
689
690 env->addStaticText ( L"VideoMode:", rect<s32>( dim.Width - 400, 44, dim.Width - 310, 60 ),false, false, gui.Window, -1, false );
691 gui.VideoMode = env->addComboBox(rect<s32>( dim.Width - 300, 44, dim.Width - 10, 60 ),gui.Window);
692 gui.VideoMode->setToolTipText ( L"Supported Screenmodes" );
693 IVideoModeList *modeList = Game->Device->getVideoModeList();
694 if ( modeList )
695 {
696 s32 i;
697 for ( i = 0; i != modeList->getVideoModeCount (); ++i )
698 {
699 u16 d = modeList->getVideoModeDepth ( i );
700 if ( d < 16 )
701 continue;
702
703 u16 w = modeList->getVideoModeResolution ( i ).Width;
704 u16 h = modeList->getVideoModeResolution ( i ).Height;
705 u32 val = w << 16 | h;
706
707 if ( gui.VideoMode->getIndexForItemData ( val ) >= 0 )
708 continue;
709
710 f32 aspect = (f32) w / (f32) h;
711 const c8 *a = "";
712 if ( core::equals ( aspect, 1.3333333333f ) ) a = "4:3";
713 else if ( core::equals ( aspect, 1.6666666f ) ) a = "15:9 widescreen";
714 else if ( core::equals ( aspect, 1.7777777f ) ) a = "16:9 widescreen";
715 else if ( core::equals ( aspect, 1.6f ) ) a = "16:10 widescreen";
716 else if ( core::equals ( aspect, 2.133333f ) ) a = "20:9 widescreen";
717
718 snprintf ( buf, sizeof ( buf ), "%d x %d, %s",w, h, a );
719 gui.VideoMode->addItem ( stringw ( buf ).c_str(), val );
720 }
721 }
722 gui.VideoMode->setSelected ( gui.VideoMode->getIndexForItemData (
723 Game->deviceParam.WindowSize.Width << 16 |
724 Game->deviceParam.WindowSize.Height ) );
725
726 gui.FullScreen = env->addCheckBox ( Game->deviceParam.Fullscreen, rect<s32>( dim.Width - 400, 64, dim.Width - 300, 80 ), gui.Window,-1, L"Fullscreen" );
727 gui.FullScreen->setToolTipText ( L"Set Fullscreen or Window Mode" );
728
729 gui.Bit32 = env->addCheckBox ( Game->deviceParam.Bits == 32, rect<s32>( dim.Width - 300, 64, dim.Width - 240, 80 ), gui.Window,-1, L"32Bit" );
730 gui.Bit32->setToolTipText ( L"Use 16 or 32 Bit" );
731
732 env->addStaticText ( L"MultiSample:", rect<s32>( dim.Width - 235, 64, dim.Width - 150, 80 ),false, false, gui.Window, -1, false );
733 gui.MultiSample = env->addScrollBar( true, rect<s32>( dim.Width - 150, 64, dim.Width - 70, 80 ), gui.Window,-1 );
734 gui.MultiSample->setMin ( 0 );
735 gui.MultiSample->setMax ( 8 );
736 gui.MultiSample->setSmallStep ( 1 );
737 gui.MultiSample->setLargeStep ( 1 );
738 gui.MultiSample->setPos ( Game->deviceParam.AntiAlias );
739 gui.MultiSample->setToolTipText ( L"Set the MultiSample (disable, 1x, 2x, 4x, 8x )" );
740
741 gui.SetVideoMode = env->addButton (rect<s32>( dim.Width - 60, 64, dim.Width - 10, 80 ), gui.Window, -1,L"set" );
742 gui.SetVideoMode->setToolTipText ( L"Set Video Mode with current values" );
743
744 env->addStaticText ( L"Gamma:", rect<s32>( dim.Width - 400, 104, dim.Width - 310, 120 ),false, false, gui.Window, -1, false );
745 gui.Gamma = env->addScrollBar( true, rect<s32>( dim.Width - 300, 104, dim.Width - 10, 120 ), gui.Window,-1 );
746 gui.Gamma->setMin ( 50 );
747 gui.Gamma->setMax ( 350 );
748 gui.Gamma->setSmallStep ( 1 );
749 gui.Gamma->setLargeStep ( 10 );
750 gui.Gamma->setPos ( core::floor32 ( Game->GammaValue * 100.f ) );
751 gui.Gamma->setToolTipText ( L"Adjust Gamma Ramp ( 0.5 - 3.5)" );
752 Game->Device->setGammaRamp ( Game->GammaValue, Game->GammaValue, Game->GammaValue, 0.f, 0.f );
753
754
755 env->addStaticText ( L"Tesselation:", rect<s32>( dim.Width - 400, 124, dim.Width - 310, 140 ),false, false, gui.Window, -1, false );
756 gui.Tesselation = env->addScrollBar( true, rect<s32>( dim.Width - 300, 124, dim.Width - 10, 140 ), gui.Window,-1 );
757 gui.Tesselation->setMin ( 2 );
758 gui.Tesselation->setMax ( 12 );
759 gui.Tesselation->setSmallStep ( 1 );
760 gui.Tesselation->setLargeStep ( 1 );
761 gui.Tesselation->setPos ( Game->loadParam.patchTesselation );
762 gui.Tesselation->setToolTipText ( L"How smooth should curved surfaces be rendered" );
763
764 gui.Collision = env->addCheckBox ( true, rect<s32>( dim.Width - 400, 150, dim.Width - 300, 166 ), gui.Window,-1, L"Collision" );
765 gui.Collision->setToolTipText ( L"Set collision on or off ( flythrough ). \nPress F7 on your Keyboard" );
766 gui.Visible_Map = env->addCheckBox ( true, rect<s32>( dim.Width - 300, 150, dim.Width - 240, 166 ), gui.Window,-1, L"Map" );
767 gui.Visible_Map->setToolTipText ( L"Show or not show the static part the Level. \nPress F3 on your Keyboard" );
768 gui.Visible_Shader = env->addCheckBox ( true, rect<s32>( dim.Width - 240, 150, dim.Width - 170, 166 ), gui.Window,-1, L"Shader" );
769 gui.Visible_Shader->setToolTipText ( L"Show or not show the Shader Nodes. \nPress F4 on your Keyboard" );
770 gui.Visible_Fog = env->addCheckBox ( true, rect<s32>( dim.Width - 170, 150, dim.Width - 110, 166 ), gui.Window,-1, L"Fog" );
771 gui.Visible_Fog->setToolTipText ( L"Show or not show the Fog Nodes. \nPress F5 on your Keyboard" );
772 gui.Visible_Unresolved = env->addCheckBox ( true, rect<s32>( dim.Width - 110, 150, dim.Width - 10, 166 ), gui.Window,-1, L"Unresolved" );
773 gui.Visible_Unresolved->setToolTipText ( L"Show the or not show the Nodes the Engine can't handle. \nPress F6 on your Keyboard" );
774 gui.Visible_Skydome = env->addCheckBox ( true, rect<s32>( dim.Width - 110, 180, dim.Width - 10, 196 ), gui.Window,-1, L"Skydome" );
775 gui.Visible_Skydome->setToolTipText ( L"Show the or not show the Skydome." );
776
777 //Respawn = env->addButton ( rect<s32>( dim.Width - 260, 90, dim.Width - 10, 106 ), 0,-1, L"Respawn" );
778
779 env->addStaticText ( L"Archives:", rect<s32>( 5, dim.Height - 530, dim.Width - 600,dim.Height - 514 ),false, false, gui.Window, -1, false );
780
781 gui.ArchiveAdd = env->addButton ( rect<s32>( dim.Width - 725, dim.Height - 530, dim.Width - 665, dim.Height - 514 ), gui.Window,-1, L"add" );
782 gui.ArchiveAdd->setToolTipText ( L"Add an archive, usually packed zip-archives (*.pk3) to the Filesystem" );
783 gui.ArchiveRemove = env->addButton ( rect<s32>( dim.Width - 660, dim.Height - 530, dim.Width - 600, dim.Height - 514 ), gui.Window,-1, L"del" );
784 gui.ArchiveRemove->setToolTipText ( L"Remove the selected archive from the FileSystem." );
785 gui.ArchiveUp = env->addButton ( rect<s32>( dim.Width - 575, dim.Height - 530, dim.Width - 515, dim.Height - 514 ), gui.Window,-1, L"up" );
786 gui.ArchiveUp->setToolTipText ( L"Arrange Archive Look-up Hirachy. Move the selected Archive up" );
787 gui.ArchiveDown = env->addButton ( rect<s32>( dim.Width - 510, dim.Height - 530, dim.Width - 440, dim.Height - 514 ), gui.Window,-1, L"down" );
788 gui.ArchiveDown->setToolTipText ( L"Arrange Archive Look-up Hirachy. Move the selected Archive down" );
789
790
791 gui.ArchiveList = env->addTable ( rect<s32>( 5,dim.Height - 510, dim.Width - 450,dim.Height - 410 ), gui.Window );
792 gui.ArchiveList->addColumn ( L"Type", 0 );
793 gui.ArchiveList->addColumn ( L"Real File Path", 1 );
794 gui.ArchiveList->setColumnWidth ( 0, 60 );
795 gui.ArchiveList->setColumnWidth ( 1, 284 );
796 gui.ArchiveList->setToolTipText ( L"Show the attached Archives" );
797
798
799 env->addStaticText ( L"Maps:", rect<s32>( 5, dim.Height - 400, dim.Width - 450,dim.Height - 380 ),false, false, gui.Window, -1, false );
800 gui.MapList = env->addListBox ( rect<s32>( 5,dim.Height - 380, dim.Width - 450,dim.Height - 40 ), gui.Window, -1, true );
801 gui.MapList->setToolTipText ( L"Show the current Maps in all Archives.\n Double-Click the Map to start the level" );
802
803
804 // create a visible Scene Tree
805 env->addStaticText ( L"Scenegraph:", rect<s32>( dim.Width - 400, dim.Height - 400, dim.Width - 5,dim.Height - 380 ),false, false, gui.Window, -1, false );
806 gui.SceneTree = env->addTreeView( rect<s32>( dim.Width - 400, dim.Height - 380, dim.Width - 5, dim.Height - 40 ),
807 gui.Window, -1, true, true, false );
808 gui.SceneTree->setToolTipText ( L"Show the current Scenegraph" );
809 gui.SceneTree->getRoot()->clearChildren();
810 addSceneTreeItem ( Game->Device->getSceneManager()->getRootSceneNode(), gui.SceneTree->getRoot() );
811
812
813 IGUIImageList* imageList = env->createImageList( driver->getTexture ( "iconlist.png" ),
814 dimension2di( 32, 32 ), true );
815
816 if ( imageList )
817 {
818 gui.SceneTree->setImageList( imageList );
819 imageList->drop ();
820 }
821
822
823 // load the engine logo
824 gui.Logo = env->addImage( driver->getTexture("irrlichtlogo3.png"), position2d<s32>(5, 16 ), true, 0 );
825 gui.Logo->setToolTipText ( L"The great Irrlicht Engine" );
826
827 AddArchive ( "" );
828}
829
830
831/*
832 Add an Archive to the FileSystems and updates the GUI
833*/
834void CQuake3EventHandler::AddArchive ( const path& archiveName )
835{
836 IFileSystem *fs = Game->Device->getFileSystem();
837 u32 i;
838
839 if ( archiveName.size () )
840 {
841 bool exists = false;
842 for ( i = 0; i != fs->getFileArchiveCount(); ++i )
843 {
844 if ( fs->getFileArchive(i)->getFileList()->getPath() == archiveName )
845 {
846 exists = true;
847 break;
848 }
849 }
850
851 if (!exists)
852 {
853 fs->addFileArchive(archiveName, true, false);
854 }
855 }
856
857 // store the current archives in game data
858 // show the attached Archive in proper order
859 if ( gui.ArchiveList )
860 {
861 gui.ArchiveList->clearRows();
862
863 for ( i = 0; i != fs->getFileArchiveCount(); ++i )
864 {
865 IFileArchive * archive = fs->getFileArchive ( i );
866
867 u32 index = gui.ArchiveList->addRow(i);
868
869 core::stringw typeName;
870 switch(archive->getType())
871 {
872 case io::EFAT_ZIP:
873 typeName = "ZIP";
874 break;
875 case io::EFAT_GZIP:
876 typeName = "gzip";
877 break;
878 case io::EFAT_FOLDER:
879 typeName = "Mount";
880 break;
881 case io::EFAT_PAK:
882 typeName = "PAK";
883 break;
884 case io::EFAT_TAR:
885 typeName = "TAR";
886 break;
887 default:
888 typeName = "archive";
889 }
890
891 gui.ArchiveList->setCellText ( index, 0, typeName );
892 gui.ArchiveList->setCellText ( index, 1, archive->getFileList()->getPath() );
893 }
894 }
895
896
897 // browse the archives for maps
898 if ( gui.MapList )
899 {
900 gui.MapList->clear();
901
902 IGUISpriteBank *bank = Game->Device->getGUIEnvironment()->getSpriteBank("sprite_q3map");
903 if ( 0 == bank )
904 bank = Game->Device->getGUIEnvironment()->addEmptySpriteBank("sprite_q3map");
905
906 SGUISprite sprite;
907 SGUISpriteFrame frame;
908 core::rect<s32> r;
909
910 bank->getSprites().clear();
911 bank->getPositions().clear ();
912 gui.MapList->setSpriteBank ( bank );
913
914 u32 g = 0;
915 core::stringw s;
916
917 // browse the attached file system
918 fs->setFileListSystem ( FILESYSTEM_VIRTUAL );
919 fs->changeWorkingDirectoryTo ( "/maps/" );
920 IFileList *fileList = fs->createFileList ();
921 fs->setFileListSystem ( FILESYSTEM_NATIVE );
922
923 for ( i=0; i< fileList->getFileCount(); ++i)
924 {
925 s = fileList->getFullFileName(i);
926 if ( s.find ( ".bsp" ) >= 0 )
927 {
928 // get level screenshot. reformat texture to 128x128
929 path c ( s );
930 deletePathFromFilename ( c );
931 cutFilenameExtension ( c, c );
932 c = path ( "levelshots/" ) + c;
933
934 dimension2du dim ( 128, 128 );
935 IVideoDriver * driver = Game->Device->getVideoDriver();
936 IImage* image = 0;
937 ITexture *tex = 0;
938 path filename;
939
940 filename = c + ".jpg";
941 if ( fs->existFile ( filename ) )
942 image = driver->createImageFromFile( filename );
943 if ( 0 == image )
944 {
945 filename = c + ".tga";
946 if ( fs->existFile ( filename ) )
947 image = driver->createImageFromFile( filename );
948 }
949
950 if ( image )
951 {
952 IImage* filter = driver->createImage ( video::ECF_R8G8B8, dim );
953 image->copyToScalingBoxFilter ( filter, 0 );
954 image->drop ();
955 image = filter;
956 }
957
958 if ( image )
959 {
960 tex = driver->addTexture ( filename, image );
961 image->drop ();
962 }
963
964
965 bank->setTexture ( g, tex );
966
967 r.LowerRightCorner.X = dim.Width;
968 r.LowerRightCorner.Y = dim.Height;
969 gui.MapList->setItemHeight ( r.LowerRightCorner.Y + 4 );
970 frame.rectNumber = bank->getPositions().size();
971 frame.textureNumber = g;
972
973 bank->getPositions().push_back(r);
974
975 sprite.Frames.set_used ( 0 );
976 sprite.Frames.push_back(frame);
977 sprite.frameTime = 0;
978 bank->getSprites().push_back(sprite);
979
980 gui.MapList->addItem ( s.c_str (), g );
981 g += 1;
982 }
983 }
984 fileList->drop ();
985
986 gui.MapList->setSelected ( -1 );
987 IGUIScrollBar * bar = (IGUIScrollBar*)gui.MapList->getElementFromId( 0 );
988 if ( bar )
989 bar->setPos ( 0 );
990
991 }
992
993}
994
995/*
996 clears the Map in Memory
997*/
998void CQuake3EventHandler::dropMap ()
999{
1000 IVideoDriver * driver = Game->Device->getVideoDriver();
1001
1002 driver->removeAllHardwareBuffers ();
1003 driver->removeAllTextures ();
1004
1005 Player[0].shutdown ();
1006
1007
1008 dropElement ( ItemParent );
1009 dropElement ( ShaderParent );
1010 dropElement ( UnresolvedParent );
1011 dropElement ( FogParent );
1012 dropElement ( BulletParent );
1013
1014
1015 Impacts.clear();
1016
1017 if ( Meta )
1018 {
1019 Meta = 0;
1020 }
1021
1022 dropElement ( MapParent );
1023 dropElement ( SkyNode );
1024
1025 // clean out meshes, because textures are invalid
1026 // TODO: better texture handling;-)
1027 IMeshCache *cache = Game->Device->getSceneManager ()->getMeshCache();
1028 cache->clear ();
1029 Mesh = 0;
1030}
1031
1032/* Load new map
1033*/
1034void CQuake3EventHandler::LoadMap ( const stringw &mapName, s32 collision )
1035{
1036 if ( 0 == mapName.size() )
1037 return;
1038
1039 dropMap ();
1040
1041 IFileSystem *fs = Game->Device->getFileSystem();
1042 ISceneManager *smgr = Game->Device->getSceneManager ();
1043
1044 IReadFile* file = fs->createMemoryReadFile(&Game->loadParam,
1045 sizeof(Game->loadParam), L"levelparameter.cfg", false);
1046
1047 // load cfg file
1048 smgr->getMesh( file );
1049 file->drop ();
1050
1051 // load the actual map
1052 Mesh = (IQ3LevelMesh*) smgr->getMesh(mapName);
1053 if ( 0 == Mesh )
1054 return;
1055
1056 /*
1057 add the geometry mesh to the Scene ( polygon & patches )
1058 The Geometry mesh is optimised for faster drawing
1059 */
1060
1061 IMesh *geometry = Mesh->getMesh(E_Q3_MESH_GEOMETRY);
1062 if ( 0 == geometry || geometry->getMeshBufferCount() == 0)
1063 return;
1064
1065 Game->CurrentMapName = mapName;
1066
1067 //create a collision list
1068 Meta = 0;
1069
1070 ITriangleSelector * selector = 0;
1071 if (collision)
1072 Meta = smgr->createMetaTriangleSelector();
1073
1074 //IMeshBuffer *b0 = geometry->getMeshBuffer(0);
1075 //s32 minimalNodes = b0 ? core::s32_max ( 2048, b0->getVertexCount() / 32 ) : 2048;
1076 s32 minimalNodes = 2048;
1077
1078 MapParent = smgr->addOctreeSceneNode(geometry, 0, -1, minimalNodes);
1079 MapParent->setName ( mapName );
1080 if ( Meta )
1081 {
1082 selector = smgr->createOctreeTriangleSelector( geometry,MapParent, minimalNodes);
1083 //selector = smgr->createTriangleSelector ( geometry, MapParent );
1084 Meta->addTriangleSelector( selector);
1085 selector->drop ();
1086 }
1087
1088 // logical parent for the items
1089 ItemParent = smgr->addEmptySceneNode();
1090 if ( ItemParent )
1091 ItemParent->setName ( "Item Container" );
1092
1093 ShaderParent = smgr->addEmptySceneNode();
1094 if ( ShaderParent )
1095 ShaderParent->setName ( "Shader Container" );
1096
1097 UnresolvedParent = smgr->addEmptySceneNode();
1098 if ( UnresolvedParent )
1099 UnresolvedParent->setName ( "Unresolved Container" );
1100
1101 FogParent = smgr->addEmptySceneNode();
1102 if ( FogParent )
1103 FogParent->setName ( "Fog Container" );
1104
1105 // logical parent for the bullets
1106 BulletParent = smgr->addEmptySceneNode();
1107 if ( BulletParent )
1108 BulletParent->setName ( "Bullet Container" );
1109
1110 /*
1111 now construct SceneNodes for each Shader
1112 The Objects are stored in the quake mesh E_Q3_MESH_ITEMS
1113 and the Shader ID is stored in the MaterialParameters
1114 mostly dark looking skulls and moving lava.. or green flashing tubes?
1115 */
1116 Q3ShaderFactory ( Game->loadParam, Game->Device, Mesh, E_Q3_MESH_ITEMS,ShaderParent, Meta, false );
1117 Q3ShaderFactory ( Game->loadParam, Game->Device, Mesh, E_Q3_MESH_FOG,FogParent, 0, false );
1118 Q3ShaderFactory ( Game->loadParam, Game->Device, Mesh, E_Q3_MESH_UNRESOLVED,UnresolvedParent, Meta, true );
1119
1120 /*
1121 Now construct Models from Entity List
1122 */
1123 Q3ModelFactory ( Game->loadParam, Game->Device, Mesh, ItemParent, false );
1124}
1125
1126/*
1127 Adds a SceneNode with an icon to the Scene Tree
1128*/
1129void CQuake3EventHandler::addSceneTreeItem( ISceneNode * parent, IGUITreeViewNode* nodeParent)
1130{
1131 IGUITreeViewNode* node;
1132 wchar_t msg[128];
1133
1134 s32 imageIndex;
1135 list<ISceneNode*>::ConstIterator it = parent->getChildren().begin();
1136 for (; it != parent->getChildren().end(); ++it)
1137 {
1138 switch ( (*it)->getType () )
1139 {
1140 case ESNT_Q3SHADER_SCENE_NODE: imageIndex = 0; break;
1141 case ESNT_CAMERA: imageIndex = 1; break;
1142 case ESNT_EMPTY: imageIndex = 2; break;
1143 case ESNT_MESH: imageIndex = 3; break;
1144 case ESNT_OCTREE: imageIndex = 3; break;
1145 case ESNT_ANIMATED_MESH: imageIndex = 4; break;
1146 case ESNT_SKY_BOX: imageIndex = 5; break;
1147 case ESNT_BILLBOARD: imageIndex = 6; break;
1148 case ESNT_PARTICLE_SYSTEM: imageIndex = 7; break;
1149 case ESNT_TEXT: imageIndex = 8; break;
1150 default:imageIndex = -1; break;
1151 }
1152
1153 if ( imageIndex < 0 )
1154 {
1155 swprintf ( msg, 128, L"%hs,%hs",
1156 Game->Device->getSceneManager ()->getSceneNodeTypeName ( (*it)->getType () ),
1157 (*it)->getName()
1158 );
1159 }
1160 else
1161 {
1162 swprintf ( msg, 128, L"%hs",(*it)->getName() );
1163 }
1164
1165 node = nodeParent->addChildBack( msg, 0, imageIndex );
1166
1167 // Add all Animators
1168 list<ISceneNodeAnimator*>::ConstIterator ait = (*it)->getAnimators().begin();
1169 for (; ait != (*it)->getAnimators().end(); ++ait)
1170 {
1171 imageIndex = -1;
1172 swprintf ( msg, 128, L"%hs",
1173 Game->Device->getSceneManager ()->getAnimatorTypeName ( (*ait)->getType () )
1174 );
1175
1176 switch ( (*ait)->getType () )
1177 {
1178 case ESNAT_FLY_CIRCLE:
1179 case ESNAT_FLY_STRAIGHT:
1180 case ESNAT_FOLLOW_SPLINE:
1181 case ESNAT_ROTATION:
1182 case ESNAT_TEXTURE:
1183 case ESNAT_DELETION:
1184 case ESNAT_COLLISION_RESPONSE:
1185 case ESNAT_CAMERA_FPS:
1186 case ESNAT_CAMERA_MAYA:
1187 default:
1188 break;
1189 }
1190 node->addChildBack( msg, 0, imageIndex );
1191 }
1192
1193 addSceneTreeItem ( *it, node );
1194 }
1195}
1196
1197
1198// Adds life!
1199void CQuake3EventHandler::CreatePlayers()
1200{
1201 Player[0].create ( Game->Device, Mesh, MapParent, Meta );
1202}
1203
1204
1205// Adds a skydome to the scene
1206void CQuake3EventHandler::AddSky( u32 dome, const c8 *texture)
1207{
1208 ISceneManager *smgr = Game->Device->getSceneManager ();
1209 IVideoDriver * driver = Game->Device->getVideoDriver();
1210
1211 bool oldMipMapState = driver->getTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS);
1212 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
1213
1214 if ( 0 == dome )
1215 {
1216 // irrlicht order
1217 //static const c8*p[] = { "ft", "lf", "bk", "rt", "up", "dn" };
1218 // quake3 order
1219 static const c8*p[] = { "ft", "rt", "bk", "lf", "up", "dn" };
1220
1221 u32 i = 0;
1222 snprintf ( buf, 64, "%s_%s.jpg", texture, p[i] );
1223 SkyNode = smgr->addSkyBoxSceneNode( driver->getTexture ( buf ), 0, 0, 0, 0, 0 );
1224
1225 if (SkyNode)
1226 {
1227 for ( i = 0; i < 6; ++i )
1228 {
1229 snprintf ( buf, 64, "%s_%s.jpg", texture, p[i] );
1230 SkyNode->getMaterial(i).setTexture ( 0, driver->getTexture ( buf ) );
1231 }
1232 }
1233 }
1234 else
1235 if ( 1 == dome )
1236 {
1237 snprintf ( buf, 64, "%s.jpg", texture );
1238 SkyNode = smgr->addSkyDomeSceneNode(
1239 driver->getTexture( buf ), 32,32,
1240 1.f, 1.f, 1000.f, 0, 11);
1241 }
1242 else
1243 if ( 2 == dome )
1244 {
1245 snprintf ( buf, 64, "%s.jpg", texture );
1246 SkyNode = smgr->addSkyDomeSceneNode(
1247 driver->getTexture( buf ), 16,8,
1248 0.95f, 2.f, 1000.f, 0, 11);
1249 }
1250
1251 if (SkyNode)
1252 SkyNode->setName("Skydome");
1253 //SkyNode->getMaterial(0).ZBuffer = video::EMDF_DEPTH_LESS_EQUAL;
1254
1255 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, oldMipMapState);
1256}
1257
1258
1259// enable GUI elements
1260void CQuake3EventHandler::SetGUIActive( s32 command)
1261{
1262 bool inputState = false;
1263
1264 ICameraSceneNode * camera = Game->Device->getSceneManager()->getActiveCamera ();
1265
1266 switch ( command )
1267 {
1268 case 0: Game->guiActive = 0; inputState = !Game->guiActive; break;
1269 case 1: Game->guiActive = 1; inputState = !Game->guiActive;;break;
1270 case 2: Game->guiActive ^= 1; inputState = !Game->guiActive;break;
1271 case 3:
1272 if ( camera )
1273 inputState = !camera->isInputReceiverEnabled();
1274 break;
1275 }
1276
1277 if ( camera )
1278 {
1279 camera->setInputReceiverEnabled ( inputState );
1280 Game->Device->getCursorControl()->setVisible( !inputState );
1281 }
1282
1283 if ( gui.Window )
1284 {
1285 gui.Window->setVisible ( Game->guiActive != 0 );
1286 }
1287
1288 if ( Game->guiActive &&
1289 gui.SceneTree && Game->Device->getGUIEnvironment()->getFocus() != gui.SceneTree
1290 )
1291 {
1292 gui.SceneTree->getRoot()->clearChildren();
1293 addSceneTreeItem ( Game->Device->getSceneManager()->getRootSceneNode(), gui.SceneTree->getRoot() );
1294 }
1295
1296 Game->Device->getGUIEnvironment()->setFocus ( Game->guiActive ? gui.Window: 0 );
1297}
1298
1299
1300/*
1301 Handle game input
1302*/
1303bool CQuake3EventHandler::OnEvent(const SEvent& eve)
1304{
1305 if ( eve.EventType == EET_LOG_TEXT_EVENT )
1306 {
1307 return false;
1308 }
1309
1310 if ( Game->guiActive && eve.EventType == EET_GUI_EVENT )
1311 {
1312 if ( eve.GUIEvent.Caller == gui.MapList && eve.GUIEvent.EventType == gui::EGET_LISTBOX_SELECTED_AGAIN )
1313 {
1314 s32 selected = gui.MapList->getSelected();
1315 if ( selected >= 0 )
1316 {
1317 stringw loadMap = gui.MapList->getListItem ( selected );
1318 if ( 0 == MapParent || loadMap != Game->CurrentMapName )
1319 {
1320 printf ( "Loading map %ls\n", loadMap.c_str() );
1321 LoadMap ( loadMap , 1 );
1322 if ( 0 == Game->loadParam.loadSkyShader )
1323 {
1324 AddSky ( 1, "skydome2" );
1325 }
1326 CreatePlayers ();
1327 CreateGUI ();
1328 SetGUIActive ( 0 );
1329 return true;
1330 }
1331 }
1332 }
1333 else
1334 if ( eve.GUIEvent.Caller == gui.ArchiveRemove && eve.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED )
1335 {
1336 Game->Device->getFileSystem()->removeFileArchive( gui.ArchiveList->getSelected() );
1337 Game->CurrentMapName = "";
1338 AddArchive ( "" );
1339 }
1340 else
1341 if ( eve.GUIEvent.Caller == gui.ArchiveAdd && eve.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED )
1342 {
1343 if ( 0 == gui.ArchiveFileOpen )
1344 {
1345 Game->Device->getFileSystem()->setFileListSystem ( FILESYSTEM_NATIVE );
1346 gui.ArchiveFileOpen = Game->Device->getGUIEnvironment()->addFileOpenDialog ( L"Add Game Archive" , false,gui.Window );
1347 }
1348 }
1349 else
1350 if ( eve.GUIEvent.Caller == gui.ArchiveFileOpen && eve.GUIEvent.EventType == gui::EGET_FILE_SELECTED )
1351 {
1352 AddArchive ( gui.ArchiveFileOpen->getFileName() );
1353 gui.ArchiveFileOpen = 0;
1354 }
1355 else
1356 if ( eve.GUIEvent.Caller == gui.ArchiveFileOpen && eve.GUIEvent.EventType == gui::EGET_DIRECTORY_SELECTED )
1357 {
1358 AddArchive ( gui.ArchiveFileOpen->getDirectoryName() );
1359 }
1360 else
1361 if ( eve.GUIEvent.Caller == gui.ArchiveFileOpen && eve.GUIEvent.EventType == gui::EGET_FILE_CHOOSE_DIALOG_CANCELLED )
1362 {
1363 gui.ArchiveFileOpen = 0;
1364 }
1365 else
1366 if ( ( eve.GUIEvent.Caller == gui.ArchiveUp || eve.GUIEvent.Caller == gui.ArchiveDown ) &&
1367 eve.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED )
1368 {
1369 s32 rel = eve.GUIEvent.Caller == gui.ArchiveUp ? -1 : 1;
1370 if ( Game->Device->getFileSystem()->moveFileArchive ( gui.ArchiveList->getSelected (), rel ) )
1371 {
1372 s32 newIndex = core::s32_clamp ( gui.ArchiveList->getSelected() + rel, 0, gui.ArchiveList->getRowCount() - 1 );
1373 AddArchive ( "" );
1374 gui.ArchiveList->setSelected ( newIndex );
1375 Game->CurrentMapName = "";
1376 }
1377 }
1378 else
1379 if ( eve.GUIEvent.Caller == gui.VideoDriver && eve.GUIEvent.EventType == gui::EGET_COMBO_BOX_CHANGED )
1380 {
1381 Game->deviceParam.DriverType = (E_DRIVER_TYPE) gui.VideoDriver->getItemData ( gui.VideoDriver->getSelected() );
1382 }
1383 else
1384 if ( eve.GUIEvent.Caller == gui.VideoMode && eve.GUIEvent.EventType == gui::EGET_COMBO_BOX_CHANGED )
1385 {
1386 u32 val = gui.VideoMode->getItemData ( gui.VideoMode->getSelected() );
1387 Game->deviceParam.WindowSize.Width = val >> 16;
1388 Game->deviceParam.WindowSize.Height = val & 0xFFFF;
1389 }
1390 else
1391 if ( eve.GUIEvent.Caller == gui.FullScreen && eve.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
1392 {
1393 Game->deviceParam.Fullscreen = gui.FullScreen->isChecked();
1394 }
1395 else
1396 if ( eve.GUIEvent.Caller == gui.Bit32 && eve.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
1397 {
1398 Game->deviceParam.Bits = gui.Bit32->isChecked() ? 32 : 16;
1399 }
1400 else
1401 if ( eve.GUIEvent.Caller == gui.MultiSample && eve.GUIEvent.EventType == gui::EGET_SCROLL_BAR_CHANGED )
1402 {
1403 Game->deviceParam.AntiAlias = gui.MultiSample->getPos();
1404 }
1405 else
1406 if ( eve.GUIEvent.Caller == gui.Tesselation && eve.GUIEvent.EventType == gui::EGET_SCROLL_BAR_CHANGED )
1407 {
1408 Game->loadParam.patchTesselation = gui.Tesselation->getPos ();
1409 }
1410 else
1411 if ( eve.GUIEvent.Caller == gui.Gamma && eve.GUIEvent.EventType == gui::EGET_SCROLL_BAR_CHANGED )
1412 {
1413 Game->GammaValue = gui.Gamma->getPos () * 0.01f;
1414 Game->Device->setGammaRamp ( Game->GammaValue, Game->GammaValue, Game->GammaValue, 0.f, 0.f );
1415 }
1416 else
1417 if ( eve.GUIEvent.Caller == gui.SetVideoMode && eve.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED )
1418 {
1419 Game->retVal = 2;
1420 Game->Device->closeDevice();
1421 }
1422 else
1423 if ( eve.GUIEvent.Caller == gui.Window && eve.GUIEvent.EventType == gui::EGET_ELEMENT_CLOSED )
1424 {
1425 Game->Device->closeDevice();
1426 }
1427 else
1428 if ( eve.GUIEvent.Caller == gui.Collision && eve.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
1429 {
1430 // set fly through active
1431 Game->flyTroughState ^= 1;
1432 Player[0].cam()->setAnimateTarget ( Game->flyTroughState == 0 );
1433
1434 printf ( "collision %d\n", Game->flyTroughState == 0 );
1435 }
1436 else
1437 if ( eve.GUIEvent.Caller == gui.Visible_Map && eve.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
1438 {
1439 bool v = gui.Visible_Map->isChecked();
1440
1441 if ( MapParent )
1442 {
1443 printf ( "static node set visible %d\n",v );
1444 MapParent->setVisible ( v );
1445 }
1446 }
1447 else
1448 if ( eve.GUIEvent.Caller == gui.Visible_Shader && eve.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
1449 {
1450 bool v = gui.Visible_Shader->isChecked();
1451
1452 if ( ShaderParent )
1453 {
1454 printf ( "shader node set visible %d\n",v );
1455 ShaderParent->setVisible ( v );
1456 }
1457 }
1458 else
1459 if ( eve.GUIEvent.Caller == gui.Visible_Skydome && eve.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
1460 {
1461 if ( SkyNode )
1462 {
1463 bool v = !SkyNode->isVisible();
1464 printf ( "skynode set visible %d\n",v );
1465 SkyNode->setVisible ( v );
1466 }
1467 }
1468 else
1469 if ( eve.GUIEvent.Caller == gui.Respawn && eve.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED )
1470 {
1471 Player[0].respawn ();
1472 }
1473
1474 return false;
1475 }
1476
1477 // fire
1478 if ((eve.EventType == EET_KEY_INPUT_EVENT && eve.KeyInput.Key == KEY_SPACE &&
1479 eve.KeyInput.PressedDown == false) ||
1480 (eve.EventType == EET_MOUSE_INPUT_EVENT && eve.MouseInput.Event == EMIE_LMOUSE_LEFT_UP)
1481 )
1482 {
1483 ICameraSceneNode * camera = Game->Device->getSceneManager()->getActiveCamera ();
1484 if ( camera && camera->isInputReceiverEnabled () )
1485 {
1486 useItem( Player + 0 );
1487 }
1488 }
1489
1490 // gui active
1491 if ((eve.EventType == EET_KEY_INPUT_EVENT && eve.KeyInput.Key == KEY_F1 &&
1492 eve.KeyInput.PressedDown == false) ||
1493 (eve.EventType == EET_MOUSE_INPUT_EVENT && eve.MouseInput.Event == EMIE_RMOUSE_LEFT_UP)
1494 )
1495 {
1496 SetGUIActive ( 2 );
1497 }
1498
1499 // check if user presses the key
1500 if ( eve.EventType == EET_KEY_INPUT_EVENT && eve.KeyInput.PressedDown == false)
1501 {
1502 // Escape toggles camera Input
1503 if ( eve.KeyInput.Key == irr::KEY_ESCAPE )
1504 {
1505 SetGUIActive ( 3 );
1506 }
1507 else
1508 if (eve.KeyInput.Key == KEY_F11)
1509 {
1510 // screenshot are taken without gamma!
1511 IImage* image = Game->Device->getVideoDriver()->createScreenShot();
1512 if (image)
1513 {
1514 core::vector3df pos;
1515 core::vector3df rot;
1516 ICameraSceneNode * cam = Game->Device->getSceneManager()->getActiveCamera ();
1517 if ( cam )
1518 {
1519 pos = cam->getPosition ();
1520 rot = cam->getRotation ();
1521 }
1522
1523 static const c8 *dName[] = { "null", "software", "burning",
1524 "d3d8", "d3d9", "opengl" };
1525
1526 snprintf(buf, 256, "%s_%ls_%.0f_%.0f_%.0f_%.0f_%.0f_%.0f.jpg",
1527 dName[Game->Device->getVideoDriver()->getDriverType()],
1528 Game->CurrentMapName.c_str(),
1529 pos.X, pos.Y, pos.Z,
1530 rot.X, rot.Y, rot.Z
1531 );
1532 path filename ( buf );
1533 filename.replace ( '/', '_' );
1534 printf ( "screenshot : %s\n", filename.c_str() );
1535 Game->Device->getVideoDriver()->writeImageToFile(image, filename, 100 );
1536 image->drop();
1537 }
1538 }
1539 else
1540 if (eve.KeyInput.Key == KEY_F9)
1541 {
1542 s32 value = EDS_OFF;
1543
1544 Game->debugState = ( Game->debugState + 1 ) & 3;
1545
1546 switch ( Game->debugState )
1547 {
1548 case 1: value = EDS_NORMALS | EDS_MESH_WIRE_OVERLAY | EDS_BBOX_ALL; break;
1549 case 2: value = EDS_NORMALS | EDS_MESH_WIRE_OVERLAY | EDS_SKELETON; break;
1550 }
1551/*
1552 // set debug map data on/off
1553 debugState = debugState == EDS_OFF ?
1554 EDS_NORMALS | EDS_MESH_WIRE_OVERLAY | EDS_BBOX_ALL:
1555 EDS_OFF;
1556*/
1557 if ( ItemParent )
1558 {
1559 list<ISceneNode*>::ConstIterator it = ItemParent->getChildren().begin();
1560 for (; it != ItemParent->getChildren().end(); ++it)
1561 {
1562 (*it)->setDebugDataVisible ( value );
1563 }
1564 }
1565
1566 if ( ShaderParent )
1567 {
1568 list<ISceneNode*>::ConstIterator it = ShaderParent->getChildren().begin();
1569 for (; it != ShaderParent->getChildren().end(); ++it)
1570 {
1571 (*it)->setDebugDataVisible ( value );
1572 }
1573 }
1574
1575 if ( UnresolvedParent )
1576 {
1577 list<ISceneNode*>::ConstIterator it = UnresolvedParent->getChildren().begin();
1578 for (; it != UnresolvedParent->getChildren().end(); ++it)
1579 {
1580 (*it)->setDebugDataVisible ( value );
1581 }
1582 }
1583
1584 if ( FogParent )
1585 {
1586 list<ISceneNode*>::ConstIterator it = FogParent->getChildren().begin();
1587 for (; it != FogParent->getChildren().end(); ++it)
1588 {
1589 (*it)->setDebugDataVisible ( value );
1590 }
1591 }
1592
1593 if ( SkyNode )
1594 {
1595 SkyNode->setDebugDataVisible ( value );
1596 }
1597
1598 }
1599 else
1600 if (eve.KeyInput.Key == KEY_F8)
1601 {
1602 // set gravity on/off
1603 Game->gravityState ^= 1;
1604 Player[0].cam()->setGravity ( getGravity ( Game->gravityState ? "earth" : "none" ) );
1605 printf ( "gravity %s\n", Game->gravityState ? "earth" : "none" );
1606 }
1607 else
1608 if (eve.KeyInput.Key == KEY_F7)
1609 {
1610 // set fly through active
1611 Game->flyTroughState ^= 1;
1612 Player[0].cam()->setAnimateTarget ( Game->flyTroughState == 0 );
1613 if ( gui.Collision )
1614 gui.Collision->setChecked ( Game->flyTroughState == 0 );
1615
1616 printf ( "collision %d\n", Game->flyTroughState == 0 );
1617 }
1618 else
1619 if (eve.KeyInput.Key == KEY_F2)
1620 {
1621 Player[0].respawn ();
1622 }
1623 else
1624 if (eve.KeyInput.Key == KEY_F3)
1625 {
1626 if ( MapParent )
1627 {
1628 bool v = !MapParent->isVisible ();
1629 printf ( "static node set visible %d\n",v );
1630 MapParent->setVisible ( v );
1631 if ( gui.Visible_Map )
1632 gui.Visible_Map->setChecked ( v );
1633 }
1634 }
1635 else
1636 if (eve.KeyInput.Key == KEY_F4)
1637 {
1638 if ( ShaderParent )
1639 {
1640 bool v = !ShaderParent->isVisible ();
1641 printf ( "shader node set visible %d\n",v );
1642 ShaderParent->setVisible ( v );
1643 if ( gui.Visible_Shader )
1644 gui.Visible_Shader->setChecked ( v );
1645 }
1646 }
1647 else
1648 if (eve.KeyInput.Key == KEY_F5)
1649 {
1650 if ( FogParent )
1651 {
1652 bool v = !FogParent->isVisible ();
1653 printf ( "fog node set visible %d\n",v );
1654 FogParent->setVisible ( v );
1655 if ( gui.Visible_Fog )
1656 gui.Visible_Fog->setChecked ( v );
1657 }
1658
1659 }
1660 else
1661 if (eve.KeyInput.Key == KEY_F6)
1662 {
1663 if ( UnresolvedParent )
1664 {
1665 bool v = !UnresolvedParent->isVisible ();
1666 printf ( "unresolved node set visible %d\n",v );
1667 UnresolvedParent->setVisible ( v );
1668 if ( gui.Visible_Unresolved )
1669 gui.Visible_Unresolved->setChecked ( v );
1670 }
1671 }
1672 }
1673
1674 // check if user presses the key C ( for crouch)
1675 if ( eve.EventType == EET_KEY_INPUT_EVENT && eve.KeyInput.Key == KEY_KEY_C )
1676 {
1677 // crouch
1678 ISceneNodeAnimatorCollisionResponse *anim = Player[0].cam ();
1679 if ( anim && 0 == Game->flyTroughState )
1680 {
1681 if ( false == eve.KeyInput.PressedDown )
1682 {
1683 // stand up
1684 anim->setEllipsoidRadius ( vector3df(30,45,30) );
1685 anim->setEllipsoidTranslation ( vector3df(0,40,0));
1686
1687 }
1688 else
1689 {
1690 // on your knees
1691 anim->setEllipsoidRadius ( vector3df(30,20,30) );
1692 anim->setEllipsoidTranslation ( vector3df(0,20,0));
1693 }
1694 return true;
1695 }
1696 }
1697 return false;
1698}
1699
1700
1701
1702/*
1703 useItem
1704*/
1705void CQuake3EventHandler::useItem( Q3Player * player)
1706{
1707 ISceneManager* smgr = Game->Device->getSceneManager();
1708 ICameraSceneNode* camera = smgr->getActiveCamera();
1709
1710 if (!camera)
1711 return;
1712
1713 SParticleImpact imp;
1714 imp.when = 0;
1715
1716 // get line of camera
1717
1718 vector3df start = camera->getPosition();
1719
1720 if ( player->WeaponNode )
1721 {
1722 start.X += 0.f;
1723 start.Y += 0.f;
1724 start.Z += 0.f;
1725 }
1726
1727 vector3df end = (camera->getTarget() - start);
1728 end.normalize();
1729 start += end*20.0f;
1730
1731 end = start + (end * camera->getFarValue());
1732
1733 triangle3df triangle;
1734 line3d<f32> line(start, end);
1735
1736 // get intersection point with map
1737 scene::ISceneNode* hitNode;
1738 if (smgr->getSceneCollisionManager()->getCollisionPoint(
1739 line, Meta, end, triangle,hitNode))
1740 {
1741 // collides with wall
1742 vector3df out = triangle.getNormal();
1743 out.setLength(0.03f);
1744
1745 imp.when = 1;
1746 imp.outVector = out;
1747 imp.pos = end;
1748
1749 player->setAnim ( "pow" );
1750 player->Anim[1].next += player->Anim[1].delta;
1751 }
1752 else
1753 {
1754 // doesnt collide with wall
1755 vector3df start = camera->getPosition();
1756 if ( player->WeaponNode )
1757 {
1758 //start.X += 10.f;
1759 //start.Y += -5.f;
1760 //start.Z += 1.f;
1761 }
1762
1763 vector3df end = (camera->getTarget() - start);
1764 end.normalize();
1765 start += end*20.0f;
1766 end = start + (end * camera->getFarValue());
1767 }
1768
1769 // create fire ball
1770 ISceneNode* node = 0;
1771 node = smgr->addBillboardSceneNode( BulletParent,dimension2d<f32>(10,10), start);
1772
1773 node->setMaterialFlag(EMF_LIGHTING, false);
1774 node->setMaterialTexture(0, Game->Device->getVideoDriver()->getTexture("fireball.bmp"));
1775 node->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
1776 node->setMaterialType(EMT_TRANSPARENT_ADD_COLOR);
1777
1778 f32 length = (f32)(end - start).getLength();
1779 const f32 speed = 5.8f;
1780 u32 time = (u32)(length / speed);
1781
1782 ISceneNodeAnimator* anim = 0;
1783
1784 // set flight line
1785
1786 anim = smgr->createFlyStraightAnimator(start, end, time);
1787 node->addAnimator(anim);
1788 anim->drop();
1789
1790 snprintf ( buf, 64, "bullet: %s on %.1f,%1.f,%1.f",
1791 imp.when ? "hit" : "nohit", end.X, end.Y, end.Z );
1792 node->setName ( buf );
1793
1794
1795 anim = smgr->createDeleteAnimator(time);
1796 node->addAnimator(anim);
1797 anim->drop();
1798
1799 if (imp.when)
1800 {
1801 // create impact note
1802 imp.when = Game->Device->getTimer()->getTime() +
1803 (time + (s32) ( ( 1.f + Noiser::get() ) * 250.f ));
1804 Impacts.push_back(imp);
1805 }
1806
1807 // play sound
1808}
1809
1810// rendered when bullets hit something
1811void CQuake3EventHandler::createParticleImpacts( u32 now )
1812{
1813 ISceneManager* sm = Game->Device->getSceneManager();
1814
1815 struct smokeLayer
1816 {
1817 const c8 * texture;
1818 f32 scale;
1819 f32 minparticleSize;
1820 f32 maxparticleSize;
1821 f32 boxSize;
1822 u32 minParticle;
1823 u32 maxParticle;
1824 u32 fadeout;
1825 u32 lifetime;
1826 };
1827
1828 smokeLayer smoke[] =
1829 {
1830 { "smoke2.jpg", 0.4f, 1.5f, 18.f, 20.f, 20, 50, 2000, 10000 },
1831 { "smoke3.jpg", 0.2f, 1.2f, 15.f, 20.f, 10, 30, 1000, 12000 }
1832 };
1833
1834
1835 u32 i;
1836 u32 g;
1837 s32 factor = 1;
1838 for ( g = 0; g != 2; ++g )
1839 {
1840 smoke[g].minParticle *= factor;
1841 smoke[g].maxParticle *= factor;
1842 smoke[g].lifetime *= factor;
1843 smoke[g].boxSize *= Noiser::get() * 0.5f;
1844 }
1845
1846 for ( i=0; i < Impacts.size(); ++i)
1847 {
1848 if (now < Impacts[i].when)
1849 continue;
1850
1851 // create smoke particle system
1852 IParticleSystemSceneNode* pas = 0;
1853
1854 for ( g = 0; g != 2; ++g )
1855 {
1856 pas = sm->addParticleSystemSceneNode(false, BulletParent, -1, Impacts[i].pos);
1857
1858 snprintf ( buf, 64, "bullet impact smoke at %.1f,%.1f,%1.f",
1859 Impacts[i].pos.X,Impacts[i].pos.Y,Impacts[i].pos.Z);
1860 pas->setName ( buf );
1861
1862 // create a flat smoke
1863 vector3df direction = Impacts[i].outVector;
1864 direction *= smoke[g].scale;
1865 IParticleEmitter* em = pas->createBoxEmitter(
1866 aabbox3d<f32>(-4.f,0.f,-4.f,20.f,smoke[g].minparticleSize,20.f),
1867 direction,smoke[g].minParticle, smoke[g].maxParticle,
1868 video::SColor(0,0,0,0),video::SColor(0,128,128,128),
1869 250,4000, 60);
1870
1871 em->setMinStartSize (dimension2d<f32>( smoke[g].minparticleSize, smoke[g].minparticleSize));
1872 em->setMaxStartSize (dimension2d<f32>( smoke[g].maxparticleSize, smoke[g].maxparticleSize));
1873
1874 pas->setEmitter(em);
1875 em->drop();
1876
1877 // particles get invisible
1878 IParticleAffector* paf = pas->createFadeOutParticleAffector(
1879 video::SColor ( 0, 0, 0, 0 ), smoke[g].fadeout);
1880 pas->addAffector(paf);
1881 paf->drop();
1882
1883 // particle system life time
1884 ISceneNodeAnimator* anim = sm->createDeleteAnimator( smoke[g].lifetime);
1885 pas->addAnimator(anim);
1886 anim->drop();
1887
1888 pas->setMaterialFlag(video::EMF_LIGHTING, false);
1889 pas->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
1890 pas->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR );
1891 pas->setMaterialTexture(0, Game->Device->getVideoDriver()->getTexture( smoke[g].texture ));
1892 }
1893
1894
1895 // play impact sound
1896 #ifdef USE_IRRKLANG
1897/*
1898 if (irrKlang)
1899 {
1900 audio::ISound* sound =
1901 irrKlang->play3D(impactSound, Impacts[i].pos, false, false, true);
1902
1903 if (sound)
1904 {
1905 // adjust max value a bit to make to sound of an impact louder
1906 sound->setMinDistance(400);
1907 sound->drop();
1908 }
1909 }
1910*/
1911 #endif
1912
1913
1914 // delete entry
1915 Impacts.erase(i);
1916 i--;
1917 }
1918}
1919
1920/*
1921 render
1922*/
1923void CQuake3EventHandler::Render()
1924{
1925 IVideoDriver * driver = Game->Device->getVideoDriver();
1926 if ( 0 == driver )
1927 return;
1928
1929 // TODO: This does not work, yet.
1930 const bool anaglyph=false;
1931 if (anaglyph)
1932 {
1933 scene::ICameraSceneNode* cameraOld = Game->Device->getSceneManager()->getActiveCamera();
1934 driver->beginScene(true, true, SColor(0,0,0,0));
1935 driver->getOverrideMaterial().Material.ColorMask = ECP_NONE;
1936 driver->getOverrideMaterial().EnableFlags = EMF_COLOR_MASK;
1937 driver->getOverrideMaterial().EnablePasses = ESNRP_SKY_BOX +
1938 ESNRP_SOLID +
1939 ESNRP_TRANSPARENT +
1940 ESNRP_TRANSPARENT_EFFECT +
1941 ESNRP_SHADOW;
1942 Game->Device->getSceneManager()->drawAll();
1943 driver->clearZBuffer();
1944
1945 const vector3df oldPosition = cameraOld->getPosition();
1946 const vector3df oldTarget = cameraOld->getTarget();
1947 const matrix4 startMatrix = cameraOld->getAbsoluteTransformation();
1948 const vector3df focusPoint = (oldTarget -
1949 cameraOld->getAbsolutePosition()).setLength(10000) +
1950 cameraOld->getAbsolutePosition() ;
1951
1952 scene::ICameraSceneNode* camera = cameraOld;//Game->Device->getSceneManager()->addCameraSceneNode();
1953
1954 //Left eye...
1955 vector3df pos;
1956 matrix4 move;
1957
1958 move.setTranslation( vector3df(-1.5f,0.0f,0.0f) );
1959 pos=(startMatrix*move).getTranslation();
1960
1961 driver->getOverrideMaterial().Material.ColorMask = ECP_RED;
1962 driver->getOverrideMaterial().EnableFlags = EMF_COLOR_MASK;
1963 driver->getOverrideMaterial().EnablePasses =
1964 ESNRP_SKY_BOX|ESNRP_SOLID|ESNRP_TRANSPARENT|
1965 ESNRP_TRANSPARENT_EFFECT|ESNRP_SHADOW;
1966
1967 camera->setPosition(pos);
1968 camera->setTarget(focusPoint);
1969
1970 Game->Device->getSceneManager()->drawAll();
1971 driver->clearZBuffer();
1972
1973 //Right eye...
1974 move.setTranslation( vector3df(1.5f,0.0f,0.0f) );
1975 pos=(startMatrix*move).getTranslation();
1976
1977 driver->getOverrideMaterial().Material.ColorMask = ECP_GREEN + ECP_BLUE;
1978 driver->getOverrideMaterial().EnableFlags = EMF_COLOR_MASK;
1979 driver->getOverrideMaterial().EnablePasses =
1980 ESNRP_SKY_BOX|ESNRP_SOLID|ESNRP_TRANSPARENT|
1981 ESNRP_TRANSPARENT_EFFECT|ESNRP_SHADOW;
1982
1983 camera->setPosition(pos);
1984 camera->setTarget(focusPoint);
1985
1986 Game->Device->getSceneManager()->drawAll();
1987
1988 driver->getOverrideMaterial().Material.ColorMask=ECP_ALL;
1989 driver->getOverrideMaterial().EnableFlags=0;
1990 driver->getOverrideMaterial().EnablePasses=0;
1991
1992 if (camera != cameraOld)
1993 {
1994 Game->Device->getSceneManager()->setActiveCamera(cameraOld);
1995 camera->remove();
1996 }
1997 else
1998 {
1999 camera->setPosition(oldPosition);
2000 camera->setTarget(oldTarget);
2001 }
2002 }
2003 else
2004 {
2005 driver->beginScene(true, true, SColor(0,0,0,0));
2006 Game->Device->getSceneManager()->drawAll();
2007 }
2008 Game->Device->getGUIEnvironment()->drawAll();
2009 driver->endScene();
2010}
2011
2012/*
2013 update the generic scene node
2014*/
2015void CQuake3EventHandler::Animate()
2016{
2017 u32 now = Game->Device->getTimer()->getTime();
2018
2019 Q3Player * player = Player + 0;
2020
2021 checkTimeFire ( player->Anim, 4, now );
2022
2023 // Query Scene Manager attributes
2024 if ( player->Anim[0].flags & FIRED )
2025 {
2026 ISceneManager *smgr = Game->Device->getSceneManager ();
2027 wchar_t msg[128];
2028 IVideoDriver * driver = Game->Device->getVideoDriver();
2029
2030 IAttributes * attr = smgr->getParameters();
2031#ifdef _IRR_SCENEMANAGER_DEBUG
2032 swprintf ( msg, 128,
2033 L"Q3 %s [%ls], FPS:%03d Tri:%.03fm Cull %d/%d nodes (%d,%d,%d)",
2034 Game->CurrentMapName.c_str(),
2035 driver->getName(),
2036 driver->getFPS (),
2037 (f32) driver->getPrimitiveCountDrawn( 0 ) * ( 1.f / 1000000.f ),
2038 attr->getAttributeAsInt ( "culled" ),
2039 attr->getAttributeAsInt ( "calls" ),
2040 attr->getAttributeAsInt ( "drawn_solid" ),
2041 attr->getAttributeAsInt ( "drawn_transparent" ),
2042 attr->getAttributeAsInt ( "drawn_transparent_effect" )
2043 );
2044#else
2045swprintf ( msg, 128,
2046 L"Q3 %s [%ls], FPS:%03d Tri:%.03fm",
2047 Game->CurrentMapName.c_str(),
2048 driver->getName(),
2049 driver->getFPS (),
2050 (f32) driver->getPrimitiveCountDrawn( 0 ) * ( 1.f / 1000000.f )
2051 );
2052#endif
2053 Game->Device->setWindowCaption( msg );
2054
2055 swprintf ( msg, 128,
2056 L"%03d fps, F1 GUI on/off, F2 respawn, F3-F6 toggle Nodes, F7 Collision on/off"
2057 L", F8 Gravity on/off, Right Mouse Toggle GUI",
2058 Game->Device->getVideoDriver()->getFPS ()
2059 );
2060 if ( gui.StatusLine )
2061 gui.StatusLine->setText ( msg );
2062 player->Anim[0].flags &= ~FIRED;
2063 }
2064
2065 // idle..
2066 if ( player->Anim[1].flags & FIRED )
2067 {
2068 if ( strcmp ( player->animation, "idle" ) )
2069 player->setAnim ( "idle" );
2070
2071 player->Anim[1].flags &= ~FIRED;
2072 }
2073
2074 createParticleImpacts ( now );
2075
2076}
2077
2078
2079/* The main game states
2080*/
2081void runGame ( GameData *game )
2082{
2083 if ( game->retVal >= 3 )
2084 return;
2085
2086 game->Device = (*game->createExDevice) ( game->deviceParam );
2087 if ( 0 == game->Device)
2088 {
2089 // could not create selected driver.
2090 game->retVal = 0;
2091 return;
2092 }
2093
2094 // create an event receiver based on current game data
2095 CQuake3EventHandler *eventHandler = new CQuake3EventHandler( game );
2096
2097 // load stored config
2098 game->load ( "explorer.cfg" );
2099
2100 // add our media directory and archive to the file system
2101 for ( u32 i = 0; i < game->CurrentArchiveList.size(); ++i )
2102 {
2103 eventHandler->AddArchive ( game->CurrentArchiveList[i] );
2104 }
2105
2106 // Load a Map or startup to the GUI
2107 if ( game->CurrentMapName.size () )
2108 {
2109 eventHandler->LoadMap ( game->CurrentMapName, 1 );
2110 if ( 0 == game->loadParam.loadSkyShader )
2111 eventHandler->AddSky ( 1, "skydome2" );
2112 eventHandler->CreatePlayers ();
2113 eventHandler->CreateGUI ();
2114 eventHandler->SetGUIActive ( 0 );
2115
2116 // set player to last position on restart
2117 if ( game->retVal == 2 )
2118 {
2119 eventHandler->GetPlayer( 0 )->setpos ( game->PlayerPosition, game->PlayerRotation );
2120 }
2121 }
2122 else
2123 {
2124 // start up empty
2125 eventHandler->AddSky ( 1, "skydome2" );
2126 eventHandler->CreatePlayers ();
2127 eventHandler->CreateGUI ();
2128 eventHandler->SetGUIActive ( 1 );
2129 background_music ( "IrrlichtTheme.ogg" );
2130 }
2131
2132
2133 game->retVal = 3;
2134 while( game->Device->run() )
2135 {
2136 eventHandler->Animate ();
2137 eventHandler->Render ();
2138 //if ( !game->Device->isWindowActive() )
2139 game->Device->yield();
2140 }
2141
2142 game->Device->setGammaRamp ( 1.f, 1.f, 1.f, 0.f, 0.f );
2143 delete eventHandler;
2144}
2145
2146#if defined (_IRR_WINDOWS_) && 0
2147 #pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup")
2148#endif
2149
2150
2151/* The main routine, doing all setup
2152*/
2153int IRRCALLCONV main(int argc, char* argv[])
2154{
2155 path prgname(argv[0]);
2156 GameData game ( deletePathFromPath ( prgname, 1 ) );
2157
2158 // dynamically load irrlicht
2159 const c8 * dllName = argc > 1 ? argv[1] : "irrlicht.dll";
2160 game.createExDevice = load_createDeviceEx ( dllName );
2161 if ( 0 == game.createExDevice )
2162 {
2163 game.retVal = 3;
2164 printf ( "Could not load %s.\n", dllName );
2165 return game.retVal; // could not load dll
2166 }
2167
2168 // start without asking for driver
2169 game.retVal = 1;
2170 do
2171 {
2172 // if driver could not created, ask for another driver
2173 if ( game.retVal == 0 )
2174 {
2175 game.setDefault ();
2176 // ask user for driver
2177 game.deviceParam.DriverType=driverChoiceConsole();
2178 if (game.deviceParam.DriverType==video::EDT_COUNT)
2179 game.retVal = 3;
2180 }
2181 runGame ( &game );
2182 } while ( game.retVal < 3 );
2183
2184 return game.retVal;
2185}
2186
2187/*
2188**/
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.cpp b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.cpp
new file mode 100644
index 0000000..d0f09b2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.cpp
@@ -0,0 +1,824 @@
1/*!
2 Model Factory.
3 create the additional scenenodes for ( bullets, health... )
4
5 Defines the Entities for Quake3
6*/
7
8#include <irrlicht.h>
9#include "q3factory.h"
10#include "sound.h"
11
12using namespace irr;
13using namespace scene;
14using namespace gui;
15using namespace video;
16using namespace core;
17using namespace quake3;
18
19//! This list is based on the original quake3.
20static const SItemElement Quake3ItemElement [] = {
21{ "item_health",
22 {"models/powerups/health/medium_cross.md3",
23 "models/powerups/health/medium_sphere.md3"},
24 "sound/items/n_health.wav",
25 "icons/iconh_yellow",
26 "25 Health",
27 25,
28 HEALTH,
29 SUB_NONE,
30 SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
31},
32{ "item_health_large",
33 "models/powerups/health/large_cross.md3",
34 "models/powerups/health/large_sphere.md3",
35 "sound/items/l_health.wav",
36 "icons/iconh_red",
37 "50 Health",
38 50,
39 HEALTH,
40 SUB_NONE,
41 SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
42},
43{
44 "item_health_mega",
45 "models/powerups/health/mega_cross.md3",
46 "models/powerups/health/mega_sphere.md3",
47 "sound/items/m_health.wav",
48 "icons/iconh_mega",
49 "Mega Health",
50 100,
51 HEALTH,
52 SUB_NONE,
53 SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
54},
55{
56 "item_health_small",
57 "models/powerups/health/small_cross.md3",
58 "models/powerups/health/small_sphere.md3",
59 "sound/items/s_health.wav",
60 "icons/iconh_green",
61 "5 Health",
62 5,
63 HEALTH,
64 SUB_NONE,
65 SPECIAL_SFX_BOUNCE | SPECIAL_SFX_ROTATE_1
66},
67{ "ammo_bullets",
68 "models/powerups/ammo/machinegunam.md3",
69 "",
70 "sound/misc/am_pkup.wav",
71 "icons/icona_machinegun",
72 "Bullets",
73 50,
74 AMMO,
75 MACHINEGUN,
76 SPECIAL_SFX_BOUNCE,
77},
78{
79 "ammo_cells",
80 "models/powerups/ammo/plasmaam.md3",
81 "",
82 "sound/misc/am_pkup.wav",
83 "icons/icona_plasma",
84 "Cells",
85 30,
86 AMMO,
87 PLASMAGUN,
88 SPECIAL_SFX_BOUNCE
89},
90{ "ammo_rockets",
91 "models/powerups/ammo/rocketam.md3",
92 "",
93 "",
94 "icons/icona_rocket",
95 "Rockets",
96 5,
97 AMMO,
98 ROCKET_LAUNCHER,
99 SPECIAL_SFX_ROTATE
100},
101{
102 "ammo_shells",
103 "models/powerups/ammo/shotgunam.md3",
104 "",
105 "sound/misc/am_pkup.wav",
106 "icons/icona_shotgun",
107 "Shells",
108 10,
109 AMMO,
110 SHOTGUN,
111 SPECIAL_SFX_ROTATE
112},
113{
114 "ammo_slugs",
115 "models/powerups/ammo/railgunam.md3",
116 "",
117 "sound/misc/am_pkup.wav",
118 "icons/icona_railgun",
119 "Slugs",
120 10,
121 AMMO,
122 RAILGUN,
123 SPECIAL_SFX_ROTATE
124},
125{
126 "item_armor_body",
127 "models/powerups/armor/armor_red.md3",
128 "",
129 "sound/misc/ar2_pkup.wav",
130 "icons/iconr_red",
131 "Heavy Armor",
132 100,
133 ARMOR,
134 SUB_NONE,
135 SPECIAL_SFX_ROTATE
136},
137{
138 "item_armor_combat",
139 "models/powerups/armor/armor_yel.md3",
140 "",
141 "sound/misc/ar2_pkup.wav",
142 "icons/iconr_yellow",
143 "Armor",
144 50,
145 ARMOR,
146 SUB_NONE,
147 SPECIAL_SFX_ROTATE
148},
149{
150 "item_armor_shard",
151 "models/powerups/armor/shard.md3",
152 "",
153 "sound/misc/ar1_pkup.wav",
154 "icons/iconr_shard",
155 "Armor Shared",
156 5,
157 ARMOR,
158 SUB_NONE,
159 SPECIAL_SFX_ROTATE
160},
161{
162 "weapon_gauntlet",
163 "models/weapons2/gauntlet/gauntlet.md3",
164 "",
165 "sound/misc/w_pkup.wav",
166 "icons/iconw_gauntlet",
167 "Gauntlet",
168 0,
169 WEAPON,
170 GAUNTLET,
171 SPECIAL_SFX_ROTATE
172},
173{
174 "weapon_shotgun",
175 "models/weapons2/shotgun/shotgun.md3",
176 "",
177 "sound/misc/w_pkup.wav",
178 "icons/iconw_shotgun",
179 "Shotgun",
180 10,
181 WEAPON,
182 SHOTGUN,
183 SPECIAL_SFX_ROTATE
184},
185{
186 "weapon_machinegun",
187 "models/weapons2/machinegun/machinegun.md3",
188 "",
189 "sound/misc/w_pkup.wav",
190 "icons/iconw_machinegun",
191 "Machinegun",
192 40,
193 WEAPON,
194 MACHINEGUN,
195 SPECIAL_SFX_ROTATE
196},
197{
198 "weapon_grenadelauncher",
199 "models/weapons2/grenadel/grenadel.md3",
200 "",
201 "sound/misc/w_pkup.wav",
202 "icons/iconw_grenade",
203 "Grenade Launcher",
204 10,
205 WEAPON,
206 GRENADE_LAUNCHER,
207 SPECIAL_SFX_ROTATE
208},
209{
210 "weapon_rocketlauncher",
211 "models/weapons2/rocketl/rocketl.md3",
212 "",
213 "sound/misc/w_pkup.wav",
214 "icons/iconw_rocket",
215 "Rocket Launcher",
216 10,
217 WEAPON,
218 ROCKET_LAUNCHER,
219 SPECIAL_SFX_ROTATE
220},
221{
222 "weapon_lightning",
223 "models/weapons2/lightning/lightning.md3",
224 "",
225 "sound/misc/w_pkup.wav",
226 "icons/iconw_lightning",
227 "Lightning Gun",
228 100,
229 WEAPON,
230 LIGHTNING,
231 SPECIAL_SFX_ROTATE
232},
233{
234 "weapon_railgun",
235 "models/weapons2/railgun/railgun.md3",
236 "",
237 "sound/misc/w_pkup.wav",
238 "icons/iconw_railgun",
239 "Railgun",
240 10,
241 WEAPON,
242 RAILGUN,
243 SPECIAL_SFX_ROTATE
244},
245{
246 "weapon_plasmagun",
247 "models/weapons2/plasma/plasma.md3",
248 "",
249 "sound/misc/w_pkup.wav",
250 "icons/iconw_plasma",
251 "Plasma Gun",
252 50,
253 WEAPON,
254 PLASMAGUN,
255 SPECIAL_SFX_ROTATE
256},
257{
258 "weapon_bfg",
259 "models/weapons2/bfg/bfg.md3",
260 "",
261 "sound/misc/w_pkup.wav",
262 "icons/iconw_bfg",
263 "BFG10K",
264 20,
265 WEAPON,
266 BFG,
267 SPECIAL_SFX_ROTATE
268},
269{
270 "weapon_grapplinghook",
271 "models/weapons2/grapple/grapple.md3",
272 "",
273 "sound/misc/w_pkup.wav",
274 "icons/iconw_grapple",
275 "Grappling Hook",
276 0,
277 WEAPON,
278 GRAPPLING_HOOK,
279 SPECIAL_SFX_ROTATE
280},
281{
282 0
283}
284
285};
286
287
288/*!
289*/
290const SItemElement * getItemElement ( const stringc& key )
291{
292 const SItemElement *item = Quake3ItemElement;
293
294 while ( item->key )
295 {
296 if ( 0 == strcmp ( key.c_str(), item->key ) )
297 return item;
298 item += 1;
299 }
300 return 0;
301}
302
303/*!
304 Quake3 Model Factory.
305 Takes the mesh buffers and creates scenenodes for their associated shaders
306*/
307void Q3ShaderFactory ( Q3LevelLoadParameter &loadParam,
308 IrrlichtDevice *device,
309 IQ3LevelMesh* mesh,
310 eQ3MeshIndex meshIndex,
311 ISceneNode *parent,
312 IMetaTriangleSelector *meta,
313 bool showShaderName )
314{
315 if ( 0 == mesh || 0 == device )
316 return;
317
318 IMeshSceneNode* node = 0;
319 ISceneManager* smgr = device->getSceneManager();
320 ITriangleSelector * selector = 0;
321
322 // the additional mesh can be quite huge and is unoptimized
323 // Save to cast to SMesh
324 SMesh * additional_mesh = (SMesh*) mesh->getMesh ( meshIndex );
325 if ( 0 == additional_mesh || additional_mesh->getMeshBufferCount() == 0)
326 return;
327
328 char buf[128];
329 if ( loadParam.verbose > 0 )
330 {
331 loadParam.startTime = device->getTimer()->getRealTime();
332 if ( loadParam.verbose > 1 )
333 {
334 snprintf(buf, 128, "q3shaderfactory start" );
335 device->getLogger()->log( buf, ELL_INFORMATION);
336 }
337 }
338
339 IGUIFont *font = 0;
340 if ( showShaderName )
341 font = device->getGUIEnvironment()->getFont("fontlucida.png");
342
343 IVideoDriver *driver = device->getVideoDriver();
344
345 // create helper textures
346 if ( 1 )
347 {
348 tTexArray tex;
349 u32 pos = 0;
350 getTextures ( tex, "$redimage $blueimage $whiteimage $checkerimage", pos,
351 device->getFileSystem(), driver );
352 }
353
354 s32 sceneNodeID = 0;
355 for ( u32 i = 0; i!= additional_mesh->getMeshBufferCount (); ++i )
356 {
357 IMeshBuffer *meshBuffer = additional_mesh->getMeshBuffer ( i );
358 const SMaterial &material = meshBuffer->getMaterial();
359
360 //! The ShaderIndex is stored in the second material parameter
361 s32 shaderIndex = (s32) material.MaterialTypeParam2;
362
363 // the meshbuffer can be rendered without additional support, or it has no shader
364 IShader *shader = (IShader *) mesh->getShader ( shaderIndex );
365
366 // no shader, or mapped to existing material
367 if ( 0 == shader )
368 {
369
370#if 1
371 // clone mesh
372 SMesh * m = new SMesh ();
373 m->addMeshBuffer ( meshBuffer );
374 SMaterial &mat = m->getMeshBuffer( 0 )->getMaterial();
375 if ( mat.getTexture( 0 ) == 0 )
376 mat.setTexture ( 0, driver->getTexture ( "$blueimage" ) );
377 if ( mat.getTexture( 1 ) == 0 )
378 mat.setTexture ( 1, driver->getTexture ( "$redimage" ) );
379
380 IMesh * store = smgr->getMeshManipulator ()->createMeshWith2TCoords ( m );
381 m->drop();
382
383 node = smgr->addMeshSceneNode ( store, parent, sceneNodeID );
384 node->setAutomaticCulling ( scene::EAC_OFF );
385 store->drop ();
386 sceneNodeID += 1;
387#endif
388 }
389 else if ( 1 )
390 {
391/*
392 stringc s;
393 dumpShader ( s, shader );
394 printf ( s.c_str () );
395*/
396 // create sceneNode
397 node = smgr->addQuake3SceneNode ( meshBuffer, shader, parent, sceneNodeID );
398 node->setAutomaticCulling ( scene::EAC_FRUSTUM_BOX );
399 sceneNodeID += 1;
400 }
401
402 // show Debug Shader Name
403 if ( showShaderName && node )
404 {
405 swprintf ( (wchar_t*) buf, 64, L"%hs:%d", node->getName(),node->getID() );
406 smgr->addBillboardTextSceneNode(
407 font,
408 (wchar_t*) buf,
409 node,
410 dimension2d<f32>(80.0f, 8.0f),
411 vector3df(0, 10, 0),
412 sceneNodeID);
413 sceneNodeID += 1;
414 }
415
416 // create Portal Rendertargets
417 if ( shader )
418 {
419 const SVarGroup *group = shader->getGroup(1);
420 if ( group->isDefined( "surfaceparm", "portal" ) )
421 {
422 }
423
424 }
425
426
427 // add collision
428 // find out if shader is marked as nonsolid
429 u8 doCreate = meta !=0 ;
430
431 if ( shader )
432 {
433 const SVarGroup *group = shader->getGroup(1);
434 if ( group->isDefined( "surfaceparm", "trans" )
435 // || group->isDefined( "surfaceparm", "sky" )
436 // || group->isDefined( "surfaceparm", "nonsolid" )
437 )
438 {
439 if ( !group->isDefined( "surfaceparm", "metalsteps" ) )
440 {
441 doCreate = 0;
442 }
443 }
444 }
445
446 if ( doCreate )
447 {
448 IMesh *m = 0;
449
450 //! controls if triangles are modified by the scenenode during runtime
451 bool takeOriginal = true;
452
453 if ( takeOriginal )
454 {
455 m = new SMesh ();
456 ((SMesh*) m )->addMeshBuffer (meshBuffer);
457 }
458 else
459 {
460 m = node->getMesh();
461 }
462
463 //selector = smgr->createOctreeTriangleSelector ( m, 0, 128 );
464 selector = smgr->createTriangleSelector ( m, 0 );
465 meta->addTriangleSelector ( selector );
466 selector->drop ();
467
468 if ( takeOriginal )
469 {
470 delete m;
471 }
472 }
473
474 }
475
476#if 0
477 if ( meta )
478 {
479 selector = smgr->createOctreeTriangleSelector ( additional_mesh, 0 );
480 meta->addTriangleSelector ( selector );
481 selector->drop ();
482 }
483#endif
484
485 if ( loadParam.verbose > 0 )
486 {
487 loadParam.endTime = device->getTimer()->getRealTime ();
488 snprintf(buf, 128, "q3shaderfactory needed %04d ms to create %d shader nodes",
489 loadParam.endTime - loadParam.startTime,
490 sceneNodeID
491 );
492 device->getLogger()->log(buf, ELL_INFORMATION);
493 }
494
495}
496
497
498/*!
499 create Items from Entity
500*/
501void Q3ModelFactory ( Q3LevelLoadParameter &loadParam,
502 IrrlichtDevice *device,
503 IQ3LevelMesh* masterMesh,
504 ISceneNode *parent,
505 bool showShaderName
506 )
507{
508 if ( 0 == masterMesh )
509 return;
510
511 tQ3EntityList &entity = masterMesh->getEntityList ();
512 ISceneManager* smgr = device->getSceneManager();
513
514
515 char buf[128];
516 const SVarGroup *group;
517 IEntity search;
518 s32 index;
519 s32 lastIndex;
520
521/*
522 stringc s;
523 FILE *f = 0;
524 f = fopen ( "entity.txt", "wb" );
525 for ( index = 0; (u32) index < entityList.size (); ++index )
526 {
527 const IEntity *entity = &entityList[ index ];
528 s = entity->name;
529 dumpShader ( s, entity );
530 fwrite ( s.c_str(), 1, s.size(), f );
531 }
532 fclose ( f );
533*/
534 IAnimatedMeshMD3* model;
535 SMD3Mesh * mesh;
536 const SMD3MeshBuffer *meshBuffer;
537 IMeshSceneNode* node;
538 ISceneNodeAnimator* anim;
539 const IShader *shader;
540 u32 pos;
541 vector3df p;
542 u32 nodeCount = 0;
543 tTexArray textureArray;
544
545 IGUIFont *font = 0;
546 if ( showShaderName )
547 font = device->getGUIEnvironment()->getFont("fontlucida.png");
548
549 const SItemElement *itemElement;
550
551 // walk list
552 for ( index = 0; (u32) index < entity.size(); ++index )
553 {
554 itemElement = getItemElement ( entity[index].name );
555 if ( 0 == itemElement )
556 continue;
557
558 pos = 0;
559 p = getAsVector3df ( entity[index].getGroup(1)->get ( "origin" ), pos );
560
561 nodeCount += 1;
562 for ( u32 g = 0; g < 2; ++g )
563 {
564 if ( 0 == itemElement->model[g] || itemElement->model[g][0] == 0 )
565 continue;
566 model = (IAnimatedMeshMD3*) smgr->getMesh( itemElement->model[g] );
567 if ( 0 == model )
568 continue;
569
570 mesh = model->getOriginalMesh();
571 for ( u32 j = 0; j != mesh->Buffer.size (); ++j )
572 {
573 meshBuffer = mesh->Buffer[j];
574 if ( 0 == meshBuffer )
575 continue;
576
577 shader = masterMesh->getShader ( meshBuffer->Shader.c_str(), false );
578 IMeshBuffer *final = model->getMesh(0)->getMeshBuffer(j);
579 if ( shader )
580 {
581 //!TODO: Hack don't modify the vertexbuffer. make it better;-)
582 final->getMaterial().ColorMask = 0;
583 node = smgr->addQuake3SceneNode ( final, shader, parent );
584 final->getMaterial().ColorMask = 15;
585 }
586 else
587 {
588 // clone mesh
589 SMesh * m = new SMesh ();
590 m->addMeshBuffer ( final );
591 node = smgr->addMeshSceneNode ( m, parent );
592 m->drop();
593 }
594
595 if ( 0 == node )
596 {
597 snprintf ( buf, 128, "q3ModelFactory shader %s failed", meshBuffer->Shader.c_str() );
598 device->getLogger()->log ( buf );
599 continue;
600 }
601
602 // node was maybe centered by shaderscenenode
603 node->setPosition ( p );
604 node->setName ( meshBuffer->Shader );
605 node->setAutomaticCulling ( scene::EAC_BOX );
606
607 // add special effects to node
608 if ( itemElement->special & SPECIAL_SFX_ROTATE ||
609 (g == 0 && itemElement->special & SPECIAL_SFX_ROTATE_1)
610 )
611 {
612 anim = smgr->createRotationAnimator ( vector3df ( 0.f,
613 2.f, 0.f ) );
614 node->addAnimator ( anim );
615 anim->drop ();
616 }
617
618 if ( itemElement->special & SPECIAL_SFX_BOUNCE )
619 {
620 //anim = smgr->createFlyStraightAnimator (
621 // p, p + vector3df ( 0.f, 60.f, 0.f ), 1000, true, true );
622 anim = smgr->createFlyCircleAnimator (
623 p + vector3df( 0.f, 20.f, 0.f ),
624 20.f,
625 0.005f,
626 vector3df ( 1.f, 0.f, 0.f ),
627 core::fract ( nodeCount * 0.05f ),
628 1.f
629 );
630 node->addAnimator ( anim );
631 anim->drop ();
632 }
633 }
634 }
635 // show name
636 if ( showShaderName )
637 {
638 swprintf ( (wchar_t*) buf, sizeof(buf) / 2, L"%hs", itemElement->key );
639 smgr->addBillboardTextSceneNode(
640 font,
641 (wchar_t*) buf,
642 parent,
643 dimension2d<f32>(80.0f, 8.0f),
644 p + vector3df(0, 30, 0),
645 0);
646 }
647 }
648
649 // music
650 search.name = "worldspawn";
651 index = entity.binary_search_multi ( search, lastIndex );
652
653 if ( index >= 0 )
654 {
655 group = entity[ index ].getGroup(1);
656 background_music ( group->get ( "music" ).c_str () );
657 }
658
659 // music
660 search.name = "worldspawn";
661 index = entity.binary_search_multi ( search, lastIndex );
662
663 if ( index >= 0 )
664 {
665 group = entity[ index ].getGroup(1);
666 background_music ( group->get ( "music" ).c_str () );
667 }
668
669 //IAnimatedMesh* mesh = smgr->getMesh("../../media/sydney.md2");
670 //IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode( mesh );
671
672}
673
674/*!
675 so we need a good starting Position in the level.
676 we can ask the Quake3 Loader for all entities with class_name "info_player_deathmatch"
677*/
678s32 Q3StartPosition ( IQ3LevelMesh* mesh,
679 ICameraSceneNode* camera,
680 s32 startposIndex,
681 const vector3df &translation
682 )
683{
684 if ( 0 == mesh )
685 return 0;
686
687 tQ3EntityList &entityList = mesh->getEntityList ();
688
689 IEntity search;
690 search.name = "info_player_start"; // "info_player_deathmatch";
691
692 // find all entities in the multi-list
693 s32 lastIndex;
694 s32 index = entityList.binary_search_multi ( search, lastIndex );
695
696 if ( index < 0 )
697 {
698 search.name = "info_player_deathmatch";
699 index = entityList.binary_search_multi ( search, lastIndex );
700 }
701
702 if ( index < 0 )
703 return 0;
704
705 index += core::clamp ( startposIndex, 0, lastIndex - index );
706
707 u32 parsepos;
708
709 const SVarGroup *group;
710 group = entityList[ index ].getGroup(1);
711
712 parsepos = 0;
713 vector3df pos = getAsVector3df ( group->get ( "origin" ), parsepos );
714 pos += translation;
715
716 parsepos = 0;
717 f32 angle = getAsFloat ( group->get ( "angle"), parsepos );
718
719 vector3df target ( 0.f, 0.f, 1.f );
720 target.rotateXZBy ( angle - 90.f, vector3df () );
721
722 if ( camera )
723 {
724 camera->setPosition ( pos );
725 camera->setTarget ( pos + target );
726 //! New. FPSCamera and animators catches reset on animate 0
727 camera->OnAnimate ( 0 );
728 }
729 return lastIndex - index + 1;
730}
731
732
733/*!
734 gets a accumulated force on a given surface
735*/
736vector3df getGravity ( const c8 * surface )
737{
738 if ( 0 == strcmp ( surface, "earth" ) ) return vector3df ( 0.f, -90.f, 0.f );
739 if ( 0 == strcmp ( surface, "moon" ) ) return vector3df ( 0.f, -6.f / 100.f, 0.f );
740 if ( 0 == strcmp ( surface, "water" ) ) return vector3df ( 0.1f / 100.f, -2.f / 100.f, 0.f );
741 if ( 0 == strcmp ( surface, "ice" ) ) return vector3df ( 0.2f / 100.f, -9.f / 100.f, 0.3f / 100.f );
742
743 return vector3df ( 0.f, 0.f, 0.f );
744}
745
746
747
748/*
749 Dynamically load the Irrlicht Library
750*/
751
752#if defined(_IRR_WINDOWS_API_)
753#ifdef _MSC_VER
754#pragma comment(lib, "Irrlicht.lib")
755#endif
756
757#include <windows.h>
758
759funcptr_createDevice load_createDevice ( const c8 * filename)
760{
761 return (funcptr_createDevice) GetProcAddress ( LoadLibrary ( filename ), "createDevice" );
762}
763
764funcptr_createDeviceEx load_createDeviceEx ( const c8 * filename)
765{
766 return (funcptr_createDeviceEx) GetProcAddress ( LoadLibrary ( filename ), "createDeviceEx" );
767}
768
769#else
770
771// TODO: Dynamic Loading for other os
772funcptr_createDevice load_createDevice ( const c8 * filename)
773{
774 return createDevice;
775}
776
777funcptr_createDeviceEx load_createDeviceEx ( const c8 * filename)
778{
779 return createDeviceEx;
780}
781
782#endif
783
784/*
785 get the current collision response camera animator
786*/
787ISceneNodeAnimatorCollisionResponse* camCollisionResponse( IrrlichtDevice * device )
788{
789 ICameraSceneNode *camera = device->getSceneManager()->getActiveCamera();
790 ISceneNodeAnimatorCollisionResponse *a = 0;
791
792 list<ISceneNodeAnimator*>::ConstIterator it = camera->getAnimators().begin();
793 for (; it != camera->getAnimators().end(); ++it)
794 {
795 a = (ISceneNodeAnimatorCollisionResponse*) (*it);
796 if ( a->getType() == ESNAT_COLLISION_RESPONSE )
797 return a;
798 }
799
800 return 0;
801}
802
803
804//! internal Animation
805void setTimeFire ( TimeFire *t, u32 delta, u32 flags )
806{
807 t->flags = flags;
808 t->next = 0;
809 t->delta = delta;
810}
811
812
813void checkTimeFire ( TimeFire *t, u32 listSize, u32 now )
814{
815 u32 i;
816 for ( i = 0; i < listSize; ++i )
817 {
818 if ( now < t[i].next )
819 continue;
820
821 t[i].next = core::max_ ( now + t[i].delta, t[i].next + t[i].delta );
822 t[i].flags |= FIRED;
823 }
824}
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.h b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.h
new file mode 100644
index 0000000..d9606ed
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/q3factory.h
@@ -0,0 +1,149 @@
1/*!
2 Model Factory.
3 create the additional scenenodes for ( bullets, health... )
4
5 Defines the Entities for Quake3
6*/
7#ifndef __QUAKE3_FACTORY__H_INCLUDED__
8#define __QUAKE3_FACTORY__H_INCLUDED__
9
10using namespace irr;
11using namespace scene;
12using namespace gui;
13using namespace video;
14using namespace core;
15using namespace quake3;
16using namespace io;
17
18
19
20//! Defines to which group the entities belong
21enum eItemGroup
22{
23 WEAPON,
24 AMMO,
25 ARMOR,
26 HEALTH,
27 POWERUP
28};
29
30//! define a supgroup for the item. for e.q the Weapons
31enum eItemSubGroup
32{
33 SUB_NONE = 0,
34 GAUNTLET,
35 MACHINEGUN,
36 SHOTGUN,
37 GRENADE_LAUNCHER,
38 ROCKET_LAUNCHER,
39 LIGHTNING,
40 RAILGUN,
41 PLASMAGUN,
42 BFG,
43 GRAPPLING_HOOK,
44 NAILGUN,
45 PROX_LAUNCHER,
46 CHAINGUN,
47};
48
49//! aplly a special effect to the shader
50enum eItemSpecialEffect
51{
52 SPECIAL_SFX_NONE = 0,
53 SPECIAL_SFX_ROTATE = 1,
54 SPECIAL_SFX_BOUNCE = 2,
55 SPECIAL_SFX_ROTATE_1 = 4,
56};
57
58// a List for defining a model
59struct SItemElement
60{
61 const c8 *key;
62 const c8 *model[2];
63 const c8 *sound;
64 const c8 *icon;
65 const c8 *pickup;
66 s32 value;
67 eItemGroup group;
68 eItemSubGroup sub;
69 u32 special;
70};
71
72
73//! Get's an entity based on it's key
74const SItemElement * getItemElement ( const stringc& key );
75
76/*!
77 Quake3 Model Factory.
78 Takes the mesh buffers and creates scenenodes for their associated shaders
79*/
80void Q3ShaderFactory ( Q3LevelLoadParameter &loadParam,
81 IrrlichtDevice *device,
82 IQ3LevelMesh* mesh,
83 eQ3MeshIndex meshIndex,
84 ISceneNode *parent,
85 IMetaTriangleSelector *meta,
86 bool showShaderName
87 );
88
89
90/*!
91 Creates Model based on the entity list
92*/
93void Q3ModelFactory ( Q3LevelLoadParameter &loadParam,
94 IrrlichtDevice *device,
95 IQ3LevelMesh* masterMesh,
96 ISceneNode *parent,
97 bool showShaderName
98 );
99
100/*!
101 so we need a good starting Position in the level.
102 we can ask the Quake3 Loader for all entities with class_name "info_player_deathmatch"
103*/
104s32 Q3StartPosition ( IQ3LevelMesh* mesh,
105 ICameraSceneNode* camera,
106 s32 startposIndex,
107 const vector3df &translation
108 );
109/*!
110 gets a accumulated force on a given surface
111*/
112vector3df getGravity ( const c8 * surface );
113
114
115/*
116 Dynamically load the Irrlicht Library
117*/
118funcptr_createDevice load_createDevice ( const c8 * filename);
119funcptr_createDeviceEx load_createDeviceEx ( const c8 * filename);
120
121
122//! Macro for save Dropping an Element
123#define dropElement(x) if (x) { x->remove(); x = 0; }
124
125
126/*
127 get the current collision respone camera animator
128*/
129ISceneNodeAnimatorCollisionResponse* camCollisionResponse( IrrlichtDevice * device );
130
131//! internal Animation
132enum eTimeFireFlag
133{
134 FIRED = 1,
135};
136
137struct TimeFire
138{
139 u32 flags;
140 u32 next;
141 u32 delta;
142};
143
144void setTimeFire ( TimeFire *t, u32 delta, u32 flags = 0 );
145void checkTimeFire ( TimeFire *t, u32 listSize, u32 now );
146
147#endif // __QUAKE3_FACTORY__H_INCLUDED__
148
149
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.cpp b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.cpp
new file mode 100644
index 0000000..75615c1
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.cpp
@@ -0,0 +1,98 @@
1/*!
2 Sound Factory.
3 provides a sound interface
4
5*/
6
7#include "sound.h"
8
9
10//#define USE_IRRKLANG
11
12#ifdef USE_IRRKLANG
13
14#include <irrKlang.h>
15#ifdef _IRR_WINDOWS_
16 #pragma comment (lib, "irrKlang.lib")
17#endif
18
19using namespace irrklang;
20
21struct soundfile: public IFileReader
22{
23 soundfile ( io::IReadFile* f ): file (f ) {}
24 virtual ~soundfile () { file->drop (); }
25
26 virtual ik_s32 read(void* buffer, ik_u32 sizeToRead) { return file->read ( buffer, sizeToRead ); }
27 virtual bool seek(ik_s32 finalPos, bool relativeMovement = false) { return file->seek ( finalPos, relativeMovement ); }
28 virtual ik_s32 getSize(){ return file->getSize (); }
29 virtual ik_s32 getPos() {return file->getPos (); }
30 virtual const ik_c8* getFileName() { return file->getFileName (); }
31 io::IReadFile* file;
32};
33
34struct klangFactory : public irrklang::IFileFactory
35{
36 klangFactory ( IrrlichtDevice *device ) { Device = device; }
37
38 virtual irrklang::IFileReader* createFileReader(const ik_c8* filename)
39 {
40 io::IReadFile* file = Device->getFileSystem()->createAndOpenFile(filename);
41 if ( 0 == file )
42 return 0;
43
44 return new soundfile ( file );
45 }
46
47 IrrlichtDevice *Device;
48};
49
50ISoundEngine *engine = 0;
51ISound *backMusic = 0;
52
53void sound_init ( IrrlichtDevice *device )
54{
55 engine = createIrrKlangDevice ();
56 if ( 0 == engine )
57 return;
58
59 klangFactory *f = new klangFactory ( device );
60 engine->addFileFactory ( f );
61}
62
63void sound_shutdown ()
64{
65 if ( backMusic )
66 backMusic->drop ();
67
68 if ( engine )
69 engine->drop ();
70}
71
72void background_music ( const c8 * file )
73{
74 if ( 0 == engine )
75 return;
76
77 if ( backMusic )
78 {
79 backMusic->stop ();
80 backMusic->drop ();
81 }
82
83 backMusic = engine->play2D ( file, true, false, true );
84
85 if ( backMusic )
86 {
87 backMusic->setVolume ( 0.5f );
88 }
89}
90
91#else
92
93void sound_init ( IrrlichtDevice *device ) {}
94void sound_shutdown () {}
95void background_music ( const c8 * file ) {}
96
97#endif
98
diff --git a/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.h b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.h
new file mode 100644
index 0000000..033e9bb
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/21.Quake3Explorer/sound.h
@@ -0,0 +1,18 @@
1/*!
2 Sound Factory.
3 provides a sound interface
4
5*/
6#ifndef __QUAKE3_SOUND__H_INCLUDED__
7#define __QUAKE3_SOUND__H_INCLUDED__
8
9#include <irrlicht.h>
10
11using namespace irr;
12
13void sound_init ( IrrlichtDevice *device );
14void sound_shutdown ();
15void background_music ( const c8 * file );
16
17
18#endif // __QUAKE3_SOUND__H_INCLUDED__
diff --git a/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/Makefile b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/Makefile
new file mode 100644
index 0000000..8016988
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/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 = 22.MaterialViewer
5Sources = main.cpp
6
7# general compiler settings
8CPPFLAGS = -I../../include -I/usr/X11R6/include
9#CXXFLAGS = -O3 -ffast-math
10CXXFLAGS = -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/22.MaterialViewer/MaterialViewer.cbp b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.cbp
new file mode 100644
index 0000000..3626d10
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.cbp
@@ -0,0 +1,55 @@
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 22 Material Viewer" />
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\MaterialViewer" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\MaterialViewer" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.dev b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.dev
new file mode 100644
index 0000000..dfd9d4d
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 22 Material Viewer
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=22.MaterialViewer.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/22.MaterialViewer/MaterialViewer.vcproj b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.vcproj
new file mode 100644
index 0000000..7419359
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer.vcproj
@@ -0,0 +1,229 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="22.MaterialViewer"
6 ProjectGUID="{4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}"
7 TargetFrameworkVersion="131072"
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/MaterialViewer.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/MaterialViewer.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\22.MaterialViewer.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 ProgramDatabaseFile=".\Release/MaterialViewer.pdb"
80 SubSystem="1"
81 RandomizedBaseAddress="1"
82 DataExecutionPrevention="0"
83 TargetMachine="1"
84 />
85 <Tool
86 Name="VCALinkTool"
87 />
88 <Tool
89 Name="VCManifestTool"
90 />
91 <Tool
92 Name="VCXDCMakeTool"
93 />
94 <Tool
95 Name="VCBscMakeTool"
96 />
97 <Tool
98 Name="VCFxCopTool"
99 />
100 <Tool
101 Name="VCAppVerifierTool"
102 />
103 <Tool
104 Name="VCPostBuildEventTool"
105 />
106 </Configuration>
107 <Configuration
108 Name="Debug|Win32"
109 OutputDirectory=".\Debug"
110 IntermediateDirectory=".\Debug"
111 ConfigurationType="1"
112 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
113 UseOfMFC="0"
114 ATLMinimizesCRunTimeLibraryUsage="false"
115 CharacterSet="2"
116 >
117 <Tool
118 Name="VCPreBuildEventTool"
119 />
120 <Tool
121 Name="VCCustomBuildTool"
122 />
123 <Tool
124 Name="VCXMLDataGeneratorTool"
125 />
126 <Tool
127 Name="VCWebServiceProxyGeneratorTool"
128 />
129 <Tool
130 Name="VCMIDLTool"
131 TypeLibraryName=".\Debug/MaterialViewer.tlb"
132 HeaderFileName=""
133 />
134 <Tool
135 Name="VCCLCompilerTool"
136 Optimization="0"
137 AdditionalIncludeDirectories="..\..\include"
138 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
139 BasicRuntimeChecks="3"
140 RuntimeLibrary="1"
141 UsePrecompiledHeader="0"
142 PrecompiledHeaderFile=".\Debug/MaterialViewer.pch"
143 AssemblerListingLocation=".\Debug/"
144 ObjectFile=".\Debug/"
145 ProgramDataBaseFileName=".\Debug/"
146 WarningLevel="3"
147 SuppressStartupBanner="true"
148 DebugInformationFormat="4"
149 CompileAs="0"
150 />
151 <Tool
152 Name="VCManagedResourceCompilerTool"
153 />
154 <Tool
155 Name="VCResourceCompilerTool"
156 PreprocessorDefinitions="_DEBUG"
157 Culture="3079"
158 />
159 <Tool
160 Name="VCPreLinkEventTool"
161 />
162 <Tool
163 Name="VCLinkerTool"
164 OutputFile="..\..\bin\Win32-VisualStudio\22.MaterialViewer.exe"
165 LinkIncremental="0"
166 SuppressStartupBanner="true"
167 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
168 GenerateDebugInformation="true"
169 ProgramDatabaseFile=".\Debug/MaterialViewer.pdb"
170 SubSystem="1"
171 RandomizedBaseAddress="1"
172 DataExecutionPrevention="0"
173 TargetMachine="1"
174 />
175 <Tool
176 Name="VCALinkTool"
177 />
178 <Tool
179 Name="VCManifestTool"
180 />
181 <Tool
182 Name="VCXDCMakeTool"
183 />
184 <Tool
185 Name="VCBscMakeTool"
186 />
187 <Tool
188 Name="VCFxCopTool"
189 />
190 <Tool
191 Name="VCAppVerifierTool"
192 />
193 <Tool
194 Name="VCPostBuildEventTool"
195 />
196 </Configuration>
197 </Configurations>
198 <References>
199 </References>
200 <Files>
201 <File
202 RelativePath="main.cpp"
203 >
204 <FileConfiguration
205 Name="Release|Win32"
206 >
207 <Tool
208 Name="VCCLCompilerTool"
209 Optimization="2"
210 AdditionalIncludeDirectories=""
211 PreprocessorDefinitions=""
212 />
213 </FileConfiguration>
214 <FileConfiguration
215 Name="Debug|Win32"
216 >
217 <Tool
218 Name="VCCLCompilerTool"
219 Optimization="0"
220 AdditionalIncludeDirectories=""
221 PreprocessorDefinitions=""
222 BasicRuntimeChecks="3"
223 />
224 </FileConfiguration>
225 </File>
226 </Files>
227 <Globals>
228 </Globals>
229</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc10.vcxproj
new file mode 100644
index 0000000..6a8b5c8
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_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>22.MaterialViewer</ProjectName>
23 <ProjectGuid>{4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}</ProjectGuid>
24 <RootNamespace>MaterialViewer</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 <CharacterSet>MultiByte</CharacterSet>
30 </PropertyGroup>
31 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
32 <ConfigurationType>Application</ConfigurationType>
33 <CharacterSet>MultiByte</CharacterSet>
34 </PropertyGroup>
35 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
36 <ConfigurationType>Application</ConfigurationType>
37 <CharacterSet>MultiByte</CharacterSet>
38 </PropertyGroup>
39 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
40 <ConfigurationType>Application</ConfigurationType>
41 <CharacterSet>MultiByte</CharacterSet>
42 </PropertyGroup>
43 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
44 <ImportGroup Label="ExtensionSettings">
45 </ImportGroup>
46 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
47 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
48 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
49 </ImportGroup>
50 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" 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)'=='Release|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)'=='Release|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 <PropertyGroup Label="UserMacros" />
63 <PropertyGroup>
64 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
65 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
66 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
67 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
68 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
73 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
74 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
75 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
76 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
77 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
78 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
79 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
80 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
81 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
82 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
83 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
84 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
85 </PropertyGroup>
86 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
87 <Midl>
88 <TypeLibraryName>.\Release/MaterialViewer.tlb</TypeLibraryName>
89 <HeaderFileName>
90 </HeaderFileName>
91 </Midl>
92 <ClCompile>
93 <Optimization>MaxSpeed</Optimization>
94 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
95 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
96 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
97 <StringPooling>true</StringPooling>
98 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
99 <FunctionLevelLinking>true</FunctionLevelLinking>
100 <PrecompiledHeader>
101 </PrecompiledHeader>
102 <WarningLevel>Level3</WarningLevel>
103 </ClCompile>
104 <ResourceCompile>
105 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
106 <Culture>0x0c07</Culture>
107 </ResourceCompile>
108 <Link>
109 <OutputFile>..\..\bin\Win32-VisualStudio\22.MaterialViewer.exe</OutputFile>
110 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
111 <ProgramDatabaseFile>.\Release/MaterialViewer.pdb</ProgramDatabaseFile>
112 <SubSystem>Console</SubSystem>
113 <DataExecutionPrevention>
114 </DataExecutionPrevention>
115 </Link>
116 </ItemDefinitionGroup>
117 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
118 <Midl>
119 <TypeLibraryName>.\Release/MaterialViewer.tlb</TypeLibraryName>
120 <HeaderFileName>
121 </HeaderFileName>
122 </Midl>
123 <ClCompile>
124 <Optimization>MaxSpeed</Optimization>
125 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
126 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
127 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
128 <StringPooling>true</StringPooling>
129 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
130 <FunctionLevelLinking>true</FunctionLevelLinking>
131 <PrecompiledHeader>
132 </PrecompiledHeader>
133 <WarningLevel>Level3</WarningLevel>
134 </ClCompile>
135 <ResourceCompile>
136 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
137 <Culture>0x0c07</Culture>
138 </ResourceCompile>
139 <Link>
140 <OutputFile>..\..\bin\Win64-VisualStudio\22.MaterialViewer.exe</OutputFile>
141 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
142 <ProgramDatabaseFile>.\Release/MaterialViewer.pdb</ProgramDatabaseFile>
143 <SubSystem>Console</SubSystem>
144 <DataExecutionPrevention>
145 </DataExecutionPrevention>
146 </Link>
147 </ItemDefinitionGroup>
148 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
149 <Midl>
150 <TypeLibraryName>.\Debug/MaterialViewer.tlb</TypeLibraryName>
151 <HeaderFileName>
152 </HeaderFileName>
153 </Midl>
154 <ClCompile>
155 <Optimization>Disabled</Optimization>
156 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
157 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
158 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
159 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
160 <PrecompiledHeader>
161 </PrecompiledHeader>
162 <WarningLevel>Level3</WarningLevel>
163 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
164 </ClCompile>
165 <ResourceCompile>
166 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
167 <Culture>0x0c07</Culture>
168 </ResourceCompile>
169 <Link>
170 <OutputFile>..\..\bin\Win32-VisualStudio\22.MaterialViewer.exe</OutputFile>
171 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
172 <GenerateDebugInformation>true</GenerateDebugInformation>
173 <ProgramDatabaseFile>.\Debug/MaterialViewer.pdb</ProgramDatabaseFile>
174 <SubSystem>Console</SubSystem>
175 <DataExecutionPrevention>
176 </DataExecutionPrevention>
177 </Link>
178 </ItemDefinitionGroup>
179 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
180 <Midl>
181 <TypeLibraryName>.\Debug/MaterialViewer.tlb</TypeLibraryName>
182 <HeaderFileName>
183 </HeaderFileName>
184 </Midl>
185 <ClCompile>
186 <Optimization>Disabled</Optimization>
187 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
188 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
189 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
190 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
191 <PrecompiledHeader>
192 </PrecompiledHeader>
193 <WarningLevel>Level3</WarningLevel>
194 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
195 </ClCompile>
196 <ResourceCompile>
197 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
198 <Culture>0x0c07</Culture>
199 </ResourceCompile>
200 <Link>
201 <OutputFile>..\..\bin\Win64-VisualStudio\22.MaterialViewer.exe</OutputFile>
202 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
203 <GenerateDebugInformation>true</GenerateDebugInformation>
204 <ProgramDatabaseFile>.\Debug/MaterialViewer.pdb</ProgramDatabaseFile>
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/22.MaterialViewer/MaterialViewer_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc11.vcxproj
new file mode 100644
index 0000000..6ea9a2b
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_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>22.MaterialViewer</ProjectName>
23 <ProjectGuid>{4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}</ProjectGuid>
24 <RootNamespace>MaterialViewer</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 <CharacterSet>MultiByte</CharacterSet>
30 <PlatformToolset>v110</PlatformToolset>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <CharacterSet>MultiByte</CharacterSet>
35 <PlatformToolset>v110</PlatformToolset>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <CharacterSet>MultiByte</CharacterSet>
40 <PlatformToolset>v110</PlatformToolset>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
43 <ConfigurationType>Application</ConfigurationType>
44 <CharacterSet>MultiByte</CharacterSet>
45 <PlatformToolset>v110</PlatformToolset>
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/MaterialViewer.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\22.MaterialViewer.exe</OutputFile>
114 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
115 <ProgramDatabaseFile>.\Release/MaterialViewer.pdb</ProgramDatabaseFile>
116 <SubSystem>Console</SubSystem>
117 <DataExecutionPrevention>
118 </DataExecutionPrevention>
119 </Link>
120 </ItemDefinitionGroup>
121 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
122 <Midl>
123 <TypeLibraryName>.\Release/MaterialViewer.tlb</TypeLibraryName>
124 <HeaderFileName>
125 </HeaderFileName>
126 </Midl>
127 <ClCompile>
128 <Optimization>MaxSpeed</Optimization>
129 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
130 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
131 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
132 <StringPooling>true</StringPooling>
133 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
134 <FunctionLevelLinking>true</FunctionLevelLinking>
135 <PrecompiledHeader>
136 </PrecompiledHeader>
137 <WarningLevel>Level3</WarningLevel>
138 </ClCompile>
139 <ResourceCompile>
140 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
141 <Culture>0x0c07</Culture>
142 </ResourceCompile>
143 <Link>
144 <OutputFile>..\..\bin\Win64-VisualStudio\22.MaterialViewer.exe</OutputFile>
145 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
146 <ProgramDatabaseFile>.\Release/MaterialViewer.pdb</ProgramDatabaseFile>
147 <SubSystem>Console</SubSystem>
148 <DataExecutionPrevention>
149 </DataExecutionPrevention>
150 </Link>
151 </ItemDefinitionGroup>
152 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
153 <Midl>
154 <TypeLibraryName>.\Debug/MaterialViewer.tlb</TypeLibraryName>
155 <HeaderFileName>
156 </HeaderFileName>
157 </Midl>
158 <ClCompile>
159 <Optimization>Disabled</Optimization>
160 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
161 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
162 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
163 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
168 </ClCompile>
169 <ResourceCompile>
170 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
171 <Culture>0x0c07</Culture>
172 </ResourceCompile>
173 <Link>
174 <OutputFile>..\..\bin\Win32-VisualStudio\22.MaterialViewer.exe</OutputFile>
175 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
176 <GenerateDebugInformation>true</GenerateDebugInformation>
177 <ProgramDatabaseFile>.\Debug/MaterialViewer.pdb</ProgramDatabaseFile>
178 <SubSystem>Console</SubSystem>
179 <DataExecutionPrevention>
180 </DataExecutionPrevention>
181 </Link>
182 </ItemDefinitionGroup>
183 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
184 <Midl>
185 <TypeLibraryName>.\Debug/MaterialViewer.tlb</TypeLibraryName>
186 <HeaderFileName>
187 </HeaderFileName>
188 </Midl>
189 <ClCompile>
190 <Optimization>Disabled</Optimization>
191 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
192 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
193 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
194 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
195 <PrecompiledHeader>
196 </PrecompiledHeader>
197 <WarningLevel>Level3</WarningLevel>
198 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
199 </ClCompile>
200 <ResourceCompile>
201 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
202 <Culture>0x0c07</Culture>
203 </ResourceCompile>
204 <Link>
205 <OutputFile>..\..\bin\Win64-VisualStudio\22.MaterialViewer.exe</OutputFile>
206 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
207 <GenerateDebugInformation>true</GenerateDebugInformation>
208 <ProgramDatabaseFile>.\Debug/MaterialViewer.pdb</ProgramDatabaseFile>
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/22.MaterialViewer/MaterialViewer_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc8.vcproj
new file mode 100644
index 0000000..1e7c0db
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_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="22.MaterialViewer_vc8"
6 ProjectGUID="{4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}"
7 RootNamespace="MaterialViewer_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/MaterialViewer.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/MaterialViewer.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\22.MaterialViewer.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 ProgramDatabaseFile=".\Release/MaterialViewer.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/MaterialViewer.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/MaterialViewer.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\22.MaterialViewer.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/MaterialViewer.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/22.MaterialViewer/MaterialViewer_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_vc9.vcproj
new file mode 100644
index 0000000..8ce9803
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/MaterialViewer_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="22.MaterialViewer_vc9"
6 ProjectGUID="{F4C8112D-57A8-4D01-BB62-BAC6A09A6902}"
7 RootNamespace="MaterialViewer_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/MaterialViewer.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/MaterialViewer.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\22.MaterialViewer.exe"
77 LinkIncremental="0"
78 SuppressStartupBanner="true"
79 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
80 ProgramDatabaseFile=".\Release/MaterialViewer.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/MaterialViewer.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/MaterialViewer.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\22.MaterialViewer.exe"
166 LinkIncremental="0"
167 SuppressStartupBanner="true"
168 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
169 GenerateDebugInformation="true"
170 ProgramDatabaseFile=".\Debug/MaterialViewer.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/22.MaterialViewer/main.cpp b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/main.cpp
new file mode 100644
index 0000000..5dcab19
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/22.MaterialViewer/main.cpp
@@ -0,0 +1,1057 @@
1/** Example 022 Material Viewer
2
3This example can be used to play around with material settings and watch the results.
4Only the default non-shader materials are used in here.
5
6You have two nodes to make it easier to see which difference your settings will make.
7Additionally you have one lightscenenode and you can set the global ambient values.
8*/
9
10#include <irrlicht.h>
11#include "driverChoice.h"
12
13using namespace irr;
14
15#ifdef _MSC_VER
16#pragma comment(lib, "Irrlicht.lib")
17#endif
18
19/*
20 Variables within the empty namespace are globals which are restricted to this file.
21*/
22namespace
23{
24 const wchar_t* const DriverTypeNames[] =
25 {
26 L"NULL",
27 L"SOFTWARE",
28 L"BURNINGSVIDEO",
29 L"DIRECT3D8",
30 L"DIRECT3D9",
31 L"OPENGL",
32 0,
33 };
34
35 // For the gui id's
36 enum EGUI_IDS
37 {
38 GUI_ID_OPEN_TEXTURE = 1,
39 GUI_ID_QUIT,
40 GUI_ID_MAX
41 };
42
43 // Name used in texture selection to clear the textures on the node
44 const core::stringw CLEAR_TEXTURE = L"CLEAR texture";
45
46 // some useful color constants
47 const video::SColor SCOL_BLACK = video::SColor(255, 0, 0, 0);
48 const video::SColor SCOL_BLUE = video::SColor(255, 0, 0, 255);
49 const video::SColor SCOL_CYAN = video::SColor(255, 0, 255, 255);
50 const video::SColor SCOL_GRAY = video::SColor(255, 128,128, 128);
51 const video::SColor SCOL_GREEN = video::SColor(255, 0, 255, 0);
52 const video::SColor SCOL_MAGENTA = video::SColor(255, 255, 0, 255);
53 const video::SColor SCOL_RED = video::SColor(255, 255, 0, 0);
54 const video::SColor SCOL_YELLOW = video::SColor(255, 255, 255, 0);
55 const video::SColor SCOL_WHITE = video::SColor(255, 255, 255, 255);
56}; // namespace
57
58/*
59 Returns a new unique number on each call.
60*/
61s32 makeUniqueId()
62{
63 static int unique = GUI_ID_MAX;
64 ++unique;
65 return unique;
66}
67
68/*
69 Find out which vertex-type is needed for the given material type.
70*/
71video::E_VERTEX_TYPE getVertexTypeForMaterialType(video::E_MATERIAL_TYPE materialType)
72{
73 using namespace video;
74
75 switch ( materialType )
76 {
77 case EMT_SOLID:
78 return EVT_STANDARD;
79
80 case EMT_SOLID_2_LAYER:
81 return EVT_STANDARD;
82
83 case EMT_LIGHTMAP:
84 case EMT_LIGHTMAP_ADD:
85 case EMT_LIGHTMAP_M2:
86 case EMT_LIGHTMAP_M4:
87 case EMT_LIGHTMAP_LIGHTING:
88 case EMT_LIGHTMAP_LIGHTING_M2:
89 case EMT_LIGHTMAP_LIGHTING_M4:
90 return EVT_2TCOORDS;
91
92 case EMT_DETAIL_MAP:
93 return EVT_2TCOORDS;
94
95 case EMT_SPHERE_MAP:
96 return EVT_STANDARD;
97
98 case EMT_REFLECTION_2_LAYER:
99 return EVT_2TCOORDS;
100
101 case EMT_TRANSPARENT_ADD_COLOR:
102 return EVT_STANDARD;
103
104 case EMT_TRANSPARENT_ALPHA_CHANNEL:
105 return EVT_STANDARD;
106
107 case EMT_TRANSPARENT_ALPHA_CHANNEL_REF:
108 return EVT_STANDARD;
109
110 case EMT_TRANSPARENT_VERTEX_ALPHA:
111 return EVT_STANDARD;
112
113 case EMT_TRANSPARENT_REFLECTION_2_LAYER:
114 return EVT_2TCOORDS;
115
116 case EMT_NORMAL_MAP_SOLID:
117 case EMT_NORMAL_MAP_TRANSPARENT_ADD_COLOR:
118 case EMT_NORMAL_MAP_TRANSPARENT_VERTEX_ALPHA:
119 case EMT_PARALLAX_MAP_SOLID:
120 case EMT_PARALLAX_MAP_TRANSPARENT_ADD_COLOR:
121 case EMT_PARALLAX_MAP_TRANSPARENT_VERTEX_ALPHA:
122 return EVT_TANGENTS;
123
124 case EMT_ONETEXTURE_BLEND:
125 return EVT_STANDARD;
126
127 case EMT_FORCE_32BIT:
128 return EVT_STANDARD;
129 }
130 return EVT_STANDARD;
131}
132
133/*
134 Custom GUI-control to edit colorvalues.
135*/
136class CColorControl : public gui::IGUIElement
137{
138public:
139 // Constructor
140 CColorControl(gui::IGUIEnvironment* guiEnv, const core::position2d<s32> & pos, const wchar_t *text, IGUIElement* parent, s32 id=-1 )
141 : gui::IGUIElement(gui::EGUIET_ELEMENT, guiEnv, parent,id, core::rect< s32 >(pos, pos+core::dimension2d<s32>(80, 75)))
142 , DirtyFlag(true)
143 , ColorStatic(0)
144 , EditAlpha(0)
145 , EditRed(0)
146 , EditGreen(0)
147 , EditBlue(0)
148 {
149 using namespace gui;
150 ButtonSetId = makeUniqueId();
151
152 const core::rect< s32 > rectControls(0,0,AbsoluteRect.getWidth(),AbsoluteRect.getHeight() );
153 IGUIStaticText * groupElement = guiEnv->addStaticText (L"", rectControls, true, false, this, -1, false);
154 groupElement->setNotClipped(true);
155
156 guiEnv->addStaticText (text, core::rect<s32>(0,0,80,15), false, false, groupElement, -1, false);
157
158 EditAlpha = addEditForNumbers(guiEnv, core::position2d<s32>(0,15), L"a", -1, groupElement );
159 EditRed = addEditForNumbers(guiEnv, core::position2d<s32>(0,30), L"r", -1, groupElement );
160 EditGreen = addEditForNumbers(guiEnv, core::position2d<s32>(0,45), L"g", -1, groupElement );
161 EditBlue = addEditForNumbers(guiEnv, core::position2d<s32>(0,60), L"b", -1, groupElement );
162
163 ColorStatic = guiEnv->addStaticText (L"", core::rect<s32>(60,15,80,75), true, false, groupElement, -1, true);
164
165 guiEnv->addButton (core::rect<s32>(60,35,80,50), groupElement, ButtonSetId, L"set");
166 SetEditsFromColor(Color);
167 }
168
169 // event receiver
170 virtual bool OnEvent(const SEvent &event)
171 {
172 if ( event.EventType != EET_GUI_EVENT )
173 return false;
174
175 if ( event.GUIEvent.Caller->getID() == ButtonSetId && event.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED )
176 {
177 Color = GetColorFromEdits();
178 SetEditsFromColor(Color);
179 }
180
181 return false;
182 }
183
184 // set the color values
185 void setColor(const video::SColor& col)
186 {
187 DirtyFlag = true;
188 Color = col;
189 SetEditsFromColor(Color);
190 }
191
192 // get the color values
193 const video::SColor& getColor() const
194 {
195 return Color;
196 }
197
198 // To reset the dirty flag
199 void resetDirty()
200 {
201 DirtyFlag = false;
202 }
203
204 // when the color was changed the dirty flag is set
205 bool isDirty() const
206 {
207 return DirtyFlag;
208 };
209
210protected:
211
212 // Add a staticbox for a description + an editbox so users can enter numbers
213 gui::IGUIEditBox* addEditForNumbers(gui::IGUIEnvironment* guiEnv, const core::position2d<s32> & pos, const wchar_t *text, s32 id, gui::IGUIElement * parent)
214 {
215 using namespace gui;
216
217 core::rect< s32 > rect(pos, pos+core::dimension2d<s32>(10, 15));
218 guiEnv->addStaticText (text, rect, false, false, parent, -1, false);
219 rect += core::position2d<s32>( 20, 0 );
220 rect.LowerRightCorner.X += 20;
221 gui::IGUIEditBox* edit = guiEnv->addEditBox(L"0", rect, true, parent, id);
222 return edit;
223 }
224
225 // Get the color value from the editfields
226 video::SColor GetColorFromEdits()
227 {
228 video::SColor col;
229
230 if (EditAlpha)
231 {
232 u32 alpha = core::strtoul10(core::stringc(EditAlpha->getText()).c_str());
233 if (alpha > 255)
234 alpha = 255;
235 col.setAlpha(alpha);
236 }
237
238 if (EditRed)
239 {
240 u32 red = core::strtoul10(core::stringc(EditRed->getText()).c_str());
241 if (red > 255)
242 red = 255;
243 col.setRed(red);
244 }
245
246 if (EditGreen)
247 {
248 u32 green = core::strtoul10(core::stringc(EditGreen->getText()).c_str());
249 if (green > 255)
250 green = 255;
251 col.setGreen(green);
252 }
253
254 if (EditBlue)
255 {
256 u32 blue = core::strtoul10(core::stringc(EditBlue->getText()).c_str());
257 if (blue > 255)
258 blue = 255;
259 col.setBlue(blue);
260 }
261
262 return col;
263 }
264
265 // Fill the editfields with the value for the given color
266 void SetEditsFromColor(video::SColor col)
267 {
268 DirtyFlag = true;
269 if ( EditAlpha )
270 EditAlpha->setText( core::stringw(col.getAlpha()).c_str() );
271 if ( EditRed )
272 EditRed->setText( core::stringw(col.getRed()).c_str() );
273 if ( EditGreen )
274 EditGreen->setText( core::stringw(col.getGreen()).c_str() );
275 if ( EditBlue )
276 EditBlue->setText( core::stringw(col.getBlue()).c_str() );
277 if ( ColorStatic )
278 ColorStatic->setBackgroundColor(col);
279 }
280
281private:
282
283 bool DirtyFlag;
284 video::SColor Color;
285 s32 ButtonSetId;
286 gui::IGUIStaticText * ColorStatic;
287 gui::IGUIEditBox * EditAlpha;
288 gui::IGUIEditBox * EditRed;
289 gui::IGUIEditBox * EditGreen;
290 gui::IGUIEditBox * EditBlue;
291};
292
293/*
294 Custom GUI-control for to edit all colors typically used in materials and lights
295*/
296class CAllColorsControl : public gui::IGUIElement
297{
298public:
299 // Constructor
300 CAllColorsControl(gui::IGUIEnvironment* guiEnv, const core::position2d<s32> & pos, const wchar_t * description, bool hasEmissive, IGUIElement* parent, s32 id=-1)
301 : gui::IGUIElement(gui::EGUIET_ELEMENT, guiEnv, parent,id, core::rect<s32>(pos,pos+core::dimension2d<s32>(60,250)))
302 , ControlAmbientColor(0), ControlDiffuseColor(0), ControlSpecularColor(0), ControlEmissiveColor(0)
303 {
304 core::rect<s32> rect(0, 0, 60, 15);
305 guiEnv->addStaticText (description, rect, false, false, this, -1, false);
306 createColorControls(guiEnv, core::position2d<s32>(0, 15), hasEmissive);
307 }
308
309 // Destructor
310 virtual ~CAllColorsControl()
311 {
312 ControlAmbientColor->drop();
313 ControlDiffuseColor->drop();
314 if ( ControlEmissiveColor )
315 ControlEmissiveColor->drop();
316 ControlSpecularColor->drop();
317 }
318
319 // Set the color values to those within the material
320 void setColorsToMaterialColors(const video::SMaterial & material)
321 {
322 ControlAmbientColor->setColor(material.AmbientColor);
323 ControlDiffuseColor->setColor(material.DiffuseColor);
324 ControlEmissiveColor->setColor(material.EmissiveColor);
325 ControlSpecularColor->setColor(material.SpecularColor);
326 }
327
328 // Update all changed colors in the material
329 void updateMaterialColors(video::SMaterial & material)
330 {
331 if ( ControlAmbientColor->isDirty() )
332 material.AmbientColor = ControlAmbientColor->getColor();
333 if ( ControlDiffuseColor->isDirty() )
334 material.DiffuseColor = ControlDiffuseColor->getColor();
335 if ( ControlEmissiveColor->isDirty() )
336 material.EmissiveColor = ControlEmissiveColor->getColor();
337 if ( ControlSpecularColor->isDirty() )
338 material.SpecularColor = ControlSpecularColor->getColor();
339 }
340
341 // Set the color values to those from the light data
342 void setColorsToLightDataColors(const video::SLight & lightData)
343 {
344 ControlAmbientColor->setColor(lightData.AmbientColor.toSColor());
345 ControlAmbientColor->setColor(lightData.DiffuseColor.toSColor());
346 ControlAmbientColor->setColor(lightData.SpecularColor.toSColor());
347 }
348
349 // Update all changed colors in the light data
350 void updateLightColors(video::SLight & lightData)
351 {
352 if ( ControlAmbientColor->isDirty() )
353 lightData.AmbientColor = video::SColorf( ControlAmbientColor->getColor() );
354 if ( ControlDiffuseColor->isDirty() )
355 lightData.DiffuseColor = video::SColorf( ControlDiffuseColor->getColor() );
356 if ( ControlSpecularColor->isDirty() )
357 lightData.SpecularColor = video::SColorf(ControlSpecularColor->getColor() );
358 }
359
360 // To reset the dirty flags
361 void resetDirty()
362 {
363 ControlAmbientColor->resetDirty();
364 ControlDiffuseColor->resetDirty();
365 ControlSpecularColor->resetDirty();
366 if ( ControlEmissiveColor )
367 ControlEmissiveColor->resetDirty();
368 }
369
370protected:
371 void createColorControls(gui::IGUIEnvironment* guiEnv, const core::position2d<s32> & pos, bool hasEmissive)
372 {
373 ControlAmbientColor = new CColorControl( guiEnv, pos, L"ambient", this);
374 ControlDiffuseColor = new CColorControl( guiEnv, pos + core::position2d<s32>(0, 75), L"diffuse", this );
375 ControlSpecularColor = new CColorControl( guiEnv, pos + core::position2d<s32>(0, 150), L"specular", this );
376 if ( hasEmissive )
377 {
378 ControlEmissiveColor = new CColorControl( guiEnv, pos + core::position2d<s32>(0, 225), L"emissive", this );
379 }
380 }
381
382private:
383 CColorControl* ControlAmbientColor;
384 CColorControl* ControlDiffuseColor;
385 CColorControl* ControlSpecularColor;
386 CColorControl* ControlEmissiveColor;
387};
388
389/*
390 GUI-Control to offer a selection of available textures.
391*/
392class CTextureControl : public gui::IGUIElement
393{
394public:
395 CTextureControl(gui::IGUIEnvironment* guiEnv, video::IVideoDriver * driver, const core::position2d<s32> & pos, IGUIElement* parent, s32 id=-1)
396 : gui::IGUIElement(gui::EGUIET_ELEMENT, guiEnv, parent,id, core::rect<s32>(pos,pos+core::dimension2d<s32>(100,15)))
397 , DirtyFlag(true), ComboTexture(0)
398 {
399 core::rect<s32> rectCombo(0, 0, AbsoluteRect.getWidth(),AbsoluteRect.getHeight());
400 ComboTexture = guiEnv->addComboBox (rectCombo, this);
401 updateTextures(driver);
402 }
403
404 virtual bool OnEvent(const SEvent &event)
405 {
406 if ( event.EventType != EET_GUI_EVENT )
407 return false;
408
409 if ( event.GUIEvent.Caller == ComboTexture && event.GUIEvent.EventType == gui::EGET_COMBO_BOX_CHANGED )
410 {
411 DirtyFlag = true;
412 }
413
414 return false;
415 }
416
417 // Workaround for a problem with comboboxes.
418 // We have to get in front when the combobox wants to get in front or combobox-list might be drawn below other elements.
419 virtual bool bringToFront(IGUIElement* element)
420 {
421 bool result = gui::IGUIElement::bringToFront(element);
422 if ( Parent && element == ComboTexture )
423 result &= Parent->bringToFront(this);
424 return result;
425 }
426
427 // return selected texturename (if any, otherwise 0)
428 const wchar_t * getSelectedTextureName() const
429 {
430 s32 selected = ComboTexture->getSelected();
431 if ( selected < 0 )
432 return 0;
433 return ComboTexture->getItem(selected);
434 }
435
436 // reset the dirty flag
437 void resetDirty()
438 {
439 DirtyFlag = false;
440 }
441
442 // when the texture was changed the dirty flag is set
443 bool isDirty() const
444 {
445 return DirtyFlag;
446 };
447
448 // Put the names of all currently loaded textures in a combobox
449 void updateTextures(video::IVideoDriver * driver)
450 {
451 s32 oldSelected = ComboTexture->getSelected();
452 s32 selectNew = -1;
453 const wchar_t * oldTextureName = 0;
454 if ( oldSelected >= 0 )
455 {
456 oldTextureName = ComboTexture->getItem(oldSelected);
457 }
458 ComboTexture->clear();
459 for ( u32 i=0; i < driver->getTextureCount(); ++i )
460 {
461 video::ITexture * texture = driver->getTextureByIndex(i);
462 core::stringw name( texture->getName() );
463 ComboTexture->addItem( name.c_str() );
464 if ( oldTextureName && selectNew < 0 && name == oldTextureName )
465 selectNew = i;
466 }
467
468 // add another name which can be used to clear the texture
469 ComboTexture->addItem( CLEAR_TEXTURE.c_str() );
470 if ( CLEAR_TEXTURE == oldTextureName )
471 selectNew = ComboTexture->getItemCount()-1;
472
473 if ( selectNew >= 0 )
474 ComboTexture->setSelected(selectNew);
475
476 DirtyFlag = true;
477 }
478
479private:
480 bool DirtyFlag;
481 gui::IGUIComboBox * ComboTexture;
482};
483
484/*
485 Control which allows setting some of the material values for a meshscenenode
486*/
487struct SMeshNodeControl
488{
489 // constructor
490 SMeshNodeControl()
491 : Initialized(false), Driver(0), MeshManipulator(0), SceneNode(0), SceneNode2T(0), SceneNodeTangents(0)
492 , AllColorsControl(0), ButtonLighting(0), InfoLighting(0), ComboMaterial(0), TextureControl1(0), TextureControl2(0), ControlVertexColors(0)
493 {
494 }
495
496 // Destructor
497 virtual ~SMeshNodeControl()
498 {
499 if ( TextureControl1 )
500 TextureControl1->drop();
501 if ( TextureControl2 )
502 TextureControl2->drop();
503 if ( ControlVertexColors )
504 ControlVertexColors->drop();
505 if ( AllColorsControl )
506 AllColorsControl->drop();
507 }
508
509 void init(scene::IMeshSceneNode* node, IrrlichtDevice * device, const core::position2d<s32> & pos, const wchar_t * description)
510 {
511 if ( Initialized || !node || !device) // initializing twice or with invalid data not allowed
512 return;
513
514 Driver = device->getVideoDriver ();
515 gui::IGUIEnvironment* guiEnv = device->getGUIEnvironment();
516 scene::ISceneManager* smgr = device->getSceneManager();
517 MeshManipulator = smgr->getMeshManipulator();
518
519 SceneNode = node;
520 scene::IMeshManipulator * meshManip = smgr->getMeshManipulator();
521
522 scene::IMesh * mesh2T = meshManip->createMeshWith2TCoords(node->getMesh());
523 SceneNode2T = smgr->addMeshSceneNode(mesh2T, 0, -1, SceneNode->getPosition(), SceneNode->getRotation(), SceneNode->getScale() );
524 mesh2T->drop();
525
526 scene::IMesh * meshTangents = meshManip->createMeshWithTangents(node->getMesh(), false, false, false);
527 SceneNodeTangents = smgr->addMeshSceneNode(meshTangents, 0, -1
528 , SceneNode->getPosition(), SceneNode->getRotation(), SceneNode->getScale() );
529 meshTangents->drop();
530
531 video::SMaterial & material = SceneNode->getMaterial(0);
532 material.Lighting = true;
533 AllColorsControl = new CAllColorsControl(guiEnv, pos, description, true, guiEnv->getRootGUIElement());
534 AllColorsControl->setColorsToMaterialColors(material);
535
536 core::rect<s32> rectBtn(pos + core::position2d<s32>(0, 320), core::dimension2d<s32>(60, 15));
537 ButtonLighting = guiEnv->addButton (rectBtn, 0, -1, L"Lighting");
538 ButtonLighting->setIsPushButton(true);
539 ButtonLighting->setPressed(material.Lighting);
540 core::rect<s32> rectInfo( rectBtn.LowerRightCorner.X, rectBtn.UpperLeftCorner.Y, rectBtn.LowerRightCorner.X+40, rectBtn.UpperLeftCorner.Y+15 );
541 InfoLighting = guiEnv->addStaticText(L"", rectInfo, true, false );
542 InfoLighting->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_CENTER );
543
544 core::rect<s32> rectCombo(pos.X, rectBtn.LowerRightCorner.Y, pos.X+100, rectBtn.LowerRightCorner.Y+15);
545 ComboMaterial = guiEnv->addComboBox (rectCombo);
546 for ( int i=0; i <= (int)video::EMT_ONETEXTURE_BLEND; ++i )
547 {
548 ComboMaterial->addItem( core::stringw(video::sBuiltInMaterialTypeNames[i]).c_str() );
549 }
550 ComboMaterial->setSelected( (s32)material.MaterialType );
551
552 core::position2d<s32> posTex(rectCombo.UpperLeftCorner.X,rectCombo.LowerRightCorner.Y);
553 TextureControl1 = new CTextureControl(guiEnv, Driver, posTex, guiEnv->getRootGUIElement());
554 posTex.Y += 15;
555 TextureControl2 = new CTextureControl(guiEnv, Driver, posTex, guiEnv->getRootGUIElement());
556
557 core::position2d<s32> posVertexColors( posTex.X, posTex.Y + 15);
558 ControlVertexColors = new CColorControl( guiEnv, posVertexColors, L"Vertex colors", guiEnv->getRootGUIElement());
559
560 video::S3DVertex * vertices = (video::S3DVertex *)node->getMesh()->getMeshBuffer(0)->getVertices();
561 if ( vertices )
562 {
563 ControlVertexColors->setColor(vertices[0].Color);
564 }
565
566 Initialized = true;
567 }
568
569 void update()
570 {
571 if ( !Initialized )
572 return;
573
574 video::SMaterial & material = SceneNode->getMaterial(0);
575 video::SMaterial & material2T = SceneNode2T->getMaterial(0);
576 video::SMaterial & materialTangents = SceneNodeTangents->getMaterial(0);
577
578 s32 selectedMaterial = ComboMaterial->getSelected();
579 if ( selectedMaterial >= (s32)video::EMT_SOLID && selectedMaterial <= (s32)video::EMT_ONETEXTURE_BLEND)
580 {
581 video::E_VERTEX_TYPE vertexType = getVertexTypeForMaterialType((video::E_MATERIAL_TYPE)selectedMaterial);
582 switch ( vertexType )
583 {
584 case video::EVT_STANDARD:
585 material.MaterialType = (video::E_MATERIAL_TYPE)selectedMaterial;
586 SceneNode->setVisible(true);
587 SceneNode2T->setVisible(false);
588 SceneNodeTangents->setVisible(false);
589 break;
590 case video::EVT_2TCOORDS:
591 material2T.MaterialType = (video::E_MATERIAL_TYPE)selectedMaterial;
592 SceneNode->setVisible(false);
593 SceneNode2T->setVisible(true);
594 SceneNodeTangents->setVisible(false);
595 break;
596 case video::EVT_TANGENTS:
597 materialTangents.MaterialType = (video::E_MATERIAL_TYPE)selectedMaterial;
598 SceneNode->setVisible(false);
599 SceneNode2T->setVisible(false);
600 SceneNodeTangents->setVisible(true);
601 break;
602 }
603 }
604
605 updateMaterial(material);
606 updateMaterial(material2T);
607 updateMaterial(materialTangents);
608
609 if ( ButtonLighting->isPressed() )
610 InfoLighting->setText(L"on");
611 else
612 InfoLighting->setText(L"off");
613
614 AllColorsControl->resetDirty();
615 TextureControl1->resetDirty();
616 TextureControl2->resetDirty();
617 ControlVertexColors->resetDirty();
618 }
619
620 void updateTextures()
621 {
622 TextureControl1->updateTextures(Driver);
623 TextureControl2->updateTextures(Driver);
624 }
625
626protected:
627
628 void updateMaterial(video::SMaterial & material)
629 {
630 AllColorsControl->updateMaterialColors(material);
631 material.Lighting = ButtonLighting->isPressed();
632 if ( TextureControl1->isDirty() )
633 {
634 material.TextureLayer[0].Texture = Driver->getTexture( io::path(TextureControl1->getSelectedTextureName()) );
635 }
636 if ( TextureControl2->isDirty() )
637 {
638 material.TextureLayer[1].Texture = Driver->getTexture( io::path(TextureControl2->getSelectedTextureName()) );
639 }
640 if ( ControlVertexColors->isDirty() )
641 {
642 MeshManipulator->setVertexColors (SceneNode->getMesh(), ControlVertexColors->getColor());
643 MeshManipulator->setVertexColors (SceneNode2T->getMesh(), ControlVertexColors->getColor());
644 MeshManipulator->setVertexColors (SceneNodeTangents->getMesh(), ControlVertexColors->getColor());
645 }
646 }
647
648 bool Initialized;
649 video::IVideoDriver * Driver;
650 scene::IMeshManipulator* MeshManipulator;
651 scene::IMeshSceneNode* SceneNode;
652 scene::IMeshSceneNode* SceneNode2T;
653 scene::IMeshSceneNode* SceneNodeTangents;
654 CAllColorsControl* AllColorsControl;
655 gui::IGUIButton * ButtonLighting;
656 gui::IGUIStaticText* InfoLighting;
657 gui::IGUIComboBox * ComboMaterial;
658 CTextureControl* TextureControl1;
659 CTextureControl* TextureControl2;
660 CColorControl* ControlVertexColors;
661};
662
663/*
664 Control to allow setting the color values of a lightscenenode.
665*/
666struct SLightNodeControl
667{
668 // constructor
669 SLightNodeControl() : Initialized(false), SceneNode(0), AllColorsControl(0)
670 {
671 }
672
673 virtual ~SLightNodeControl()
674 {
675 if ( AllColorsControl )
676 AllColorsControl->drop();
677 }
678
679 void init(scene::ILightSceneNode* node, gui::IGUIEnvironment* guiEnv, const core::position2d<s32> & pos, const wchar_t * description)
680 {
681 if ( Initialized || !node || !guiEnv) // initializing twice or with invalid data not allowed
682 return;
683 SceneNode = node;
684 AllColorsControl = new CAllColorsControl(guiEnv, pos, description, false, guiEnv->getRootGUIElement());
685 const video::SLight & lightData = SceneNode->getLightData();
686 AllColorsControl->setColorsToLightDataColors(lightData);
687 Initialized = true;
688 }
689
690 void update()
691 {
692 if ( !Initialized )
693 return;
694
695 video::SLight & lightData = SceneNode->getLightData();
696 AllColorsControl->updateLightColors(lightData);
697 }
698
699protected:
700 bool Initialized;
701 scene::ILightSceneNode* SceneNode;
702 CAllColorsControl* AllColorsControl;
703};
704
705/*
706 Application configuration
707*/
708struct SConfig
709{
710 SConfig()
711 : RenderInBackground(true)
712 , DriverType(video::EDT_BURNINGSVIDEO)
713 , ScreenSize(640, 480)
714 {
715 }
716
717 bool RenderInBackground;
718 video::E_DRIVER_TYPE DriverType;
719 core::dimension2d<u32> ScreenSize;
720};
721
722/*
723 Main application class
724*/
725class CApp : public IEventReceiver
726{
727 friend int main(int argc, char *argv[]);
728
729public:
730 // constructor
731 CApp()
732 : IsRunning(false)
733 , Device(0)
734 , Camera(0)
735 , GlobalAmbient(0)
736 {
737 }
738
739 // destructor
740 ~CApp()
741 {
742 }
743
744 // stop running - will quit at end of mainloop
745 void stopApp()
746 {
747 IsRunning = false;
748 }
749
750 // Event handler
751 virtual bool OnEvent(const SEvent &event)
752 {
753 if (event.EventType == EET_GUI_EVENT)
754 {
755 gui::IGUIEnvironment* env = Device->getGUIEnvironment();
756
757 switch(event.GUIEvent.EventType)
758 {
759 case gui::EGET_MENU_ITEM_SELECTED:
760 {
761 gui::IGUIContextMenu* menu = (gui::IGUIContextMenu*)event.GUIEvent.Caller;
762 s32 id = menu->getItemCommandId(menu->getSelectedItem());
763
764 switch(id)
765 {
766 case GUI_ID_OPEN_TEXTURE: // File -> Open Texture
767 env->addFileOpenDialog(L"Please select a texture file to open");
768 break;
769 case GUI_ID_QUIT: // File -> Quit
770 stopApp();
771 break;
772 }
773 }
774 break;
775
776 case gui::EGET_FILE_SELECTED:
777 {
778 // load the model file, selected in the file open dialog
779 gui::IGUIFileOpenDialog* dialog =
780 (gui::IGUIFileOpenDialog*)event.GUIEvent.Caller;
781 loadTexture(io::path(dialog->getFileName()).c_str());
782 }
783 break;
784
785 default:
786 break;
787 }
788 }
789
790 return false;
791 }
792
793protected:
794
795 // Application initialization
796 // returns true when it was successful initialized, otherwise false.
797 bool init(int argc, char *argv[])
798 {
799 // ask user for driver
800 Config.DriverType=driverChoiceConsole();
801 if (Config.DriverType==video::EDT_COUNT)
802 return false;
803
804 // create the device with the settings from our config
805 Device = createDevice(Config.DriverType, Config.ScreenSize);
806 if (!Device)
807 return false;
808 Device->setWindowCaption( DriverTypeNames[Config.DriverType] );
809 Device->setEventReceiver(this);
810
811 scene::ISceneManager* smgr = Device->getSceneManager();
812 video::IVideoDriver * driver = Device->getVideoDriver ();
813 gui::IGUIEnvironment* guiEnv = Device->getGUIEnvironment();
814
815 // set a nicer font
816 gui::IGUISkin* skin = guiEnv->getSkin();
817 gui::IGUIFont* font = guiEnv->getFont("../../media/fonthaettenschweiler.bmp");
818 if (font)
819 skin->setFont(font);
820
821 // remove some alpha value because it makes those menus harder to read otherwise
822 video::SColor col3dHighLight( skin->getColor(gui::EGDC_APP_WORKSPACE) );
823 col3dHighLight.setAlpha(255);
824 video::SColor colHighLight( col3dHighLight );
825 skin->setColor(gui::EGDC_HIGH_LIGHT, colHighLight );
826 skin->setColor(gui::EGDC_3D_HIGH_LIGHT, col3dHighLight );
827
828 // Add some textures which are useful to test material settings
829 createDefaultTextures(driver);
830
831 // create a menu
832 gui::IGUIContextMenu * menuBar = guiEnv->addMenu();
833 menuBar->addItem(L"File", -1, true, true);
834
835 gui::IGUIContextMenu* subMenuFile = menuBar->getSubMenu(0);
836 subMenuFile->addItem(L"Open texture ...", GUI_ID_OPEN_TEXTURE);
837 subMenuFile->addSeparator();
838 subMenuFile->addItem(L"Quit", GUI_ID_QUIT);
839
840 // a static camera
841 Camera = smgr->addCameraSceneNode (0, core::vector3df(0, 0, 0),
842 core::vector3df(0, 0, 100),
843 -1);
844
845 // add the nodes which are used to show the materials
846 scene::IMeshSceneNode* nodeL = smgr->addCubeSceneNode (30.0f, 0, -1,
847 core::vector3df(-35, 0, 100),
848 core::vector3df(0, 0, 0),
849 core::vector3df(1.0f, 1.0f, 1.0f));
850 NodeLeft.init( nodeL, Device, core::position2d<s32>(10,20), L"left node" );
851
852 scene::IMeshSceneNode* nodeR = smgr->addCubeSceneNode (30.0f, 0, -1,
853 core::vector3df(35, 0, 100),
854 core::vector3df(0, 0, 0),
855 core::vector3df(1.0f, 1.0f, 1.0f));
856 NodeRight.init( nodeR, Device, core::position2d<s32>(530,20), L"right node" );
857
858 // add one light
859 scene::ILightSceneNode* nodeLight = smgr->addLightSceneNode(0, core::vector3df(0, 0, 0),
860 video::SColorf(1.0f, 1.0f, 1.0f),
861 100.0f);
862 LightControl.init(nodeLight, guiEnv, core::position2d<s32>(270,20), L"light" );
863
864 // one large cube around everything. That's mainly to make the light more obvious.
865 scene::IMeshSceneNode* backgroundCube = smgr->addCubeSceneNode (200.0f, 0, -1, core::vector3df(0, 0, 0),
866 core::vector3df(45, 0, 0),
867 core::vector3df(1.0f, 1.0f, 1.0f));
868 backgroundCube->getMaterial(0).BackfaceCulling = false; // we are within the cube, so we have to disable backface culling to see it
869 backgroundCube->getMaterial(0).EmissiveColor.set(255,50,50,50); // we keep some self lighting to keep texts visible
870
871 // set the ambient light value
872 GlobalAmbient = new CColorControl( guiEnv, core::position2d<s32>(270, 300), L"global ambient", guiEnv->getRootGUIElement());
873 GlobalAmbient->setColor( smgr->getAmbientLight().toSColor() );
874
875 return true;
876 }
877
878 // Update one frame
879 bool update()
880 {
881 using namespace irr;
882
883 video::IVideoDriver* videoDriver = Device->getVideoDriver();
884 if ( !Device->run() )
885 return false;
886
887 if ( Device->isWindowActive() || Config.RenderInBackground )
888 {
889 gui::IGUIEnvironment* guiEnv = Device->getGUIEnvironment();
890 scene::ISceneManager* smgr = Device->getSceneManager();
891 gui::IGUISkin * skin = guiEnv->getSkin();
892
893 // update our controls
894 NodeLeft.update();
895 NodeRight.update();
896 LightControl.update();
897
898 // update ambient light settings
899 if ( GlobalAmbient->isDirty() )
900 {
901 smgr->setAmbientLight( GlobalAmbient->getColor() );
902 GlobalAmbient->resetDirty();
903 }
904
905 // draw everything
906 video::SColor bkColor( skin->getColor(gui::EGDC_APP_WORKSPACE) );
907 videoDriver->beginScene(true, true, bkColor);
908
909 smgr->drawAll();
910 guiEnv->drawAll();
911
912 videoDriver->endScene();
913 }
914
915 return true;
916 }
917
918 // Run the application. Our main loop.
919 void run()
920 {
921 IsRunning = true;
922
923 if ( !Device )
924 return;
925
926 // main application loop
927 while(IsRunning)
928 {
929 if ( !update() )
930 break;
931
932 Device->sleep( 5 );
933 }
934 }
935
936 // Close down the application
937 void quit()
938 {
939 IsRunning = false;
940 GlobalAmbient->drop();
941 GlobalAmbient = NULL;
942 if ( Device )
943 {
944 Device->closeDevice();
945 Device->drop();
946 Device = NULL;
947 }
948 }
949
950 // Create some useful textures.
951 // Note that the function put readability over speed, you shouldn't use setPixel at runtime but for initialization it's nice.
952 void createDefaultTextures(video::IVideoDriver * driver)
953 {
954 const u32 width = 256;
955 const u32 height = 256;
956 video::IImage * imageA8R8G8B8 = driver->createImage (video::ECF_A8R8G8B8, core::dimension2d<u32>(width, height));
957 if ( !imageA8R8G8B8 )
958 return;
959 const u32 pitch = imageA8R8G8B8->getPitch();
960
961 // some nice square-pattern with 9 typical colors
962 for ( u32 y = 0; y < height; ++ y )
963 {
964 for ( u32 x = 0; x < pitch; ++x )
965 {
966 if ( y < height/3 )
967 {
968 if ( x < width/3 )
969 imageA8R8G8B8->setPixel (x, y, SCOL_BLACK);
970 else if ( x < 2*width/3 )
971 imageA8R8G8B8->setPixel (x, y, SCOL_BLUE);
972 else
973 imageA8R8G8B8->setPixel (x, y, SCOL_CYAN);
974 }
975 else if ( y < 2*height/3 )
976 {
977 if ( x < width/3 )
978 imageA8R8G8B8->setPixel (x, y, SCOL_GRAY);
979 else if ( x < 2*width/3 )
980 imageA8R8G8B8->setPixel (x, y, SCOL_GREEN);
981 else
982 imageA8R8G8B8->setPixel (x, y, SCOL_MAGENTA);
983 }
984 else
985 {
986 if ( x < width/3 )
987 imageA8R8G8B8->setPixel (x, y, SCOL_RED);
988 else if ( x < 2*width/3 )
989 imageA8R8G8B8->setPixel (x, y, SCOL_YELLOW);
990 else
991 imageA8R8G8B8->setPixel (x, y, SCOL_WHITE);
992 }
993 }
994 }
995 driver->addTexture (io::path("CARO_A8R8G8B8"), imageA8R8G8B8);
996
997 // all white
998 imageA8R8G8B8->fill(SCOL_WHITE);
999 driver->addTexture (io::path("WHITE_A8R8G8B8"), imageA8R8G8B8);
1000
1001 // all black
1002 imageA8R8G8B8->fill(SCOL_BLACK);
1003 driver->addTexture (io::path("BLACK_A8R8G8B8"), imageA8R8G8B8);
1004
1005 // gray-scale
1006 for ( u32 y = 0; y < height; ++ y )
1007 {
1008 for ( u32 x = 0; x < pitch; ++x )
1009 {
1010 imageA8R8G8B8->setPixel (x, y, video::SColor(y, x,x,x) );
1011 }
1012 }
1013 driver->addTexture (io::path("GRAYSCALE_A8R8G8B8"), imageA8R8G8B8);
1014
1015 imageA8R8G8B8->drop();
1016 }
1017
1018 // Load a texture and make sure nodes know it when more textures are available.
1019 void loadTexture(const io::path &name)
1020 {
1021 Device->getVideoDriver()->getTexture(name);
1022 NodeLeft.updateTextures();
1023 NodeRight.updateTextures();
1024 }
1025
1026private:
1027 SConfig Config;
1028 volatile bool IsRunning;
1029 IrrlichtDevice * Device;
1030 scene::ICameraSceneNode * Camera;
1031 SMeshNodeControl NodeLeft;
1032 SMeshNodeControl NodeRight;
1033 SLightNodeControl LightControl;
1034 CColorControl * GlobalAmbient;
1035};
1036
1037/*
1038 A very short main as we do everything else in classes.
1039*/
1040int main(int argc, char *argv[])
1041{
1042 CApp APP;
1043
1044 if ( !APP.init(argc, argv) )
1045 {
1046 printf("init failed\n");
1047 return 1;
1048 }
1049
1050 APP.run();
1051 APP.quit();
1052
1053 return 0;
1054}
1055
1056/*
1057**/
diff --git a/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/Makefile b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/Makefile
new file mode 100644
index 0000000..eab5060
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/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 = 23.SMeshHandling
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/23.SMeshHandling/SMeshHandling.cbp b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.cbp
new file mode 100644
index 0000000..2fbcfe2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.cbp
@@ -0,0 +1,44 @@
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 23 SMeshHandling" />
6 <Option pch_mode="2" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Windows">
10 <Option platforms="Windows;" />
11 <Option output="..\..\bin\Win32-gcc\SMeshHandling" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Linker>
15 <Add directory="..\..\lib\Win32-gcc" />
16 </Linker>
17 </Target>
18 <Target title="Linux">
19 <Option platforms="Unix;" />
20 <Option output="..\..\bin\Linux\SMeshHandling" prefix_auto="0" extension_auto="0" />
21 <Option type="1" />
22 <Option compiler="gcc" />
23 <Linker>
24 <Add library="Xxf86vm" />
25 <Add library="Xcursor" />
26 <Add library="GL" />
27 <Add directory="..\..\lib\Linux" />
28 </Linker>
29 </Target>
30 </Build>
31 <Compiler>
32 <Add directory="..\..\include" />
33 </Compiler>
34 <Linker>
35 <Add library="Irrlicht" />
36 </Linker>
37 <Unit filename="main.cpp" />
38 <Extensions>
39 <code_completion />
40 <envvars />
41 <debugger />
42 </Extensions>
43 </Project>
44</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.dev b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.dev
new file mode 100644
index 0000000..94043f3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 23 SMeshHandling
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=23.SMeshHandling.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/23.SMeshHandling/SMeshHandling.vcproj b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.vcproj
new file mode 100644
index 0000000..a63d583
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling.vcproj
@@ -0,0 +1,132 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="23.SMeshHandling"
6 ProjectGUID="{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}"
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\23.SMeshHandling.exe"
36 LinkIncremental="1"
37 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
38 GenerateDebugInformation="TRUE"
39 ProgramDatabaseFile="$(OutDir)/SMeshHandling.pdb"
40 SubSystem="1"
41 TargetMachine="1"/>
42 <Tool
43 Name="VCMIDLTool"/>
44 <Tool
45 Name="VCPostBuildEventTool"/>
46 <Tool
47 Name="VCPreBuildEventTool"/>
48 <Tool
49 Name="VCPreLinkEventTool"/>
50 <Tool
51 Name="VCResourceCompilerTool"/>
52 <Tool
53 Name="VCWebServiceProxyGeneratorTool"/>
54 <Tool
55 Name="VCXMLDataGeneratorTool"/>
56 <Tool
57 Name="VCWebDeploymentTool"/>
58 <Tool
59 Name="VCManagedWrapperGeneratorTool"/>
60 <Tool
61 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
62 </Configuration>
63 <Configuration
64 Name="Release|Win32"
65 OutputDirectory="Release"
66 IntermediateDirectory="Release"
67 ConfigurationType="1"
68 CharacterSet="2"
69 WholeProgramOptimization="TRUE">
70 <Tool
71 Name="VCCLCompilerTool"
72 AdditionalOptions="/QIfist /Oa"
73 Optimization="3"
74 GlobalOptimizations="TRUE"
75 InlineFunctionExpansion="2"
76 EnableIntrinsicFunctions="TRUE"
77 FavorSizeOrSpeed="1"
78 OmitFramePointers="TRUE"
79 AdditionalIncludeDirectories="..\..\include"
80 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
81 RuntimeLibrary="4"
82 BufferSecurityCheck="FALSE"
83 UsePrecompiledHeader="0"
84 WarningLevel="3"
85 Detect64BitPortabilityProblems="TRUE"
86 DebugInformationFormat="0"
87 CallingConvention="1"/>
88 <Tool
89 Name="VCCustomBuildTool"/>
90 <Tool
91 Name="VCLinkerTool"
92 OutputFile="..\..\bin\Win32-VisualStudio\23.SMeshHandling.exe"
93 LinkIncremental="1"
94 SuppressStartupBanner="TRUE"
95 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
96 GenerateDebugInformation="FALSE"
97 SubSystem="1"
98 OptimizeReferences="2"
99 EnableCOMDATFolding="2"
100 TargetMachine="1"/>
101 <Tool
102 Name="VCMIDLTool"/>
103 <Tool
104 Name="VCPostBuildEventTool"/>
105 <Tool
106 Name="VCPreBuildEventTool"/>
107 <Tool
108 Name="VCPreLinkEventTool"/>
109 <Tool
110 Name="VCResourceCompilerTool"/>
111 <Tool
112 Name="VCWebServiceProxyGeneratorTool"/>
113 <Tool
114 Name="VCXMLDataGeneratorTool"/>
115 <Tool
116 Name="VCWebDeploymentTool"/>
117 <Tool
118 Name="VCManagedWrapperGeneratorTool"/>
119 <Tool
120 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
121 </Configuration>
122 </Configurations>
123 <References>
124 </References>
125 <Files>
126 <File
127 RelativePath=".\main.cpp">
128 </File>
129 </Files>
130 <Globals>
131 </Globals>
132</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc10.vcxproj
new file mode 100644
index 0000000..51a6f9e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc10.vcxproj
@@ -0,0 +1,188 @@
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>23.SMeshHandling</ProjectName>
23 <ProjectGuid>{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}</ProjectGuid>
24 <RootNamespace>23.SMeshHandling</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'">false</LinkIncremental>
73 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
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 </ClCompile>
100 <Link>
101 <OutputFile>..\..\bin\Win32-VisualStudio\23.SMeshHandling.exe</OutputFile>
102 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
103 <GenerateDebugInformation>true</GenerateDebugInformation>
104 <ProgramDatabaseFile>$(OutDir)SMeshHandling.pdb</ProgramDatabaseFile>
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 </ClCompile>
122 <Link>
123 <OutputFile>..\..\bin\Win64-VisualStudio\23.SMeshHandling.exe</OutputFile>
124 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
125 <GenerateDebugInformation>true</GenerateDebugInformation>
126 <ProgramDatabaseFile>$(OutDir)SMeshHandling.pdb</ProgramDatabaseFile>
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 <ExceptionHandling>Sync</ExceptionHandling>
139 <PrecompiledHeader>
140 </PrecompiledHeader>
141 <WarningLevel>Level3</WarningLevel>
142 <DebugInformationFormat>
143 </DebugInformationFormat>
144 <CallingConvention>Cdecl</CallingConvention>
145 </ClCompile>
146 <Link>
147 <OutputFile>..\..\bin\Win32-VisualStudio\23.SMeshHandling.exe</OutputFile>
148 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
149 <GenerateDebugInformation>false</GenerateDebugInformation>
150 <SubSystem>Console</SubSystem>
151 <OptimizeReferences>true</OptimizeReferences>
152 <EnableCOMDATFolding>true</EnableCOMDATFolding>
153 <DataExecutionPrevention>
154 </DataExecutionPrevention>
155 </Link>
156 </ItemDefinitionGroup>
157 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
158 <ClCompile>
159 <IntrinsicFunctions>true</IntrinsicFunctions>
160 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
161 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
162 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
163 <ExceptionHandling>Sync</ExceptionHandling>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 <DebugInformationFormat>
168 </DebugInformationFormat>
169 <CallingConvention>Cdecl</CallingConvention>
170 </ClCompile>
171 <Link>
172 <OutputFile>..\..\bin\Win64-VisualStudio\23.SMeshHandling.exe</OutputFile>
173 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
174 <GenerateDebugInformation>false</GenerateDebugInformation>
175 <SubSystem>Console</SubSystem>
176 <OptimizeReferences>true</OptimizeReferences>
177 <EnableCOMDATFolding>true</EnableCOMDATFolding>
178 <DataExecutionPrevention>
179 </DataExecutionPrevention>
180 </Link>
181 </ItemDefinitionGroup>
182 <ItemGroup>
183 <ClCompile Include="main.cpp" />
184 </ItemGroup>
185 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
186 <ImportGroup Label="ExtensionTargets">
187 </ImportGroup>
188</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc11.vcxproj
new file mode 100644
index 0000000..7f2a781
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc11.vcxproj
@@ -0,0 +1,192 @@
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>23.SMeshHandling</ProjectName>
23 <ProjectGuid>{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}</ProjectGuid>
24 <RootNamespace>23.SMeshHandling</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'">false</LinkIncremental>
77 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
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 </ClCompile>
104 <Link>
105 <OutputFile>..\..\bin\Win32-VisualStudio\23.SMeshHandling.exe</OutputFile>
106 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
107 <GenerateDebugInformation>true</GenerateDebugInformation>
108 <ProgramDatabaseFile>$(OutDir)SMeshHandling.pdb</ProgramDatabaseFile>
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 </ClCompile>
126 <Link>
127 <OutputFile>..\..\bin\Win64-VisualStudio\23.SMeshHandling.exe</OutputFile>
128 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
129 <GenerateDebugInformation>true</GenerateDebugInformation>
130 <ProgramDatabaseFile>$(OutDir)SMeshHandling.pdb</ProgramDatabaseFile>
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 <ExceptionHandling>Sync</ExceptionHandling>
143 <PrecompiledHeader>
144 </PrecompiledHeader>
145 <WarningLevel>Level3</WarningLevel>
146 <DebugInformationFormat>
147 </DebugInformationFormat>
148 <CallingConvention>Cdecl</CallingConvention>
149 </ClCompile>
150 <Link>
151 <OutputFile>..\..\bin\Win32-VisualStudio\23.SMeshHandling.exe</OutputFile>
152 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
153 <GenerateDebugInformation>false</GenerateDebugInformation>
154 <SubSystem>Console</SubSystem>
155 <OptimizeReferences>true</OptimizeReferences>
156 <EnableCOMDATFolding>true</EnableCOMDATFolding>
157 <DataExecutionPrevention>
158 </DataExecutionPrevention>
159 </Link>
160 </ItemDefinitionGroup>
161 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
162 <ClCompile>
163 <IntrinsicFunctions>true</IntrinsicFunctions>
164 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
165 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
166 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
167 <ExceptionHandling>Sync</ExceptionHandling>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 <DebugInformationFormat>
172 </DebugInformationFormat>
173 <CallingConvention>Cdecl</CallingConvention>
174 </ClCompile>
175 <Link>
176 <OutputFile>..\..\bin\Win64-VisualStudio\23.SMeshHandling.exe</OutputFile>
177 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
178 <GenerateDebugInformation>false</GenerateDebugInformation>
179 <SubSystem>Console</SubSystem>
180 <OptimizeReferences>true</OptimizeReferences>
181 <EnableCOMDATFolding>true</EnableCOMDATFolding>
182 <DataExecutionPrevention>
183 </DataExecutionPrevention>
184 </Link>
185 </ItemDefinitionGroup>
186 <ItemGroup>
187 <ClCompile Include="main.cpp" />
188 </ItemGroup>
189 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
190 <ImportGroup Label="ExtensionTargets">
191 </ImportGroup>
192</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc8.vcproj
new file mode 100644
index 0000000..ecc9135
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_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="23.SMeshHandling_vc8"
6 ProjectGUID="{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}"
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\23.SMeshHandling.exe"
65 LinkIncremental="2"
66 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
67 GenerateDebugInformation="true"
68 ProgramDatabaseFile="$(OutDir)/SMeshHandling.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\23.SMeshHandling.exe"
146 LinkIncremental="1"
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/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc9.vcproj
new file mode 100644
index 0000000..b1b921e
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/SMeshHandling_vc9.vcproj
@@ -0,0 +1,187 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="23.SMeshHandling_vc9"
6 ProjectGUID="{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}"
7 RootNamespace="23.SMeshHandling_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\23.SMeshHandling.exe"
66 LinkIncremental="2"
67 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
68 GenerateDebugInformation="true"
69 ProgramDatabaseFile="$(OutDir)/SMeshHandling.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 ExceptionHandling="1"
127 UsePrecompiledHeader="0"
128 WarningLevel="3"
129 DebugInformationFormat="0"
130 CallingConvention="0"
131 />
132 <Tool
133 Name="VCManagedResourceCompilerTool"
134 />
135 <Tool
136 Name="VCResourceCompilerTool"
137 />
138 <Tool
139 Name="VCPreLinkEventTool"
140 />
141 <Tool
142 Name="VCLinkerTool"
143 OutputFile="..\..\bin\Win32-VisualStudio\23.SMeshHandling.exe"
144 LinkIncremental="1"
145 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
146 GenerateDebugInformation="false"
147 SubSystem="1"
148 OptimizeReferences="2"
149 EnableCOMDATFolding="2"
150 RandomizedBaseAddress="1"
151 DataExecutionPrevention="0"
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="VCPostBuildEventTool"
174 />
175 </Configuration>
176 </Configurations>
177 <References>
178 </References>
179 <Files>
180 <File
181 RelativePath=".\main.cpp"
182 >
183 </File>
184 </Files>
185 <Globals>
186 </Globals>
187</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/main.cpp b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/main.cpp
new file mode 100644
index 0000000..c3c2ccf
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/23.SMeshHandling/main.cpp
@@ -0,0 +1,426 @@
1/** Example 023 SMeshBufferHandling
2
3A tutorial by geoff.
4
5In this tutorial we'll learn how to create custom meshes and deal with them
6with Irrlicht. We'll create an interesting heightmap with some lighting effects.
7With keys 1,2,3 you can choose a different mesh layout, which is put into the
8mesh buffers as desired. All positions, normals, etc. are updated accordingly.
9
10Ok, let's start with the headers (I think there's nothing to say about it)
11*/
12
13#include <irrlicht.h>
14#include "driverChoice.h"
15
16#ifdef _MSC_VER
17#pragma comment(lib, "Irrlicht.lib")
18#endif
19
20//Namespaces for the engine
21using namespace irr;
22using namespace video;
23using namespace core;
24using namespace scene;
25using namespace io;
26using namespace gui;
27
28/* This is the type of the functions which work out the colour. */
29typedef SColor colour_func(f32 x, f32 y, f32 z);
30
31/* Here comes a set of functions which can be used for coloring the nodes while
32creating the mesh. */
33
34// Greyscale, based on the height.
35SColor grey(f32, f32, f32 z)
36{
37 u32 n = (u32)(255.f * z);
38 return SColor(255, n, n, n);
39}
40
41// Interpolation between blue and white, with red added in one
42// direction and green in the other.
43SColor yellow(f32 x, f32 y, f32)
44{
45 return SColor(255, 128 + (u32)(127.f * x), 128 + (u32)(127.f * y), 255);
46}
47
48// Pure white.
49SColor white(f32, f32, f32) { return SColor(255, 255, 255, 255); }
50
51/* The type of the functions which generate the heightmap. x and y
52range between -0.5 and 0.5, and s is the scale of the heightmap. */
53
54typedef f32 generate_func(s16 x, s16 y, f32 s);
55
56// An interesting sample function :-)
57f32 eggbox(s16 x, s16 y, f32 s)
58{
59 const f32 r = 4.f*sqrtf((f32)(x*x + y*y))/s;
60 const f32 z = expf(-r * 2) * (cosf(0.2f * x) + cosf(0.2f * y));
61 return 0.25f+0.25f*z;
62}
63
64// A rather dumb sine function :-/
65f32 moresine(s16 x, s16 y, f32 s)
66{
67 const f32 xx=0.3f*(f32)x/s;
68 const f32 yy=12*y/s;
69 const f32 z = sinf(xx*xx+yy)*sinf(xx+yy*yy);
70 return 0.25f + 0.25f * z;
71}
72
73// A simple function
74f32 justexp(s16 x, s16 y, f32 s)
75{
76 const f32 xx=6*x/s;
77 const f32 yy=6*y/s;
78 const f32 z = (xx*xx+yy*yy);
79 return 0.3f*z*cosf(xx*yy);
80}
81
82/* A simple class for representing heightmaps. Most of this should be obvious. */
83
84class HeightMap
85{
86private:
87 const u16 Width;
88 const u16 Height;
89 f32 s;
90 core::array<f32> data;
91public:
92 HeightMap(u16 _w, u16 _h) : Width(_w), Height(_h), s(0.f), data(0)
93 {
94 s = sqrtf((f32)(Width * Width + Height * Height));
95 data.set_used(Width * Height);
96 }
97
98 // Fill the heightmap with values generated from f.
99 void generate(generate_func f)
100 {
101 u32 i=0;
102 for(u16 y = 0; y < Height; ++y)
103 for(u16 x = 0; x < Width; ++x)
104 set(i++, calc(f, x, y));
105 }
106
107 u16 height() const { return Height; }
108 u16 width() const { return Width; }
109
110 f32 calc(generate_func f, u16 x, u16 y) const
111 {
112 const f32 xx = (f32)x - Width*0.5f;
113 const f32 yy = (f32)y - Height*0.5f;
114 return f((u16)xx, (u16)yy, s);
115 }
116
117 // The height at (x, y) is at position y * Width + x.
118
119 void set(u16 x, u16 y, f32 z) { data[y * Width + x] = z; }
120 void set(u32 i, f32 z) { data[i] = z; }
121 f32 get(u16 x, u16 y) const { return data[y * Width + x]; }
122
123 /* The only difficult part. This considers the normal at (x, y) to
124 be the cross product of the vectors between the adjacent points
125 in the horizontal and vertical directions.
126
127 s is a scaling factor, which is necessary if the height units are
128 different from the coordinate units; for example, if your map has
129 heights in metres and the coordinates are in units of a
130 kilometer. */
131
132 vector3df getnormal(u16 x, u16 y, f32 s) const
133 {
134 const f32 zc = get(x, y);
135 f32 zl, zr, zu, zd;
136
137 if (x == 0)
138 {
139 zr = get(x + 1, y);
140 zl = zc + zc - zr;
141 }
142 else if (x == Width - 1)
143 {
144 zl = get(x - 1, y);
145 zr = zc + zc - zl;
146 }
147 else
148 {
149 zr = get(x + 1, y);
150 zl = get(x - 1, y);
151 }
152
153 if (y == 0)
154 {
155 zd = get(x, y + 1);
156 zu = zc + zc - zd;
157 }
158 else if (y == Height - 1)
159 {
160 zu = get(x, y - 1);
161 zd = zc + zc - zu;
162 }
163 else
164 {
165 zd = get(x, y + 1);
166 zu = get(x, y - 1);
167 }
168
169 return vector3df(s * 2 * (zl - zr), 4, s * 2 * (zd - zu)).normalize();
170 }
171};
172
173/* A class which generates a mesh from a heightmap. */
174class TMesh
175{
176private:
177 u16 Width;
178 u16 Height;
179 f32 Scale;
180public:
181 SMesh* Mesh;
182
183 TMesh() : Mesh(0), Width(0), Height(0), Scale(1.f)
184 {
185 Mesh = new SMesh();
186 }
187
188 ~TMesh()
189 {
190 Mesh->drop();
191 }
192
193 // Unless the heightmap is small, it won't all fit into a single
194 // SMeshBuffer. This function chops it into pieces and generates a
195 // buffer from each one.
196
197 void init(const HeightMap &hm, f32 scale, colour_func cf, IVideoDriver *driver)
198 {
199 Scale = scale;
200
201 const u32 mp = driver -> getMaximalPrimitiveCount();
202 Width = hm.width();
203 Height = hm.height();
204
205 const u32 sw = mp / (6 * Height); // the width of each piece
206
207 u32 i=0;
208 for(u32 y0 = 0; y0 < Height; y0 += sw)
209 {
210 u16 y1 = y0 + sw;
211 if (y1 >= Height)
212 y1 = Height - 1; // the last one might be narrower
213 addstrip(hm, cf, y0, y1, i);
214 ++i;
215 }
216 if (i<Mesh->getMeshBufferCount())
217 {
218 // clear the rest
219 for (u32 j=i; j<Mesh->getMeshBufferCount(); ++j)
220 {
221 Mesh->getMeshBuffer(j)->drop();
222 }
223 Mesh->MeshBuffers.erase(i,Mesh->getMeshBufferCount()-i);
224 }
225 // set dirty flag to make sure that hardware copies of this
226 // buffer are also updated, see IMesh::setHardwareMappingHint
227 Mesh->setDirty();
228 Mesh->recalculateBoundingBox();
229 }
230
231 // Generate a SMeshBuffer which represents all the vertices and
232 // indices for values of y between y0 and y1, and add it to the
233 // mesh.
234
235 void addstrip(const HeightMap &hm, colour_func cf, u16 y0, u16 y1, u32 bufNum)
236 {
237 SMeshBuffer *buf = 0;
238 if (bufNum<Mesh->getMeshBufferCount())
239 {
240 buf = (SMeshBuffer*)Mesh->getMeshBuffer(bufNum);
241 }
242 else
243 {
244 // create new buffer
245 buf = new SMeshBuffer();
246 Mesh->addMeshBuffer(buf);
247 // to simplify things we drop here but continue using buf
248 buf->drop();
249 }
250 buf->Vertices.set_used((1 + y1 - y0) * Width);
251
252 u32 i=0;
253 for (u16 y = y0; y <= y1; ++y)
254 {
255 for (u16 x = 0; x < Width; ++x)
256 {
257 const f32 z = hm.get(x, y);
258 const f32 xx = (f32)x/(f32)Width;
259 const f32 yy = (f32)y/(f32)Height;
260
261 S3DVertex& v = buf->Vertices[i++];
262 v.Pos.set(x, Scale * z, y);
263 v.Normal.set(hm.getnormal(x, y, Scale));
264 v.Color=cf(xx, yy, z);
265 v.TCoords.set(xx, yy);
266 }
267 }
268
269 buf->Indices.set_used(6 * (Width - 1) * (y1 - y0));
270 i=0;
271 for(u16 y = y0; y < y1; ++y)
272 {
273 for(u16 x = 0; x < Width - 1; ++x)
274 {
275 const u16 n = (y-y0) * Width + x;
276 buf->Indices[i]=n;
277 buf->Indices[++i]=n + Width;
278 buf->Indices[++i]=n + Width + 1;
279 buf->Indices[++i]=n + Width + 1;
280 buf->Indices[++i]=n + 1;
281 buf->Indices[++i]=n;
282 ++i;
283 }
284 }
285
286 buf->recalculateBoundingBox();
287 }
288};
289
290/*
291Our event receiver implementation, taken from tutorial 4.
292*/
293class MyEventReceiver : public IEventReceiver
294{
295public:
296 // This is the one method that we have to implement
297 virtual bool OnEvent(const SEvent& event)
298 {
299 // Remember whether each key is down or up
300 if (event.EventType == irr::EET_KEY_INPUT_EVENT)
301 KeyIsDown[event.KeyInput.Key] = event.KeyInput.PressedDown;
302
303 return false;
304 }
305
306 // This is used to check whether a key is being held down
307 virtual bool IsKeyDown(EKEY_CODE keyCode) const
308 {
309 return KeyIsDown[keyCode];
310 }
311
312 MyEventReceiver()
313 {
314 for (u32 i=0; i<KEY_KEY_CODES_COUNT; ++i)
315 KeyIsDown[i] = false;
316 }
317
318private:
319 // We use this array to store the current state of each key
320 bool KeyIsDown[KEY_KEY_CODES_COUNT];
321};
322
323/*
324Much of this is code taken from some of the examples. We merely set
325up a mesh from a heightmap, light it with a moving light, and allow
326the user to navigate around it.
327*/
328
329int main(int argc, char* argv[])
330{
331 // ask user for driver
332 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
333 if (driverType==video::EDT_COUNT)
334 return 1;
335
336 MyEventReceiver receiver;
337 IrrlichtDevice* device = createDevice(driverType,
338 core::dimension2du(800, 600), 32, false, false, false,
339 &receiver);
340
341 if(device == 0)
342 return 1;
343
344 IVideoDriver *driver = device->getVideoDriver();
345 ISceneManager *smgr = device->getSceneManager();
346 device->setWindowCaption(L"Irrlicht Example for SMesh usage.");
347
348 /*
349 Create the custom mesh and initialize with a heightmap
350 */
351 TMesh mesh;
352 HeightMap hm = HeightMap(255, 255);
353 hm.generate(eggbox);
354 mesh.init(hm, 50.f, grey, driver);
355
356 // Add the mesh to the scene graph
357 IMeshSceneNode* meshnode = smgr -> addMeshSceneNode(mesh.Mesh);
358 meshnode->setMaterialFlag(video::EMF_BACK_FACE_CULLING, false);
359
360 // light is just for nice effects
361 ILightSceneNode *node = smgr->addLightSceneNode(0, vector3df(0,100,0),
362 SColorf(1.0f, 0.6f, 0.7f, 1.0f), 500.0f);
363 if (node)
364 {
365 node->getLightData().Attenuation.set(0.f, 1.f/500.f, 0.f);
366 ISceneNodeAnimator* anim = smgr->createFlyCircleAnimator(vector3df(0,150,0),250.0f);
367 if (anim)
368 {
369 node->addAnimator(anim);
370 anim->drop();
371 }
372 }
373
374 ICameraSceneNode* camera = smgr->addCameraSceneNodeFPS();
375 if (camera)
376 {
377 camera->setPosition(vector3df(-20.f, 150.f, -20.f));
378 camera->setTarget(vector3df(200.f, -80.f, 150.f));
379 camera->setFarValue(20000.0f);
380 }
381
382 /*
383 Just a usual render loop with event handling. The custom mesh is
384 a usual part of the scene graph which gets rendered by drawAll.
385 */
386 while(device->run())
387 {
388 if(!device->isWindowActive())
389 {
390 device->sleep(100);
391 continue;
392 }
393
394 if(receiver.IsKeyDown(irr::KEY_KEY_W))
395 {
396 meshnode->setMaterialFlag(video::EMF_WIREFRAME, !meshnode->getMaterial(0).Wireframe);
397 }
398 else if(receiver.IsKeyDown(irr::KEY_KEY_1))
399 {
400 hm.generate(eggbox);
401 mesh.init(hm, 50.f, grey, driver);
402 }
403 else if(receiver.IsKeyDown(irr::KEY_KEY_2))
404 {
405 hm.generate(moresine);
406 mesh.init(hm, 50.f, yellow, driver);
407 }
408 else if(receiver.IsKeyDown(irr::KEY_KEY_3))
409 {
410 hm.generate(justexp);
411 mesh.init(hm, 50.f, yellow, driver);
412 }
413
414 driver->beginScene(true, true, SColor(0xff000000));
415 smgr->drawAll();
416 driver->endScene();
417 }
418
419 device->drop();
420
421 return 0;
422}
423
424/*
425That's it! Just compile and play around with the program.
426**/
diff --git a/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.cbp b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.cbp
new file mode 100644
index 0000000..6d1b92a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.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 24 Cursor Control" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Linux">
10 <Option platforms="Unix;" />
11 <Option output="..\..\bin\Linux\CursorControl" prefix_auto="0" extension_auto="0" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Compiler>
15 <Add option="-g" />
16 <Add option="-D_IRR_STATIC_LIB_" />
17 </Compiler>
18 <Linker>
19 <Add library="Xxf86vm" />
20 <Add library="Xcursor" />
21 <Add library="GL" />
22 <Add directory="..\..\lib\Linux" />
23 </Linker>
24 </Target>
25 <Target title="Windows">
26 <Option platforms="Windows;" />
27 <Option output="..\..\bin\Win32-gcc\CursorControl" prefix_auto="0" extension_auto="1" />
28 <Option type="1" />
29 <Option compiler="gcc" />
30 <Option projectResourceIncludeDirsRelation="1" />
31 <Compiler>
32 <Add option="-g" />
33 </Compiler>
34 <Linker>
35 <Add directory="..\..\lib\Win32-gcc" />
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/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.vcproj b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.vcproj
new file mode 100644
index 0000000..1bc2f53
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl.vcproj
@@ -0,0 +1,132 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="24.CursorControl"
6 ProjectGUID="{02B67A37-50E1-49db-BECF-905BC029C2FE}"
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\24.CursorControl.exe"
36 LinkIncremental="1"
37 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
38 GenerateDebugInformation="TRUE"
39 ProgramDatabaseFile="$(OutDir)/CursorControl.pdb"
40 SubSystem="1"
41 TargetMachine="1"/>
42 <Tool
43 Name="VCMIDLTool"/>
44 <Tool
45 Name="VCPostBuildEventTool"/>
46 <Tool
47 Name="VCPreBuildEventTool"/>
48 <Tool
49 Name="VCPreLinkEventTool"/>
50 <Tool
51 Name="VCResourceCompilerTool"/>
52 <Tool
53 Name="VCWebServiceProxyGeneratorTool"/>
54 <Tool
55 Name="VCXMLDataGeneratorTool"/>
56 <Tool
57 Name="VCWebDeploymentTool"/>
58 <Tool
59 Name="VCManagedWrapperGeneratorTool"/>
60 <Tool
61 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
62 </Configuration>
63 <Configuration
64 Name="Release|Win32"
65 OutputDirectory="Release"
66 IntermediateDirectory="Release"
67 ConfigurationType="1"
68 CharacterSet="2"
69 WholeProgramOptimization="TRUE">
70 <Tool
71 Name="VCCLCompilerTool"
72 AdditionalOptions="/QIfist /Oa"
73 Optimization="3"
74 GlobalOptimizations="TRUE"
75 InlineFunctionExpansion="2"
76 EnableIntrinsicFunctions="TRUE"
77 FavorSizeOrSpeed="1"
78 OmitFramePointers="TRUE"
79 AdditionalIncludeDirectories="..\..\include"
80 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
81 RuntimeLibrary="4"
82 BufferSecurityCheck="FALSE"
83 UsePrecompiledHeader="0"
84 WarningLevel="3"
85 Detect64BitPortabilityProblems="TRUE"
86 DebugInformationFormat="0"
87 CallingConvention="1"/>
88 <Tool
89 Name="VCCustomBuildTool"/>
90 <Tool
91 Name="VCLinkerTool"
92 OutputFile="..\..\bin\Win32-VisualStudio\24.CursorControl.exe"
93 LinkIncremental="1"
94 SuppressStartupBanner="TRUE"
95 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
96 GenerateDebugInformation="FALSE"
97 SubSystem="1"
98 OptimizeReferences="2"
99 EnableCOMDATFolding="2"
100 TargetMachine="1"/>
101 <Tool
102 Name="VCMIDLTool"/>
103 <Tool
104 Name="VCPostBuildEventTool"/>
105 <Tool
106 Name="VCPreBuildEventTool"/>
107 <Tool
108 Name="VCPreLinkEventTool"/>
109 <Tool
110 Name="VCResourceCompilerTool"/>
111 <Tool
112 Name="VCWebServiceProxyGeneratorTool"/>
113 <Tool
114 Name="VCXMLDataGeneratorTool"/>
115 <Tool
116 Name="VCWebDeploymentTool"/>
117 <Tool
118 Name="VCManagedWrapperGeneratorTool"/>
119 <Tool
120 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
121 </Configuration>
122 </Configurations>
123 <References>
124 </References>
125 <Files>
126 <File
127 RelativePath=".\main.cpp">
128 </File>
129 </Files>
130 <Globals>
131 </Globals>
132</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc10.vcxproj
new file mode 100644
index 0000000..9912eda
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc10.vcxproj
@@ -0,0 +1,184 @@
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>24.CursorControl</ProjectName>
23 <ProjectGuid>{02B67A37-50E1-49DB-BECF-905BC029C2FE}</ProjectGuid>
24 <RootNamespace>24.CursorControl</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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
70 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
71 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
72 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
73 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
74 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
75 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
76 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
77 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
78 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
79 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
80 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
81 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
82 </PropertyGroup>
83 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
84 <ClCompile>
85 <Optimization>Disabled</Optimization>
86 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
87 <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
88 <MinimalRebuild>true</MinimalRebuild>
89 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
90 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
91 <PrecompiledHeader>
92 </PrecompiledHeader>
93 <WarningLevel>Level3</WarningLevel>
94 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
95 </ClCompile>
96 <Link>
97 <OutputFile>..\..\bin\Win32-VisualStudio\24.CursorControl.exe</OutputFile>
98 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
99 <GenerateDebugInformation>true</GenerateDebugInformation>
100 <ProgramDatabaseFile>$(OutDir)CursorControl.pdb</ProgramDatabaseFile>
101 <SubSystem>Console</SubSystem>
102 <DataExecutionPrevention>
103 </DataExecutionPrevention>
104 </Link>
105 </ItemDefinitionGroup>
106 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
107 <ClCompile>
108 <Optimization>Disabled</Optimization>
109 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
110 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
111 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
112 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
113 <PrecompiledHeader>
114 </PrecompiledHeader>
115 <WarningLevel>Level3</WarningLevel>
116 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
117 </ClCompile>
118 <Link>
119 <OutputFile>..\..\bin\Win64-VisualStudio\24.CursorControl.exe</OutputFile>
120 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
121 <GenerateDebugInformation>true</GenerateDebugInformation>
122 <ProgramDatabaseFile>$(OutDir)CursorControl.pdb</ProgramDatabaseFile>
123 <SubSystem>Console</SubSystem>
124 <DataExecutionPrevention>
125 </DataExecutionPrevention>
126 </Link>
127 </ItemDefinitionGroup>
128 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
129 <ClCompile>
130 <IntrinsicFunctions>true</IntrinsicFunctions>
131 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <ExceptionHandling>Sync</ExceptionHandling>
135 <PrecompiledHeader>
136 </PrecompiledHeader>
137 <WarningLevel>Level3</WarningLevel>
138 <DebugInformationFormat>
139 </DebugInformationFormat>
140 <CallingConvention>Cdecl</CallingConvention>
141 </ClCompile>
142 <Link>
143 <OutputFile>..\..\bin\Win32-VisualStudio\24.CursorControl.exe</OutputFile>
144 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
145 <GenerateDebugInformation>false</GenerateDebugInformation>
146 <SubSystem>Console</SubSystem>
147 <OptimizeReferences>true</OptimizeReferences>
148 <EnableCOMDATFolding>true</EnableCOMDATFolding>
149 <DataExecutionPrevention>
150 </DataExecutionPrevention>
151 </Link>
152 </ItemDefinitionGroup>
153 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
154 <ClCompile>
155 <IntrinsicFunctions>true</IntrinsicFunctions>
156 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
157 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
158 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
159 <ExceptionHandling>Sync</ExceptionHandling>
160 <PrecompiledHeader>
161 </PrecompiledHeader>
162 <WarningLevel>Level3</WarningLevel>
163 <DebugInformationFormat>
164 </DebugInformationFormat>
165 <CallingConvention>Cdecl</CallingConvention>
166 </ClCompile>
167 <Link>
168 <OutputFile>..\..\bin\Win64-VisualStudio\24.CursorControl.exe</OutputFile>
169 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
170 <GenerateDebugInformation>false</GenerateDebugInformation>
171 <SubSystem>Console</SubSystem>
172 <OptimizeReferences>true</OptimizeReferences>
173 <EnableCOMDATFolding>true</EnableCOMDATFolding>
174 <DataExecutionPrevention>
175 </DataExecutionPrevention>
176 </Link>
177 </ItemDefinitionGroup>
178 <ItemGroup>
179 <ClCompile Include="main.cpp" />
180 </ItemGroup>
181 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
182 <ImportGroup Label="ExtensionTargets">
183 </ImportGroup>
184</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc11.vcxproj
new file mode 100644
index 0000000..362f064
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc11.vcxproj
@@ -0,0 +1,188 @@
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>24.CursorControl</ProjectName>
23 <ProjectGuid>{02B67A37-50E1-49DB-BECF-905BC029C2FE}</ProjectGuid>
24 <RootNamespace>24.CursorControl</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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
73 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
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 </ClCompile>
100 <Link>
101 <OutputFile>..\..\bin\Win32-VisualStudio\24.CursorControl.exe</OutputFile>
102 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
103 <GenerateDebugInformation>true</GenerateDebugInformation>
104 <ProgramDatabaseFile>$(OutDir)CursorControl.pdb</ProgramDatabaseFile>
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 </ClCompile>
122 <Link>
123 <OutputFile>..\..\bin\Win64-VisualStudio\24.CursorControl.exe</OutputFile>
124 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
125 <GenerateDebugInformation>true</GenerateDebugInformation>
126 <ProgramDatabaseFile>$(OutDir)CursorControl.pdb</ProgramDatabaseFile>
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 <ExceptionHandling>Sync</ExceptionHandling>
139 <PrecompiledHeader>
140 </PrecompiledHeader>
141 <WarningLevel>Level3</WarningLevel>
142 <DebugInformationFormat>
143 </DebugInformationFormat>
144 <CallingConvention>Cdecl</CallingConvention>
145 </ClCompile>
146 <Link>
147 <OutputFile>..\..\bin\Win32-VisualStudio\24.CursorControl.exe</OutputFile>
148 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
149 <GenerateDebugInformation>false</GenerateDebugInformation>
150 <SubSystem>Console</SubSystem>
151 <OptimizeReferences>true</OptimizeReferences>
152 <EnableCOMDATFolding>true</EnableCOMDATFolding>
153 <DataExecutionPrevention>
154 </DataExecutionPrevention>
155 </Link>
156 </ItemDefinitionGroup>
157 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
158 <ClCompile>
159 <IntrinsicFunctions>true</IntrinsicFunctions>
160 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
161 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
162 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
163 <ExceptionHandling>Sync</ExceptionHandling>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 <DebugInformationFormat>
168 </DebugInformationFormat>
169 <CallingConvention>Cdecl</CallingConvention>
170 </ClCompile>
171 <Link>
172 <OutputFile>..\..\bin\Win64-VisualStudio\24.CursorControl.exe</OutputFile>
173 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
174 <GenerateDebugInformation>false</GenerateDebugInformation>
175 <SubSystem>Console</SubSystem>
176 <OptimizeReferences>true</OptimizeReferences>
177 <EnableCOMDATFolding>true</EnableCOMDATFolding>
178 <DataExecutionPrevention>
179 </DataExecutionPrevention>
180 </Link>
181 </ItemDefinitionGroup>
182 <ItemGroup>
183 <ClCompile Include="main.cpp" />
184 </ItemGroup>
185 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
186 <ImportGroup Label="ExtensionTargets">
187 </ImportGroup>
188</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc8.vcproj
new file mode 100644
index 0000000..6148942
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_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="24.CursorControl_vc8"
6 ProjectGUID="{02B67A37-50E1-49DB-BECF-905BC029C2FE}"
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\24.CursorControl.exe"
65 LinkIncremental="2"
66 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
67 GenerateDebugInformation="true"
68 ProgramDatabaseFile="$(OutDir)/CursorControl.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\24.CursorControl.exe"
146 LinkIncremental="1"
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/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc9.vcproj
new file mode 100644
index 0000000..90ebf1f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/CursorControl_vc9.vcproj
@@ -0,0 +1,185 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="24.CursorControl_vc9"
6 ProjectGUID="{02B67A37-50E1-49DB-BECF-905BC029C2FE}"
7 RootNamespace="24.CursorControl_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\24.CursorControl.exe"
66 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
67 GenerateDebugInformation="true"
68 ProgramDatabaseFile="$(OutDir)/CursorControl.pdb"
69 SubSystem="1"
70 RandomizedBaseAddress="1"
71 DataExecutionPrevention="0"
72 TargetMachine="1"
73 />
74 <Tool
75 Name="VCALinkTool"
76 />
77 <Tool
78 Name="VCManifestTool"
79 />
80 <Tool
81 Name="VCXDCMakeTool"
82 />
83 <Tool
84 Name="VCBscMakeTool"
85 />
86 <Tool
87 Name="VCFxCopTool"
88 />
89 <Tool
90 Name="VCAppVerifierTool"
91 />
92 <Tool
93 Name="VCPostBuildEventTool"
94 />
95 </Configuration>
96 <Configuration
97 Name="Release|Win32"
98 OutputDirectory="Release"
99 IntermediateDirectory="Release"
100 ConfigurationType="1"
101 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
102 CharacterSet="2"
103 >
104 <Tool
105 Name="VCPreBuildEventTool"
106 />
107 <Tool
108 Name="VCCustomBuildTool"
109 />
110 <Tool
111 Name="VCXMLDataGeneratorTool"
112 />
113 <Tool
114 Name="VCWebServiceProxyGeneratorTool"
115 />
116 <Tool
117 Name="VCMIDLTool"
118 />
119 <Tool
120 Name="VCCLCompilerTool"
121 EnableIntrinsicFunctions="true"
122 FavorSizeOrSpeed="1"
123 AdditionalIncludeDirectories="..\..\include"
124 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
125 ExceptionHandling="1"
126 UsePrecompiledHeader="0"
127 WarningLevel="3"
128 DebugInformationFormat="0"
129 CallingConvention="0"
130 />
131 <Tool
132 Name="VCManagedResourceCompilerTool"
133 />
134 <Tool
135 Name="VCResourceCompilerTool"
136 />
137 <Tool
138 Name="VCPreLinkEventTool"
139 />
140 <Tool
141 Name="VCLinkerTool"
142 OutputFile="..\..\bin\Win32-VisualStudio\24.CursorControl.exe"
143 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
144 GenerateDebugInformation="false"
145 SubSystem="1"
146 OptimizeReferences="2"
147 EnableCOMDATFolding="2"
148 RandomizedBaseAddress="1"
149 DataExecutionPrevention="0"
150 TargetMachine="1"
151 />
152 <Tool
153 Name="VCALinkTool"
154 />
155 <Tool
156 Name="VCManifestTool"
157 />
158 <Tool
159 Name="VCXDCMakeTool"
160 />
161 <Tool
162 Name="VCBscMakeTool"
163 />
164 <Tool
165 Name="VCFxCopTool"
166 />
167 <Tool
168 Name="VCAppVerifierTool"
169 />
170 <Tool
171 Name="VCPostBuildEventTool"
172 />
173 </Configuration>
174 </Configurations>
175 <References>
176 </References>
177 <Files>
178 <File
179 RelativePath=".\main.cpp"
180 >
181 </File>
182 </Files>
183 <Globals>
184 </Globals>
185</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/24.CursorControl/Makefile b/src/others/irrlicht-1.8.1/examples/24.CursorControl/Makefile
new file mode 100644
index 0000000..bc2a137
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/Makefile
@@ -0,0 +1,66 @@
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
5# Name of the executable created (.exe will be added automatically if necessary)
6Target := 24.CursorControl
7# List of source files, separated by spaces
8Sources := main.cpp
9# Path to Irrlicht directory, should contain include/ and lib/
10IrrlichtHome := ../..
11# Path for the executable. Note that Irrlicht.dll should usually also be there for win32 systems
12BinPath = ../../bin/$(SYSTEM)
13
14# general compiler settings (might need to be set when compiling the lib, too)
15# preprocessor flags, e.g. defines and include paths
16USERCPPFLAGS =
17# compiler flags such as optimization flags
18USERCXXFLAGS = -O3 -ffast-math
19#USERCXXFLAGS = -g -Wall
20# linker flags such as additional libraries and link paths
21USERLDFLAGS =
22
23####
24#no changes necessary below this line
25####
26
27CPPFLAGS = -I$(IrrlichtHome)/include -I/usr/X11R6/include $(USERCPPFLAGS)
28CXXFLAGS = $(USERCXXFLAGS)
29LDFLAGS = $(USERLDFLAGS)
30
31#default target is Linux
32all: all_linux
33
34# target specific settings
35all_linux all_win32 static_win32: LDFLAGS += -L$(IrrlichtHome)/lib/$(SYSTEM) -lIrrlicht
36all_linux: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lXext -lX11 -lXcursor
37all_linux clean_linux: SYSTEM=Linux
38all_win32 clean_win32 static_win32: SYSTEM=Win32-gcc
39all_win32 clean_win32 static_win32: SUF=.exe
40static_win32: CPPFLAGS += -D_IRR_STATIC_LIB_
41all_win32: LDFLAGS += -lopengl32 -lm
42static_win32: LDFLAGS += -lgdi32 -lwinspool -lcomdlg32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lopengl32
43# name of the binary - only valid for targets which set SYSTEM
44DESTPATH = $(BinPath)/$(Target)$(SUF)
45
46all_linux all_win32 static_win32:
47 $(warning Building...)
48 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
49
50clean: clean_linux clean_win32
51 $(warning Cleaning...)
52
53clean_linux clean_win32:
54 @$(RM) $(DESTPATH)
55
56.PHONY: all all_win32 static_win32 clean clean_linux clean_win32
57
58#multilib handling
59ifeq ($(HOSTTYPE), x86_64)
60LIBSELECT=64
61endif
62#solaris real-time features
63ifeq ($(HOSTTYPE), sun4)
64LDFLAGS += -lrt
65endif
66
diff --git a/src/others/irrlicht-1.8.1/examples/24.CursorControl/main.cpp b/src/others/irrlicht-1.8.1/examples/24.CursorControl/main.cpp
new file mode 100644
index 0000000..ff7c16f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/24.CursorControl/main.cpp
@@ -0,0 +1,563 @@
1/** Example 024 CursorControl
2
3Show how to modify cursors and offer some useful tool-functions for creating cursors.
4It can also be used for experiments with the mouse in general.
5*/
6
7#include <irrlicht.h>
8#include "driverChoice.h"
9
10using namespace irr;
11using namespace core;
12using namespace scene;
13using namespace video;
14using namespace io;
15using namespace gui;
16
17#ifdef _IRR_WINDOWS_
18#pragma comment(lib, "Irrlicht.lib")
19#endif
20
21const int DELAY_TIME = 3000;
22
23enum ETimerAction
24{
25 ETA_MOUSE_VISIBLE,
26 ETA_MOUSE_INVISIBLE,
27};
28
29/*
30 Structure to allow delayed execution of some actions.
31*/
32struct TimerAction
33{
34 u32 TargetTime;
35 ETimerAction Action;
36};
37
38/*
39*/
40struct SAppContext
41{
42 SAppContext()
43 : Device(0), InfoStatic(0), EventBox(0), CursorBox(0), SpriteBox(0)
44 , ButtonSetVisible(0), ButtonSetInvisible(0), ButtonSimulateBadFps(0)
45 , ButtonChangeIcon(0)
46 , SimulateBadFps(false)
47 {
48 }
49
50 void update()
51 {
52 if (!Device)
53 return;
54 u32 timeNow = Device->getTimer()->getTime();
55 for ( u32 i=0; i < TimerActions.size(); ++i )
56 {
57 if ( timeNow >= TimerActions[i].TargetTime )
58 {
59 runTimerAction(TimerActions[i]);
60 TimerActions.erase(i);
61 }
62 else
63 {
64 ++i;
65 }
66 }
67 }
68
69 void runTimerAction(const TimerAction& action)
70 {
71 if (ETA_MOUSE_VISIBLE == action.Action)
72 {
73 Device->getCursorControl()->setVisible(true);
74 ButtonSetVisible->setEnabled(true);
75 }
76 else if ( ETA_MOUSE_INVISIBLE == action.Action)
77 {
78 Device->getCursorControl()->setVisible(false);
79 ButtonSetInvisible->setEnabled(true);
80 }
81 }
82
83 /*
84 Add another icon which the user can click and select as cursor later on.
85 */
86 void addIcon(const stringw& name, const SCursorSprite &sprite, bool addCursor=true)
87 {
88 // Sprites are just icons - not yet cursors. They can be displayed by Irrlicht sprite functions and be used to create cursors.
89 SpriteBox->addItem(name.c_str(), sprite.SpriteId);
90 Sprites.push_back(sprite);
91
92 // create the cursor together with the icon?
93 if ( addCursor )
94 {
95 /* Here we create a hardware cursor from a sprite */
96 Device->getCursorControl()->addIcon(sprite);
97
98 // ... and add it to the cursors selection listbox to the other system cursors.
99 CursorBox->addItem(name.c_str());
100 }
101 }
102
103 IrrlichtDevice * Device;
104 gui::IGUIStaticText * InfoStatic;
105 gui::IGUIListBox * EventBox;
106 gui::IGUIListBox * CursorBox;
107 gui::IGUIListBox * SpriteBox;
108 gui::IGUIButton * ButtonSetVisible;
109 gui::IGUIButton * ButtonSetInvisible;
110 gui::IGUIButton * ButtonSimulateBadFps;
111 gui::IGUIButton * ButtonChangeIcon;
112 array<TimerAction> TimerActions;
113 bool SimulateBadFps;
114 array<SCursorSprite> Sprites;
115};
116
117/*
118 Helper function to print mouse event names into a stringw
119*/
120void PrintMouseEventName(const SEvent& event, stringw &result)
121{
122 switch ( event.MouseInput.Event )
123 {
124 case EMIE_LMOUSE_PRESSED_DOWN: result += stringw(L"EMIE_LMOUSE_PRESSED_DOWN"); break;
125 case EMIE_RMOUSE_PRESSED_DOWN: result += stringw(L"EMIE_RMOUSE_PRESSED_DOWN"); break;
126 case EMIE_MMOUSE_PRESSED_DOWN: result += stringw(L"EMIE_MMOUSE_PRESSED_DOWN"); break;
127 case EMIE_LMOUSE_LEFT_UP: result += stringw(L"EMIE_LMOUSE_LEFT_UP"); break;
128 case EMIE_RMOUSE_LEFT_UP: result += stringw(L"EMIE_RMOUSE_LEFT_UP"); break;
129 case EMIE_MMOUSE_LEFT_UP: result += stringw(L"EMIE_MMOUSE_LEFT_UP"); break;
130 case EMIE_MOUSE_MOVED: result += stringw(L"EMIE_MOUSE_MOVED"); break;
131 case EMIE_MOUSE_WHEEL: result += stringw(L"EMIE_MOUSE_WHEEL"); break;
132 case EMIE_LMOUSE_DOUBLE_CLICK: result += stringw(L"EMIE_LMOUSE_DOUBLE_CLICK"); break;
133 case EMIE_RMOUSE_DOUBLE_CLICK: result += stringw(L"EMIE_RMOUSE_DOUBLE_CLICK"); break;
134 case EMIE_MMOUSE_DOUBLE_CLICK: result += stringw(L"EMIE_MMOUSE_DOUBLE_CLICK"); break;
135 case EMIE_LMOUSE_TRIPLE_CLICK: result += stringw(L"EMIE_LMOUSE_TRIPLE_CLICK"); break;
136 case EMIE_RMOUSE_TRIPLE_CLICK: result += stringw(L"EMIE_RMOUSE_TRIPLE_CLICK"); break;
137 case EMIE_MMOUSE_TRIPLE_CLICK: result += stringw(L"EMIE_MMOUSE_TRIPLE_CLICK"); break;
138 default:
139 break;
140 }
141}
142
143/*
144 Helper function to print all the state information which get from a mouse-event into a stringw
145*/
146void PrintMouseState(const SEvent& event, stringw &result)
147{
148 result += stringw(L"X: ");
149 result += stringw(event.MouseInput.X);
150 result += stringw(L"\n");
151
152 result += stringw(L"Y: ");
153 result += stringw(event.MouseInput.Y);
154 result += stringw(L"\n");
155
156
157 result += stringw(L"Wheel: ");
158 result += stringw(event.MouseInput.Wheel);
159 result += stringw(L"\n");
160
161 result += stringw(L"Shift: ");
162 if ( event.MouseInput.Shift )
163 result += stringw(L"true\n");
164 else
165 result += stringw(L"false\n");
166
167 result += stringw(L"Control: ");
168 if ( event.MouseInput.Control )
169 result += stringw(L"true\n");
170 else
171 result += stringw(L"false\n");
172
173 result += stringw(L"ButtonStates: ");
174 result += stringw(event.MouseInput.ButtonStates);
175 result += stringw(L"\n");
176
177 result += stringw(L"isLeftPressed: ");
178 if ( event.MouseInput.isLeftPressed() )
179 result += stringw(L"true\n");
180 else
181 result += stringw(L"false\n");
182
183 result += stringw(L"isRightPressed: ");
184 if ( event.MouseInput.isRightPressed() )
185 result += stringw(L"true\n");
186 else
187 result += stringw(L"false\n");
188
189 result += stringw(L"isMiddlePressed: ");
190 if ( event.MouseInput.isMiddlePressed() )
191 result += stringw(L"true\n");
192 else
193 result += stringw(L"false\n");
194
195 result += stringw(L"Event: ");
196
197 PrintMouseEventName(event, result);
198
199 result += stringw(L"\n");
200}
201
202/*
203 A typical event receiver.
204*/
205class MyEventReceiver : public IEventReceiver
206{
207public:
208 MyEventReceiver(SAppContext & context) : Context(context) { }
209
210 virtual bool OnEvent(const SEvent& event)
211 {
212 if (event.EventType == EET_GUI_EVENT )
213 {
214 switch ( event.GUIEvent.EventType )
215 {
216 case EGET_BUTTON_CLICKED:
217 {
218 u32 timeNow = Context.Device->getTimer()->getTime();
219 TimerAction action;
220 action.TargetTime = timeNow + DELAY_TIME;
221 if ( event.GUIEvent.Caller == Context.ButtonSetVisible )
222 {
223 action.Action = ETA_MOUSE_VISIBLE;
224 Context.TimerActions.push_back(action);
225 Context.ButtonSetVisible->setEnabled(false);
226 }
227 else if ( event.GUIEvent.Caller == Context.ButtonSetInvisible )
228 {
229 action.Action = ETA_MOUSE_INVISIBLE;
230 Context.TimerActions.push_back(action);
231 Context.ButtonSetInvisible->setEnabled(false);
232 }
233 else if ( event.GUIEvent.Caller == Context.ButtonSimulateBadFps )
234 {
235 Context.SimulateBadFps = Context.ButtonSimulateBadFps->isPressed();
236 }
237 else if ( event.GUIEvent.Caller == Context.ButtonChangeIcon )
238 {
239 /*
240 Replace an existing cursor icon by another icon.
241 The user has to select both - the icon which should be replaced and the icon which will replace it.
242 */
243 s32 selectedCursor = Context.CursorBox->getSelected();
244 s32 selectedSprite = Context.SpriteBox->getSelected();
245 if ( selectedCursor >= 0 && selectedSprite >= 0 )
246 {
247 /*
248 This does replace the icon.
249 */
250 Context.Device->getCursorControl()->changeIcon((ECURSOR_ICON)selectedCursor, Context.Sprites[selectedSprite] );
251
252 /*
253 Do also show the new icon.
254 */
255 Context.Device->getCursorControl()->setActiveIcon( ECURSOR_ICON(selectedCursor) );
256 }
257 }
258 }
259 break;
260 case EGET_LISTBOX_CHANGED:
261 case EGET_LISTBOX_SELECTED_AGAIN:
262 {
263 if ( event.GUIEvent.Caller == Context.CursorBox )
264 {
265 /*
266 Find out which cursor the user selected
267 */
268 s32 selected = Context.CursorBox->getSelected();
269 if ( selected >= 0 )
270 {
271 /*
272 Here we set the new cursor icon which will now be used within our window.
273 */
274 Context.Device->getCursorControl()->setActiveIcon( ECURSOR_ICON(selected) );
275 }
276 }
277 }
278 break;
279 default:
280 break;
281 }
282 }
283
284 if (event.EventType == EET_MOUSE_INPUT_EVENT)
285 {
286 stringw infoText;
287 PrintMouseState(event, infoText);
288 Context.InfoStatic->setText(infoText.c_str());
289 if ( event.MouseInput.Event != EMIE_MOUSE_MOVED && event.MouseInput.Event != EMIE_MOUSE_WHEEL ) // no spam
290 {
291 infoText = L"";
292 PrintMouseEventName(event, infoText);
293 Context.EventBox->insertItem(0, infoText.c_str(), -1);
294 }
295 }
296
297 return false;
298 }
299
300private:
301 SAppContext & Context;
302};
303
304/*
305 Use several imagefiles as animation frames for a sprite which can be used as cursor icon.
306 The images in those files all need to have the same size.
307 Return sprite index on success or -1 on failure
308*/
309s32 AddAnimatedIconToSpriteBank( gui::IGUISpriteBank * spriteBank, video::IVideoDriver* driver, const array< io::path >& files, u32 frameTime )
310{
311 if ( !spriteBank || !driver || !files.size() )
312 return -1;
313
314 video::ITexture * tex = driver->getTexture( files[0] );
315 if ( tex )
316 {
317 array< rect<s32> >& spritePositions = spriteBank->getPositions();
318 u32 idxRect = spritePositions.size();
319 spritePositions.push_back( rect<s32>(0,0, tex->getSize().Width, tex->getSize().Height) );
320
321 SGUISprite sprite;
322 sprite.frameTime = frameTime;
323
324 array< SGUISprite >& sprites = spriteBank->getSprites();
325 u32 startIdx = spriteBank->getTextureCount();
326 for ( u32 f=0; f < files.size(); ++f )
327 {
328 tex = driver->getTexture( files[f] );
329 if ( tex )
330 {
331 spriteBank->addTexture( driver->getTexture(files[f]) );
332 gui::SGUISpriteFrame frame;
333 frame.rectNumber = idxRect;
334 frame.textureNumber = startIdx+f;
335 sprite.Frames.push_back( frame );
336 }
337 }
338
339 sprites.push_back( sprite );
340 return sprites.size()-1;
341 }
342
343 return -1;
344}
345
346/*
347 Use several images within one imagefile as animation frames for a sprite which can be used as cursor icon
348 The sizes of the icons within that file all need to have the same size
349 Return sprite index on success or -1 on failure
350*/
351s32 AddAnimatedIconToSpriteBank( gui::IGUISpriteBank * spriteBank, video::IVideoDriver* driver, const io::path& file, const array< rect<s32> >& rects, u32 frameTime )
352{
353 if ( !spriteBank || !driver || !rects.size() )
354 return -1;
355
356 video::ITexture * tex = driver->getTexture( file );
357 if ( tex )
358 {
359 array< rect<s32> >& spritePositions = spriteBank->getPositions();
360 u32 idxRect = spritePositions.size();
361 u32 idxTex = spriteBank->getTextureCount();
362 spriteBank->addTexture( tex );
363
364 SGUISprite sprite;
365 sprite.frameTime = frameTime;
366
367 array< SGUISprite >& sprites = spriteBank->getSprites();
368 for ( u32 i=0; i < rects.size(); ++i )
369 {
370 spritePositions.push_back( rects[i] );
371
372 gui::SGUISpriteFrame frame;
373 frame.rectNumber = idxRect+i;
374 frame.textureNumber = idxTex;
375 sprite.Frames.push_back( frame );
376 }
377
378 sprites.push_back( sprite );
379 return sprites.size()-1;
380 }
381
382 return -1;
383}
384
385/*
386 Create a non-animated icon from the given file and position and put it into the spritebank.
387 We can use this icon later on in a cursor.
388*/
389s32 AddIconToSpriteBank( gui::IGUISpriteBank * spriteBank, video::IVideoDriver* driver, const io::path& file, const core::rect<s32>& rect )
390{
391 if ( !spriteBank || !driver )
392 return -1;
393
394 video::ITexture * tex = driver->getTexture( file );
395 if ( tex )
396 {
397 core::array< core::rect<irr::s32> >& spritePositions = spriteBank->getPositions();
398 spritePositions.push_back( rect );
399 array< SGUISprite >& sprites = spriteBank->getSprites();
400 spriteBank->addTexture( tex );
401
402 gui::SGUISpriteFrame frame;
403 frame.rectNumber = spritePositions.size()-1;
404 frame.textureNumber = spriteBank->getTextureCount()-1;
405
406 SGUISprite sprite;
407 sprite.frameTime = 0;
408 sprite.Frames.push_back( frame );
409
410 sprites.push_back( sprite );
411
412 return sprites.size()-1;
413 }
414
415 return -1;
416}
417
418int main()
419{
420 video::E_DRIVER_TYPE driverType = driverChoiceConsole();
421 if (driverType==video::EDT_COUNT)
422 return 1;
423
424 IrrlichtDevice * device = createDevice(driverType, dimension2d<u32>(640, 480));
425 if (device == 0)
426 return 1; // could not create selected driver.
427
428 // It's sometimes of interest to know how the mouse behaves after a resize
429 device->setResizable(true);
430
431 device->setWindowCaption(L"Cursor control - Irrlicht engine tutorial");
432 video::IVideoDriver* driver = device->getVideoDriver();
433 IGUIEnvironment* env = device->getGUIEnvironment();
434
435 gui::IGUISpriteBank * SpriteBankIcons;
436
437 SAppContext context;
438 context.Device = device;
439
440 rect< s32 > rectInfoStatic(10,10, 200, 200);
441 env->addStaticText (L"Cursor state information", rectInfoStatic, true, true);
442 rectInfoStatic.UpperLeftCorner += dimension2di(0, 15);
443 context.InfoStatic = env->addStaticText (L"", rectInfoStatic, true, true);
444 rect< s32 > rectEventBox(10,210, 200, 400);
445 env->addStaticText (L"click events (new on top)", rectEventBox, true, true);
446 rectEventBox.UpperLeftCorner += dimension2di(0, 15);
447 context.EventBox = env->addListBox(rectEventBox);
448 rect< s32 > rectCursorBox(210,10, 400, 250);
449 env->addStaticText (L"cursors, click to set the active one", rectCursorBox, true, true);
450 rectCursorBox.UpperLeftCorner += dimension2di(0, 15);
451 context.CursorBox = env->addListBox(rectCursorBox);
452 rect< s32 > rectSpriteBox(210,260, 400, 400);
453 env->addStaticText (L"sprites", rectSpriteBox, true, true);
454 rectSpriteBox.UpperLeftCorner += dimension2di(0, 15);
455 context.SpriteBox = env->addListBox(rectSpriteBox);
456
457 context.ButtonSetVisible = env->addButton( rect<s32>( 410, 20, 560, 40 ), 0, -1, L"set visible (delayed)" );
458 context.ButtonSetInvisible = env->addButton( rect<s32>( 410, 50, 560, 70 ), 0, -1, L"set invisible (delayed)" );
459 context.ButtonSimulateBadFps = env->addButton( rect<s32>( 410, 80, 560, 100 ), 0, -1, L"simulate bad FPS" );
460 context.ButtonSimulateBadFps->setIsPushButton(true);
461 context.ButtonChangeIcon = env->addButton( rect<s32>( 410, 140, 560, 160 ), 0, -1, L"replace cursor icon\n(cursor+sprite must be selected)" );
462
463 // set the names for all the system cursors
464 for ( int i=0; i < (int)gui::ECI_COUNT; ++i )
465 {
466 context.CursorBox->addItem(stringw( GUICursorIconNames[i] ).c_str());
467 }
468
469 /*
470 Create sprites which then can be used as cursor icons.
471 */
472 SpriteBankIcons = env->addEmptySpriteBank(io::path("cursor_icons"));
473 context.SpriteBox->setSpriteBank(SpriteBankIcons);
474
475 // create one animated icon from several files
476 array< io::path > files;
477 files.push_back( io::path("../../media/icon_crosshairs16x16bw1.png") );
478 files.push_back( io::path("../../media/icon_crosshairs16x16bw2.png") );
479 files.push_back( io::path("../../media/icon_crosshairs16x16bw3.png") );
480 files.push_back( io::path("../../media/icon_crosshairs16x16bw3.png") );
481 files.push_back( io::path("../../media/icon_crosshairs16x16bw2.png") );
482 SCursorSprite spriteBw; // the sprite + some additional information needed for cursors
483 spriteBw.SpriteId = AddAnimatedIconToSpriteBank( SpriteBankIcons, driver, files, 200 );
484 spriteBw.SpriteBank = SpriteBankIcons;
485 spriteBw.HotSpot = position2d<s32>(7,7);
486 context.addIcon(L"crosshair_bw", spriteBw);
487
488 // create one animated icon from one file
489 array< rect<s32> > iconRects;
490 iconRects.push_back( rect<s32>(0,0, 16, 16) );
491 iconRects.push_back( rect<s32>(16,0, 32, 16) );
492 iconRects.push_back( rect<s32>(0,16, 16, 32) );
493 iconRects.push_back( rect<s32>(0,16, 16, 32) );
494 iconRects.push_back( rect<s32>(16,0, 32, 16) );
495 SCursorSprite spriteCol; // the sprite + some additional information needed for cursors
496 spriteCol.SpriteId = AddAnimatedIconToSpriteBank( SpriteBankIcons, driver, io::path("../../media/icon_crosshairs16x16col.png"), iconRects, 200 );
497 spriteCol.HotSpot = position2d<s32>(7,7);
498 spriteCol.SpriteBank = SpriteBankIcons;
499 context.addIcon(L"crosshair_colored", spriteCol);
500
501 // Create some non-animated icons
502 rect<s32> rectIcon;
503 SCursorSprite spriteNonAnimated(SpriteBankIcons, 0, position2d<s32>(7,7));
504
505 rectIcon = rect<s32>(0,0, 16, 16);
506 spriteNonAnimated.SpriteId = AddIconToSpriteBank( SpriteBankIcons, driver, io::path("../../media/icon_crosshairs16x16col.png"), rectIcon );
507 context.addIcon(L"crosshair_col1", spriteNonAnimated, false);
508
509 rectIcon = rect<s32>(16,0, 32, 16);
510 spriteNonAnimated.SpriteId = AddIconToSpriteBank( SpriteBankIcons, driver, io::path("../../media/icon_crosshairs16x16col.png"), rectIcon );
511 context.addIcon(L"crosshair_col2", spriteNonAnimated, false);
512
513 rectIcon = rect<s32>(0,16, 16, 32);
514 spriteNonAnimated.SpriteId = AddIconToSpriteBank( SpriteBankIcons, driver, io::path("../../media/icon_crosshairs16x16col.png"), rectIcon );
515 context.addIcon(L"crosshair_col3", spriteNonAnimated, false);
516
517
518 MyEventReceiver receiver(context);
519 device->setEventReceiver(&receiver);
520
521 while(device->run() && driver)
522 {
523 // if (device->isWindowActive())
524 {
525 u32 realTimeNow = device->getTimer()->getRealTime();
526
527 context.update();
528
529 driver->beginScene(true, true, SColor(0,200,200,200));
530
531 env->drawAll();
532
533 // draw custom sprite with Irrlicht functions for comparison. It should usually look the same as the cursors.
534 if ( context.SpriteBox )
535 {
536 s32 selectedSprite = context.SpriteBox->getSelected();
537 if ( selectedSprite >= 0 && context.Sprites[selectedSprite].SpriteId >= 0 )
538 {
539 SpriteBankIcons->draw2DSprite(u32(context.Sprites[selectedSprite].SpriteId), position2di(580, 140), 0, video::SColor(255, 255, 255, 255), 0, realTimeNow);
540 }
541 }
542
543 driver->endScene();
544 }
545
546 // By simulating bad fps we can find out if hardware-support for cursors works or not. If it works the cursor will move as usual,while it otherwise will just update with 2 fps now.
547 if ( context.SimulateBadFps )
548 {
549 device->sleep(500); // 2 fps
550 }
551 else
552 {
553 device->sleep(10);
554 }
555 }
556
557 device->drop();
558
559 return 0;
560}
561
562/*
563**/
diff --git a/src/others/irrlicht-1.8.1/examples/25.XmlHandling/Makefile b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/Makefile
new file mode 100644
index 0000000..92f5655
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/Makefile
@@ -0,0 +1,66 @@
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
5# Name of the executable created (.exe will be added automatically if necessary)
6Target := 25.XmlHandling
7# List of source files, separated by spaces
8Sources := main.cpp
9# Path to Irrlicht directory, should contain include/ and lib/
10IrrlichtHome := ../..
11# Path for the executable. Note that Irrlicht.dll should usually also be there for win32 systems
12BinPath = ../../bin/$(SYSTEM)
13
14# general compiler settings (might need to be set when compiling the lib, too)
15# preprocessor flags, e.g. defines and include paths
16USERCPPFLAGS =
17# compiler flags such as optimization flags
18USERCXXFLAGS = -O3 -ffast-math
19#USERCXXFLAGS = -g -Wall
20# linker flags such as additional libraries and link paths
21USERLDFLAGS =
22
23####
24#no changes necessary below this line
25####
26
27CPPFLAGS = -I$(IrrlichtHome)/include -I/usr/X11R6/include $(USERCPPFLAGS)
28CXXFLAGS = $(USERCXXFLAGS)
29LDFLAGS = $(USERLDFLAGS)
30
31#default target is Linux
32all: all_linux
33
34# target specific settings
35all_linux all_win32 static_win32: LDFLAGS += -L$(IrrlichtHome)/lib/$(SYSTEM) -lIrrlicht
36all_linux: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lXext -lX11 -lXcursor
37all_linux clean_linux: SYSTEM=Linux
38all_win32 clean_win32 static_win32: SYSTEM=Win32-gcc
39all_win32 clean_win32 static_win32: SUF=.exe
40static_win32: CPPFLAGS += -D_IRR_STATIC_LIB_
41all_win32: LDFLAGS += -lopengl32 -lm
42static_win32: LDFLAGS += -lgdi32 -lwinspool -lcomdlg32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lopengl32
43# name of the binary - only valid for targets which set SYSTEM
44DESTPATH = $(BinPath)/$(Target)$(SUF)
45
46all_linux all_win32 static_win32:
47 $(warning Building...)
48 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
49
50clean: clean_linux clean_win32
51 $(warning Cleaning...)
52
53clean_linux clean_win32:
54 @$(RM) $(DESTPATH)
55
56.PHONY: all all_win32 static_win32 clean clean_linux clean_win32
57
58#multilib handling
59ifeq ($(HOSTTYPE), x86_64)
60LIBSELECT=64
61endif
62#solaris real-time features
63ifeq ($(HOSTTYPE), sun4)
64LDFLAGS += -lrt
65endif
66
diff --git a/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.cbp b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.cbp
new file mode 100644
index 0000000..3ecf5a2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.cbp
@@ -0,0 +1,55 @@
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 25 Xml handling" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Linux">
10 <Option platforms="Unix;" />
11 <Option output="..\..\bin\Linux\XmlHandling" prefix_auto="0" extension_auto="0" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Compiler>
15 <Add option="-g" />
16 <Add option="-D_IRR_STATIC_LIB_" />
17 </Compiler>
18 <Linker>
19 <Add library="Xxf86vm" />
20 <Add library="Xcursor" />
21 <Add library="GL" />
22 <Add directory="..\..\lib\Linux" />
23 </Linker>
24 </Target>
25 <Target title="Windows">
26 <Option platforms="Windows;" />
27 <Option output="..\..\bin\Win32-gcc\XmlHandling" prefix_auto="0" extension_auto="1" />
28 <Option type="1" />
29 <Option compiler="gcc" />
30 <Compiler>
31 <Add option="-g" />
32 </Compiler>
33 <Linker>
34 <Add directory="..\..\lib\Win32-gcc" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.vcproj b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.vcproj
new file mode 100644
index 0000000..152a415
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling.vcproj
@@ -0,0 +1,195 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="25.XmlHandling"
6 ProjectGUID="{8FDA260E-EF27-4f8c-8720-7AF707DD0D9E}"
7 Keyword="Win32Proj"
8 TargetFrameworkVersion="131072"
9 >
10 <Platforms>
11 <Platform
12 Name="Win32"
13 />
14 </Platforms>
15 <ToolFiles>
16 </ToolFiles>
17 <Configurations>
18 <Configuration
19 Name="Debug|Win32"
20 OutputDirectory="Debug"
21 IntermediateDirectory="Debug"
22 ConfigurationType="1"
23 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
24 CharacterSet="2"
25 >
26 <Tool
27 Name="VCPreBuildEventTool"
28 />
29 <Tool
30 Name="VCCustomBuildTool"
31 />
32 <Tool
33 Name="VCXMLDataGeneratorTool"
34 />
35 <Tool
36 Name="VCWebServiceProxyGeneratorTool"
37 />
38 <Tool
39 Name="VCMIDLTool"
40 />
41 <Tool
42 Name="VCCLCompilerTool"
43 Optimization="0"
44 AdditionalIncludeDirectories="..\..\include"
45 PreprocessorDefinitions="_IRR_STATIC_LIB_;WIN32;_DEBUG;_WINDOWS"
46 MinimalRebuild="true"
47 BasicRuntimeChecks="3"
48 RuntimeLibrary="1"
49 UsePrecompiledHeader="0"
50 WarningLevel="3"
51 Detect64BitPortabilityProblems="true"
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\25.XmlHandling.exe"
66 LinkIncremental="1"
67 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
68 GenerateDebugInformation="true"
69 ProgramDatabaseFile="$(OutDir)/XmlHandling.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 WholeProgramOptimization="1"
105 >
106 <Tool
107 Name="VCPreBuildEventTool"
108 />
109 <Tool
110 Name="VCCustomBuildTool"
111 />
112 <Tool
113 Name="VCXMLDataGeneratorTool"
114 />
115 <Tool
116 Name="VCWebServiceProxyGeneratorTool"
117 />
118 <Tool
119 Name="VCMIDLTool"
120 />
121 <Tool
122 Name="VCCLCompilerTool"
123 AdditionalOptions="/QIfist /Oa"
124 Optimization="3"
125 InlineFunctionExpansion="2"
126 EnableIntrinsicFunctions="true"
127 FavorSizeOrSpeed="1"
128 OmitFramePointers="true"
129 AdditionalIncludeDirectories="..\..\include"
130 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
131 RuntimeLibrary="0"
132 BufferSecurityCheck="false"
133 UsePrecompiledHeader="0"
134 WarningLevel="3"
135 Detect64BitPortabilityProblems="true"
136 DebugInformationFormat="0"
137 CallingConvention="1"
138 />
139 <Tool
140 Name="VCManagedResourceCompilerTool"
141 />
142 <Tool
143 Name="VCResourceCompilerTool"
144 />
145 <Tool
146 Name="VCPreLinkEventTool"
147 />
148 <Tool
149 Name="VCLinkerTool"
150 OutputFile="..\..\bin\Win32-VisualStudio\25.XmlHandling.exe"
151 LinkIncremental="1"
152 SuppressStartupBanner="true"
153 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
154 GenerateDebugInformation="false"
155 SubSystem="1"
156 OptimizeReferences="2"
157 EnableCOMDATFolding="2"
158 RandomizedBaseAddress="1"
159 DataExecutionPrevention="0"
160 TargetMachine="1"
161 />
162 <Tool
163 Name="VCALinkTool"
164 />
165 <Tool
166 Name="VCManifestTool"
167 />
168 <Tool
169 Name="VCXDCMakeTool"
170 />
171 <Tool
172 Name="VCBscMakeTool"
173 />
174 <Tool
175 Name="VCFxCopTool"
176 />
177 <Tool
178 Name="VCAppVerifierTool"
179 />
180 <Tool
181 Name="VCPostBuildEventTool"
182 />
183 </Configuration>
184 </Configurations>
185 <References>
186 </References>
187 <Files>
188 <File
189 RelativePath=".\main.cpp"
190 >
191 </File>
192 </Files>
193 <Globals>
194 </Globals>
195</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc10.vcxproj
new file mode 100644
index 0000000..2f550a1
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc10.vcxproj
@@ -0,0 +1,178 @@
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>25.XmlHandling</ProjectName>
23 <ProjectGuid>{8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}</ProjectGuid>
24 <RootNamespace>25.XmlHandling</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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
70 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
71 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
72 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
73 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
74 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
75 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
76 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
77 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
78 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
79 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
80 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
81 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
82 </PropertyGroup>
83 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
84 <ClCompile>
85 <Optimization>Disabled</Optimization>
86 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
87 <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
88 <MinimalRebuild>true</MinimalRebuild>
89 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
90 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
91 <PrecompiledHeader>
92 </PrecompiledHeader>
93 <WarningLevel>Level3</WarningLevel>
94 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
95 </ClCompile>
96 <Link>
97 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
98 <GenerateDebugInformation>true</GenerateDebugInformation>
99 <SubSystem>Console</SubSystem>
100 <DataExecutionPrevention>
101 </DataExecutionPrevention>
102 </Link>
103 </ItemDefinitionGroup>
104 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
105 <ClCompile>
106 <Optimization>Disabled</Optimization>
107 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
108 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
110 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
111 <PrecompiledHeader>
112 </PrecompiledHeader>
113 <WarningLevel>Level3</WarningLevel>
114 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
115 </ClCompile>
116 <Link>
117 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
125 <ClCompile>
126 <IntrinsicFunctions>true</IntrinsicFunctions>
127 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <ExceptionHandling>false</ExceptionHandling>
131 <PrecompiledHeader>
132 </PrecompiledHeader>
133 <WarningLevel>Level3</WarningLevel>
134 <DebugInformationFormat>
135 </DebugInformationFormat>
136 <CallingConvention>Cdecl</CallingConvention>
137 </ClCompile>
138 <Link>
139 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
140 <GenerateDebugInformation>false</GenerateDebugInformation>
141 <SubSystem>Console</SubSystem>
142 <OptimizeReferences>true</OptimizeReferences>
143 <EnableCOMDATFolding>true</EnableCOMDATFolding>
144 <DataExecutionPrevention>
145 </DataExecutionPrevention>
146 </Link>
147 </ItemDefinitionGroup>
148 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
149 <ClCompile>
150 <IntrinsicFunctions>true</IntrinsicFunctions>
151 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
152 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
153 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
154 <ExceptionHandling>false</ExceptionHandling>
155 <PrecompiledHeader>
156 </PrecompiledHeader>
157 <WarningLevel>Level3</WarningLevel>
158 <DebugInformationFormat>
159 </DebugInformationFormat>
160 <CallingConvention>Cdecl</CallingConvention>
161 </ClCompile>
162 <Link>
163 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
164 <GenerateDebugInformation>false</GenerateDebugInformation>
165 <SubSystem>Console</SubSystem>
166 <OptimizeReferences>true</OptimizeReferences>
167 <EnableCOMDATFolding>true</EnableCOMDATFolding>
168 <DataExecutionPrevention>
169 </DataExecutionPrevention>
170 </Link>
171 </ItemDefinitionGroup>
172 <ItemGroup>
173 <ClCompile Include="main.cpp" />
174 </ItemGroup>
175 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
176 <ImportGroup Label="ExtensionTargets">
177 </ImportGroup>
178</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc11.vcxproj
new file mode 100644
index 0000000..b150b95
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc11.vcxproj
@@ -0,0 +1,182 @@
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>25.XmlHandling</ProjectName>
23 <ProjectGuid>{8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}</ProjectGuid>
24 <RootNamespace>25.XmlHandling</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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
73 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
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 </ClCompile>
100 <Link>
101 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
102 <GenerateDebugInformation>true</GenerateDebugInformation>
103 <SubSystem>Console</SubSystem>
104 <DataExecutionPrevention>
105 </DataExecutionPrevention>
106 </Link>
107 </ItemDefinitionGroup>
108 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
109 <ClCompile>
110 <Optimization>Disabled</Optimization>
111 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
112 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
114 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
115 <PrecompiledHeader>
116 </PrecompiledHeader>
117 <WarningLevel>Level3</WarningLevel>
118 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
119 </ClCompile>
120 <Link>
121 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
122 <GenerateDebugInformation>true</GenerateDebugInformation>
123 <SubSystem>Console</SubSystem>
124 <DataExecutionPrevention>
125 </DataExecutionPrevention>
126 </Link>
127 </ItemDefinitionGroup>
128 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
129 <ClCompile>
130 <IntrinsicFunctions>true</IntrinsicFunctions>
131 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <ExceptionHandling>false</ExceptionHandling>
135 <PrecompiledHeader>
136 </PrecompiledHeader>
137 <WarningLevel>Level3</WarningLevel>
138 <DebugInformationFormat>
139 </DebugInformationFormat>
140 <CallingConvention>Cdecl</CallingConvention>
141 </ClCompile>
142 <Link>
143 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>false</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <OptimizeReferences>true</OptimizeReferences>
147 <EnableCOMDATFolding>true</EnableCOMDATFolding>
148 <DataExecutionPrevention>
149 </DataExecutionPrevention>
150 </Link>
151 </ItemDefinitionGroup>
152 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
153 <ClCompile>
154 <IntrinsicFunctions>true</IntrinsicFunctions>
155 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
156 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
157 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
158 <ExceptionHandling>false</ExceptionHandling>
159 <PrecompiledHeader>
160 </PrecompiledHeader>
161 <WarningLevel>Level3</WarningLevel>
162 <DebugInformationFormat>
163 </DebugInformationFormat>
164 <CallingConvention>Cdecl</CallingConvention>
165 </ClCompile>
166 <Link>
167 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
168 <GenerateDebugInformation>false</GenerateDebugInformation>
169 <SubSystem>Console</SubSystem>
170 <OptimizeReferences>true</OptimizeReferences>
171 <EnableCOMDATFolding>true</EnableCOMDATFolding>
172 <DataExecutionPrevention>
173 </DataExecutionPrevention>
174 </Link>
175 </ItemDefinitionGroup>
176 <ItemGroup>
177 <ClCompile Include="main.cpp" />
178 </ItemGroup>
179 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
180 <ImportGroup Label="ExtensionTargets">
181 </ImportGroup>
182</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc8.vcproj
new file mode 100644
index 0000000..0831ba9
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_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="25.XmlHandling_vc8"
6 ProjectGUID="{8FDA260E-EF27-4f8c-8720-7AF707DD0D9E}"
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\25.XmlHandling.exe"
65 LinkIncremental="2"
66 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
67 GenerateDebugInformation="true"
68 ProgramDatabaseFile="$(OutDir)/XmlHandling.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\25.XmlHandling.exe"
146 LinkIncremental="1"
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/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc9.vcproj
new file mode 100644
index 0000000..79a1048
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/XmlHandling_vc9.vcproj
@@ -0,0 +1,185 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="25.XmlHandling_vc9"
6 ProjectGUID="{8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}"
7 RootNamespace="25.XmlHandling_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\25.XmlHandling.exe"
66 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
67 GenerateDebugInformation="true"
68 ProgramDatabaseFile="$(OutDir)/XmlHandling.pdb"
69 SubSystem="1"
70 RandomizedBaseAddress="1"
71 DataExecutionPrevention="0"
72 TargetMachine="1"
73 />
74 <Tool
75 Name="VCALinkTool"
76 />
77 <Tool
78 Name="VCManifestTool"
79 />
80 <Tool
81 Name="VCXDCMakeTool"
82 />
83 <Tool
84 Name="VCBscMakeTool"
85 />
86 <Tool
87 Name="VCFxCopTool"
88 />
89 <Tool
90 Name="VCAppVerifierTool"
91 />
92 <Tool
93 Name="VCPostBuildEventTool"
94 />
95 </Configuration>
96 <Configuration
97 Name="Release|Win32"
98 OutputDirectory="Release"
99 IntermediateDirectory="Release"
100 ConfigurationType="1"
101 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
102 CharacterSet="2"
103 >
104 <Tool
105 Name="VCPreBuildEventTool"
106 />
107 <Tool
108 Name="VCCustomBuildTool"
109 />
110 <Tool
111 Name="VCXMLDataGeneratorTool"
112 />
113 <Tool
114 Name="VCWebServiceProxyGeneratorTool"
115 />
116 <Tool
117 Name="VCMIDLTool"
118 />
119 <Tool
120 Name="VCCLCompilerTool"
121 EnableIntrinsicFunctions="true"
122 FavorSizeOrSpeed="1"
123 AdditionalIncludeDirectories="..\..\include"
124 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
125 ExceptionHandling="1"
126 UsePrecompiledHeader="0"
127 WarningLevel="3"
128 DebugInformationFormat="0"
129 CallingConvention="0"
130 />
131 <Tool
132 Name="VCManagedResourceCompilerTool"
133 />
134 <Tool
135 Name="VCResourceCompilerTool"
136 />
137 <Tool
138 Name="VCPreLinkEventTool"
139 />
140 <Tool
141 Name="VCLinkerTool"
142 OutputFile="..\..\bin\Win32-VisualStudio\25.XmlHandling.exe"
143 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
144 GenerateDebugInformation="false"
145 SubSystem="1"
146 OptimizeReferences="2"
147 EnableCOMDATFolding="2"
148 RandomizedBaseAddress="1"
149 DataExecutionPrevention="0"
150 TargetMachine="1"
151 />
152 <Tool
153 Name="VCALinkTool"
154 />
155 <Tool
156 Name="VCManifestTool"
157 />
158 <Tool
159 Name="VCXDCMakeTool"
160 />
161 <Tool
162 Name="VCBscMakeTool"
163 />
164 <Tool
165 Name="VCFxCopTool"
166 />
167 <Tool
168 Name="VCAppVerifierTool"
169 />
170 <Tool
171 Name="VCPostBuildEventTool"
172 />
173 </Configuration>
174 </Configurations>
175 <References>
176 </References>
177 <Files>
178 <File
179 RelativePath=".\main.cpp"
180 >
181 </File>
182 </Files>
183 <Globals>
184 </Globals>
185</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/25.XmlHandling/main.cpp b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/main.cpp
new file mode 100644
index 0000000..3eb261d
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/25.XmlHandling/main.cpp
@@ -0,0 +1,505 @@
1/** Example 025 Xml Handling
2
3Demonstrates loading and saving of configurations via XML
4
5@author Y.M. Bosman \<yoran.bosman@gmail.com\>
6
7This demo features a fully usable system for configuration handling. The code
8can easily be integrated into own apps.
9
10*/
11
12#include <irrlicht.h>
13
14using namespace irr;
15using namespace core;
16using namespace scene;
17using namespace video;
18using namespace io;
19using namespace gui;
20
21#ifdef _IRR_WINDOWS_
22#pragma comment(lib, "Irrlicht.lib")
23#endif
24
25
26/* SettingManager class.
27
28This class loads and writes the settings and manages the options.
29
30The class makes use of irrMap which is a an associative arrays using a
31red-black tree it allows easy mapping of a key to a value, along the way there
32is some information on how to use it.
33*/
34
35class SettingManager
36{
37public:
38
39 // Construct setting managers and set default settings
40 SettingManager(const stringw& settings_file): SettingsFile(settings_file), NullDevice(0)
41 {
42 // Irrlicht null device, we want to load settings before we actually created our device, therefore, nulldevice
43 NullDevice = irr::createDevice(irr::video::EDT_NULL);
44
45 //DriverOptions is an irrlicht map,
46 //we can insert values in the map in two ways by calling insert(key,value) or by using the [key] operator
47 //the [] operator overrides values if they already exist
48 DriverOptions.insert(L"Software", EDT_SOFTWARE);
49 DriverOptions.insert(L"OpenGL", EDT_OPENGL);
50 DriverOptions.insert(L"Direct3D9", EDT_DIRECT3D9);
51
52 //some resolution options
53 ResolutionOptions.insert(L"640x480", dimension2du(640,480));
54 ResolutionOptions.insert(L"800x600", dimension2du(800,600));
55 ResolutionOptions.insert(L"1024x768", dimension2du(1024,768));
56
57 //our preferred defaults
58 SettingMap.insert(L"driver", L"Direct3D9");
59 SettingMap.insert(L"resolution", L"640x480");
60 SettingMap.insert(L"fullscreen", L"0"); //0 is false
61 }
62
63 // Destructor, you could store settings automatically on exit of your
64 // application if you wanted to in our case we simply drop the
65 // nulldevice
66 ~SettingManager()
67 {
68 if (NullDevice)
69 {
70 NullDevice->closeDevice();
71 NullDevice->drop();
72 }
73 };
74
75 /*
76 Load xml from disk, overwrite default settings
77 The xml we are trying to load has the following structure
78 settings nested in sections nested in the root node, like so
79 <pre>
80 <?xml version="1.0"?>
81 <mygame>
82 <video>
83 <setting name="driver" value="Direct3D9" />
84 <setting name="fullscreen" value="0" />
85 <setting name="resolution" value="1024x768" />
86 </video>
87 </mygame>
88 </pre>
89 */
90 bool load()
91 {
92 //if not able to create device don't attempt to load
93 if (!NullDevice)
94 return false;
95
96 irr::io::IXMLReader* xml = NullDevice->getFileSystem()->createXMLReader(SettingsFile); //create xml reader
97 if (!xml)
98 return false;
99
100 const stringw settingTag(L"setting"); //we'll be looking for this tag in the xml
101 stringw currentSection; //keep track of our current section
102 const stringw videoTag(L"video"); //constant for videotag
103
104 //while there is more to read
105 while (xml->read())
106 {
107 //check the node type
108 switch (xml->getNodeType())
109 {
110 //we found a new element
111 case irr::io::EXN_ELEMENT:
112 {
113 //we currently are in the empty or mygame section and find the video tag so we set our current section to video
114 if (currentSection.empty() && videoTag.equals_ignore_case(xml->getNodeName()))
115 {
116 currentSection = videoTag;
117 }
118 //we are in the video section and we find a setting to parse
119 else if (currentSection.equals_ignore_case(videoTag) && settingTag.equals_ignore_case(xml->getNodeName() ))
120 {
121 //read in the key
122 stringw key = xml->getAttributeValueSafe(L"name");
123 //if there actually is a key to set
124 if (!key.empty())
125 {
126 //set the setting in the map to the value,
127 //the [] operator overrides values if they already exist or inserts a new key value
128 //pair into the settings map if it was not defined yet
129 SettingMap[key] = xml->getAttributeValueSafe(L"value");
130 }
131 }
132
133 //..
134 // You can add your own sections and tags to read in here
135 //..
136 }
137 break;
138
139 //we found the end of an element
140 case irr::io::EXN_ELEMENT_END:
141 //we were at the end of the video section so we reset our tag
142 currentSection=L"";
143 break;
144 }
145 }
146
147 // don't forget to delete the xml reader
148 xml->drop();
149
150 return true;
151 }
152
153 // Save the xml to disk. We use the nulldevice.
154 bool save()
155 {
156
157 //if not able to create device don't attempt to save
158 if (!NullDevice)
159 return false;
160
161 //create xml writer
162 irr::io::IXMLWriter* xwriter = NullDevice->getFileSystem()->createXMLWriter( SettingsFile );
163 if (!xwriter)
164 return false;
165
166 //write out the obligatory xml header. Each xml-file needs to have exactly one of those.
167 xwriter->writeXMLHeader();
168
169 //start element mygame, you replace the label "mygame" with anything you want
170 xwriter->writeElement(L"mygame");
171 xwriter->writeLineBreak(); //new line
172
173 //start section with video settings
174 xwriter->writeElement(L"video");
175 xwriter->writeLineBreak(); //new line
176
177 // getIterator gets us a pointer to the first node of the settings map
178 // every iteration we increase the iterator which gives us the next map node
179 // until we reach the end we write settings one by one by using the nodes key and value functions
180 map<stringw, stringw>::Iterator i = SettingMap.getIterator();
181 for(; !i.atEnd(); i++)
182 {
183 //write element as <setting name="key" value="x" />
184 //the second parameter indicates this is an empty element with no children, just attributes
185 xwriter->writeElement(L"setting",true, L"name", i->getKey().c_str(), L"value",i->getValue().c_str() );
186 xwriter->writeLineBreak();
187 }
188 xwriter->writeLineBreak();
189
190 //close video section
191 xwriter->writeClosingTag(L"video");
192 xwriter->writeLineBreak();
193
194 //..
195 // You can add writing sound settings, savegame information etc
196 //..
197
198 //close mygame section
199 xwriter->writeClosingTag(L"mygame");
200
201 //delete xml writer
202 xwriter->drop();
203
204 return true;
205 }
206
207 // Set setting in our manager
208 void setSetting(const stringw& name, const stringw& value)
209 {
210 SettingMap[name]=value;
211 }
212
213 // set setting overload to quickly assign integers to our setting map
214 void setSetting(const stringw& name, s32 value)
215 {
216 SettingMap[name]=stringw(value);
217 }
218
219 // Get setting as string
220 stringw getSetting(const stringw& key) const
221 {
222 //the find function or irrmap returns a pointer to a map Node
223 //if the key can be found, otherwise it returns null
224 //the map node has the function getValue and getKey, as we already know the key, we return node->getValue()
225 map<stringw, stringw>::Node* n = SettingMap.find(key);
226 if (n)
227 return n->getValue();
228 else
229 return L"";
230 }
231
232 //
233 bool getSettingAsBoolean(const stringw& key ) const
234 {
235 stringw s = getSetting(key);
236 if (s.empty())
237 return false;
238 return s.equals_ignore_case(L"1");
239 }
240
241 //
242 s32 getSettingAsInteger(const stringw& key) const
243 {
244 //we implicitly cast to string instead of stringw because strtol10 does not accept wide strings
245 const stringc s = getSetting(key);
246 if (s.empty())
247 return 0;
248
249 return strtol10(s.c_str());
250 }
251
252public:
253 map<stringw, s32> DriverOptions; //available options for driver config
254 map<stringw, dimension2du> ResolutionOptions; //available options for resolution config
255private:
256 SettingManager(const SettingManager& other); // defined but not implemented
257 SettingManager& operator=(const SettingManager& other); // defined but not implemented
258
259 map<stringw, stringw> SettingMap; //current config
260
261 stringw SettingsFile; // location of the xml, usually the
262 irr::IrrlichtDevice* NullDevice;
263};
264
265/*
266Application context for global variables
267*/
268struct SAppContext
269{
270 SAppContext()
271 : Device(0),Gui(0), Driver(0), Settings(0), ShouldQuit(false),
272 ButtonSave(0), ButtonExit(0), ListboxDriver(0),
273 ListboxResolution(0), CheckboxFullscreen(0)
274 {
275 }
276
277 ~SAppContext()
278 {
279 if (Settings)
280 delete Settings;
281
282 if (Device)
283 {
284 Device->closeDevice();
285 Device->drop();
286 }
287 }
288
289 IrrlichtDevice* Device;
290 IGUIEnvironment* Gui;
291 IVideoDriver* Driver;
292 SettingManager* Settings;
293 bool ShouldQuit;
294
295 //settings dialog
296 IGUIButton* ButtonSave;
297 IGUIButton* ButtonExit;
298 IGUIListBox* ListboxDriver;
299 IGUIListBox* ListboxResolution;
300 IGUICheckBox* CheckboxFullscreen;
301};
302
303/*
304 A typical event receiver.
305*/
306class MyEventReceiver : public IEventReceiver
307{
308public:
309 MyEventReceiver(SAppContext & a) : App(a) { }
310
311 virtual bool OnEvent(const SEvent& event)
312 {
313 if (event.EventType == EET_GUI_EVENT )
314 {
315 switch ( event.GUIEvent.EventType )
316 {
317 //handle button click events
318 case EGET_BUTTON_CLICKED:
319 {
320 //Our save button was called so we obtain the settings from our dialog and save them
321 if ( event.GUIEvent.Caller == App.ButtonSave )
322 {
323 //if there is a selection write it
324 if ( App.ListboxDriver->getSelected() != -1)
325 App.Settings->setSetting(L"driver", App.ListboxDriver->getListItem(App.ListboxDriver->getSelected()));
326
327 //if there is a selection write it
328 if ( App.ListboxResolution->getSelected() != -1)
329 App.Settings->setSetting(L"resolution", App.ListboxResolution->getListItem(App.ListboxResolution->getSelected()));
330
331 App.Settings->setSetting(L"fullscreen", App.CheckboxFullscreen->isChecked());
332
333
334 if (App.Settings->save())
335 {
336 App.Gui->addMessageBox(L"settings save",L"settings saved, please restart for settings to change effect","",true);
337 }
338 }
339 // cancel/exit button clicked, tell the application to exit
340 else if ( event.GUIEvent.Caller == App.ButtonExit)
341 {
342 App.ShouldQuit = true;
343 }
344 }
345 break;
346 }
347 }
348
349 return false;
350 }
351
352private:
353 SAppContext & App;
354};
355
356
357/*
358Function to create a video settings dialog
359This dialog shows the current settings from the configuration xml and allows them to be changed
360*/
361void createSettingsDialog(SAppContext& app)
362{
363 // first get rid of alpha in gui
364 for (irr::s32 i=0; i<irr::gui::EGDC_COUNT ; ++i)
365 {
366 irr::video::SColor col = app.Gui->getSkin()->getColor((irr::gui::EGUI_DEFAULT_COLOR)i);
367 col.setAlpha(255);
368 app.Gui->getSkin()->setColor((irr::gui::EGUI_DEFAULT_COLOR)i, col);
369 }
370
371 //create video settings windows
372 gui::IGUIWindow* windowSettings = app.Gui->addWindow(rect<s32>(10,10,400,400),true,L"Videosettings");
373 app.Gui->addStaticText (L"Select your desired video settings", rect< s32 >(10,20, 200, 40), false, true, windowSettings);
374
375 // add listbox for driver choice
376 app.Gui->addStaticText (L"Driver", rect< s32 >(10,50, 200, 60), false, true, windowSettings);
377 app.ListboxDriver = app.Gui->addListBox(rect<s32>(10,60,220,120), windowSettings, 1,true);
378
379 //add all available options to the driver choice listbox
380 map<stringw, s32>::Iterator i = app.Settings->DriverOptions.getIterator();
381 for(; !i.atEnd(); i++)
382 app.ListboxDriver->addItem(i->getKey().c_str());
383
384 //set currently selected driver
385 app.ListboxDriver->setSelected(app.Settings->getSetting("driver").c_str());
386
387 // add listbox for resolution choice
388 app.Gui->addStaticText (L"Resolution", rect< s32 >(10,130, 200, 140), false, true, windowSettings);
389 app.ListboxResolution = app.Gui->addListBox(rect<s32>(10,140,220,200), windowSettings, 1,true);
390
391 //add all available options to the resolution listbox
392 map<stringw, dimension2du>::Iterator ri = app.Settings->ResolutionOptions.getIterator();
393 for(; !ri.atEnd(); ri++)
394 app.ListboxResolution->addItem(ri->getKey().c_str());
395
396 //set currently selected resolution
397 app.ListboxResolution->setSelected(app.Settings->getSetting("resolution").c_str());
398
399 //add checkbox to toggle fullscreen, initially set to loaded setting
400 app.CheckboxFullscreen = app.Gui->addCheckBox(
401 app.Settings->getSettingAsBoolean("fullscreen"),
402 rect<s32>(10,220,220,240), windowSettings, -1,
403 L"Fullscreen");
404
405 //last but not least add save button
406 app.ButtonSave = app.Gui->addButton(
407 rect<s32>(80,250,150,270), windowSettings, 2,
408 L"Save video settings");
409
410 //exit/cancel button
411 app.ButtonExit = app.Gui->addButton(
412 rect<s32>(160,250,240,270), windowSettings, 2,
413 L"Cancel and exit");
414}
415
416/*
417The main function. Creates all objects and does the XML handling.
418*/
419int main()
420{
421 //create new application context
422 SAppContext app;
423
424 //create device creation parameters that can get overwritten by our settings file
425 SIrrlichtCreationParameters param;
426 param.DriverType = EDT_SOFTWARE;
427 param.WindowSize.set(640,480);
428
429 // Try to load config.
430 // I leave it as an exercise of the reader to store the configuration in the local application data folder,
431 // the only logical place to store config data for games. For all other operating systems I redirect to your manuals
432 app.Settings = new SettingManager("../../media/settings.xml");
433 if ( !app.Settings->load() )
434 {
435 // ...
436 // Here add your own exception handling, for now we continue because there are defaults set in SettingManager constructor
437 // ...
438 }
439 else
440 {
441 //settings xml loaded from disk,
442
443 //map driversetting to driver type and test if the setting is valid
444 //the DriverOptions map contains string representations mapped to to irrlicht E_DRIVER_TYPE enum
445 //e.g "direct3d9" will become 4
446 //see DriverOptions in the settingmanager class for details
447 map<stringw, s32>::Node* driver = app.Settings->DriverOptions.find( app.Settings->getSetting("driver") );
448
449 if (driver)
450 {
451 if ( irr::IrrlichtDevice::isDriverSupported( static_cast<E_DRIVER_TYPE>( driver->getValue() )))
452 {
453 // selected driver is supported, so we use it.
454 param.DriverType = static_cast<E_DRIVER_TYPE>( driver->getValue());
455 }
456 }
457
458 //map resolution setting to dimension in a similar way as demonstrated above
459 map<stringw, dimension2du>::Node* res = app.Settings->ResolutionOptions.find( app.Settings->getSetting("resolution") );
460 if (res)
461 {
462 param.WindowSize = res->getValue();
463 }
464
465 //get fullscreen setting from config
466 param.Fullscreen = app.Settings->getSettingAsBoolean("fullscreen");
467 }
468
469 //create the irrlicht device using the settings
470 app.Device = createDeviceEx(param);
471 if (app.Device == 0)
472 {
473 // You can add your own exception handling on driver failure
474 exit(0);
475 }
476
477 app.Device->setWindowCaption(L"Xmlhandling - Irrlicht engine tutorial");
478 app.Driver = app.Device->getVideoDriver();
479 app.Gui = app.Device->getGUIEnvironment();
480
481 createSettingsDialog(app);
482
483 //set event receiver so we can respond to gui events
484 MyEventReceiver receiver(app);
485 app.Device->setEventReceiver(&receiver);
486
487 //enter main loop
488 while (!app.ShouldQuit && app.Device->run())
489 {
490 if (app.Device->isWindowActive())
491 {
492 app.Driver->beginScene(true, true, SColor(0,200,200,200));
493 app.Gui->drawAll();
494 app.Driver->endScene();
495 }
496 app.Device->sleep(10);
497 }
498
499 //app destroys device in destructor
500
501 return 0;
502}
503
504/*
505**/
diff --git a/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/Makefile b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/Makefile
new file mode 100644
index 0000000..87e37e4
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/Makefile
@@ -0,0 +1,39 @@
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 = 26.OcclusionQuery
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: CPPFLAGS += -D__GNUWIN32__ -D_WIN32 -DWIN32 -D_WINDOWS -D_MBCS -D_USRDLL
24all_win32 clean_win32: SYSTEM=Win32-gcc
25all_win32 clean_win32: SUF=.exe
26# name of the binary - only valid for targets which set SYSTEM
27DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF)
28
29all_linux all_win32:
30 $(warning Building...)
31 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(Sources) -o $(DESTPATH) $(LDFLAGS)
32
33clean: clean_linux clean_win32
34 $(warning Cleaning...)
35
36clean_linux clean_win32:
37 @$(RM) $(DESTPATH)
38
39.PHONY: all all_win32 clean clean_linux clean_win32
diff --git a/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.cbp b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.cbp
new file mode 100644
index 0000000..8872705
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.cbp
@@ -0,0 +1,55 @@
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 26 OcclusionQuery" />
6 <Option pch_mode="0" />
7 <Option compiler="gcc" />
8 <Build>
9 <Target title="Windows">
10 <Option output="..\..\bin\Win32-gcc\OcclusionQuery" prefix_auto="0" extension_auto="1" />
11 <Option type="1" />
12 <Option compiler="gcc" />
13 <Option projectResourceIncludeDirsRelation="1" />
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\OcclusionQuery" 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 </Compiler>
30 <Linker>
31 <Add library="Xxf86vm" />
32 <Add library="Xcursor" />
33 <Add library="GL" />
34 <Add directory="..\..\lib\Linux" />
35 </Linker>
36 </Target>
37 </Build>
38 <VirtualTargets>
39 <Add alias="All" targets="Windows;Linux;" />
40 </VirtualTargets>
41 <Compiler>
42 <Add option="-g" />
43 <Add directory="..\..\include" />
44 </Compiler>
45 <Linker>
46 <Add library="Irrlicht" />
47 </Linker>
48 <Unit filename="main.cpp" />
49 <Extensions>
50 <code_completion />
51 <debugger />
52 <envvars />
53 </Extensions>
54 </Project>
55</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.dev b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.dev
new file mode 100644
index 0000000..e9d7c04
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.dev
@@ -0,0 +1,59 @@
1[Project]
2FileName=example.dev
3Name=Irrlicht Example 26 OcclusionQuery
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=26.OcclusionQuery.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/26.OcclusionQuery/OcclusionQuery.vcproj b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.vcproj
new file mode 100644
index 0000000..602f2d3
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery.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="26.OcclusionQuery"
6 ProjectGUID="{735B050B-1AC5-4602-B0BE-D2D2B5893E94}"
7 SccProjectName=""
8 SccLocalPath="">
9 <Platforms>
10 <Platform
11 Name="Win32"/>
12 </Platforms>
13 <Configurations>
14 <Configuration
15 Name="Debug|Win32"
16 OutputDirectory=".\Debug"
17 IntermediateDirectory=".\Debug"
18 ConfigurationType="1"
19 UseOfMFC="0"
20 ATLMinimizesCRunTimeLibraryUsage="FALSE"
21 CharacterSet="2">
22 <Tool
23 Name="VCCLCompilerTool"
24 Optimization="0"
25 AdditionalIncludeDirectories="..\..\include"
26 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
27 BasicRuntimeChecks="3"
28 RuntimeLibrary="5"
29 UsePrecompiledHeader="2"
30 PrecompiledHeaderFile=".\Debug\OcclusionQuery.pch"
31 AssemblerListingLocation=".\Debug/"
32 ObjectFile=".\Debug/"
33 ProgramDataBaseFileName=".\Debug/"
34 WarningLevel="3"
35 SuppressStartupBanner="TRUE"
36 DebugInformationFormat="4"
37 CompileAs="0"/>
38 <Tool
39 Name="VCCustomBuildTool"/>
40 <Tool
41 Name="VCLinkerTool"
42 OutputFile="..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe"
43 LinkIncremental="0"
44 SuppressStartupBanner="TRUE"
45 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
46 GenerateDebugInformation="TRUE"
47 ProgramDatabaseFile=".\Debug\OcclusionQuery.pdb"
48 SubSystem="1"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 TypeLibraryName=".\Debug\OcclusionQuery.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="_DEBUG"
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="Release|Win32"
77 OutputDirectory=".\Release"
78 IntermediateDirectory=".\Release"
79 ConfigurationType="1"
80 UseOfMFC="0"
81 ATLMinimizesCRunTimeLibraryUsage="FALSE"
82 CharacterSet="2">
83 <Tool
84 Name="VCCLCompilerTool"
85 Optimization="2"
86 InlineFunctionExpansion="1"
87 AdditionalIncludeDirectories="..\..\include"
88 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
89 StringPooling="TRUE"
90 RuntimeLibrary="4"
91 EnableFunctionLevelLinking="TRUE"
92 UsePrecompiledHeader="2"
93 PrecompiledHeaderFile=".\Release\OcclusionQuery.pch"
94 AssemblerListingLocation=".\Release/"
95 ObjectFile=".\Release/"
96 ProgramDataBaseFileName=".\Release/"
97 WarningLevel="3"
98 SuppressStartupBanner="TRUE"
99 CompileAs="0"/>
100 <Tool
101 Name="VCCustomBuildTool"/>
102 <Tool
103 Name="VCLinkerTool"
104 OutputFile="..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe"
105 LinkIncremental="0"
106 SuppressStartupBanner="TRUE"
107 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
108 ProgramDatabaseFile=".\Release\OcclusionQuery.pdb"
109 SubSystem="1"
110 TargetMachine="1"/>
111 <Tool
112 Name="VCMIDLTool"
113 TypeLibraryName=".\Release\OcclusionQuery.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="NDEBUG"
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="Debug|Win32">
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions=""
149 BasicRuntimeChecks="3"/>
150 </FileConfiguration>
151 <FileConfiguration
152 Name="Release|Win32">
153 <Tool
154 Name="VCCLCompilerTool"
155 Optimization="2"
156 AdditionalIncludeDirectories=""
157 PreprocessorDefinitions=""/>
158 </FileConfiguration>
159 </File>
160 </Files>
161 <Globals>
162 </Globals>
163</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc10.vcxproj
new file mode 100644
index 0000000..d56f995
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_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>26.OcclusionQuery</ProjectName>
23 <ProjectGuid>{5CE0E2E7-879D-4152-B61D-24E7D0707B45}</ProjectGuid>
24 <RootNamespace>OcclusionQuery</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
28 <ConfigurationType>Application</ConfigurationType>
29 <UseOfMfc>false</UseOfMfc>
30 <CharacterSet>MultiByte</CharacterSet>
31 </PropertyGroup>
32 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
33 <ConfigurationType>Application</ConfigurationType>
34 <UseOfMfc>false</UseOfMfc>
35 <CharacterSet>MultiByte</CharacterSet>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <UseOfMfc>false</UseOfMfc>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
70 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
72 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
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 <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)'=='Debug|Win32'">
91 <Midl>
92 <TypeLibraryName>.\Debug\OcclusionQuery.tlb</TypeLibraryName>
93 <HeaderFileName>
94 </HeaderFileName>
95 </Midl>
96 <ClCompile>
97 <Optimization>Disabled</Optimization>
98 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
99 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
101 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
102 <PrecompiledHeader>
103 </PrecompiledHeader>
104 <WarningLevel>Level3</WarningLevel>
105 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
106 </ClCompile>
107 <ResourceCompile>
108 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
109 <Culture>0x0c07</Culture>
110 </ResourceCompile>
111 <Link>
112 <OutputFile>..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe</OutputFile>
113 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
114 <GenerateDebugInformation>true</GenerateDebugInformation>
115 <SubSystem>Console</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
121 <Midl>
122 <TypeLibraryName>.\Debug\OcclusionQuery.tlb</TypeLibraryName>
123 <HeaderFileName>
124 </HeaderFileName>
125 </Midl>
126 <ClCompile>
127 <Optimization>Disabled</Optimization>
128 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
129 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
130 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
131 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
132 <PrecompiledHeader>
133 </PrecompiledHeader>
134 <WarningLevel>Level3</WarningLevel>
135 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
136 </ClCompile>
137 <ResourceCompile>
138 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <Culture>0x0c07</Culture>
140 </ResourceCompile>
141 <Link>
142 <OutputFile>..\..\bin\Win64-VisualStudio\26.OcclusionQuery.exe</OutputFile>
143 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
144 <GenerateDebugInformation>true</GenerateDebugInformation>
145 <SubSystem>Console</SubSystem>
146 <DataExecutionPrevention>
147 </DataExecutionPrevention>
148 </Link>
149 </ItemDefinitionGroup>
150 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
151 <Midl>
152 <TypeLibraryName>.\Release\OcclusionQuery.tlb</TypeLibraryName>
153 <HeaderFileName>
154 </HeaderFileName>
155 </Midl>
156 <ClCompile>
157 <Optimization>MaxSpeed</Optimization>
158 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
159 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
160 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <StringPooling>true</StringPooling>
162 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
163 <FunctionLevelLinking>true</FunctionLevelLinking>
164 <PrecompiledHeader>
165 </PrecompiledHeader>
166 <WarningLevel>Level3</WarningLevel>
167 </ClCompile>
168 <ResourceCompile>
169 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
170 <Culture>0x0c07</Culture>
171 </ResourceCompile>
172 <Link>
173 <OutputFile>..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe</OutputFile>
174 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
175 <SubSystem>Console</SubSystem>
176 <DataExecutionPrevention>
177 </DataExecutionPrevention>
178 </Link>
179 </ItemDefinitionGroup>
180 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
181 <Midl>
182 <TypeLibraryName>.\Release\OcclusionQuery.tlb</TypeLibraryName>
183 <HeaderFileName>
184 </HeaderFileName>
185 </Midl>
186 <ClCompile>
187 <Optimization>MaxSpeed</Optimization>
188 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
189 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
190 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
191 <StringPooling>true</StringPooling>
192 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
193 <FunctionLevelLinking>true</FunctionLevelLinking>
194 <PrecompiledHeader>
195 </PrecompiledHeader>
196 <WarningLevel>Level3</WarningLevel>
197 </ClCompile>
198 <ResourceCompile>
199 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <Culture>0x0c07</Culture>
201 </ResourceCompile>
202 <Link>
203 <OutputFile>..\..\bin\Win64-VisualStudio\26.OcclusionQuery.exe</OutputFile>
204 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/26.OcclusionQuery/OcclusionQuery_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc11.vcxproj
new file mode 100644
index 0000000..fb8b7a9
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_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>26.OcclusionQuery</ProjectName>
23 <ProjectGuid>{5CE0E2E7-879D-4152-B61D-24E7D0707B45}</ProjectGuid>
24 <RootNamespace>OcclusionQuery</RootNamespace>
25 </PropertyGroup>
26 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
27 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='Release|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)'=='Release|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)'=='Debug|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)'=='Debug|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)'=='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 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
78 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
79 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
80 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|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)'=='Debug|Win32'">
95 <Midl>
96 <TypeLibraryName>.\Debug\OcclusionQuery.tlb</TypeLibraryName>
97 <HeaderFileName>
98 </HeaderFileName>
99 </Midl>
100 <ClCompile>
101 <Optimization>Disabled</Optimization>
102 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
103 <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
104 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
105 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
106 <PrecompiledHeader>
107 </PrecompiledHeader>
108 <WarningLevel>Level3</WarningLevel>
109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0c07</Culture>
114 </ResourceCompile>
115 <Link>
116 <OutputFile>..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe</OutputFile>
117 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
118 <GenerateDebugInformation>true</GenerateDebugInformation>
119 <SubSystem>Console</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <TypeLibraryName>.\Debug\OcclusionQuery.tlb</TypeLibraryName>
127 <HeaderFileName>
128 </HeaderFileName>
129 </Midl>
130 <ClCompile>
131 <Optimization>Disabled</Optimization>
132 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
134 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
135 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
136 <PrecompiledHeader>
137 </PrecompiledHeader>
138 <WarningLevel>Level3</WarningLevel>
139 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
140 </ClCompile>
141 <ResourceCompile>
142 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
143 <Culture>0x0c07</Culture>
144 </ResourceCompile>
145 <Link>
146 <OutputFile>..\..\bin\Win64-VisualStudio\26.OcclusionQuery.exe</OutputFile>
147 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
148 <GenerateDebugInformation>true</GenerateDebugInformation>
149 <SubSystem>Console</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
155 <Midl>
156 <TypeLibraryName>.\Release\OcclusionQuery.tlb</TypeLibraryName>
157 <HeaderFileName>
158 </HeaderFileName>
159 </Midl>
160 <ClCompile>
161 <Optimization>MaxSpeed</Optimization>
162 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
163 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <StringPooling>true</StringPooling>
166 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
167 <FunctionLevelLinking>true</FunctionLevelLinking>
168 <PrecompiledHeader>
169 </PrecompiledHeader>
170 <WarningLevel>Level3</WarningLevel>
171 </ClCompile>
172 <ResourceCompile>
173 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
174 <Culture>0x0c07</Culture>
175 </ResourceCompile>
176 <Link>
177 <OutputFile>..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe</OutputFile>
178 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
179 <SubSystem>Console</SubSystem>
180 <DataExecutionPrevention>
181 </DataExecutionPrevention>
182 </Link>
183 </ItemDefinitionGroup>
184 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
185 <Midl>
186 <TypeLibraryName>.\Release\OcclusionQuery.tlb</TypeLibraryName>
187 <HeaderFileName>
188 </HeaderFileName>
189 </Midl>
190 <ClCompile>
191 <Optimization>MaxSpeed</Optimization>
192 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
193 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
194 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
195 <StringPooling>true</StringPooling>
196 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
197 <FunctionLevelLinking>true</FunctionLevelLinking>
198 <PrecompiledHeader>
199 </PrecompiledHeader>
200 <WarningLevel>Level3</WarningLevel>
201 </ClCompile>
202 <ResourceCompile>
203 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <Culture>0x0c07</Culture>
205 </ResourceCompile>
206 <Link>
207 <OutputFile>..\..\bin\Win64-VisualStudio\26.OcclusionQuery.exe</OutputFile>
208 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
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/26.OcclusionQuery/OcclusionQuery_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc8.vcproj
new file mode 100644
index 0000000..faa137f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_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="26.OcclusionQuery_vc8"
6 ProjectGUID="{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}"
7 RootNamespace="OcclusionQuery_vc8"
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 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=".\Debug\OcclusionQuery.tlb"
42 HeaderFileName=""
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include"
48 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
49 BasicRuntimeChecks="3"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug\OcclusionQuery.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="3079"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 OutputFile="..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe"
75 LinkIncremental="0"
76 SuppressStartupBanner="true"
77 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
78 GenerateDebugInformation="true"
79 ProgramDatabaseFile=".\Debug\OcclusionQuery.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release\OcclusionQuery.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release\OcclusionQuery.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release\OcclusionQuery.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="Debug|Win32"
208 >
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"
215 />
216 </FileConfiguration>
217 <FileConfiguration
218 Name="Release|Win32"
219 >
220 <Tool
221 Name="VCCLCompilerTool"
222 Optimization="2"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 </File>
228 </Files>
229 <Globals>
230 </Globals>
231</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_vc9.vcproj
new file mode 100644
index 0000000..c15a527
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/OcclusionQuery_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="26.OcclusionQuery_vc9"
6 ProjectGUID="{9A859369-0A56-4DAB-9E0C-9F93C91CF0F2}"
7 RootNamespace="OcclusionQuery_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="Debug|Win32"
20 OutputDirectory=".\Debug"
21 IntermediateDirectory=".\Debug"
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=".\Debug\OcclusionQuery.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include"
49 PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
50 BasicRuntimeChecks="3"
51 RuntimeLibrary="1"
52 UsePrecompiledHeader="0"
53 PrecompiledHeaderFile=".\Debug\OcclusionQuery.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 WarningLevel="3"
58 SuppressStartupBanner="true"
59 DebugInformationFormat="4"
60 CompileAs="0"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="3079"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 OutputFile="..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe"
76 LinkIncremental="0"
77 SuppressStartupBanner="true"
78 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug\OcclusionQuery.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="Release|Win32"
110 OutputDirectory=".\Release"
111 IntermediateDirectory=".\Release"
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=".\Release\OcclusionQuery.tlb"
133 HeaderFileName=""
134 />
135 <Tool
136 Name="VCCLCompilerTool"
137 Optimization="2"
138 InlineFunctionExpansion="1"
139 AdditionalIncludeDirectories="..\..\include"
140 PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="0"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release\OcclusionQuery.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="3079"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 OutputFile="..\..\bin\Win32-VisualStudio\26.OcclusionQuery.exe"
167 LinkIncremental="0"
168 SuppressStartupBanner="true"
169 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
170 ProgramDatabaseFile=".\Release\OcclusionQuery.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="Debug|Win32"
207 >
208 <Tool
209 Name="VCCLCompilerTool"
210 Optimization="0"
211 AdditionalIncludeDirectories=""
212 PreprocessorDefinitions=""
213 BasicRuntimeChecks="3"
214 />
215 </FileConfiguration>
216 <FileConfiguration
217 Name="Release|Win32"
218 >
219 <Tool
220 Name="VCCLCompilerTool"
221 Optimization="2"
222 AdditionalIncludeDirectories=""
223 PreprocessorDefinitions=""
224 />
225 </FileConfiguration>
226 </File>
227 </Files>
228 <Globals>
229 </Globals>
230</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/main.cpp b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/main.cpp
new file mode 100644
index 0000000..17f64b2
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/26.OcclusionQuery/main.cpp
@@ -0,0 +1,213 @@
1/** Example 026 OcclusionQuery
2
3This Tutorial shows how to speed up rendering by use of the
4OcclusionQuery feature. The usual rendering tries to avoid rendering of
5scene nodes by culling those nodes which are outside the visible area, the
6view frustum. However, this technique does not cope with occluded objects
7which are still in the line of sight, but occluded by some larger object
8between the object and the eye (camera). Occlusion queries check exactly that.
9The queries basically measure the number of pixels that a previous render
10left on the screen.
11Since those pixels cannot be recognized at the end of a rendering anymore,
12the pixel count is measured directly when rendering. Thus, one needs to render
13the occluder (the object in front) first. This object needs to write to the
14z-buffer in order to become a real occluder. Then the node is rendered and in
15case a z-pass happens, i.e. the pixel is written to the framebuffer, the pixel
16is counted in the query.
17The result of a query is the number of pixels which got through. One can, based
18on this number, judge if the scene node is visible enough to be rendered, or if
19the node should be removed in the next round. Also note that the number of
20pixels is a safe over approximation in general. The pixels might be overdrawn
21later on, and the GPU tries to avoid inaccuracies which could lead to false
22negatives in the queries.
23
24As you might have recognized already, we had to render the node to get the
25numbers. So where's the benefit, you might say. There are several ways where
26occlusion queries can help. It is often a good idea to just render the bbox
27of the node instead of the actual mesh. This is really fast and is a safe over
28approximation. If you need a more exact render with the actual geometry, it's
29a good idea to render with just basic solid material. Avoid complex shaders
30and state changes through textures. There's no need while just doing the
31occlusion query. At least if the render is not used for the actual scene. This
32is the third way to optimize occlusion queries. Just check the queries every
335th or 10th frame, or even less frequent. This depends on the movement speed
34of the objects and camera.
35*/
36
37#ifdef _MSC_VER
38// We'll also define this to stop MSVC complaining about sprintf().
39#define _CRT_SECURE_NO_WARNINGS
40#pragma comment(lib, "Irrlicht.lib")
41#endif
42
43#include <irrlicht.h>
44#include "driverChoice.h"
45
46using namespace irr;
47
48/*
49We need keyboard input events to switch some parameters
50*/
51class MyEventReceiver : public IEventReceiver
52{
53public:
54 // This is the one method that we have to implement
55 virtual bool OnEvent(const SEvent& event)
56 {
57 // Remember whether each key is down or up
58 if (event.EventType == irr::EET_KEY_INPUT_EVENT)
59 KeyIsDown[event.KeyInput.Key] = event.KeyInput.PressedDown;
60
61 return false;
62 }
63
64 // This is used to check whether a key is being held down
65 virtual bool IsKeyDown(EKEY_CODE keyCode) const
66 {
67 return KeyIsDown[keyCode];
68 }
69
70 MyEventReceiver()
71 {
72 for (u32 i=0; i<KEY_KEY_CODES_COUNT; ++i)
73 KeyIsDown[i] = false;
74 }
75
76private:
77 // We use this array to store the current state of each key
78 bool KeyIsDown[KEY_KEY_CODES_COUNT];
79};
80
81
82/*
83We create an irr::IrrlichtDevice and the scene nodes. One occluder, one
84occluded. The latter is a complex sphere, which has many triangles.
85*/
86int main()
87{
88 // ask user for driver
89 video::E_DRIVER_TYPE driverType=driverChoiceConsole();
90 if (driverType==video::EDT_COUNT)
91 return 1;
92
93 // create device
94 MyEventReceiver receiver;
95
96 IrrlichtDevice* device = createDevice(driverType,
97 core::dimension2d<u32>(640, 480), 16, false, false, false, &receiver);
98
99 if (device == 0)
100 return 1; // could not create selected driver.
101
102 video::IVideoDriver* driver = device->getVideoDriver();
103 scene::ISceneManager* smgr = device->getSceneManager();
104
105 smgr->getGUIEnvironment()->addStaticText(L"Press Space to hide occluder.", core::recti(10,10, 200,50));
106
107 /*
108 Create the node to be occluded. We create a sphere node with high poly count.
109 */
110 scene::ISceneNode * node = smgr->addSphereSceneNode(10, 64);
111 if (node)
112 {
113 node->setPosition(core::vector3df(0,0,60));
114 node->setMaterialTexture(0, driver->getTexture("../../media/wall.bmp"));
115 node->setMaterialFlag(video::EMF_LIGHTING, false);
116 }
117
118 /*
119 Now we create another node, the occluder. It's a simple plane.
120 */
121 scene::ISceneNode* plane = smgr->addMeshSceneNode(smgr->addHillPlaneMesh(
122 "plane", core::dimension2df(10,10), core::dimension2du(2,2)), 0, -1,
123 core::vector3df(0,0,20), core::vector3df(270,0,0));
124
125 if (plane)
126 {
127 plane->setMaterialTexture(0, driver->getTexture("../../media/t351sml.jpg"));
128 plane->setMaterialFlag(video::EMF_LIGHTING, false);
129 plane->setMaterialFlag(video::EMF_BACK_FACE_CULLING, true);
130 }
131
132 /*
133 Here we create the occlusion query. Because we don't have a plain mesh scene node
134 (ESNT_MESH or ESNT_ANIMATED_MESH), we pass the base geometry as well. Instead,
135 we could also pass a simpler mesh or the bounding box. But we will use a time
136 based method, where the occlusion query renders to the frame buffer and in case
137 of success (occlusion), the mesh is not drawn for several frames.
138 */
139 driver->addOcclusionQuery(node, ((scene::IMeshSceneNode*)node)->getMesh());
140
141 /*
142 We have done everything, just a camera and draw it. We also write the
143 current frames per second and the name of the driver to the caption of the
144 window to examine the render speedup.
145 We also store the time for measuring the time since the last occlusion query ran
146 and store whether the node should be visible in the next frames.
147 */
148 smgr->addCameraSceneNode();
149 int lastFPS = -1;
150 u32 timeNow = device->getTimer()->getTime();
151 bool nodeVisible=true;
152
153 while(device->run())
154 {
155 plane->setVisible(!receiver.IsKeyDown(irr::KEY_SPACE));
156
157 driver->beginScene(true, true, video::SColor(255,113,113,133));
158 /*
159 First, we draw the scene, possibly without the occluded element. This is necessary
160 because we need the occluder to be drawn first. You can also use several scene
161 managers to collect a number of possible occluders in a separately rendered
162 scene.
163 */
164 node->setVisible(nodeVisible);
165 smgr->drawAll();
166 smgr->getGUIEnvironment()->drawAll();
167
168 /*
169 Once in a while, here every 100 ms, we check the visibility. We run the queries,
170 update the pixel value, and query the result. Since we already rendered the node
171 we render the query invisible. The update is made blocking, as we need the result
172 immediately. If you don't need the result immediately, e.g. because you have other
173 things to render, you can call the update non-blocking. This gives the GPU more
174 time to pass back the results without flushing the render pipeline.
175 If the update was called non-blocking, the result from getOcclusionQueryResult is
176 either the previous value, or 0xffffffff if no value has been generated at all, yet.
177 The result is taken immediately as visibility flag for the node.
178 */
179 if (device->getTimer()->getTime()-timeNow>100)
180 {
181 driver->runAllOcclusionQueries(false);
182 driver->updateAllOcclusionQueries();
183 nodeVisible=driver->getOcclusionQueryResult(node)>0;
184 timeNow=device->getTimer()->getTime();
185 }
186
187 driver->endScene();
188
189 int fps = driver->getFPS();
190
191 if (lastFPS != fps)
192 {
193 core::stringw tmp(L"OcclusionQuery Example [");
194 tmp += driver->getName();
195 tmp += L"] fps: ";
196 tmp += fps;
197
198 device->setWindowCaption(tmp.c_str());
199 lastFPS = fps;
200 }
201 }
202
203 /*
204 In the end, delete the Irrlicht device.
205 */
206 device->drop();
207
208 return 0;
209}
210
211/*
212That's it. Compile and play around with the program.
213**/
diff --git a/src/others/irrlicht-1.8.1/examples/BuildAllExamples.MacOSX/DemoApp-Info.plist b/src/others/irrlicht-1.8.1/examples/BuildAllExamples.MacOSX/DemoApp-Info.plist
new file mode 100644
index 0000000..a754c7f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/BuildAllExamples.MacOSX/DemoApp-Info.plist
@@ -0,0 +1,24 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3<plist version="1.0">
4<dict>
5 <key>CFBundleDevelopmentRegion</key>
6 <string>English</string>
7 <key>CFBundleExecutable</key>
8 <string>${EXECUTABLE_NAME}</string>
9 <key>CFBundleIdentifier</key>
10 <string>com.irrlicht.${EXECUTABLE_NAME}</string>
11 <key>CFBundleInfoDictionaryVersion</key>
12 <string>6.0</string>
13 <key>CFBundlePackageType</key>
14 <string>APPL</string>
15 <key>CFBundleSignature</key>
16 <string>IRRL</string>
17 <key>CFBundleVersion</key>
18 <string>1.0</string>
19 <key>NSMainNibFile</key>
20 <string>MainMenu</string>
21 <key>NSPrincipalClass</key>
22 <string>NSApplication</string>
23</dict>
24</plist>
diff --git a/src/others/irrlicht-1.8.1/examples/BuildAllExamples.workspace b/src/others/irrlicht-1.8.1/examples/BuildAllExamples.workspace
new file mode 100644
index 0000000..56933c1
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/BuildAllExamples.workspace
@@ -0,0 +1,35 @@
1<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
2<CodeBlocks_workspace_file>
3 <Workspace title="Build all examples">
4 <Project filename="../source/Irrlicht/Irrlicht-gcc.cbp" />
5 <Project filename="01.HelloWorld/HelloWorld.cbp" active="1" />
6 <Project filename="02.Quake3Map/Quake3Map.cbp" />
7 <Project filename="03.CustomSceneNode/CustomSceneNode.cbp" />
8 <Project filename="04.Movement/Movement.cbp" />
9 <Project filename="05.UserInterface/UserInterface.cbp" />
10 <Project filename="06.2DGraphics/2DGraphics.cbp" />
11 <Project filename="07.Collision/Collision.cbp" />
12 <Project filename="08.SpecialFX/SpecialFX.cbp" />
13 <Project filename="09.Meshviewer/Meshviewer.cbp" />
14 <Project filename="10.Shaders/Shaders.cbp" />
15 <Project filename="11.PerPixelLighting/PerPixelLighting.cbp" />
16 <Project filename="12.TerrainRendering/TerrainRendering.cbp" />
17 <Project filename="13.RenderToTexture/RenderToTexture.cbp" />
18 <Project filename="14.Win32Window/Win32Window.cbp" />
19 <Project filename="15.LoadIrrFile/LoadIrrFile.cbp" />
20 <Project filename="16.Quake3MapShader/Quake3MapShader.cbp" />
21 <Project filename="18.SplitScreen/SplitScreen.cbp" />
22 <Project filename="19.MouseAndJoystick/MouseAndJoystick.cbp" />
23 <Project filename="20.ManagedLights/ManagedLights.cbp" />
24 <Project filename="21.Quake3Explorer/Quake3Explorer.cbp" />
25 <Project filename="22.MaterialViewer/MaterialViewer.cbp" />
26 <Project filename="23.SMeshHandling/SMeshHandling.cbp" />
27 <Project filename="24.CursorControl/CursorControl.cbp" />
28 <Project filename="25.XmlHandling/XmlHandling.cbp" />
29 <Project filename="26.OcclusionQuery/OcclusionQuery.cbp" />
30 <Project filename="Demo/demo.cbp" />
31 <Project filename="../tools/GUIEditor/GUIEditor_gcc.cbp" />
32 <Project filename="../tools/MeshConverter/MeshConverter.cbp" />
33 <Project filename="../tools/FileToHeader/FileToHeader.cbp" />
34 </Workspace>
35</CodeBlocks_workspace_file>
diff --git a/src/others/irrlicht-1.8.1/examples/BuildAllExamples_v8.sln b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_v8.sln
new file mode 100644
index 0000000..4368378
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_v8.sln
@@ -0,0 +1,236 @@
1ďťż
2Microsoft Visual Studio Solution File, Format Version 9.00
3# Visual Studio 2005
4Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Irrlicht", "..\source\Irrlicht\Irrlicht8.0.vcproj", "{E08E042A-6C45-411B-92BE-3CC31331019F}"
5EndProject
6Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01.HelloWorld_vc8", "01.HelloWorld\HelloWorld_vc8.vcproj", "{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}"
7 ProjectSection(ProjectDependencies) = postProject
8 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
9 EndProjectSection
10EndProject
11Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02.Quake3Map_vc8", "02.Quake3Map\Quake3Map_vc8.vcproj", "{D1A464A2-D479-458C-98A2-60965D823CD1}"
12 ProjectSection(ProjectDependencies) = postProject
13 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
14 EndProjectSection
15EndProject
16Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03.CustomSceneNode_vc8", "03.CustomSceneNode\CustomSceneNode_vc8.vcproj", "{171CCDFA-C140-4956-8EB7-F0168F4521D3}"
17 ProjectSection(ProjectDependencies) = postProject
18 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
19 EndProjectSection
20EndProject
21Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "04.Movement_vc8", "04.Movement\Movement_vc8.vcproj", "{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}"
22 ProjectSection(ProjectDependencies) = postProject
23 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
24 EndProjectSection
25EndProject
26Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "05.UserInterface_vc8", "05.UserInterface\UserInterface_vc8.vcproj", "{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}"
27 ProjectSection(ProjectDependencies) = postProject
28 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
29 EndProjectSection
30EndProject
31Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "06.2DGraphics_vc8", "06.2DGraphics\2DGraphics_vc8.vcproj", "{E71B6F18-10DC-4101-A541-F6D33F71B2BD}"
32 ProjectSection(ProjectDependencies) = postProject
33 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
34 EndProjectSection
35EndProject
36Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "07.Collision_vc8", "07.Collision\Collision_vc8.vcproj", "{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}"
37 ProjectSection(ProjectDependencies) = postProject
38 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
39 EndProjectSection
40EndProject
41Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "08.SpecialFX_vc8", "08.SpecialFX\SpecialFX_vc8.vcproj", "{C869BF55-B9D6-4980-BC92-60FA0CF8411A}"
42 ProjectSection(ProjectDependencies) = postProject
43 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
44 EndProjectSection
45EndProject
46Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "09.Meshviewer_vc8", "09.Meshviewer\Meshviewer_vc8.vcproj", "{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}"
47 ProjectSection(ProjectDependencies) = postProject
48 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
49 EndProjectSection
50EndProject
51Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "10.Shaders_vc8", "10.Shaders\Shaders_vc8.vcproj", "{27158C82-CD15-4A9B-9848-35E7065B209F}"
52 ProjectSection(ProjectDependencies) = postProject
53 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
54 EndProjectSection
55EndProject
56Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "11.PerPixelLighting_vc8", "11.PerPixelLighting\PerPixelLighting_vc8.vcproj", "{C4B42409-542D-4EFC-9E6B-44713FD47A33}"
57 ProjectSection(ProjectDependencies) = postProject
58 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
59 EndProjectSection
60EndProject
61Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "12.TerrainRendering_vc8", "12.TerrainRendering\TerrainRendering_vc8.vcproj", "{3A5B74E5-6390-43B0-A459-2793B81FFD31}"
62 ProjectSection(ProjectDependencies) = postProject
63 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
64 EndProjectSection
65EndProject
66Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "13.RenderToTexture_vc8", "13.RenderToTexture\RenderToTexture_vc8.vcproj", "{0914E5C8-5352-467B-8421-C9EB35BD5596}"
67 ProjectSection(ProjectDependencies) = postProject
68 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
69 EndProjectSection
70EndProject
71Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "14.Win32Window_vc8", "14.Win32Window\Win32Window_vc8.vcproj", "{772FBE05-D05A-467B-9842-BEC409EEA8D0}"
72 ProjectSection(ProjectDependencies) = postProject
73 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
74 EndProjectSection
75EndProject
76Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "15.LoadIrrFile_vc8", "15.LoadIrrFile\LoadIrrFile_vc8.vcproj", "{78C9F424-523C-49AC-94B7-823AA4A26BF9}"
77 ProjectSection(ProjectDependencies) = postProject
78 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
79 EndProjectSection
80EndProject
81Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16.Quake3MapShader_vc8", "16.Quake3MapShader\Quake3MapShader_vc8.vcproj", "{EB3B38EA-5CE7-4983-845B-880661E69D09}"
82 ProjectSection(ProjectDependencies) = postProject
83 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
84 EndProjectSection
85EndProject
86Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "17.HelloWorld for Windows Mobile on PC", "17.HelloWorld_Mobile\17. HelloWorld for Windows Mobile on PC_v8.vcproj", "{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}"
87 ProjectSection(ProjectDependencies) = postProject
88 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
89 EndProjectSection
90EndProject
91Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "19.MouseAndJoystick_vc8", "19.MouseAndJoystick\MouseAndJoystick_vc8.vcproj", "{FE853A36-E0D1-4AC5-A792-B643E70D2953}"
92 ProjectSection(ProjectDependencies) = postProject
93 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
94 EndProjectSection
95EndProject
96Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "20.ManagedLights_vc8", "20.ManagedLights\ManagedLights_vc8.vcproj", "{16007FE2-142B-47F8-93E1-519BA3F39E71}"
97 ProjectSection(ProjectDependencies) = postProject
98 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
99 EndProjectSection
100EndProject
101Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "21.Quake3Explorer_vc8", "21.Quake3Explorer\Quake3Explorer_vc8.vcproj", "{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
102 ProjectSection(ProjectDependencies) = postProject
103 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
104 EndProjectSection
105EndProject
106Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "22.MaterialViewer_vc8", "22.MaterialViewer\MaterialViewer_vc8.vcproj", "{2856AB41-9BC5-4716-9B35-762A65F6F5D1}"
107 ProjectSection(ProjectDependencies) = postProject
108 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
109 EndProjectSection
110EndProject
111Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "23.SMeshHandling_vc8", "23.SMeshHandling\SMeshHandling_vc8.vcproj", "{08D2F676-9DEB-4443-AEF7-52CC6F7D5F7C}"
112 ProjectSection(ProjectDependencies) = postProject
113 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
114 EndProjectSection
115EndProject
116Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "24.CursorControl_vc8", "24.CursorControl\CursorControl_vc8.vcproj", "{02B67A37-50E1-49DB-BECF-905BC029C2FE}"
117 ProjectSection(ProjectDependencies) = postProject
118 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
119 EndProjectSection
120EndProject
121Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Demo_vc8", "Demo\Demo_vc8.vcproj", "{6F076455-D955-45D4-9C68-4AD4E45F2D47}"
122 ProjectSection(ProjectDependencies) = postProject
123 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
124 EndProjectSection
125EndProject
126Global
127 GlobalSection(SolutionConfigurationPlatforms) = preSolution
128 Debug|Win32 = Debug|Win32
129 Release|Win32 = Release|Win32
130 EndGlobalSection
131 GlobalSection(ProjectConfigurationPlatforms) = postSolution
132 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.ActiveCfg = Debug|Win32
133 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.Build.0 = Debug|Win32
134 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.ActiveCfg = Release|Win32
135 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.Build.0 = Release|Win32
136 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.ActiveCfg = Debug|Win32
137 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.Build.0 = Debug|Win32
138 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.ActiveCfg = Release|Win32
139 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.Build.0 = Release|Win32
140 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.ActiveCfg = Debug|Win32
141 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.Build.0 = Debug|Win32
142 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.ActiveCfg = Release|Win32
143 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.Build.0 = Release|Win32
144 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.ActiveCfg = Debug|Win32
145 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.Build.0 = Debug|Win32
146 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.ActiveCfg = Release|Win32
147 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.Build.0 = Release|Win32
148 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.ActiveCfg = Debug|Win32
149 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.Build.0 = Debug|Win32
150 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.ActiveCfg = Release|Win32
151 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.Build.0 = Release|Win32
152 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.ActiveCfg = Debug|Win32
153 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.Build.0 = Debug|Win32
154 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.ActiveCfg = Release|Win32
155 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.Build.0 = Release|Win32
156 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.ActiveCfg = Debug|Win32
157 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.Build.0 = Debug|Win32
158 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.ActiveCfg = Release|Win32
159 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.Build.0 = Release|Win32
160 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.ActiveCfg = Debug|Win32
161 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.Build.0 = Debug|Win32
162 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.ActiveCfg = Release|Win32
163 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.Build.0 = Release|Win32
164 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.ActiveCfg = Debug|Win32
165 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.Build.0 = Debug|Win32
166 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.ActiveCfg = Release|Win32
167 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.Build.0 = Release|Win32
168 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.ActiveCfg = Debug|Win32
169 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.Build.0 = Debug|Win32
170 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.ActiveCfg = Release|Win32
171 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.Build.0 = Release|Win32
172 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.ActiveCfg = Debug|Win32
173 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.Build.0 = Debug|Win32
174 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.ActiveCfg = Release|Win32
175 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.Build.0 = Release|Win32
176 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.ActiveCfg = Debug|Win32
177 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.Build.0 = Debug|Win32
178 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.ActiveCfg = Release|Win32
179 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.Build.0 = Release|Win32
180 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.ActiveCfg = Debug|Win32
181 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.Build.0 = Debug|Win32
182 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.ActiveCfg = Release|Win32
183 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.Build.0 = Release|Win32
184 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.ActiveCfg = Debug|Win32
185 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.Build.0 = Debug|Win32
186 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.ActiveCfg = Release|Win32
187 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.Build.0 = Release|Win32
188 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.ActiveCfg = Debug|Win32
189 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.Build.0 = Debug|Win32
190 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.ActiveCfg = Release|Win32
191 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.Build.0 = Release|Win32
192 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.ActiveCfg = Debug|Win32
193 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.Build.0 = Debug|Win32
194 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.ActiveCfg = Release|Win32
195 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.Build.0 = Release|Win32
196 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.ActiveCfg = Debug|Win32
197 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.Build.0 = Debug|Win32
198 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.ActiveCfg = Release|Win32
199 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.Build.0 = Release|Win32
200 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.ActiveCfg = Debug|Win32
201 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.Build.0 = Debug|Win32
202 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.ActiveCfg = Release|Win32
203 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.Build.0 = Release|Win32
204 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.ActiveCfg = Debug|Win32
205 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.Build.0 = Debug|Win32
206 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.ActiveCfg = Release|Win32
207 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.Build.0 = Release|Win32
208 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.ActiveCfg = Debug|Win32
209 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.Build.0 = Debug|Win32
210 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.ActiveCfg = Release|Win32
211 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.Build.0 = Release|Win32
212 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.ActiveCfg = Debug|Win32
213 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.Build.0 = Debug|Win32
214 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.ActiveCfg = Release|Win32
215 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.Build.0 = Release|Win32
216 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.ActiveCfg = Debug|Win32
217 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.Build.0 = Debug|Win32
218 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.ActiveCfg = Release|Win32
219 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.Build.0 = Release|Win32
220 {2856AB41-9BC5-4716-9B35-762A65F6F5D1}.Debug|Win32.ActiveCfg = Debug|Win32
221 {2856AB41-9BC5-4716-9B35-762A65F6F5D1}.Debug|Win32.Build.0 = Debug|Win32
222 {2856AB41-9BC5-4716-9B35-762A65F6F5D1}.Release|Win32.ActiveCfg = Release|Win32
223 {2856AB41-9BC5-4716-9B35-762A65F6F5D1}.Release|Win32.Build.0 = Release|Win32
224 {08D2F676-9DEB-4443-AEF7-52CC6F7D5F7C}.Debug|Win32.ActiveCfg = Debug|Win32
225 {08D2F676-9DEB-4443-AEF7-52CC6F7D5F7C}.Debug|Win32.Build.0 = Debug|Win32
226 {08D2F676-9DEB-4443-AEF7-52CC6F7D5F7C}.Release|Win32.ActiveCfg = Release|Win32
227 {08D2F676-9DEB-4443-AEF7-52CC6F7D5F7C}.Release|Win32.Build.0 = Release|Win32
228 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.ActiveCfg = Debug|Win32
229 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.Build.0 = Debug|Win32
230 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.ActiveCfg = Release|Win32
231 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.Build.0 = Release|Win32
232 EndGlobalSection
233 GlobalSection(SolutionProperties) = preSolution
234 HideSolutionNode = FALSE
235 EndGlobalSection
236EndGlobal
diff --git a/src/others/irrlicht-1.8.1/examples/BuildAllExamples_v9.sln b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_v9.sln
new file mode 100644
index 0000000..61ebb1f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_v9.sln
@@ -0,0 +1,284 @@
1ďťż
2Microsoft Visual Studio Solution File, Format Version 10.00
3# Visual C++ Express 2008
4Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01.HelloWorld_vc9", "01.HelloWorld\HelloWorld_vc9.vcproj", "{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}"
5 ProjectSection(ProjectDependencies) = postProject
6 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
7 EndProjectSection
8EndProject
9Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02.Quake3Map_vc9", "02.Quake3Map\Quake3Map_vc9.vcproj", "{D1A464A2-D479-458C-98A2-60965D823CD1}"
10 ProjectSection(ProjectDependencies) = postProject
11 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
12 EndProjectSection
13EndProject
14Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03.CustomSceneNode_vc9", "03.CustomSceneNode\CustomSceneNode_vc9.vcproj", "{171CCDFA-C140-4956-8EB7-F0168F4521D3}"
15 ProjectSection(ProjectDependencies) = postProject
16 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
17 EndProjectSection
18EndProject
19Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "04.Movement_vc9", "04.Movement\Movement_vc9.vcproj", "{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}"
20 ProjectSection(ProjectDependencies) = postProject
21 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
22 EndProjectSection
23EndProject
24Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "05.UserInterface_vc8", "05.UserInterface\UserInterface_vc9.vcproj", "{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}"
25 ProjectSection(ProjectDependencies) = postProject
26 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
27 EndProjectSection
28EndProject
29Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "06.2DGraphics_vc9", "06.2DGraphics\2DGraphics_vc9.vcproj", "{E71B6F18-10DC-4101-A541-F6D33F71B2BD}"
30 ProjectSection(ProjectDependencies) = postProject
31 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
32 EndProjectSection
33EndProject
34Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "07.Collision_vc9", "07.Collision\Collision_vc9.vcproj", "{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}"
35 ProjectSection(ProjectDependencies) = postProject
36 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
37 EndProjectSection
38EndProject
39Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "08.SpecialFX_vc9", "08.SpecialFX\SpecialFX_vc9.vcproj", "{C869BF55-B9D6-4980-BC92-60FA0CF8411A}"
40 ProjectSection(ProjectDependencies) = postProject
41 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
42 EndProjectSection
43EndProject
44Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "09.Meshviewer_vc9", "09.Meshviewer\Meshviewer_vc9.vcproj", "{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}"
45 ProjectSection(ProjectDependencies) = postProject
46 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
47 EndProjectSection
48EndProject
49Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "10.Shaders_vc9", "10.Shaders\Shaders_vc9.vcproj", "{27158C82-CD15-4A9B-9848-35E7065B209F}"
50 ProjectSection(ProjectDependencies) = postProject
51 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
52 EndProjectSection
53EndProject
54Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "11.PerPixelLighting_vc9", "11.PerPixelLighting\PerPixelLighting_vc9.vcproj", "{C4B42409-542D-4EFC-9E6B-44713FD47A33}"
55 ProjectSection(ProjectDependencies) = postProject
56 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
57 EndProjectSection
58EndProject
59Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "12.TerrainRendering_vc9", "12.TerrainRendering\TerrainRendering_vc9.vcproj", "{3A5B74E5-6390-43B0-A459-2793B81FFD31}"
60 ProjectSection(ProjectDependencies) = postProject
61 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
62 EndProjectSection
63EndProject
64Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "13.RenderToTexture_vc9", "13.RenderToTexture\RenderToTexture_vc9.vcproj", "{0914E5C8-5352-467B-8421-C9EB35BD5596}"
65 ProjectSection(ProjectDependencies) = postProject
66 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
67 EndProjectSection
68EndProject
69Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "14.Win32Window_vc9", "14.Win32Window\Win32Window_vc9.vcproj", "{772FBE05-D05A-467B-9842-BEC409EEA8D0}"
70 ProjectSection(ProjectDependencies) = postProject
71 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
72 EndProjectSection
73EndProject
74Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "15.LoadIrrFile_vc9", "15.LoadIrrFile\LoadIrrFile_vc9.vcproj", "{78C9F424-523C-49AC-94B7-823AA4A26BF9}"
75 ProjectSection(ProjectDependencies) = postProject
76 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
77 EndProjectSection
78EndProject
79Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Irrlicht", "..\source\Irrlicht\Irrlicht9.0.vcproj", "{E08E042A-6C45-411B-92BE-3CC31331019F}"
80EndProject
81Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Demo_vc9", "Demo\Demo_vc9.vcproj", "{6F076455-D955-45D4-9C68-4AD4E45F2D47}"
82 ProjectSection(ProjectDependencies) = postProject
83 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
84 EndProjectSection
85EndProject
86Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16.Quake3MapShader_vc9", "16.Quake3MapShader\Quake3MapShader_vc9.vcproj", "{EB3B38EA-5CE7-4983-845B-880661E69D09}"
87 ProjectSection(ProjectDependencies) = postProject
88 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
89 EndProjectSection
90EndProject
91Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "17.HelloWorld_Mobile_v9", "17.HelloWorld_Mobile\17. HelloWorld for Windows Mobile on PC_v9.vcproj", "{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}"
92 ProjectSection(ProjectDependencies) = postProject
93 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
94 EndProjectSection
95EndProject
96Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "18.SplitScreen_vc9", "18.SplitScreen\SplitScreen_vc9.vcproj", "{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}"
97 ProjectSection(ProjectDependencies) = postProject
98 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
99 EndProjectSection
100EndProject
101Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "19.MouseAndJoystick_vc9", "19.MouseAndJoystick\MouseAndJoystick_vc9.vcproj", "{FE853A36-E0D1-4AC5-A792-B643E70D2953}"
102 ProjectSection(ProjectDependencies) = postProject
103 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
104 EndProjectSection
105EndProject
106Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "20.ManagedLights_vc9", "20.ManagedLights\ManagedLights_vc9.vcproj", "{16007FE2-142B-47F8-93E1-519BA3F39E71}"
107 ProjectSection(ProjectDependencies) = postProject
108 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
109 EndProjectSection
110EndProject
111Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "21.Quake3Explorer_vc9", "21.Quake3Explorer\Quake3Explorer_vc9.vcproj", "{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
112 ProjectSection(ProjectDependencies) = postProject
113 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
114 EndProjectSection
115EndProject
116Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "22.MaterialViewer_vc9", "22.MaterialViewer\MaterialViewer_vc9.vcproj", "{F4C8112D-57A8-4D01-BB62-BAC6A09A6902}"
117 ProjectSection(ProjectDependencies) = postProject
118 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
119 EndProjectSection
120EndProject
121Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "23.SMeshHandling_vc9", "23.SMeshHandling\SMeshHandling_vc9.vcproj", "{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}"
122 ProjectSection(ProjectDependencies) = postProject
123 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
124 EndProjectSection
125EndProject
126Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "24.CursorControl_vc9", "24.CursorControl\CursorControl_vc9.vcproj", "{02B67A37-50E1-49DB-BECF-905BC029C2FE}"
127 ProjectSection(ProjectDependencies) = postProject
128 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
129 EndProjectSection
130EndProject
131Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GUI Editor_v9", "..\tools\GUIEditor\GUI Editor_v9.vcproj", "{853A396E-C031-4C26-A716-5B4E176BE11D}"
132 ProjectSection(ProjectDependencies) = postProject
133 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
134 EndProjectSection
135EndProject
136Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Font Tool", "..\tools\IrrFontTool\newFontTool\irrFontTool_v9.vcproj", "{4D53E40F-37E3-42B1-8848-F4C6F8313A17}"
137 ProjectSection(ProjectDependencies) = postProject
138 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
139 EndProjectSection
140EndProject
141Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Mesh Converter", "..\tools\MeshConverter\MeshConverter_v9.vcproj", "{E72B637E-4AA6-46F3-885F-AC67B4B470ED}"
142 ProjectSection(ProjectDependencies) = postProject
143 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
144 EndProjectSection
145EndProject
146Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "25.XmlHandling_vc9", "25.XmlHandling\XmlHandling_vc9.vcproj", "{8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}"
147EndProject
148Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "26.OcclusionQuery_vc9", "26.OcclusionQuery\OcclusionQuery_vc9.vcproj", "{9A859369-0A56-4DAB-9E0C-9F93C91CF0F2}"
149EndProject
150Global
151 GlobalSection(SolutionConfigurationPlatforms) = preSolution
152 Debug|Win32 = Debug|Win32
153 Release|Win32 = Release|Win32
154 EndGlobalSection
155 GlobalSection(ProjectConfigurationPlatforms) = postSolution
156 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.ActiveCfg = Debug|Win32
157 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.Build.0 = Debug|Win32
158 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.ActiveCfg = Release|Win32
159 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.Build.0 = Release|Win32
160 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.ActiveCfg = Debug|Win32
161 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.Build.0 = Debug|Win32
162 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.ActiveCfg = Release|Win32
163 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.Build.0 = Release|Win32
164 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.ActiveCfg = Debug|Win32
165 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.Build.0 = Debug|Win32
166 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.ActiveCfg = Release|Win32
167 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.Build.0 = Release|Win32
168 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.ActiveCfg = Debug|Win32
169 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.Build.0 = Debug|Win32
170 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.ActiveCfg = Release|Win32
171 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.Build.0 = Release|Win32
172 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.ActiveCfg = Debug|Win32
173 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.Build.0 = Debug|Win32
174 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.ActiveCfg = Release|Win32
175 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.Build.0 = Release|Win32
176 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.ActiveCfg = Debug|Win32
177 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.Build.0 = Debug|Win32
178 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.ActiveCfg = Release|Win32
179 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.Build.0 = Release|Win32
180 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.ActiveCfg = Debug|Win32
181 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.Build.0 = Debug|Win32
182 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.ActiveCfg = Release|Win32
183 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.Build.0 = Release|Win32
184 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.ActiveCfg = Debug|Win32
185 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.Build.0 = Debug|Win32
186 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.ActiveCfg = Release|Win32
187 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.Build.0 = Release|Win32
188 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.ActiveCfg = Debug|Win32
189 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.Build.0 = Debug|Win32
190 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.ActiveCfg = Release|Win32
191 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.Build.0 = Release|Win32
192 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.ActiveCfg = Debug|Win32
193 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.Build.0 = Debug|Win32
194 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.ActiveCfg = Release|Win32
195 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.Build.0 = Release|Win32
196 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.ActiveCfg = Debug|Win32
197 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.Build.0 = Debug|Win32
198 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.ActiveCfg = Release|Win32
199 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.Build.0 = Release|Win32
200 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.ActiveCfg = Debug|Win32
201 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.Build.0 = Debug|Win32
202 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.ActiveCfg = Release|Win32
203 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.Build.0 = Release|Win32
204 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.ActiveCfg = Debug|Win32
205 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.Build.0 = Debug|Win32
206 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.ActiveCfg = Release|Win32
207 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.Build.0 = Release|Win32
208 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.ActiveCfg = Debug|Win32
209 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.Build.0 = Debug|Win32
210 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.ActiveCfg = Release|Win32
211 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.Build.0 = Release|Win32
212 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.ActiveCfg = Debug|Win32
213 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.Build.0 = Debug|Win32
214 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.ActiveCfg = Release|Win32
215 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.Build.0 = Release|Win32
216 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.ActiveCfg = Debug|Win32
217 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.Build.0 = Debug|Win32
218 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.ActiveCfg = Release|Win32
219 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.Build.0 = Release|Win32
220 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.ActiveCfg = Debug|Win32
221 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.Build.0 = Debug|Win32
222 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.ActiveCfg = Release|Win32
223 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.Build.0 = Release|Win32
224 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.ActiveCfg = Debug|Win32
225 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.Build.0 = Debug|Win32
226 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.ActiveCfg = Release|Win32
227 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.Build.0 = Release|Win32
228 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.ActiveCfg = Debug|Win32
229 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.Build.0 = Debug|Win32
230 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.ActiveCfg = Release|Win32
231 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.Build.0 = Release|Win32
232 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|Win32.ActiveCfg = Debug|Win32
233 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|Win32.Build.0 = Debug|Win32
234 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|Win32.ActiveCfg = Release|Win32
235 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|Win32.Build.0 = Release|Win32
236 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.ActiveCfg = Debug|Win32
237 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.Build.0 = Debug|Win32
238 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.ActiveCfg = Release|Win32
239 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.Build.0 = Release|Win32
240 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.ActiveCfg = Debug|Win32
241 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.Build.0 = Debug|Win32
242 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.ActiveCfg = Release|Win32
243 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.Build.0 = Release|Win32
244 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.ActiveCfg = Debug|Win32
245 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.Build.0 = Debug|Win32
246 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.ActiveCfg = Release|Win32
247 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.Build.0 = Release|Win32
248 {F4C8112D-57A8-4D01-BB62-BAC6A09A6902}.Debug|Win32.ActiveCfg = Debug|Win32
249 {F4C8112D-57A8-4D01-BB62-BAC6A09A6902}.Debug|Win32.Build.0 = Debug|Win32
250 {F4C8112D-57A8-4D01-BB62-BAC6A09A6902}.Release|Win32.ActiveCfg = Release|Win32
251 {F4C8112D-57A8-4D01-BB62-BAC6A09A6902}.Release|Win32.Build.0 = Release|Win32
252 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|Win32.ActiveCfg = Debug|Win32
253 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|Win32.Build.0 = Debug|Win32
254 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|Win32.ActiveCfg = Release|Win32
255 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|Win32.Build.0 = Release|Win32
256 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.ActiveCfg = Debug|Win32
257 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.Build.0 = Debug|Win32
258 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.ActiveCfg = Release|Win32
259 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.Build.0 = Release|Win32
260 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|Win32.ActiveCfg = Debug|Win32
261 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|Win32.Build.0 = Debug|Win32
262 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|Win32.ActiveCfg = Release|Win32
263 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|Win32.Build.0 = Release|Win32
264 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|Win32.ActiveCfg = Debug|Win32
265 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|Win32.Build.0 = Debug|Win32
266 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|Win32.ActiveCfg = Release|Win32
267 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|Win32.Build.0 = Release|Win32
268 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|Win32.ActiveCfg = Debug|Win32
269 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|Win32.Build.0 = Debug|Win32
270 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|Win32.ActiveCfg = Release|Win32
271 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|Win32.Build.0 = Release|Win32
272 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|Win32.ActiveCfg = Debug|Win32
273 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|Win32.Build.0 = Debug|Win32
274 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|Win32.ActiveCfg = Release|Win32
275 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|Win32.Build.0 = Release|Win32
276 {9A859369-0A56-4DAB-9E0C-9F93C91CF0F2}.Debug|Win32.ActiveCfg = Debug|Win32
277 {9A859369-0A56-4DAB-9E0C-9F93C91CF0F2}.Debug|Win32.Build.0 = Debug|Win32
278 {9A859369-0A56-4DAB-9E0C-9F93C91CF0F2}.Release|Win32.ActiveCfg = Release|Win32
279 {9A859369-0A56-4DAB-9E0C-9F93C91CF0F2}.Release|Win32.Build.0 = Release|Win32
280 EndGlobalSection
281 GlobalSection(SolutionProperties) = preSolution
282 HideSolutionNode = FALSE
283 EndGlobalSection
284EndGlobal
diff --git a/src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc10.sln b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc10.sln
new file mode 100644
index 0000000..11190a6
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc10.sln
@@ -0,0 +1,409 @@
1ďťż
2Microsoft Visual Studio Solution File, Format Version 11.00
3# Visual Studio 2010
4Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Irrlicht", "..\source\Irrlicht\Irrlicht10.0.vcxproj", "{E08E042A-6C45-411B-92BE-3CC31331019F}"
5EndProject
6Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01.HelloWorld", "01.HelloWorld\HelloWorld_vc10.vcxproj", "{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}"
7 ProjectSection(ProjectDependencies) = postProject
8 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
9 EndProjectSection
10EndProject
11Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02.Quake3Map", "02.Quake3Map\Quake3Map_vc10.vcxproj", "{D1A464A2-D479-458C-98A2-60965D823CD1}"
12 ProjectSection(ProjectDependencies) = postProject
13 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
14 EndProjectSection
15EndProject
16Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03.CustomSceneNode", "03.CustomSceneNode\CustomSceneNode_vc10.vcxproj", "{171CCDFA-C140-4956-8EB7-F0168F4521D3}"
17 ProjectSection(ProjectDependencies) = postProject
18 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
19 EndProjectSection
20EndProject
21Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "04.Movement", "04.Movement\Movement_vc10.vcxproj", "{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}"
22 ProjectSection(ProjectDependencies) = postProject
23 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
24 EndProjectSection
25EndProject
26Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "05.UserInterface", "05.UserInterface\UserInterface_vc10.vcxproj", "{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}"
27 ProjectSection(ProjectDependencies) = postProject
28 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
29 EndProjectSection
30EndProject
31Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "06.2DGraphics", "06.2DGraphics\2DGraphics_vc10.vcxproj", "{E71B6F18-10DC-4101-A541-F6D33F71B2BD}"
32 ProjectSection(ProjectDependencies) = postProject
33 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
34 EndProjectSection
35EndProject
36Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "07.Collision", "07.Collision\Collision_vc10.vcxproj", "{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}"
37 ProjectSection(ProjectDependencies) = postProject
38 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
39 EndProjectSection
40EndProject
41Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "08.SpecialFX", "08.SpecialFX\SpecialFX_vc10.vcxproj", "{C869BF55-B9D6-4980-BC92-60FA0CF8411A}"
42 ProjectSection(ProjectDependencies) = postProject
43 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
44 EndProjectSection
45EndProject
46Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "09.Meshviewer", "09.Meshviewer\Meshviewer_vc10.vcxproj", "{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}"
47 ProjectSection(ProjectDependencies) = postProject
48 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
49 EndProjectSection
50EndProject
51Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "10.Shaders", "10.Shaders\Shaders_vc10.vcxproj", "{27158C82-CD15-4A9B-9848-35E7065B209F}"
52 ProjectSection(ProjectDependencies) = postProject
53 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
54 EndProjectSection
55EndProject
56Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "11.PerPixelLighting", "11.PerPixelLighting\PerPixelLighting_vc10.vcxproj", "{C4B42409-542D-4EFC-9E6B-44713FD47A33}"
57 ProjectSection(ProjectDependencies) = postProject
58 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
59 EndProjectSection
60EndProject
61Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "12.TerrainRendering", "12.TerrainRendering\TerrainRendering_vc10.vcxproj", "{3A5B74E5-6390-43B0-A459-2793B81FFD31}"
62 ProjectSection(ProjectDependencies) = postProject
63 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
64 EndProjectSection
65EndProject
66Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "13.RenderToTexture", "13.RenderToTexture\RenderToTexture_vc10.vcxproj", "{0914E5C8-5352-467B-8421-C9EB35BD5596}"
67 ProjectSection(ProjectDependencies) = postProject
68 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
69 EndProjectSection
70EndProject
71Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "14.Win32Window", "14.Win32Window\Win32Window_vc10.vcxproj", "{772FBE05-D05A-467B-9842-BEC409EEA8D0}"
72 ProjectSection(ProjectDependencies) = postProject
73 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
74 EndProjectSection
75EndProject
76Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "15.LoadIrrFile", "15.LoadIrrFile\LoadIrrFile_vc10.vcxproj", "{78C9F424-523C-49AC-94B7-823AA4A26BF9}"
77 ProjectSection(ProjectDependencies) = postProject
78 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
79 EndProjectSection
80EndProject
81Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16.Quake3MapShader", "16.Quake3MapShader\Quake3MapShader_vc10.vcxproj", "{EB3B38EA-5CE7-4983-845B-880661E69D09}"
82 ProjectSection(ProjectDependencies) = postProject
83 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
84 EndProjectSection
85EndProject
86Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "17.HelloWorld_Mobile", "17.HelloWorld_Mobile\17. HelloWorld for Windows Mobile on PC_vc10.vcxproj", "{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}"
87 ProjectSection(ProjectDependencies) = postProject
88 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
89 EndProjectSection
90EndProject
91Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "18.SplitScreen", "18.SplitScreen\SplitScreen_vc10.vcxproj", "{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}"
92 ProjectSection(ProjectDependencies) = postProject
93 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
94 EndProjectSection
95EndProject
96Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "19.MouseAndJoystick", "19.MouseAndJoystick\MouseAndJoystick_vc10.vcxproj", "{FE853A36-E0D1-4AC5-A792-B643E70D2953}"
97 ProjectSection(ProjectDependencies) = postProject
98 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
99 EndProjectSection
100EndProject
101Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "20.ManagedLights", "20.ManagedLights\ManagedLights_vc10.vcxproj", "{16007FE2-142B-47F8-93E1-519BA3F39E71}"
102 ProjectSection(ProjectDependencies) = postProject
103 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
104 EndProjectSection
105EndProject
106Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "21.Quake3Explorer", "21.Quake3Explorer\Quake3Explorer_vc10.vcxproj", "{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
107 ProjectSection(ProjectDependencies) = postProject
108 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
109 EndProjectSection
110EndProject
111Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "22.MaterialViewer", "22.MaterialViewer\MaterialViewer_vc10.vcxproj", "{4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}"
112 ProjectSection(ProjectDependencies) = postProject
113 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
114 EndProjectSection
115EndProject
116Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "23.SMeshHandling", "23.SMeshHandling\SMeshHandling_vc10.vcxproj", "{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}"
117 ProjectSection(ProjectDependencies) = postProject
118 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
119 EndProjectSection
120EndProject
121Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "24.CursorControl", "24.CursorControl\CursorControl_vc10.vcxproj", "{02B67A37-50E1-49DB-BECF-905BC029C2FE}"
122 ProjectSection(ProjectDependencies) = postProject
123 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
124 EndProjectSection
125EndProject
126Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Demo", "Demo\Demo_vc10.vcxproj", "{6F076455-D955-45D4-9C68-4AD4E45F2D47}"
127 ProjectSection(ProjectDependencies) = postProject
128 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
129 EndProjectSection
130EndProject
131Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GUIEditor", "..\tools\GUIEditor\GUI Editor_vc10.vcxproj", "{853A396E-C031-4C26-A716-5B4E176BE11D}"
132EndProject
133Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FontTool", "..\tools\IrrFontTool\newFontTool\irrFontTool_vc10.vcxproj", "{4D53E40F-37E3-42B1-8848-F4C6F8313A17}"
134EndProject
135Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MeshConverter", "..\tools\MeshConverter\MeshConverter_vc10.vcxproj", "{E72B637E-4AA6-46F3-885F-AC67B4B470ED}"
136EndProject
137Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "26.OcclusionQuery", "26.OcclusionQuery\OcclusionQuery_vc10.vcxproj", "{5CE0E2E7-879D-4152-B61D-24E7D0707B45}"
138 ProjectSection(ProjectDependencies) = postProject
139 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
140 EndProjectSection
141EndProject
142Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "25.XmlHandling", "25.XmlHandling\XmlHandling_vc10.vcxproj", "{8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}"
143 ProjectSection(ProjectDependencies) = postProject
144 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
145 EndProjectSection
146EndProject
147Global
148 GlobalSection(SolutionConfigurationPlatforms) = preSolution
149 Debug|Win32 = Debug|Win32
150 Debug|x64 = Debug|x64
151 Release|Win32 = Release|Win32
152 Release|x64 = Release|x64
153 EndGlobalSection
154 GlobalSection(ProjectConfigurationPlatforms) = postSolution
155 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.ActiveCfg = Debug|Win32
156 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.Build.0 = Debug|Win32
157 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.ActiveCfg = Debug|x64
158 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.Build.0 = Debug|x64
159 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.Build.2 = Static lib - Release - Fast FPU|x64
160 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.Build.4 = SDL-Debug|x64
161 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.ActiveCfg = Release|Win32
162 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.Build.0 = Release|Win32
163 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|x64.ActiveCfg = Release|x64
164 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|x64.Build.0 = Release|x64
165 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.ActiveCfg = Debug|Win32
166 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.Build.0 = Debug|Win32
167 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|x64.ActiveCfg = Debug|x64
168 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|x64.Build.0 = Debug|x64
169 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.ActiveCfg = Release|Win32
170 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.Build.0 = Release|Win32
171 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|x64.ActiveCfg = Release|x64
172 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|x64.Build.0 = Release|x64
173 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.ActiveCfg = Debug|Win32
174 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.Build.0 = Debug|Win32
175 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|x64.ActiveCfg = Debug|x64
176 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|x64.Build.0 = Debug|x64
177 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.ActiveCfg = Release|Win32
178 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.Build.0 = Release|Win32
179 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|x64.ActiveCfg = Release|x64
180 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|x64.Build.0 = Release|x64
181 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.ActiveCfg = Debug|Win32
182 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.Build.0 = Debug|Win32
183 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|x64.ActiveCfg = Debug|x64
184 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|x64.Build.0 = Debug|x64
185 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.ActiveCfg = Release|Win32
186 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.Build.0 = Release|Win32
187 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|x64.ActiveCfg = Release|x64
188 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|x64.Build.0 = Release|x64
189 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.ActiveCfg = Debug|Win32
190 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.Build.0 = Debug|Win32
191 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|x64.ActiveCfg = Debug|x64
192 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|x64.Build.0 = Debug|x64
193 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.ActiveCfg = Release|Win32
194 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.Build.0 = Release|Win32
195 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|x64.ActiveCfg = Release|x64
196 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|x64.Build.0 = Release|x64
197 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.ActiveCfg = Debug|Win32
198 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.Build.0 = Debug|Win32
199 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|x64.ActiveCfg = Debug|x64
200 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|x64.Build.0 = Debug|x64
201 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.ActiveCfg = Release|Win32
202 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.Build.0 = Release|Win32
203 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|x64.ActiveCfg = Release|x64
204 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|x64.Build.0 = Release|x64
205 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.ActiveCfg = Debug|Win32
206 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.Build.0 = Debug|Win32
207 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|x64.ActiveCfg = Debug|x64
208 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|x64.Build.0 = Debug|x64
209 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.ActiveCfg = Release|Win32
210 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.Build.0 = Release|Win32
211 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|x64.ActiveCfg = Release|x64
212 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|x64.Build.0 = Release|x64
213 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.ActiveCfg = Debug|Win32
214 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.Build.0 = Debug|Win32
215 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|x64.ActiveCfg = Debug|x64
216 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|x64.Build.0 = Debug|x64
217 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.ActiveCfg = Release|Win32
218 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.Build.0 = Release|Win32
219 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|x64.ActiveCfg = Release|x64
220 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|x64.Build.0 = Release|x64
221 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.ActiveCfg = Debug|Win32
222 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.Build.0 = Debug|Win32
223 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|x64.ActiveCfg = Debug|x64
224 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|x64.Build.0 = Debug|x64
225 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.ActiveCfg = Release|Win32
226 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.Build.0 = Release|Win32
227 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|x64.ActiveCfg = Release|x64
228 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|x64.Build.0 = Release|x64
229 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.ActiveCfg = Debug|Win32
230 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.Build.0 = Debug|Win32
231 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|x64.ActiveCfg = Debug|x64
232 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|x64.Build.0 = Debug|x64
233 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.ActiveCfg = Release|Win32
234 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.Build.0 = Release|Win32
235 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|x64.ActiveCfg = Release|x64
236 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|x64.Build.0 = Release|x64
237 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.ActiveCfg = Debug|Win32
238 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.Build.0 = Debug|Win32
239 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|x64.ActiveCfg = Debug|x64
240 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|x64.Build.0 = Debug|x64
241 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.ActiveCfg = Release|Win32
242 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.Build.0 = Release|Win32
243 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|x64.ActiveCfg = Release|x64
244 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|x64.Build.0 = Release|x64
245 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.ActiveCfg = Debug|Win32
246 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.Build.0 = Debug|Win32
247 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|x64.ActiveCfg = Debug|x64
248 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|x64.Build.0 = Debug|x64
249 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.ActiveCfg = Release|Win32
250 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.Build.0 = Release|Win32
251 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|x64.ActiveCfg = Release|x64
252 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|x64.Build.0 = Release|x64
253 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.ActiveCfg = Debug|Win32
254 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.Build.0 = Debug|Win32
255 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|x64.ActiveCfg = Debug|x64
256 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|x64.Build.0 = Debug|x64
257 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.ActiveCfg = Release|Win32
258 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.Build.0 = Release|Win32
259 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|x64.ActiveCfg = Release|x64
260 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|x64.Build.0 = Release|x64
261 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.ActiveCfg = Debug|Win32
262 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.Build.0 = Debug|Win32
263 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|x64.ActiveCfg = Debug|x64
264 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|x64.Build.0 = Debug|x64
265 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.ActiveCfg = Release|Win32
266 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.Build.0 = Release|Win32
267 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|x64.ActiveCfg = Release|x64
268 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|x64.Build.0 = Release|x64
269 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.ActiveCfg = Debug|Win32
270 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.Build.0 = Debug|Win32
271 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|x64.ActiveCfg = Debug|x64
272 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|x64.Build.0 = Debug|x64
273 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.ActiveCfg = Release|Win32
274 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.Build.0 = Release|Win32
275 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|x64.ActiveCfg = Release|x64
276 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|x64.Build.0 = Release|x64
277 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.ActiveCfg = Debug|Win32
278 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.Build.0 = Debug|Win32
279 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|x64.ActiveCfg = Debug|x64
280 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|x64.Build.0 = Debug|x64
281 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.ActiveCfg = Release|Win32
282 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.Build.0 = Release|Win32
283 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|x64.ActiveCfg = Release|x64
284 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|x64.Build.0 = Release|x64
285 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.ActiveCfg = Debug|Win32
286 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.Build.0 = Debug|Win32
287 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|x64.ActiveCfg = Debug|x64
288 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|x64.Build.0 = Debug|x64
289 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.ActiveCfg = Release|Win32
290 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.Build.0 = Release|Win32
291 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|x64.ActiveCfg = Release|x64
292 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|x64.Build.0 = Release|x64
293 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.ActiveCfg = Debug|Win32
294 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.Build.0 = Debug|Win32
295 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|x64.ActiveCfg = Debug|x64
296 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|x64.Build.0 = Debug|x64
297 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.ActiveCfg = Release|Win32
298 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.Build.0 = Release|Win32
299 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|x64.ActiveCfg = Release|x64
300 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|x64.Build.0 = Release|x64
301 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|Win32.ActiveCfg = Debug|Win32
302 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|Win32.Build.0 = Debug|Win32
303 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|x64.ActiveCfg = Debug|x64
304 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|x64.Build.0 = Debug|x64
305 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|Win32.ActiveCfg = Release|Win32
306 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|Win32.Build.0 = Release|Win32
307 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|x64.ActiveCfg = Release|x64
308 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|x64.Build.0 = Release|x64
309 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.ActiveCfg = Debug|Win32
310 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.Build.0 = Debug|Win32
311 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|x64.ActiveCfg = Debug|x64
312 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|x64.Build.0 = Debug|x64
313 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.ActiveCfg = Release|Win32
314 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.Build.0 = Release|Win32
315 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|x64.ActiveCfg = Release|x64
316 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|x64.Build.0 = Release|x64
317 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.ActiveCfg = Debug|Win32
318 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.Build.0 = Debug|Win32
319 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|x64.ActiveCfg = Debug|x64
320 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|x64.Build.0 = Debug|x64
321 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.ActiveCfg = Release|Win32
322 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.Build.0 = Release|Win32
323 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|x64.ActiveCfg = Release|x64
324 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|x64.Build.0 = Release|x64
325 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.ActiveCfg = Debug|Win32
326 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.Build.0 = Debug|Win32
327 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|x64.ActiveCfg = Debug|x64
328 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|x64.Build.0 = Debug|x64
329 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.ActiveCfg = Release|Win32
330 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.Build.0 = Release|Win32
331 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|x64.ActiveCfg = Release|x64
332 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|x64.Build.0 = Release|x64
333 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|Win32.ActiveCfg = Debug|Win32
334 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|Win32.Build.0 = Debug|Win32
335 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|x64.ActiveCfg = Debug|x64
336 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|x64.Build.0 = Debug|x64
337 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|Win32.ActiveCfg = Release|Win32
338 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|Win32.Build.0 = Release|Win32
339 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|x64.ActiveCfg = Release|x64
340 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|x64.Build.0 = Release|x64
341 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|Win32.ActiveCfg = Debug|Win32
342 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|Win32.Build.0 = Debug|Win32
343 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|x64.ActiveCfg = Debug|x64
344 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|x64.Build.0 = Debug|x64
345 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|Win32.ActiveCfg = Release|Win32
346 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|Win32.Build.0 = Release|Win32
347 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|x64.ActiveCfg = Release|x64
348 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|x64.Build.0 = Release|x64
349 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.ActiveCfg = Debug|Win32
350 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.Build.0 = Debug|Win32
351 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|x64.ActiveCfg = Debug|x64
352 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|x64.Build.0 = Debug|x64
353 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.ActiveCfg = Release|Win32
354 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.Build.0 = Release|Win32
355 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|x64.ActiveCfg = Release|x64
356 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|x64.Build.0 = Release|x64
357 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.ActiveCfg = Debug|Win32
358 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.Build.0 = Debug|Win32
359 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|x64.ActiveCfg = Debug|x64
360 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|x64.Build.0 = Debug|x64
361 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.ActiveCfg = Release|Win32
362 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.Build.0 = Release|Win32
363 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|x64.ActiveCfg = Release|x64
364 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|x64.Build.0 = Release|x64
365 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|Win32.ActiveCfg = Debug|Win32
366 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|Win32.Build.0 = Debug|Win32
367 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|x64.ActiveCfg = Debug|x64
368 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|x64.Build.0 = Debug|x64
369 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|Win32.ActiveCfg = Release|Win32
370 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|Win32.Build.0 = Release|Win32
371 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|x64.ActiveCfg = Release|x64
372 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|x64.Build.0 = Release|x64
373 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|Win32.ActiveCfg = Debug|Win32
374 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|Win32.Build.0 = Debug|Win32
375 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|x64.ActiveCfg = Debug|x64
376 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|x64.Build.0 = Debug|x64
377 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|Win32.ActiveCfg = Release|Win32
378 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|Win32.Build.0 = Release|Win32
379 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|x64.ActiveCfg = Release|x64
380 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|x64.Build.0 = Release|x64
381 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|Win32.ActiveCfg = Debug|Win32
382 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|Win32.Build.0 = Debug|Win32
383 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|x64.ActiveCfg = Debug|x64
384 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|x64.Build.0 = Debug|x64
385 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|Win32.ActiveCfg = Release|Win32
386 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|Win32.Build.0 = Release|Win32
387 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|x64.ActiveCfg = Release|x64
388 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|x64.Build.0 = Release|x64
389 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|Win32.ActiveCfg = Debug|Win32
390 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|Win32.Build.0 = Debug|Win32
391 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|x64.ActiveCfg = Debug|x64
392 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|x64.Build.0 = Debug|x64
393 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|Win32.ActiveCfg = Release|Win32
394 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|Win32.Build.0 = Release|Win32
395 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|x64.ActiveCfg = Release|x64
396 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|x64.Build.0 = Release|x64
397 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|Win32.ActiveCfg = Debug|Win32
398 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|Win32.Build.0 = Debug|Win32
399 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|x64.ActiveCfg = Debug|x64
400 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|x64.Build.0 = Debug|x64
401 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|Win32.ActiveCfg = Release|Win32
402 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|Win32.Build.0 = Release|Win32
403 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|x64.ActiveCfg = Release|x64
404 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|x64.Build.0 = Release|x64
405 EndGlobalSection
406 GlobalSection(SolutionProperties) = preSolution
407 HideSolutionNode = FALSE
408 EndGlobalSection
409EndGlobal
diff --git a/src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc11.sln b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc11.sln
new file mode 100644
index 0000000..50ac646
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/BuildAllExamples_vc11.sln
@@ -0,0 +1,409 @@
1ďťż
2Microsoft Visual Studio Solution File, Format Version 11.00
3# Visual Studio 2012
4Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Irrlicht", "..\source\Irrlicht\Irrlicht11.0.vcxproj", "{E08E042A-6C45-411B-92BE-3CC31331019F}"
5EndProject
6Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01.HelloWorld", "01.HelloWorld\HelloWorld_vc11.vcxproj", "{5AD4C95C-BA38-4692-BA4B-8C25A86208F9}"
7 ProjectSection(ProjectDependencies) = postProject
8 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
9 EndProjectSection
10EndProject
11Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02.Quake3Map", "02.Quake3Map\Quake3Map_vc11.vcxproj", "{D1A464A2-D479-458C-98A2-60965D823CD1}"
12 ProjectSection(ProjectDependencies) = postProject
13 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
14 EndProjectSection
15EndProject
16Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03.CustomSceneNode", "03.CustomSceneNode\CustomSceneNode_vc11.vcxproj", "{171CCDFA-C140-4956-8EB7-F0168F4521D3}"
17 ProjectSection(ProjectDependencies) = postProject
18 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
19 EndProjectSection
20EndProject
21Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "04.Movement", "04.Movement\Movement_vc11.vcxproj", "{7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}"
22 ProjectSection(ProjectDependencies) = postProject
23 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
24 EndProjectSection
25EndProject
26Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "05.UserInterface", "05.UserInterface\UserInterface_vc11.vcxproj", "{622C9DD7-0391-49FF-AF53-24F9D5A8EC53}"
27 ProjectSection(ProjectDependencies) = postProject
28 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
29 EndProjectSection
30EndProject
31Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "06.2DGraphics", "06.2DGraphics\2DGraphics_vc11.vcxproj", "{E71B6F18-10DC-4101-A541-F6D33F71B2BD}"
32 ProjectSection(ProjectDependencies) = postProject
33 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
34 EndProjectSection
35EndProject
36Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "07.Collision", "07.Collision\Collision_vc11.vcxproj", "{3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}"
37 ProjectSection(ProjectDependencies) = postProject
38 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
39 EndProjectSection
40EndProject
41Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "08.SpecialFX", "08.SpecialFX\SpecialFX_vc11.vcxproj", "{C869BF55-B9D6-4980-BC92-60FA0CF8411A}"
42 ProjectSection(ProjectDependencies) = postProject
43 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
44 EndProjectSection
45EndProject
46Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "09.Meshviewer", "09.Meshviewer\Meshviewer_vc11.vcxproj", "{2AE24484-22FC-481B-9A40-7CD0DA5C8E06}"
47 ProjectSection(ProjectDependencies) = postProject
48 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
49 EndProjectSection
50EndProject
51Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "10.Shaders", "10.Shaders\Shaders_vc11.vcxproj", "{27158C82-CD15-4A9B-9848-35E7065B209F}"
52 ProjectSection(ProjectDependencies) = postProject
53 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
54 EndProjectSection
55EndProject
56Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "11.PerPixelLighting", "11.PerPixelLighting\PerPixelLighting_vc11.vcxproj", "{C4B42409-542D-4EFC-9E6B-44713FD47A33}"
57 ProjectSection(ProjectDependencies) = postProject
58 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
59 EndProjectSection
60EndProject
61Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "12.TerrainRendering", "12.TerrainRendering\TerrainRendering_vc11.vcxproj", "{3A5B74E5-6390-43B0-A459-2793B81FFD31}"
62 ProjectSection(ProjectDependencies) = postProject
63 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
64 EndProjectSection
65EndProject
66Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "13.RenderToTexture", "13.RenderToTexture\RenderToTexture_vc11.vcxproj", "{0914E5C8-5352-467B-8421-C9EB35BD5596}"
67 ProjectSection(ProjectDependencies) = postProject
68 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
69 EndProjectSection
70EndProject
71Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "14.Win32Window", "14.Win32Window\Win32Window_vc11.vcxproj", "{772FBE05-D05A-467B-9842-BEC409EEA8D0}"
72 ProjectSection(ProjectDependencies) = postProject
73 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
74 EndProjectSection
75EndProject
76Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "15.LoadIrrFile", "15.LoadIrrFile\LoadIrrFile_vc11.vcxproj", "{78C9F424-523C-49AC-94B7-823AA4A26BF9}"
77 ProjectSection(ProjectDependencies) = postProject
78 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
79 EndProjectSection
80EndProject
81Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16.Quake3MapShader", "16.Quake3MapShader\Quake3MapShader_vc11.vcxproj", "{EB3B38EA-5CE7-4983-845B-880661E69D09}"
82 ProjectSection(ProjectDependencies) = postProject
83 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
84 EndProjectSection
85EndProject
86Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "17.HelloWorld_Mobile", "17.HelloWorld_Mobile\17. HelloWorld for Windows Mobile on PC_vc11.vcxproj", "{2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}"
87 ProjectSection(ProjectDependencies) = postProject
88 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
89 EndProjectSection
90EndProject
91Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "18.SplitScreen", "18.SplitScreen\SplitScreen_vc11.vcxproj", "{1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}"
92 ProjectSection(ProjectDependencies) = postProject
93 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
94 EndProjectSection
95EndProject
96Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "19.MouseAndJoystick", "19.MouseAndJoystick\MouseAndJoystick_vc11.vcxproj", "{FE853A36-E0D1-4AC5-A792-B643E70D2953}"
97 ProjectSection(ProjectDependencies) = postProject
98 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
99 EndProjectSection
100EndProject
101Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "20.ManagedLights", "20.ManagedLights\ManagedLights_vc11.vcxproj", "{16007FE2-142B-47F8-93E1-519BA3F39E71}"
102 ProjectSection(ProjectDependencies) = postProject
103 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
104 EndProjectSection
105EndProject
106Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "21.Quake3Explorer", "21.Quake3Explorer\Quake3Explorer_vc11.vcxproj", "{CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}"
107 ProjectSection(ProjectDependencies) = postProject
108 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
109 EndProjectSection
110EndProject
111Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "22.MaterialViewer", "22.MaterialViewer\MaterialViewer_vc11.vcxproj", "{4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}"
112 ProjectSection(ProjectDependencies) = postProject
113 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
114 EndProjectSection
115EndProject
116Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "23.SMeshHandling", "23.SMeshHandling\SMeshHandling_vc11.vcxproj", "{6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}"
117 ProjectSection(ProjectDependencies) = postProject
118 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
119 EndProjectSection
120EndProject
121Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "24.CursorControl", "24.CursorControl\CursorControl_vc11.vcxproj", "{02B67A37-50E1-49DB-BECF-905BC029C2FE}"
122 ProjectSection(ProjectDependencies) = postProject
123 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
124 EndProjectSection
125EndProject
126Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Demo", "Demo\Demo_vc11.vcxproj", "{6F076455-D955-45D4-9C68-4AD4E45F2D47}"
127 ProjectSection(ProjectDependencies) = postProject
128 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
129 EndProjectSection
130EndProject
131Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GUIEditor", "..\tools\GUIEditor\GUI Editor_vc11.vcxproj", "{853A396E-C031-4C26-A716-5B4E176BE11D}"
132EndProject
133Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FontTool", "..\tools\IrrFontTool\newFontTool\irrFontTool_vc11.vcxproj", "{4D53E40F-37E3-42B1-8848-F4C6F8313A17}"
134EndProject
135Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MeshConverter", "..\tools\MeshConverter\MeshConverter_vc11.vcxproj", "{E72B637E-4AA6-46F3-885F-AC67B4B470ED}"
136EndProject
137Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "26.OcclusionQuery", "26.OcclusionQuery\OcclusionQuery_vc11.vcxproj", "{5CE0E2E7-879D-4152-B61D-24E7D0707B45}"
138 ProjectSection(ProjectDependencies) = postProject
139 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
140 EndProjectSection
141EndProject
142Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "25.XmlHandling", "25.XmlHandling\XmlHandling_vc11.vcxproj", "{8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}"
143 ProjectSection(ProjectDependencies) = postProject
144 {E08E042A-6C45-411B-92BE-3CC31331019F} = {E08E042A-6C45-411B-92BE-3CC31331019F}
145 EndProjectSection
146EndProject
147Global
148 GlobalSection(SolutionConfigurationPlatforms) = preSolution
149 Debug|Win32 = Debug|Win32
150 Debug|x64 = Debug|x64
151 Release|Win32 = Release|Win32
152 Release|x64 = Release|x64
153 EndGlobalSection
154 GlobalSection(ProjectConfigurationPlatforms) = postSolution
155 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.ActiveCfg = Debug|Win32
156 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|Win32.Build.0 = Debug|Win32
157 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.ActiveCfg = Debug|x64
158 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.Build.0 = Debug|x64
159 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.Build.2 = Static lib - Release - Fast FPU|x64
160 {E08E042A-6C45-411B-92BE-3CC31331019F}.Debug|x64.Build.4 = SDL-Debug|x64
161 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.ActiveCfg = Release|Win32
162 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|Win32.Build.0 = Release|Win32
163 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|x64.ActiveCfg = Release|x64
164 {E08E042A-6C45-411B-92BE-3CC31331019F}.Release|x64.Build.0 = Release|x64
165 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.ActiveCfg = Debug|Win32
166 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|Win32.Build.0 = Debug|Win32
167 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|x64.ActiveCfg = Debug|x64
168 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Debug|x64.Build.0 = Debug|x64
169 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.ActiveCfg = Release|Win32
170 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|Win32.Build.0 = Release|Win32
171 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|x64.ActiveCfg = Release|x64
172 {5AD4C95C-BA38-4692-BA4B-8C25A86208F9}.Release|x64.Build.0 = Release|x64
173 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.ActiveCfg = Debug|Win32
174 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|Win32.Build.0 = Debug|Win32
175 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|x64.ActiveCfg = Debug|x64
176 {D1A464A2-D479-458C-98A2-60965D823CD1}.Debug|x64.Build.0 = Debug|x64
177 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.ActiveCfg = Release|Win32
178 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|Win32.Build.0 = Release|Win32
179 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|x64.ActiveCfg = Release|x64
180 {D1A464A2-D479-458C-98A2-60965D823CD1}.Release|x64.Build.0 = Release|x64
181 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.ActiveCfg = Debug|Win32
182 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|Win32.Build.0 = Debug|Win32
183 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|x64.ActiveCfg = Debug|x64
184 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Debug|x64.Build.0 = Debug|x64
185 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.ActiveCfg = Release|Win32
186 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|Win32.Build.0 = Release|Win32
187 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|x64.ActiveCfg = Release|x64
188 {171CCDFA-C140-4956-8EB7-F0168F4521D3}.Release|x64.Build.0 = Release|x64
189 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.ActiveCfg = Debug|Win32
190 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|Win32.Build.0 = Debug|Win32
191 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|x64.ActiveCfg = Debug|x64
192 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Debug|x64.Build.0 = Debug|x64
193 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.ActiveCfg = Release|Win32
194 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|Win32.Build.0 = Release|Win32
195 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|x64.ActiveCfg = Release|x64
196 {7BDBB7E8-E0C9-4A0D-83C1-D389D6140FEF}.Release|x64.Build.0 = Release|x64
197 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.ActiveCfg = Debug|Win32
198 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|Win32.Build.0 = Debug|Win32
199 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|x64.ActiveCfg = Debug|x64
200 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Debug|x64.Build.0 = Debug|x64
201 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.ActiveCfg = Release|Win32
202 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|Win32.Build.0 = Release|Win32
203 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|x64.ActiveCfg = Release|x64
204 {622C9DD7-0391-49FF-AF53-24F9D5A8EC53}.Release|x64.Build.0 = Release|x64
205 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.ActiveCfg = Debug|Win32
206 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|Win32.Build.0 = Debug|Win32
207 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|x64.ActiveCfg = Debug|x64
208 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Debug|x64.Build.0 = Debug|x64
209 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.ActiveCfg = Release|Win32
210 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|Win32.Build.0 = Release|Win32
211 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|x64.ActiveCfg = Release|x64
212 {E71B6F18-10DC-4101-A541-F6D33F71B2BD}.Release|x64.Build.0 = Release|x64
213 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.ActiveCfg = Debug|Win32
214 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|Win32.Build.0 = Debug|Win32
215 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|x64.ActiveCfg = Debug|x64
216 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Debug|x64.Build.0 = Debug|x64
217 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.ActiveCfg = Release|Win32
218 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|Win32.Build.0 = Release|Win32
219 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|x64.ActiveCfg = Release|x64
220 {3E30297B-5BE3-4A5C-B31E-08A28ADDB29E}.Release|x64.Build.0 = Release|x64
221 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.ActiveCfg = Debug|Win32
222 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|Win32.Build.0 = Debug|Win32
223 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|x64.ActiveCfg = Debug|x64
224 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Debug|x64.Build.0 = Debug|x64
225 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.ActiveCfg = Release|Win32
226 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|Win32.Build.0 = Release|Win32
227 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|x64.ActiveCfg = Release|x64
228 {C869BF55-B9D6-4980-BC92-60FA0CF8411A}.Release|x64.Build.0 = Release|x64
229 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.ActiveCfg = Debug|Win32
230 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|Win32.Build.0 = Debug|Win32
231 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|x64.ActiveCfg = Debug|x64
232 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Debug|x64.Build.0 = Debug|x64
233 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.ActiveCfg = Release|Win32
234 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|Win32.Build.0 = Release|Win32
235 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|x64.ActiveCfg = Release|x64
236 {2AE24484-22FC-481B-9A40-7CD0DA5C8E06}.Release|x64.Build.0 = Release|x64
237 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.ActiveCfg = Debug|Win32
238 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|Win32.Build.0 = Debug|Win32
239 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|x64.ActiveCfg = Debug|x64
240 {27158C82-CD15-4A9B-9848-35E7065B209F}.Debug|x64.Build.0 = Debug|x64
241 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.ActiveCfg = Release|Win32
242 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|Win32.Build.0 = Release|Win32
243 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|x64.ActiveCfg = Release|x64
244 {27158C82-CD15-4A9B-9848-35E7065B209F}.Release|x64.Build.0 = Release|x64
245 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.ActiveCfg = Debug|Win32
246 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|Win32.Build.0 = Debug|Win32
247 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|x64.ActiveCfg = Debug|x64
248 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Debug|x64.Build.0 = Debug|x64
249 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.ActiveCfg = Release|Win32
250 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|Win32.Build.0 = Release|Win32
251 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|x64.ActiveCfg = Release|x64
252 {C4B42409-542D-4EFC-9E6B-44713FD47A33}.Release|x64.Build.0 = Release|x64
253 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.ActiveCfg = Debug|Win32
254 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|Win32.Build.0 = Debug|Win32
255 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|x64.ActiveCfg = Debug|x64
256 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Debug|x64.Build.0 = Debug|x64
257 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.ActiveCfg = Release|Win32
258 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|Win32.Build.0 = Release|Win32
259 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|x64.ActiveCfg = Release|x64
260 {3A5B74E5-6390-43B0-A459-2793B81FFD31}.Release|x64.Build.0 = Release|x64
261 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.ActiveCfg = Debug|Win32
262 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|Win32.Build.0 = Debug|Win32
263 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|x64.ActiveCfg = Debug|x64
264 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Debug|x64.Build.0 = Debug|x64
265 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.ActiveCfg = Release|Win32
266 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|Win32.Build.0 = Release|Win32
267 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|x64.ActiveCfg = Release|x64
268 {0914E5C8-5352-467B-8421-C9EB35BD5596}.Release|x64.Build.0 = Release|x64
269 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.ActiveCfg = Debug|Win32
270 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|Win32.Build.0 = Debug|Win32
271 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|x64.ActiveCfg = Debug|x64
272 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Debug|x64.Build.0 = Debug|x64
273 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.ActiveCfg = Release|Win32
274 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|Win32.Build.0 = Release|Win32
275 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|x64.ActiveCfg = Release|x64
276 {772FBE05-D05A-467B-9842-BEC409EEA8D0}.Release|x64.Build.0 = Release|x64
277 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.ActiveCfg = Debug|Win32
278 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|Win32.Build.0 = Debug|Win32
279 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|x64.ActiveCfg = Debug|x64
280 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Debug|x64.Build.0 = Debug|x64
281 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.ActiveCfg = Release|Win32
282 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|Win32.Build.0 = Release|Win32
283 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|x64.ActiveCfg = Release|x64
284 {78C9F424-523C-49AC-94B7-823AA4A26BF9}.Release|x64.Build.0 = Release|x64
285 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.ActiveCfg = Debug|Win32
286 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|Win32.Build.0 = Debug|Win32
287 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|x64.ActiveCfg = Debug|x64
288 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Debug|x64.Build.0 = Debug|x64
289 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.ActiveCfg = Release|Win32
290 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|Win32.Build.0 = Release|Win32
291 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|x64.ActiveCfg = Release|x64
292 {EB3B38EA-5CE7-4983-845B-880661E69D09}.Release|x64.Build.0 = Release|x64
293 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.ActiveCfg = Debug|Win32
294 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|Win32.Build.0 = Debug|Win32
295 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|x64.ActiveCfg = Debug|x64
296 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Debug|x64.Build.0 = Debug|x64
297 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.ActiveCfg = Release|Win32
298 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|Win32.Build.0 = Release|Win32
299 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|x64.ActiveCfg = Release|x64
300 {2A29B6B1-AFC4-46C7-9944-7052AAE66F7B}.Release|x64.Build.0 = Release|x64
301 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|Win32.ActiveCfg = Debug|Win32
302 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|Win32.Build.0 = Debug|Win32
303 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|x64.ActiveCfg = Debug|x64
304 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Debug|x64.Build.0 = Debug|x64
305 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|Win32.ActiveCfg = Release|Win32
306 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|Win32.Build.0 = Release|Win32
307 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|x64.ActiveCfg = Release|x64
308 {1AB9413E-4F53-42A3-8CB2-CB4BE22336D0}.Release|x64.Build.0 = Release|x64
309 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.ActiveCfg = Debug|Win32
310 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|Win32.Build.0 = Debug|Win32
311 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|x64.ActiveCfg = Debug|x64
312 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Debug|x64.Build.0 = Debug|x64
313 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.ActiveCfg = Release|Win32
314 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|Win32.Build.0 = Release|Win32
315 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|x64.ActiveCfg = Release|x64
316 {FE853A36-E0D1-4AC5-A792-B643E70D2953}.Release|x64.Build.0 = Release|x64
317 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.ActiveCfg = Debug|Win32
318 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|Win32.Build.0 = Debug|Win32
319 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|x64.ActiveCfg = Debug|x64
320 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Debug|x64.Build.0 = Debug|x64
321 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.ActiveCfg = Release|Win32
322 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|Win32.Build.0 = Release|Win32
323 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|x64.ActiveCfg = Release|x64
324 {16007FE2-142B-47F8-93E1-519BA3F39E71}.Release|x64.Build.0 = Release|x64
325 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.ActiveCfg = Debug|Win32
326 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|Win32.Build.0 = Debug|Win32
327 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|x64.ActiveCfg = Debug|x64
328 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Debug|x64.Build.0 = Debug|x64
329 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.ActiveCfg = Release|Win32
330 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|Win32.Build.0 = Release|Win32
331 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|x64.ActiveCfg = Release|x64
332 {CDC4AAA9-72E1-4FFA-A04D-7EF59D8B97CD}.Release|x64.Build.0 = Release|x64
333 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|Win32.ActiveCfg = Debug|Win32
334 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|Win32.Build.0 = Debug|Win32
335 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|x64.ActiveCfg = Debug|x64
336 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Debug|x64.Build.0 = Debug|x64
337 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|Win32.ActiveCfg = Release|Win32
338 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|Win32.Build.0 = Release|Win32
339 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|x64.ActiveCfg = Release|x64
340 {4E6C2F8D-BA92-4C5B-96FD-72D4FE8BD7FA}.Release|x64.Build.0 = Release|x64
341 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|Win32.ActiveCfg = Debug|Win32
342 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|Win32.Build.0 = Debug|Win32
343 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|x64.ActiveCfg = Debug|x64
344 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Debug|x64.Build.0 = Debug|x64
345 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|Win32.ActiveCfg = Release|Win32
346 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|Win32.Build.0 = Release|Win32
347 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|x64.ActiveCfg = Release|x64
348 {6AEC2AA2-C9FF-4B7D-B07A-94A9D34B41D7}.Release|x64.Build.0 = Release|x64
349 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.ActiveCfg = Debug|Win32
350 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|Win32.Build.0 = Debug|Win32
351 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|x64.ActiveCfg = Debug|x64
352 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Debug|x64.Build.0 = Debug|x64
353 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.ActiveCfg = Release|Win32
354 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|Win32.Build.0 = Release|Win32
355 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|x64.ActiveCfg = Release|x64
356 {02B67A37-50E1-49DB-BECF-905BC029C2FE}.Release|x64.Build.0 = Release|x64
357 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.ActiveCfg = Debug|Win32
358 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|Win32.Build.0 = Debug|Win32
359 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|x64.ActiveCfg = Debug|x64
360 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Debug|x64.Build.0 = Debug|x64
361 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.ActiveCfg = Release|Win32
362 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|Win32.Build.0 = Release|Win32
363 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|x64.ActiveCfg = Release|x64
364 {6F076455-D955-45D4-9C68-4AD4E45F2D47}.Release|x64.Build.0 = Release|x64
365 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|Win32.ActiveCfg = Debug|Win32
366 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|Win32.Build.0 = Debug|Win32
367 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|x64.ActiveCfg = Debug|x64
368 {853A396E-C031-4C26-A716-5B4E176BE11D}.Debug|x64.Build.0 = Debug|x64
369 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|Win32.ActiveCfg = Release|Win32
370 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|Win32.Build.0 = Release|Win32
371 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|x64.ActiveCfg = Release|x64
372 {853A396E-C031-4C26-A716-5B4E176BE11D}.Release|x64.Build.0 = Release|x64
373 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|Win32.ActiveCfg = Debug|Win32
374 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|Win32.Build.0 = Debug|Win32
375 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|x64.ActiveCfg = Debug|x64
376 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Debug|x64.Build.0 = Debug|x64
377 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|Win32.ActiveCfg = Release|Win32
378 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|Win32.Build.0 = Release|Win32
379 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|x64.ActiveCfg = Release|x64
380 {4D53E40F-37E3-42B1-8848-F4C6F8313A17}.Release|x64.Build.0 = Release|x64
381 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|Win32.ActiveCfg = Debug|Win32
382 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|Win32.Build.0 = Debug|Win32
383 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|x64.ActiveCfg = Debug|x64
384 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Debug|x64.Build.0 = Debug|x64
385 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|Win32.ActiveCfg = Release|Win32
386 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|Win32.Build.0 = Release|Win32
387 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|x64.ActiveCfg = Release|x64
388 {E72B637E-4AA6-46F3-885F-AC67B4B470ED}.Release|x64.Build.0 = Release|x64
389 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|Win32.ActiveCfg = Debug|Win32
390 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|Win32.Build.0 = Debug|Win32
391 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|x64.ActiveCfg = Debug|x64
392 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Debug|x64.Build.0 = Debug|x64
393 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|Win32.ActiveCfg = Release|Win32
394 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|Win32.Build.0 = Release|Win32
395 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|x64.ActiveCfg = Release|x64
396 {5CE0E2E7-879D-4152-B61D-24E7D0707B45}.Release|x64.Build.0 = Release|x64
397 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|Win32.ActiveCfg = Debug|Win32
398 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|Win32.Build.0 = Debug|Win32
399 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|x64.ActiveCfg = Debug|x64
400 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Debug|x64.Build.0 = Debug|x64
401 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|Win32.ActiveCfg = Release|Win32
402 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|Win32.Build.0 = Release|Win32
403 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|x64.ActiveCfg = Release|x64
404 {8FDA260E-EF27-4F8C-8720-7AF707DD0D9E}.Release|x64.Build.0 = Release|x64
405 EndGlobalSection
406 GlobalSection(SolutionProperties) = preSolution
407 HideSolutionNode = FALSE
408 EndGlobalSection
409EndGlobal
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/CDemo.cpp b/src/others/irrlicht-1.8.1/examples/Demo/CDemo.cpp
new file mode 100644
index 0000000..1ce72a9
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/CDemo.cpp
@@ -0,0 +1,815 @@
1// This is a Demo of the Irrlicht Engine (c) 2005-2009 by N.Gebhardt.
2// This file is not documented.
3
4#include "CDemo.h"
5
6CDemo::CDemo(bool f, bool m, bool s, bool a, bool v, bool fsaa, video::E_DRIVER_TYPE d)
7: fullscreen(f), music(m), shadows(s), additive(a), vsync(v), aa(fsaa),
8 driverType(d), device(0),
9#ifdef USE_IRRKLANG
10 irrKlang(0), ballSound(0), impactSound(0),
11#endif
12#ifdef USE_SDL_MIXER
13 stream(0), ballSound(0), impactSound(0),
14#endif
15 currentScene(-2), backColor(0), statusText(0), inOutFader(0),
16 quakeLevelMesh(0), quakeLevelNode(0), skyboxNode(0), model1(0), model2(0),
17 campFire(0), metaSelector(0), mapSelector(0), sceneStartTime(0),
18 timeForThisScene(0)
19{
20}
21
22
23CDemo::~CDemo()
24{
25 if (mapSelector)
26 mapSelector->drop();
27
28 if (metaSelector)
29 metaSelector->drop();
30
31#ifdef USE_IRRKLANG
32 if (irrKlang)
33 irrKlang->drop();
34#endif
35}
36
37
38void CDemo::run()
39{
40 core::dimension2d<u32> resolution ( 800, 600 );
41
42 if ( driverType == video::EDT_BURNINGSVIDEO || driverType == video::EDT_SOFTWARE )
43 {
44 resolution.Width = 640;
45 resolution.Height = 480;
46 }
47
48 irr::SIrrlichtCreationParameters params;
49 params.DriverType=driverType;
50 params.WindowSize=resolution;
51 params.Bits=32;
52 params.Fullscreen=fullscreen;
53 params.Stencilbuffer=shadows;
54 params.Vsync=vsync;
55 params.AntiAlias=aa;
56 params.EventReceiver=this;
57
58 device = createDeviceEx(params);
59 if (!device)
60 return;
61
62 if (device->getFileSystem()->existFile("irrlicht.dat"))
63 device->getFileSystem()->addFileArchive("irrlicht.dat");
64 else
65 device->getFileSystem()->addFileArchive("../../media/irrlicht.dat");
66 if (device->getFileSystem()->existFile("map-20kdm2.pk3"))
67 device->getFileSystem()->addFileArchive("map-20kdm2.pk3");
68 else
69 device->getFileSystem()->addFileArchive("../../media/map-20kdm2.pk3");
70
71 video::IVideoDriver* driver = device->getVideoDriver();
72 scene::ISceneManager* smgr = device->getSceneManager();
73 gui::IGUIEnvironment* guienv = device->getGUIEnvironment();
74
75 device->setWindowCaption(L"Irrlicht Engine Demo");
76
77 // set ambient light
78 smgr->setAmbientLight ( video::SColorf ( 0x00c0c0c0 ) );
79
80 wchar_t tmp[255];
81
82 // draw everything
83
84 s32 now = 0;
85 s32 lastfps = 0;
86 sceneStartTime = device->getTimer()->getTime();
87 while(device->run() && driver)
88 {
89 if (device->isWindowActive())
90 {
91 #ifdef USE_IRRKLANG
92 // update 3D position for sound engine
93 scene::ICameraSceneNode* cam = smgr->getActiveCamera();
94 if (cam && irrKlang)
95 irrKlang->setListenerPosition(cam->getAbsolutePosition(), cam->getTarget());
96 #endif
97
98 // load next scene if necessary
99 now = device->getTimer()->getTime();
100 if (now - sceneStartTime > timeForThisScene && timeForThisScene!=-1)
101 switchToNextScene();
102
103 createParticleImpacts();
104
105 driver->beginScene(timeForThisScene != -1, true, backColor);
106
107 smgr->drawAll();
108 guienv->drawAll();
109 driver->endScene();
110
111 // write statistics
112 const s32 nowfps = driver->getFPS();
113
114 swprintf(tmp, 255, L"%ls fps:%3d triangles:%0.3f mio/s",
115 driver->getName(), driver->getFPS(),
116 driver->getPrimitiveCountDrawn(1) * (1.f / 1000000.f));
117
118 statusText->setText(tmp);
119 if ( nowfps != lastfps )
120 {
121 device->setWindowCaption(tmp);
122 lastfps = nowfps;
123 }
124 }
125 }
126
127 device->drop();
128}
129
130
131bool CDemo::OnEvent(const SEvent& event)
132{
133 if (!device)
134 return false;
135
136 if (event.EventType == EET_KEY_INPUT_EVENT &&
137 event.KeyInput.Key == KEY_ESCAPE &&
138 event.KeyInput.PressedDown == false)
139 {
140 // user wants to quit.
141 if (currentScene < 3)
142 timeForThisScene = 0;
143 else
144 device->closeDevice();
145 }
146 else
147 if (((event.EventType == EET_KEY_INPUT_EVENT &&
148 event.KeyInput.Key == KEY_SPACE &&
149 event.KeyInput.PressedDown == false) ||
150 (event.EventType == EET_MOUSE_INPUT_EVENT &&
151 event.MouseInput.Event == EMIE_LMOUSE_LEFT_UP)) &&
152 currentScene == 3)
153 {
154 // shoot
155 shoot();
156 }
157 else
158 if (event.EventType == EET_KEY_INPUT_EVENT &&
159 event.KeyInput.Key == KEY_F9 &&
160 event.KeyInput.PressedDown == false)
161 {
162 video::IImage* image = device->getVideoDriver()->createScreenShot();
163 if (image)
164 {
165 device->getVideoDriver()->writeImageToFile(image, "screenshot.bmp");
166 device->getVideoDriver()->writeImageToFile(image, "screenshot.png");
167 device->getVideoDriver()->writeImageToFile(image, "screenshot.tga");
168 device->getVideoDriver()->writeImageToFile(image, "screenshot.ppm");
169 device->getVideoDriver()->writeImageToFile(image, "screenshot.jpg");
170 device->getVideoDriver()->writeImageToFile(image, "screenshot.pcx");
171 image->drop();
172 }
173 }
174 else
175 if (device->getSceneManager()->getActiveCamera())
176 {
177 device->getSceneManager()->getActiveCamera()->OnEvent(event);
178 return true;
179 }
180
181 return false;
182}
183
184
185void CDemo::switchToNextScene()
186{
187 currentScene++;
188 if (currentScene > 3)
189 currentScene = 1;
190
191 scene::ISceneManager* sm = device->getSceneManager();
192 scene::ISceneNodeAnimator* sa = 0;
193 scene::ICameraSceneNode* camera = 0;
194
195 camera = sm->getActiveCamera();
196 if (camera)
197 {
198 sm->setActiveCamera(0);
199 camera->remove();
200 camera = 0;
201 }
202
203 switch(currentScene)
204 {
205 case -1: // loading screen
206 timeForThisScene = 0;
207 createLoadingScreen();
208 break;
209
210 case 0: // load scene
211 timeForThisScene = 0;
212 loadSceneData();
213 break;
214
215 case 1: // panorama camera
216 {
217 currentScene += 1;
218 //camera = sm->addCameraSceneNode(0, core::vector3df(0,0,0), core::vector3df(-586,708,52));
219 //camera->setTarget(core::vector3df(0,400,0));
220
221 core::array<core::vector3df> points;
222
223 points.push_back(core::vector3df(-931.473755f, 138.300003f, 987.279114f)); // -49873
224 points.push_back(core::vector3df(-847.902222f, 136.757553f, 915.792725f)); // -50559
225 points.push_back(core::vector3df(-748.680420f, 152.254501f, 826.418945f)); // -51964
226 points.push_back(core::vector3df(-708.428406f, 213.569580f, 784.466675f)); // -53251
227 points.push_back(core::vector3df(-686.217651f, 288.141174f, 762.965576f)); // -54015
228 points.push_back(core::vector3df(-679.685059f, 365.095612f, 756.551453f)); // -54733
229 points.push_back(core::vector3df(-671.317871f, 447.360107f, 749.394592f)); // -55588
230 points.push_back(core::vector3df(-669.468445f, 583.335632f, 747.711853f)); // -56178
231 points.push_back(core::vector3df(-667.611267f, 727.313232f, 746.018250f)); // -56757
232 points.push_back(core::vector3df(-665.853210f, 862.791931f, 744.436096f)); // -57859
233 points.push_back(core::vector3df(-642.649597f, 1026.047607f, 724.259827f)); // -59705
234 points.push_back(core::vector3df(-517.793884f, 838.396790f, 490.326050f)); // -60983
235 points.push_back(core::vector3df(-474.387299f, 715.691467f, 344.639984f)); // -61629
236 points.push_back(core::vector3df(-444.600250f, 601.155701f, 180.938095f)); // -62319
237 points.push_back(core::vector3df(-414.808899f, 479.691406f, 4.866660f)); // -63048
238 points.push_back(core::vector3df(-410.418945f, 429.642242f, -134.332687f)); // -63757
239 points.push_back(core::vector3df(-399.837585f, 411.498383f, -349.350983f)); // -64418
240 points.push_back(core::vector3df(-390.756653f, 403.970093f, -524.454407f)); // -65005
241 points.push_back(core::vector3df(-334.864227f, 350.065491f, -732.397400f)); // -65701
242 points.push_back(core::vector3df(-195.253387f, 349.577209f, -812.475891f)); // -66335
243 points.push_back(core::vector3df(16.255573f, 363.743134f, -833.800415f)); // -67170
244 points.push_back(core::vector3df(234.940964f, 352.957825f, -820.150696f)); // -67939
245 points.push_back(core::vector3df(436.797668f, 349.236450f, -816.914185f)); // -68596
246 points.push_back(core::vector3df(575.236206f, 356.244812f, -719.788513f)); // -69166
247 points.push_back(core::vector3df(594.131042f, 387.173828f, -609.675598f)); // -69744
248 points.push_back(core::vector3df(617.615234f, 412.002899f, -326.174072f)); // -70640
249 points.push_back(core::vector3df(606.456848f, 403.221954f, -104.179291f)); // -71390
250 points.push_back(core::vector3df(610.958252f, 407.037750f, 117.209778f)); // -72085
251 points.push_back(core::vector3df(597.956909f, 395.167877f, 345.942200f)); // -72817
252 points.push_back(core::vector3df(587.383118f, 391.444519f, 566.098633f)); // -73477
253 points.push_back(core::vector3df(559.572449f, 371.991333f, 777.689453f)); // -74124
254 points.push_back(core::vector3df(423.753204f, 329.990051f, 925.859741f)); // -74941
255 points.push_back(core::vector3df(247.520050f, 252.818954f, 935.311829f)); // -75651
256 points.push_back(core::vector3df(114.756012f, 199.799759f, 805.014160f));
257 points.push_back(core::vector3df(96.783348f, 181.639481f, 648.188110f));
258 points.push_back(core::vector3df(97.865623f, 138.905975f, 484.812561f));
259 points.push_back(core::vector3df(99.612457f, 102.463669f, 347.603210f));
260 points.push_back(core::vector3df(99.612457f, 102.463669f, 347.603210f));
261 points.push_back(core::vector3df(99.612457f, 102.463669f, 347.603210f));
262
263 timeForThisScene = (points.size()-3)* 1000;
264
265 camera = sm->addCameraSceneNode(0, points[0], core::vector3df(0 ,400,0));
266 //camera->setTarget(core::vector3df(0,400,0));
267
268 sa = sm->createFollowSplineAnimator(device->getTimer()->getTime(),
269 points);
270 camera->addAnimator(sa);
271 sa->drop();
272
273 model1->setVisible(false);
274 model2->setVisible(false);
275 campFire->setVisible(false);
276 inOutFader->fadeIn(7000);
277 }
278 break;
279
280 case 2: // down fly anim camera
281 camera = sm->addCameraSceneNode(0, core::vector3df(100,40,-80), core::vector3df(844,670,-885));
282 sa = sm->createFlyStraightAnimator(core::vector3df(94, 1002, 127),
283 core::vector3df(108, 15, -60), 10000, true);
284 camera->addAnimator(sa);
285 timeForThisScene = 9900;
286 model1->setVisible(true);
287 model2->setVisible(false);
288 campFire->setVisible(false);
289 sa->drop();
290 break;
291
292 case 3: // interactive, go around
293 {
294 model1->setVisible(true);
295 model2->setVisible(true);
296 campFire->setVisible(true);
297 timeForThisScene = -1;
298
299 SKeyMap keyMap[9];
300 keyMap[0].Action = EKA_MOVE_FORWARD;
301 keyMap[0].KeyCode = KEY_UP;
302 keyMap[1].Action = EKA_MOVE_FORWARD;
303 keyMap[1].KeyCode = KEY_KEY_W;
304
305 keyMap[2].Action = EKA_MOVE_BACKWARD;
306 keyMap[2].KeyCode = KEY_DOWN;
307 keyMap[3].Action = EKA_MOVE_BACKWARD;
308 keyMap[3].KeyCode = KEY_KEY_S;
309
310 keyMap[4].Action = EKA_STRAFE_LEFT;
311 keyMap[4].KeyCode = KEY_LEFT;
312 keyMap[5].Action = EKA_STRAFE_LEFT;
313 keyMap[5].KeyCode = KEY_KEY_A;
314
315 keyMap[6].Action = EKA_STRAFE_RIGHT;
316 keyMap[6].KeyCode = KEY_RIGHT;
317 keyMap[7].Action = EKA_STRAFE_RIGHT;
318 keyMap[7].KeyCode = KEY_KEY_D;
319
320 keyMap[8].Action = EKA_JUMP_UP;
321 keyMap[8].KeyCode = KEY_KEY_J;
322
323 camera = sm->addCameraSceneNodeFPS(0, 100.0f, .4f, -1, keyMap, 9, false, 3.f);
324 camera->setPosition(core::vector3df(108,140,-140));
325 camera->setFarValue(5000.0f);
326
327 scene::ISceneNodeAnimatorCollisionResponse* collider =
328 sm->createCollisionResponseAnimator(
329 metaSelector, camera, core::vector3df(25,50,25),
330 core::vector3df(0, quakeLevelMesh ? -10.f : 0.0f,0),
331 core::vector3df(0,45,0), 0.005f);
332
333 camera->addAnimator(collider);
334 collider->drop();
335 }
336 break;
337 }
338
339 sceneStartTime = device->getTimer()->getTime();
340}
341
342
343void CDemo::loadSceneData()
344{
345 // load quake level
346
347 video::IVideoDriver* driver = device->getVideoDriver();
348 scene::ISceneManager* sm = device->getSceneManager();
349
350 // Quake3 Shader controls Z-Writing
351 sm->getParameters()->setAttribute(scene::ALLOW_ZWRITE_ON_TRANSPARENT, true);
352
353 quakeLevelMesh = (scene::IQ3LevelMesh*) sm->getMesh("maps/20kdm2.bsp");
354
355 if (quakeLevelMesh)
356 {
357 u32 i;
358
359 //move all quake level meshes (non-realtime)
360 core::matrix4 m;
361 m.setTranslation(core::vector3df(-1300,-70,-1249));
362
363 for ( i = 0; i != scene::quake3::E_Q3_MESH_SIZE; ++i )
364 sm->getMeshManipulator()->transform(quakeLevelMesh->getMesh(i), m);
365
366 quakeLevelNode = sm->addOctreeSceneNode(
367 quakeLevelMesh->getMesh( scene::quake3::E_Q3_MESH_GEOMETRY));
368 if (quakeLevelNode)
369 {
370 //quakeLevelNode->setPosition(core::vector3df(-1300,-70,-1249));
371 quakeLevelNode->setVisible(true);
372
373 // create map triangle selector
374 mapSelector = sm->createOctreeTriangleSelector(quakeLevelMesh->getMesh(0),
375 quakeLevelNode, 128);
376
377 // if not using shader and no gamma it's better to use more lighting, because
378 // quake3 level are usually dark
379 quakeLevelNode->setMaterialType ( video::EMT_LIGHTMAP_M4 );
380
381 // set additive blending if wanted
382 if (additive)
383 quakeLevelNode->setMaterialType(video::EMT_LIGHTMAP_ADD);
384 }
385
386 // the additional mesh can be quite huge and is unoptimized
387 scene::IMesh * additional_mesh = quakeLevelMesh->getMesh ( scene::quake3::E_Q3_MESH_ITEMS );
388
389 for ( i = 0; i!= additional_mesh->getMeshBufferCount (); ++i )
390 {
391 scene::IMeshBuffer *meshBuffer = additional_mesh->getMeshBuffer ( i );
392 const video::SMaterial &material = meshBuffer->getMaterial();
393
394 //! The ShaderIndex is stored in the material parameter
395 s32 shaderIndex = (s32) material.MaterialTypeParam2;
396
397 // the meshbuffer can be rendered without additional support, or it has no shader
398 const scene::quake3::IShader *shader = quakeLevelMesh->getShader ( shaderIndex );
399 if ( 0 == shader )
400 {
401 continue;
402 }
403 // Now add the MeshBuffer(s) with the current Shader to the Manager
404 sm->addQuake3SceneNode ( meshBuffer, shader );
405 }
406 }
407
408 // load sydney model and create 2 instances
409
410 scene::IAnimatedMesh* mesh = 0;
411 mesh = sm->getMesh("../../media/sydney.md2");
412 if (mesh)
413 {
414 model1 = sm->addAnimatedMeshSceneNode(mesh);
415 if (model1)
416 {
417 model1->setMaterialTexture(0, driver->getTexture("../../media/spheremap.jpg"));
418 model1->setPosition(core::vector3df(100,40,-80));
419 model1->setScale(core::vector3df(2,2,2));
420 model1->setMD2Animation(scene::EMAT_STAND);
421 model1->setMaterialFlag(video::EMF_LIGHTING, false);
422 model1->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, true);
423 model1->setMaterialType(video::EMT_SPHERE_MAP);
424 model1->addShadowVolumeSceneNode();
425 }
426
427 model2 = sm->addAnimatedMeshSceneNode(mesh);
428 if (model2)
429 {
430 model2->setPosition(core::vector3df(180,15,-60));
431 model2->setScale(core::vector3df(2,2,2));
432 model2->setMD2Animation(scene::EMAT_RUN);
433 model2->setMaterialTexture(0, device->getVideoDriver()->getTexture("../../media/sydney.bmp"));
434 model2->setMaterialFlag(video::EMF_LIGHTING, true);
435 model2->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, true);
436 model2->addShadowVolumeSceneNode();
437 }
438 }
439
440 scene::ISceneNodeAnimator* anim = 0;
441
442 // create sky box
443 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
444 skyboxNode = sm->addSkyBoxSceneNode(
445 driver->getTexture("../../media/irrlicht2_up.jpg"),
446 driver->getTexture("../../media/irrlicht2_dn.jpg"),
447 driver->getTexture("../../media/irrlicht2_lf.jpg"),
448 driver->getTexture("../../media/irrlicht2_rt.jpg"),
449 driver->getTexture("../../media/irrlicht2_ft.jpg"),
450 driver->getTexture("../../media/irrlicht2_bk.jpg"));
451 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, true);
452
453 // create walk-between-portals animation
454
455 core::vector3df waypoint[2];
456 waypoint[0].set(-150,40,100);
457 waypoint[1].set(350,40,100);
458
459 if (model2)
460 {
461 anim = device->getSceneManager()->createFlyStraightAnimator(
462 waypoint[0], waypoint[1], 2000, true);
463 model2->addAnimator(anim);
464 anim->drop();
465 }
466
467 // create animation for portals;
468
469 core::array<video::ITexture*> textures;
470 for (s32 g=1; g<8; ++g)
471 {
472 core::stringc tmp("../../media/portal");
473 tmp += g;
474 tmp += ".bmp";
475 video::ITexture* t = driver->getTexture( tmp );
476 textures.push_back(t);
477 }
478
479 anim = sm->createTextureAnimator(textures, 100);
480
481 // create portals
482
483 scene::IBillboardSceneNode* bill = 0;
484
485 for (int r=0; r<2; ++r)
486 {
487 bill = sm->addBillboardSceneNode(0, core::dimension2d<f32>(100,100),
488 waypoint[r]+ core::vector3df(0,20,0));
489 bill->setMaterialFlag(video::EMF_LIGHTING, false);
490 bill->setMaterialTexture(0, driver->getTexture("../../media/portal1.bmp"));
491 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
492 bill->addAnimator(anim);
493 }
494
495 anim->drop();
496
497 // create cirlce flying dynamic light with transparent billboard attached
498
499 scene::ILightSceneNode* light = 0;
500
501 light = sm->addLightSceneNode(0,
502 core::vector3df(0,0,0), video::SColorf(1.0f, 1.0f, 1.f, 1.0f), 500.f);
503
504 anim = sm->createFlyCircleAnimator(
505 core::vector3df(100,150,80), 80.0f, 0.0005f);
506
507 light->addAnimator(anim);
508 anim->drop();
509
510 bill = device->getSceneManager()->addBillboardSceneNode(
511 light, core::dimension2d<f32>(40,40));
512 bill->setMaterialFlag(video::EMF_LIGHTING, false);
513 bill->setMaterialTexture(0, driver->getTexture("../../media/particlewhite.bmp"));
514 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
515
516 // create meta triangle selector with all triangles selectors in it.
517 metaSelector = sm->createMetaTriangleSelector();
518 metaSelector->addTriangleSelector(mapSelector);
519
520 // create camp fire
521
522 campFire = sm->addParticleSystemSceneNode(false);
523 campFire->setPosition(core::vector3df(100,120,600));
524 campFire->setScale(core::vector3df(2,2,2));
525
526 scene::IParticleEmitter* em = campFire->createBoxEmitter(
527 core::aabbox3d<f32>(-7,0,-7,7,1,7),
528 core::vector3df(0.0f,0.06f,0.0f),
529 80,100, video::SColor(1,255,255,255),video::SColor(1,255,255,255), 800,2000);
530
531 em->setMinStartSize(core::dimension2d<f32>(20.0f, 10.0f));
532 em->setMaxStartSize(core::dimension2d<f32>(20.0f, 10.0f));
533 campFire->setEmitter(em);
534 em->drop();
535
536 scene::IParticleAffector* paf = campFire->createFadeOutParticleAffector();
537 campFire->addAffector(paf);
538 paf->drop();
539
540 campFire->setMaterialFlag(video::EMF_LIGHTING, false);
541 campFire->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
542 campFire->setMaterialTexture(0, driver->getTexture("../../media/fireball.bmp"));
543 campFire->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
544
545 // load music
546
547 #ifdef USE_IRRKLANG
548 if (music)
549 startIrrKlang();
550 #endif
551 #ifdef USE_SDL_MIXER
552 if (music)
553 startSound();
554 #endif
555}
556
557
558void CDemo::createLoadingScreen()
559{
560 core::dimension2d<u32> size = device->getVideoDriver()->getScreenSize();
561
562 device->getCursorControl()->setVisible(false);
563
564 // setup loading screen
565
566 backColor.set(255,90,90,156);
567
568 // create in fader
569
570 inOutFader = device->getGUIEnvironment()->addInOutFader();
571 inOutFader->setColor(backColor, video::SColor ( 0, 230, 230, 230 ));
572
573 // irrlicht logo
574 device->getGUIEnvironment()->addImage(device->getVideoDriver()->getTexture("../../media/irrlichtlogo2.png"),
575 core::position2d<s32>(5,5));
576
577 // loading text
578
579 const int lwidth = size.Width - 20;
580 const int lheight = 16;
581
582 core::rect<int> pos(10, size.Height-lheight-10, 10+lwidth, size.Height-10);
583
584 device->getGUIEnvironment()->addImage(pos);
585 statusText = device->getGUIEnvironment()->addStaticText(L"Loading...", pos, true);
586 statusText->setOverrideColor(video::SColor(255,205,200,200));
587
588 // load bigger font
589
590 device->getGUIEnvironment()->getSkin()->setFont(
591 device->getGUIEnvironment()->getFont("../../media/fonthaettenschweiler.bmp"));
592
593 // set new font color
594
595 device->getGUIEnvironment()->getSkin()->setColor(gui::EGDC_BUTTON_TEXT,
596 video::SColor(255,100,100,100));
597}
598
599
600void CDemo::shoot()
601{
602 scene::ISceneManager* sm = device->getSceneManager();
603 scene::ICameraSceneNode* camera = sm->getActiveCamera();
604
605 if (!camera || !mapSelector)
606 return;
607
608 SParticleImpact imp;
609 imp.when = 0;
610
611 // get line of camera
612
613 core::vector3df start = camera->getPosition();
614 core::vector3df end = (camera->getTarget() - start);
615 end.normalize();
616 start += end*8.0f;
617 end = start + (end * camera->getFarValue());
618
619 core::triangle3df triangle;
620
621 core::line3d<f32> line(start, end);
622
623 // get intersection point with map
624 scene::ISceneNode* hitNode;
625 if (sm->getSceneCollisionManager()->getCollisionPoint(
626 line, mapSelector, end, triangle, hitNode))
627 {
628 // collides with wall
629 core::vector3df out = triangle.getNormal();
630 out.setLength(0.03f);
631
632 imp.when = 1;
633 imp.outVector = out;
634 imp.pos = end;
635 }
636 else
637 {
638 // doesnt collide with wall
639 core::vector3df start = camera->getPosition();
640 core::vector3df end = (camera->getTarget() - start);
641 end.normalize();
642 start += end*8.0f;
643 end = start + (end * camera->getFarValue());
644 }
645
646 // create fire ball
647 scene::ISceneNode* node = 0;
648 node = sm->addBillboardSceneNode(0,
649 core::dimension2d<f32>(25,25), start);
650
651 node->setMaterialFlag(video::EMF_LIGHTING, false);
652 node->setMaterialTexture(0, device->getVideoDriver()->getTexture("../../media/fireball.bmp"));
653 node->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
654
655 f32 length = (f32)(end - start).getLength();
656 const f32 speed = 0.6f;
657 u32 time = (u32)(length / speed);
658
659 scene::ISceneNodeAnimator* anim = 0;
660
661 // set flight line
662
663 anim = sm->createFlyStraightAnimator(start, end, time);
664 node->addAnimator(anim);
665 anim->drop();
666
667 anim = sm->createDeleteAnimator(time);
668 node->addAnimator(anim);
669 anim->drop();
670
671 if (imp.when)
672 {
673 // create impact note
674 imp.when = device->getTimer()->getTime() + (time - 100);
675 Impacts.push_back(imp);
676 }
677
678 // play sound
679 #ifdef USE_IRRKLANG
680 if (ballSound)
681 irrKlang->play2D(ballSound);
682 #endif
683 #ifdef USE_SDL_MIXER
684 if (ballSound)
685 playSound(ballSound);
686 #endif
687}
688
689
690void CDemo::createParticleImpacts()
691{
692 u32 now = device->getTimer()->getTime();
693 scene::ISceneManager* sm = device->getSceneManager();
694
695 for (s32 i=0; i<(s32)Impacts.size(); ++i)
696 if (now > Impacts[i].when)
697 {
698 // create smoke particle system
699 scene::IParticleSystemSceneNode* pas = 0;
700
701 pas = sm->addParticleSystemSceneNode(false, 0, -1, Impacts[i].pos);
702
703 pas->setParticleSize(core::dimension2d<f32>(10.0f, 10.0f));
704
705 scene::IParticleEmitter* em = pas->createBoxEmitter(
706 core::aabbox3d<f32>(-5,-5,-5,5,5,5),
707 Impacts[i].outVector, 20,40, video::SColor(50,255,255,255),video::SColor(50,255,255,255),
708 1200,1600, 20);
709
710 pas->setEmitter(em);
711 em->drop();
712
713 scene::IParticleAffector* paf = campFire->createFadeOutParticleAffector();
714 pas->addAffector(paf);
715 paf->drop();
716
717 pas->setMaterialFlag(video::EMF_LIGHTING, false);
718 pas->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
719 pas->setMaterialTexture(0, device->getVideoDriver()->getTexture("../../media/smoke.bmp"));
720 pas->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
721
722 scene::ISceneNodeAnimator* anim = sm->createDeleteAnimator(2000);
723 pas->addAnimator(anim);
724 anim->drop();
725
726 // play impact sound
727 #ifdef USE_IRRKLANG
728 if (irrKlang)
729 {
730 irrklang::ISound* sound =
731 irrKlang->play3D(impactSound, Impacts[i].pos, false, false, true);
732
733 if (sound)
734 {
735 // adjust max value a bit to make to sound of an impact louder
736 sound->setMinDistance(400);
737 sound->drop();
738 }
739 }
740 #endif
741
742 #ifdef USE_SDL_MIXER
743 if (impactSound)
744 playSound(impactSound);
745 #endif
746
747 // delete entry
748 Impacts.erase(i);
749 i--;
750 }
751}
752
753
754#ifdef USE_IRRKLANG
755void CDemo::startIrrKlang()
756{
757 irrKlang = irrklang::createIrrKlangDevice();
758
759 if (!irrKlang)
760 return;
761
762 // play music
763
764 irrklang::ISound* snd = irrKlang->play2D("../../media/IrrlichtTheme.ogg", true, false, true);
765 if ( !snd )
766 snd = irrKlang->play2D("IrrlichtTheme.ogg", true, false, true);
767
768 if (snd)
769 {
770 snd->setVolume(0.5f); // 50% volume
771 snd->drop();
772 }
773
774 // preload both sound effects
775
776 ballSound = irrKlang->getSoundSource("../../media/ball.wav");
777 impactSound = irrKlang->getSoundSource("../../media/impact.wav");
778}
779#endif
780
781
782#ifdef USE_SDL_MIXER
783void CDemo::startSound()
784{
785 stream = NULL;
786 ballSound = NULL;
787 impactSound = NULL;
788
789 SDL_Init(SDL_INIT_AUDIO);
790
791 if (Mix_OpenAudio(22050, AUDIO_S16, 2, 128))
792 return;
793
794 stream = Mix_LoadMUS("../../media/IrrlichtTheme.ogg");
795 if (stream)
796 Mix_PlayMusic(stream, -1);
797
798 ballSound = Mix_LoadWAV("../../media/ball.wav");
799 impactSound = Mix_LoadWAV("../../media/impact.wav");
800}
801
802void CDemo::playSound(Mix_Chunk *sample)
803{
804 if (sample)
805 Mix_PlayChannel(-1, sample, 0);
806}
807
808void CDemo::pollSound(void)
809{
810 SDL_Event event;
811
812 while (SDL_PollEvent(&event))
813 ;
814}
815#endif
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/CDemo.h b/src/others/irrlicht-1.8.1/examples/Demo/CDemo.h
new file mode 100644
index 0000000..e2c564d
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/CDemo.h
@@ -0,0 +1,110 @@
1// This is a Demo of the Irrlicht Engine (c) 2006 by N.Gebhardt.
2// This file is not documented.
3
4#ifndef __C_DEMO_H_INCLUDED__
5#define __C_DEMO_H_INCLUDED__
6
7//#define USE_IRRKLANG
8//#define USE_SDL_MIXER
9
10#include <irrlicht.h>
11
12#ifdef _IRR_WINDOWS_
13#include <windows.h>
14#endif
15
16using namespace irr;
17
18// audio support
19
20#ifdef USE_IRRKLANG
21 #include <irrKlang.h> // problem here? go to http://www.ambiera.com/irrklang and download
22 // the irrKlang library or undefine USE_IRRKLANG at the beginning
23 // of this file.
24 #ifdef _IRR_WINDOWS_
25 #pragma comment (lib, "irrKlang.lib")
26 #endif
27#endif
28#ifdef USE_SDL_MIXER
29 # include <SDL/SDL.h>
30 # include <SDL/SDL_mixer.h>
31#endif
32
33const int CAMERA_COUNT = 7;
34
35class CDemo : public IEventReceiver
36{
37public:
38
39 CDemo(bool fullscreen, bool music, bool shadows, bool additive, bool vsync, bool aa, video::E_DRIVER_TYPE driver);
40
41 ~CDemo();
42
43 void run();
44
45 virtual bool OnEvent(const SEvent& event);
46
47private:
48
49 void createLoadingScreen();
50 void loadSceneData();
51 void switchToNextScene();
52 void shoot();
53 void createParticleImpacts();
54
55 bool fullscreen;
56 bool music;
57 bool shadows;
58 bool additive;
59 bool vsync;
60 bool aa;
61 video::E_DRIVER_TYPE driverType;
62 IrrlichtDevice *device;
63
64#ifdef USE_IRRKLANG
65 void startIrrKlang();
66 irrklang::ISoundEngine* irrKlang;
67 irrklang::ISoundSource* ballSound;
68 irrklang::ISoundSource* impactSound;
69#endif
70
71#ifdef USE_SDL_MIXER
72 void startSound();
73 void playSound(Mix_Chunk *);
74 void pollSound();
75 Mix_Music *stream;
76 Mix_Chunk *ballSound;
77 Mix_Chunk *impactSound;
78#endif
79
80 struct SParticleImpact
81 {
82 u32 when;
83 core::vector3df pos;
84 core::vector3df outVector;
85 };
86
87 int currentScene;
88 video::SColor backColor;
89
90 gui::IGUIStaticText* statusText;
91 gui::IGUIInOutFader* inOutFader;
92
93 scene::IQ3LevelMesh* quakeLevelMesh;
94 scene::ISceneNode* quakeLevelNode;
95 scene::ISceneNode* skyboxNode;
96 scene::IAnimatedMeshSceneNode* model1;
97 scene::IAnimatedMeshSceneNode* model2;
98 scene::IParticleSystemSceneNode* campFire;
99
100 scene::IMetaTriangleSelector* metaSelector;
101 scene::ITriangleSelector* mapSelector;
102
103 s32 sceneStartTime;
104 s32 timeForThisScene;
105
106 core::array<SParticleImpact> Impacts;
107};
108
109#endif
110
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.cpp b/src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.cpp
new file mode 100644
index 0000000..aa963e5
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.cpp
@@ -0,0 +1,378 @@
1// This is a Demo of the Irrlicht Engine (c) 2005-2009 by N.Gebhardt.
2// This file is not documented.
3
4#include "CMainMenu.h"
5
6
7
8CMainMenu::CMainMenu()
9: startButton(0), MenuDevice(0), selected(2), start(false), fullscreen(true),
10 music(true), shadows(false), additive(false), transparent(true), vsync(false), aa(false)
11{
12}
13
14
15bool CMainMenu::run(bool& outFullscreen, bool& outMusic, bool& outShadows,
16 bool& outAdditive, bool& outVSync, bool& outAA,
17 video::E_DRIVER_TYPE& outDriver)
18{
19 //video::E_DRIVER_TYPE driverType = video::EDT_DIRECT3D9;
20 //video::E_DRIVER_TYPE driverType = video::EDT_OPENGL;
21 video::E_DRIVER_TYPE driverType = video::EDT_BURNINGSVIDEO;
22 //video::E_DRIVER_TYPE driverType = video::EDT_SOFTWARE;
23
24 MenuDevice = createDevice(driverType,
25 core::dimension2d<u32>(512, 384), 16, false, false, false, this);
26
27 if (MenuDevice->getFileSystem()->existFile("irrlicht.dat"))
28 MenuDevice->getFileSystem()->addFileArchive("irrlicht.dat");
29 else
30 MenuDevice->getFileSystem()->addFileArchive("../../media/irrlicht.dat");
31
32 video::IVideoDriver* driver = MenuDevice->getVideoDriver();
33 scene::ISceneManager* smgr = MenuDevice->getSceneManager();
34 gui::IGUIEnvironment* guienv = MenuDevice->getGUIEnvironment();
35
36 core::stringw str = "Irrlicht Engine Demo v";
37 str += MenuDevice->getVersion();
38 MenuDevice->setWindowCaption(str.c_str());
39
40 // set new Skin
41 gui::IGUISkin* newskin = guienv->createSkin(gui::EGST_BURNING_SKIN);
42 guienv->setSkin(newskin);
43 newskin->drop();
44
45 // load font
46 gui::IGUIFont* font = guienv->getFont("../../media/fonthaettenschweiler.bmp");
47 if (font)
48 guienv->getSkin()->setFont(font);
49
50 // add images
51
52 const s32 leftX = 260;
53
54 // add tab control
55 gui::IGUITabControl* tabctrl = guienv->addTabControl(core::rect<int>(leftX,10,512-10,384-10),
56 0, true, true);
57 gui::IGUITab* optTab = tabctrl->addTab(L"Demo");
58 gui::IGUITab* aboutTab = tabctrl->addTab(L"About");
59
60 // add list box
61
62 gui::IGUIListBox* box = guienv->addListBox(core::rect<int>(10,10,220,120), optTab, 1);
63 box->addItem(L"OpenGL 1.5");
64 box->addItem(L"Direct3D 8.1");
65 box->addItem(L"Direct3D 9.0c");
66 box->addItem(L"Burning's Video 0.47");
67 box->addItem(L"Irrlicht Software Renderer 1.0");
68 box->setSelected(selected);
69
70 // add button
71
72 startButton = guienv->addButton(core::rect<int>(30,295,200,324), optTab, 2, L"Start Demo");
73
74 // add checkbox
75
76 const s32 d = 50;
77
78 guienv->addCheckBox(fullscreen, core::rect<int>(20,85+d,130,110+d),
79 optTab, 3, L"Fullscreen");
80 guienv->addCheckBox(music, core::rect<int>(135,85+d,245,110+d),
81 optTab, 4, L"Music & Sfx");
82 guienv->addCheckBox(shadows, core::rect<int>(20,110+d,135,135+d),
83 optTab, 5, L"Realtime shadows");
84 guienv->addCheckBox(additive, core::rect<int>(20,135+d,230,160+d),
85 optTab, 6, L"Old HW compatible blending");
86 guienv->addCheckBox(vsync, core::rect<int>(20,160+d,230,185+d),
87 optTab, 7, L"Vertical synchronisation");
88 guienv->addCheckBox(aa, core::rect<int>(20,185+d,230,210+d),
89 optTab, 8, L"Antialiasing");
90
91 // add about text
92
93 const wchar_t* text2 = L"This is the tech demo of the Irrlicht engine. To start, "\
94 L"select a video driver which works best with your hardware and press 'Start Demo'.\n"\
95 L"What you currently see is displayed using the Burning Software Renderer (Thomas Alten).\n"\
96 L"The Irrlicht Engine was written by me, Nikolaus Gebhardt. The models, "\
97 L"maps and textures were placed at my disposal by B.Collins, M.Cook and J.Marton. The music was created by "\
98 L"M.Rohde and is played back by irrKlang.\n"\
99 L"For more informations, please visit the homepage of the Irrlicht engine:\nhttp://irrlicht.sourceforge.net";
100
101 guienv->addStaticText(text2, core::rect<int>(10, 10, 230, 320),
102 true, true, aboutTab);
103
104 // add md2 model
105
106 scene::IAnimatedMesh* mesh = smgr->getMesh("../../media/faerie.md2");
107 scene::IAnimatedMeshSceneNode* modelNode = smgr->addAnimatedMeshSceneNode(mesh);
108 if (modelNode)
109 {
110 modelNode->setPosition( core::vector3df(0.f, 0.f, -5.f) );
111 modelNode->setMaterialTexture(0, driver->getTexture("../../media/faerie2.bmp"));
112 modelNode->setMaterialFlag(video::EMF_LIGHTING, true);
113 modelNode->getMaterial(0).Shininess = 50.f;
114 modelNode->getMaterial(0).NormalizeNormals = true;
115 modelNode->setMD2Animation(scene::EMAT_STAND);
116 }
117
118 // set ambient light (no sun light in the catacombs)
119 smgr->setAmbientLight( video::SColorf(0.2f, 0.2f, 0.2f) );
120
121 scene::ILightSceneNode *light;
122 scene::ISceneNodeAnimator* anim;
123 scene::ISceneNode* bill;
124
125 enum eLightParticle
126 {
127 LIGHT_NONE,
128 LIGHT_GLOBAL,
129 LIGHT_RED,
130 LIGHT_BLUE
131 };
132 core::vector3df lightDir[2] = {
133 core::vector3df(0.f, 0.1f, 0.4f),
134 core::vector3df(0.f, 0.1f, -0.4f),
135 };
136
137 struct SLightParticle
138 {
139 eLightParticle type;
140 u32 dir;
141 };
142 const SLightParticle lightParticle[] =
143 {
144 //LIGHT_GLOBAL,0,
145 {LIGHT_RED,0},
146 {LIGHT_BLUE,0},
147 {LIGHT_RED,1},
148 {LIGHT_BLUE,1},
149 {LIGHT_NONE,0}
150 };
151
152 const SLightParticle *l = lightParticle;
153 while ( l->type != LIGHT_NONE )
154 {
155 switch ( l->type )
156 {
157 case LIGHT_GLOBAL:
158 // add illumination from the background
159 light = smgr->addLightSceneNode(0, core::vector3df(10.f,40.f,-5.f),
160 video::SColorf(0.2f, 0.2f, 0.2f), 90.f);
161 break;
162 case LIGHT_RED:
163 // add light nearly red
164 light = smgr->addLightSceneNode(0, core::vector3df(0,1,0),
165 video::SColorf(0.8f, 0.f, 0.f, 0.0f), 30.0f);
166 // attach red billboard to the light
167 bill = smgr->addBillboardSceneNode(light, core::dimension2d<f32>(10, 10));
168 if ( bill )
169 {
170 bill->setMaterialFlag(video::EMF_LIGHTING, false);
171 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
172 bill->setMaterialTexture(0, driver->getTexture("../../media/particlered.bmp"));
173 }
174 // add fly circle animator to the light
175 anim = smgr->createFlyCircleAnimator(core::vector3df(0.f,0.f,-5.f),20.f,
176 0.002f, lightDir [l->dir] );
177 light->addAnimator(anim);
178 anim->drop();
179 break;
180 case LIGHT_BLUE:
181 // add light nearly blue
182 light = smgr->addLightSceneNode(0, core::vector3df(0,1,0),
183 video::SColorf(0.f, 0.0f, 0.8f, 0.0f), 30.0f);
184 // attach blue billboard to the light
185 bill = smgr->addBillboardSceneNode(light, core::dimension2d<f32>(10, 10));
186 if (bill)
187 {
188 bill->setMaterialFlag(video::EMF_LIGHTING, false);
189 bill->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
190 bill->setMaterialTexture(0, driver->getTexture("../../media/portal1.bmp"));
191 }
192 // add fly circle animator to the light
193 anim = smgr->createFlyCircleAnimator(core::vector3df(0.f,0.f,-5.f),20.f,
194 -0.002f, lightDir [l->dir], 0.5f);
195 light->addAnimator(anim);
196 anim->drop();
197 break;
198 case LIGHT_NONE:
199 break;
200 }
201 l += 1;
202 }
203
204 // create a fixed camera
205 smgr->addCameraSceneNode(0, core::vector3df(45,0,0), core::vector3df(0,0,10));
206
207
208 // irrlicht logo and background
209 // add irrlicht logo
210 bool oldMipMapState = driver->getTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS);
211 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
212
213 guienv->addImage(driver->getTexture("../../media/irrlichtlogo3.png"),
214 core::position2d<s32>(5,5));
215
216 video::ITexture* irrlichtBack = driver->getTexture("../../media/demoback.jpg");
217
218 driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, oldMipMapState);
219
220 // query original skin color
221 getOriginalSkinColor();
222
223 // set transparency
224 setTransparency();
225
226 // draw all
227
228 while(MenuDevice->run())
229 {
230 if (MenuDevice->isWindowActive())
231 {
232 driver->beginScene(false, true, video::SColor(0,0,0,0));
233
234 if (irrlichtBack)
235 driver->draw2DImage(irrlichtBack,
236 core::position2d<int>(0,0));
237
238 smgr->drawAll();
239 guienv->drawAll();
240 driver->endScene();
241 }
242 }
243
244 MenuDevice->drop();
245
246 outFullscreen = fullscreen;
247 outMusic = music;
248 outShadows = shadows;
249 outAdditive = additive;
250 outVSync = vsync;
251 outAA = aa;
252
253 switch(selected)
254 {
255 case 0: outDriver = video::EDT_OPENGL; break;
256 case 1: outDriver = video::EDT_DIRECT3D8; break;
257 case 2: outDriver = video::EDT_DIRECT3D9; break;
258 case 3: outDriver = video::EDT_BURNINGSVIDEO; break;
259 case 4: outDriver = video::EDT_SOFTWARE; break;
260 }
261
262 return start;
263}
264
265
266bool CMainMenu::OnEvent(const SEvent& event)
267{
268 if (event.EventType == EET_KEY_INPUT_EVENT &&
269 event.KeyInput.Key == KEY_F9 &&
270 event.KeyInput.PressedDown == false)
271 {
272 video::IImage* image = MenuDevice->getVideoDriver()->createScreenShot();
273 if (image)
274 {
275 MenuDevice->getVideoDriver()->writeImageToFile(image, "screenshot_main.jpg");
276 image->drop();
277 }
278 }
279 else
280 if (event.EventType == irr::EET_MOUSE_INPUT_EVENT &&
281 event.MouseInput.Event == EMIE_RMOUSE_LEFT_UP )
282 {
283 core::rect<s32> r(event.MouseInput.X, event.MouseInput.Y, 0, 0);
284 gui::IGUIContextMenu* menu = MenuDevice->getGUIEnvironment()->addContextMenu(r, 0, 45);
285 menu->addItem(L"transparent menus", 666, transparent == false);
286 menu->addItem(L"solid menus", 666, transparent == true);
287 menu->addSeparator();
288 menu->addItem(L"Cancel");
289 }
290 else
291 if (event.EventType == EET_GUI_EVENT)
292 {
293 s32 id = event.GUIEvent.Caller->getID();
294 switch(id)
295 {
296 case 45: // context menu
297 if (event.GUIEvent.EventType == gui::EGET_MENU_ITEM_SELECTED)
298 {
299 s32 s = ((gui::IGUIContextMenu*)event.GUIEvent.Caller)->getSelectedItem();
300 if (s == 0 || s == 1)
301 {
302 transparent = !transparent;
303 setTransparency();
304 }
305 }
306 break;
307 case 1:
308 if (event.GUIEvent.EventType == gui::EGET_LISTBOX_CHANGED ||
309 event.GUIEvent.EventType == gui::EGET_LISTBOX_SELECTED_AGAIN)
310 {
311 selected = ((gui::IGUIListBox*)event.GUIEvent.Caller)->getSelected();
312 //startButton->setEnabled(selected != 4);
313 startButton->setEnabled(true);
314 }
315 break;
316 case 2:
317 if (event.GUIEvent.EventType == gui::EGET_BUTTON_CLICKED )
318 {
319 MenuDevice->closeDevice();
320 start = true;
321 }
322 case 3:
323 if (event.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
324 fullscreen = ((gui::IGUICheckBox*)event.GUIEvent.Caller)->isChecked();
325 break;
326 case 4:
327 if (event.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
328 music = ((gui::IGUICheckBox*)event.GUIEvent.Caller)->isChecked();
329 break;
330 case 5:
331 if (event.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
332 shadows = ((gui::IGUICheckBox*)event.GUIEvent.Caller)->isChecked();
333 break;
334 case 6:
335 if (event.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
336 additive = ((gui::IGUICheckBox*)event.GUIEvent.Caller)->isChecked();
337 break;
338 case 7:
339 if (event.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
340 vsync = ((gui::IGUICheckBox*)event.GUIEvent.Caller)->isChecked();
341 break;
342 case 8:
343 if (event.GUIEvent.EventType == gui::EGET_CHECKBOX_CHANGED )
344 aa = ((gui::IGUICheckBox*)event.GUIEvent.Caller)->isChecked();
345 break;
346 }
347 }
348
349 return false;
350}
351
352
353void CMainMenu::getOriginalSkinColor()
354{
355 irr::gui::IGUISkin * skin = MenuDevice->getGUIEnvironment()->getSkin();
356 for (s32 i=0; i<gui::EGDC_COUNT ; ++i)
357 {
358 SkinColor[i] = skin->getColor( (gui::EGUI_DEFAULT_COLOR)i );
359 }
360
361}
362
363
364void CMainMenu::setTransparency()
365{
366 irr::gui::IGUISkin * skin = MenuDevice->getGUIEnvironment()->getSkin();
367
368 for (u32 i=0; i<gui::EGDC_COUNT ; ++i)
369 {
370 video::SColor col = SkinColor[i];
371
372 if (false == transparent)
373 col.setAlpha(255);
374
375 skin->setColor((gui::EGUI_DEFAULT_COLOR)i, col);
376 }
377}
378
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.h b/src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.h
new file mode 100644
index 0000000..06a0d04
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/CMainMenu.h
@@ -0,0 +1,48 @@
1// This is a Demo of the Irrlicht Engine (c) 2005 by N.Gebhardt.
2// This file is not documentated.
3
4#ifndef __C_MAIN_MENU_H_INCLUDED__
5#define __C_MAIN_MENU_H_INCLUDED__
6
7#include <irrlicht.h>
8
9using namespace irr;
10
11class CMainMenu : public IEventReceiver
12{
13public:
14
15 CMainMenu();
16
17 bool run(bool& outFullscreen, bool& outMusic, bool& outShadows,
18 bool& outAdditive, bool &outVSync, bool& outAA,
19 video::E_DRIVER_TYPE& outDriver);
20
21 virtual bool OnEvent(const SEvent& event);
22
23private:
24
25 void setTransparency();
26
27 gui::IGUIButton* startButton;
28 IrrlichtDevice *MenuDevice;
29 s32 selected;
30 bool start;
31 bool fullscreen;
32 bool music;
33 bool shadows;
34 bool additive;
35 bool transparent;
36 bool vsync;
37 bool aa;
38
39 scene::IAnimatedMesh* quakeLevel;
40 scene::ISceneNode* lightMapNode;
41 scene::ISceneNode* dynamicNode;
42
43 video::SColor SkinColor [ gui::EGDC_COUNT ];
44 void getOriginalSkinColor();
45};
46
47#endif
48
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/Demo.vcproj b/src/others/irrlicht-1.8.1/examples/Demo/Demo.vcproj
new file mode 100644
index 0000000..fe55b37
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/Demo.vcproj
@@ -0,0 +1,223 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="7.10"
5 Name="Demo"
6 ProjectGUID="{6F076455-D955-45D4-9C68-4AD4E45F2D47}"
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;_WINDOWS"
28 StringPooling="TRUE"
29 RuntimeLibrary="4"
30 EnableFunctionLevelLinking="TRUE"
31 UsePrecompiledHeader="2"
32 PrecompiledHeaderFile=".\Release/Demo.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\Demo.exe"
44 LinkIncremental="0"
45 SuppressStartupBanner="TRUE"
46 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
47 ProgramDatabaseFile=".\Release/Demo.pdb"
48 SubSystem="2"
49 TargetMachine="1"/>
50 <Tool
51 Name="VCMIDLTool"
52 PreprocessorDefinitions="NDEBUG"
53 MkTypLibCompatible="TRUE"
54 SuppressStartupBanner="TRUE"
55 TargetEnvironment="1"
56 TypeLibraryName=".\Release/Demo.tlb"
57 HeaderFileName=""/>
58 <Tool
59 Name="VCPostBuildEventTool"/>
60 <Tool
61 Name="VCPreBuildEventTool"/>
62 <Tool
63 Name="VCPreLinkEventTool"/>
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="NDEBUG"
67 Culture="3079"/>
68 <Tool
69 Name="VCWebServiceProxyGeneratorTool"/>
70 <Tool
71 Name="VCXMLDataGeneratorTool"/>
72 <Tool
73 Name="VCWebDeploymentTool"/>
74 <Tool
75 Name="VCManagedWrapperGeneratorTool"/>
76 <Tool
77 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
78 </Configuration>
79 <Configuration
80 Name="Debug|Win32"
81 OutputDirectory=".\Debug"
82 IntermediateDirectory=".\Debug"
83 ConfigurationType="1"
84 UseOfMFC="0"
85 ATLMinimizesCRunTimeLibraryUsage="FALSE"
86 CharacterSet="2">
87 <Tool
88 Name="VCCLCompilerTool"
89 Optimization="0"
90 AdditionalIncludeDirectories="..\..\include"
91 PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
92 BasicRuntimeChecks="3"
93 RuntimeLibrary="5"
94 UsePrecompiledHeader="2"
95 PrecompiledHeaderFile=".\Debug/Demo.pch"
96 AssemblerListingLocation=".\Debug/"
97 ObjectFile=".\Debug/"
98 ProgramDataBaseFileName=".\Debug/"
99 WarningLevel="3"
100 SuppressStartupBanner="TRUE"
101 DebugInformationFormat="4"
102 CompileAs="0"/>
103 <Tool
104 Name="VCCustomBuildTool"/>
105 <Tool
106 Name="VCLinkerTool"
107 OutputFile="..\..\bin\Win32-VisualStudio\Demo.exe"
108 LinkIncremental="0"
109 SuppressStartupBanner="TRUE"
110 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
111 GenerateDebugInformation="TRUE"
112 ProgramDatabaseFile=".\Debug/Demo.pdb"
113 SubSystem="2"
114 TargetMachine="1"/>
115 <Tool
116 Name="VCMIDLTool"
117 PreprocessorDefinitions="_DEBUG"
118 MkTypLibCompatible="TRUE"
119 SuppressStartupBanner="TRUE"
120 TargetEnvironment="1"
121 TypeLibraryName=".\Debug/Demo.tlb"
122 HeaderFileName=""/>
123 <Tool
124 Name="VCPostBuildEventTool"/>
125 <Tool
126 Name="VCPreBuildEventTool"/>
127 <Tool
128 Name="VCPreLinkEventTool"/>
129 <Tool
130 Name="VCResourceCompilerTool"
131 PreprocessorDefinitions="_DEBUG"
132 Culture="3079"/>
133 <Tool
134 Name="VCWebServiceProxyGeneratorTool"/>
135 <Tool
136 Name="VCXMLDataGeneratorTool"/>
137 <Tool
138 Name="VCWebDeploymentTool"/>
139 <Tool
140 Name="VCManagedWrapperGeneratorTool"/>
141 <Tool
142 Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
143 </Configuration>
144 </Configurations>
145 <References>
146 </References>
147 <Files>
148 <File
149 RelativePath="CDemo.cpp">
150 <FileConfiguration
151 Name="Release|Win32">
152 <Tool
153 Name="VCCLCompilerTool"
154 Optimization="2"
155 AdditionalIncludeDirectories=""
156 PreprocessorDefinitions=""/>
157 </FileConfiguration>
158 <FileConfiguration
159 Name="Debug|Win32">
160 <Tool
161 Name="VCCLCompilerTool"
162 Optimization="0"
163 AdditionalIncludeDirectories=""
164 PreprocessorDefinitions=""
165 BasicRuntimeChecks="3"/>
166 </FileConfiguration>
167 </File>
168 <File
169 RelativePath="CDemo.h">
170 </File>
171 <File
172 RelativePath="CMainMenu.cpp">
173 <FileConfiguration
174 Name="Release|Win32">
175 <Tool
176 Name="VCCLCompilerTool"
177 Optimization="2"
178 AdditionalIncludeDirectories=""
179 PreprocessorDefinitions=""/>
180 </FileConfiguration>
181 <FileConfiguration
182 Name="Debug|Win32">
183 <Tool
184 Name="VCCLCompilerTool"
185 Optimization="0"
186 AdditionalIncludeDirectories=""
187 PreprocessorDefinitions=""
188 BasicRuntimeChecks="3"/>
189 </FileConfiguration>
190 </File>
191 <File
192 RelativePath="CMainMenu.h">
193 </File>
194 <File
195 RelativePath="icon.ico">
196 </File>
197 <File
198 RelativePath="main.cpp">
199 <FileConfiguration
200 Name="Release|Win32">
201 <Tool
202 Name="VCCLCompilerTool"
203 Optimization="2"
204 AdditionalIncludeDirectories=""
205 PreprocessorDefinitions=""/>
206 </FileConfiguration>
207 <FileConfiguration
208 Name="Debug|Win32">
209 <Tool
210 Name="VCCLCompilerTool"
211 Optimization="0"
212 AdditionalIncludeDirectories=""
213 PreprocessorDefinitions=""
214 BasicRuntimeChecks="3"/>
215 </FileConfiguration>
216 </File>
217 <File
218 RelativePath="resscript.rc">
219 </File>
220 </Files>
221 <Globals>
222 </Globals>
223</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc10.vcxproj b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc10.vcxproj
new file mode 100644
index 0000000..73b5a2f
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc10.vcxproj
@@ -0,0 +1,279 @@
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 <ProjectGuid>{6F076455-D955-45D4-9C68-4AD4E45F2D47}</ProjectGuid>
23 <ProjectName>Demo</ProjectName>
24 </PropertyGroup>
25 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
26 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
27 <ConfigurationType>Application</ConfigurationType>
28 <CharacterSet>MultiByte</CharacterSet>
29 </PropertyGroup>
30 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
31 <ConfigurationType>Application</ConfigurationType>
32 <CharacterSet>MultiByte</CharacterSet>
33 </PropertyGroup>
34 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
35 <ConfigurationType>Application</ConfigurationType>
36 <CharacterSet>MultiByte</CharacterSet>
37 </PropertyGroup>
38 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
39 <ConfigurationType>Application</ConfigurationType>
40 <CharacterSet>MultiByte</CharacterSet>
41 </PropertyGroup>
42 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
43 <ImportGroup Label="ExtensionSettings">
44 </ImportGroup>
45 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
46 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
47 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
48 </ImportGroup>
49 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
50 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
51 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
52 </ImportGroup>
53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
54 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
55 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
56 </ImportGroup>
57 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
58 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
59 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
60 </ImportGroup>
61 <PropertyGroup Label="UserMacros" />
62 <PropertyGroup>
63 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
64 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
65 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
66 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
67 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
68 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
70 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
72 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
73 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
74 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
75 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
76 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
77 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
78 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
79 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
80 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
81 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
82 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
83 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
84 </PropertyGroup>
85 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
86 <Midl>
87 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
88 <MkTypLibCompatible>true</MkTypLibCompatible>
89 <SuppressStartupBanner>true</SuppressStartupBanner>
90 <TargetEnvironment>Win32</TargetEnvironment>
91 <TypeLibraryName>.\Release/Demo.tlb</TypeLibraryName>
92 <HeaderFileName>
93 </HeaderFileName>
94 </Midl>
95 <ClCompile>
96 <Optimization>MaxSpeed</Optimization>
97 <InlineFunctionExpansion>Default</InlineFunctionExpansion>
98 <WholeProgramOptimization>false</WholeProgramOptimization>
99 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
100 <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(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\Demo.exe</OutputFile>
114 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
115 <SubSystem>Windows</SubSystem>
116 <DataExecutionPrevention>
117 </DataExecutionPrevention>
118 </Link>
119 </ItemDefinitionGroup>
120 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
121 <Midl>
122 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
123 <MkTypLibCompatible>true</MkTypLibCompatible>
124 <SuppressStartupBanner>true</SuppressStartupBanner>
125 <TypeLibraryName>.\Release/Demo.tlb</TypeLibraryName>
126 <HeaderFileName>
127 </HeaderFileName>
128 </Midl>
129 <ClCompile>
130 <Optimization>MaxSpeed</Optimization>
131 <InlineFunctionExpansion>Default</InlineFunctionExpansion>
132 <WholeProgramOptimization>false</WholeProgramOptimization>
133 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
134 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(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\Win32-VisualStudio\Demo.exe</OutputFile>
148 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
149 <SubSystem>Windows</SubSystem>
150 <DataExecutionPrevention>
151 </DataExecutionPrevention>
152 </Link>
153 </ItemDefinitionGroup>
154 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
155 <Midl>
156 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
157 <MkTypLibCompatible>true</MkTypLibCompatible>
158 <SuppressStartupBanner>true</SuppressStartupBanner>
159 <TargetEnvironment>Win32</TargetEnvironment>
160 <TypeLibraryName>.\Debug/Demo.tlb</TypeLibraryName>
161 <HeaderFileName>
162 </HeaderFileName>
163 </Midl>
164 <ClCompile>
165 <Optimization>Disabled</Optimization>
166 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
167 <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
168 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
169 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
170 <PrecompiledHeader>
171 </PrecompiledHeader>
172 <WarningLevel>Level3</WarningLevel>
173 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
174 </ClCompile>
175 <ResourceCompile>
176 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
177 <Culture>0x0c07</Culture>
178 </ResourceCompile>
179 <Link>
180 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
181 <GenerateDebugInformation>true</GenerateDebugInformation>
182 <SubSystem>Windows</SubSystem>
183 <DataExecutionPrevention>
184 </DataExecutionPrevention>
185 </Link>
186 </ItemDefinitionGroup>
187 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
188 <Midl>
189 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
190 <MkTypLibCompatible>true</MkTypLibCompatible>
191 <SuppressStartupBanner>true</SuppressStartupBanner>
192 <TypeLibraryName>.\Debug/Demo.tlb</TypeLibraryName>
193 <HeaderFileName>
194 </HeaderFileName>
195 </Midl>
196 <ClCompile>
197 <Optimization>Disabled</Optimization>
198 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
199 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
200 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
201 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
202 <PrecompiledHeader>
203 </PrecompiledHeader>
204 <WarningLevel>Level3</WarningLevel>
205 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
206 </ClCompile>
207 <ResourceCompile>
208 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
209 <Culture>0x0c07</Culture>
210 </ResourceCompile>
211 <Link>
212 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
213 <GenerateDebugInformation>true</GenerateDebugInformation>
214 <SubSystem>Windows</SubSystem>
215 <DataExecutionPrevention>
216 </DataExecutionPrevention>
217 </Link>
218 </ItemDefinitionGroup>
219 <ItemGroup>
220 <ClCompile Include="CDemo.cpp">
221 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
222 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
223 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
224 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
225 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
226 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
227 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
228 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
229 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
230 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
231 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
232 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
233 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
234 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
235 </ClCompile>
236 <ClCompile Include="CMainMenu.cpp">
237 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
238 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
239 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
240 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
241 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
242 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
243 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
244 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
245 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
246 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
247 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
248 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
249 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
250 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
251 </ClCompile>
252 <ClCompile Include="main.cpp">
253 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
254 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
255 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
256 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
257 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
258 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
259 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
260 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
261 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
262 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
263 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
264 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
265 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
266 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
267 </ClCompile>
268 </ItemGroup>
269 <ItemGroup>
270 <ClInclude Include="CDemo.h" />
271 <ClInclude Include="CMainMenu.h" />
272 </ItemGroup>
273 <ItemGroup>
274 <None Include="icon.ico" />
275 </ItemGroup>
276 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
277 <ImportGroup Label="ExtensionTargets">
278 </ImportGroup>
279</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc11.vcxproj b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc11.vcxproj
new file mode 100644
index 0000000..ecb5f33
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc11.vcxproj
@@ -0,0 +1,283 @@
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 <ProjectGuid>{6F076455-D955-45D4-9C68-4AD4E45F2D47}</ProjectGuid>
23 <ProjectName>Demo</ProjectName>
24 </PropertyGroup>
25 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
26 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
27 <ConfigurationType>Application</ConfigurationType>
28 <CharacterSet>MultiByte</CharacterSet>
29 <PlatformToolset>v110</PlatformToolset>
30 </PropertyGroup>
31 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
32 <ConfigurationType>Application</ConfigurationType>
33 <CharacterSet>MultiByte</CharacterSet>
34 <PlatformToolset>v110</PlatformToolset>
35 </PropertyGroup>
36 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
37 <ConfigurationType>Application</ConfigurationType>
38 <CharacterSet>MultiByte</CharacterSet>
39 <PlatformToolset>v110</PlatformToolset>
40 </PropertyGroup>
41 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
42 <ConfigurationType>Application</ConfigurationType>
43 <CharacterSet>MultiByte</CharacterSet>
44 <PlatformToolset>v110</PlatformToolset>
45 </PropertyGroup>
46 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
47 <ImportGroup Label="ExtensionSettings">
48 </ImportGroup>
49 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
50 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
51 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
52 </ImportGroup>
53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
54 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
55 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
56 </ImportGroup>
57 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
58 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
59 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
60 </ImportGroup>
61 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
62 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
63 <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />
64 </ImportGroup>
65 <PropertyGroup Label="UserMacros" />
66 <PropertyGroup>
67 <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
68 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
69 <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
70 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
71 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
72 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\bin\Win32-VisualStudio\</OutDir>
73 <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\bin\Win64-VisualStudio\</OutDir>
74 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
75 <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
76 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
77 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
78 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
79 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
80 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
81 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
82 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
83 <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
84 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
85 <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
86 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
87 <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
88 </PropertyGroup>
89 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
90 <Midl>
91 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
92 <MkTypLibCompatible>true</MkTypLibCompatible>
93 <SuppressStartupBanner>true</SuppressStartupBanner>
94 <TargetEnvironment>Win32</TargetEnvironment>
95 <TypeLibraryName>.\Release/Demo.tlb</TypeLibraryName>
96 <HeaderFileName>
97 </HeaderFileName>
98 </Midl>
99 <ClCompile>
100 <Optimization>MaxSpeed</Optimization>
101 <InlineFunctionExpansion>Default</InlineFunctionExpansion>
102 <WholeProgramOptimization>false</WholeProgramOptimization>
103 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
104 <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(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\Demo.exe</OutputFile>
118 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
119 <SubSystem>Windows</SubSystem>
120 <DataExecutionPrevention>
121 </DataExecutionPrevention>
122 </Link>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
125 <Midl>
126 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
127 <MkTypLibCompatible>true</MkTypLibCompatible>
128 <SuppressStartupBanner>true</SuppressStartupBanner>
129 <TypeLibraryName>.\Release/Demo.tlb</TypeLibraryName>
130 <HeaderFileName>
131 </HeaderFileName>
132 </Midl>
133 <ClCompile>
134 <Optimization>MaxSpeed</Optimization>
135 <InlineFunctionExpansion>Default</InlineFunctionExpansion>
136 <WholeProgramOptimization>false</WholeProgramOptimization>
137 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
138 <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
139 <StringPooling>true</StringPooling>
140 <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
141 <FunctionLevelLinking>true</FunctionLevelLinking>
142 <PrecompiledHeader>
143 </PrecompiledHeader>
144 <WarningLevel>Level3</WarningLevel>
145 </ClCompile>
146 <ResourceCompile>
147 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
148 <Culture>0x0c07</Culture>
149 </ResourceCompile>
150 <Link>
151 <OutputFile>..\..\bin\Win32-VisualStudio\Demo.exe</OutputFile>
152 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
153 <SubSystem>Windows</SubSystem>
154 <DataExecutionPrevention>
155 </DataExecutionPrevention>
156 </Link>
157 </ItemDefinitionGroup>
158 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
159 <Midl>
160 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
161 <MkTypLibCompatible>true</MkTypLibCompatible>
162 <SuppressStartupBanner>true</SuppressStartupBanner>
163 <TargetEnvironment>Win32</TargetEnvironment>
164 <TypeLibraryName>.\Debug/Demo.tlb</TypeLibraryName>
165 <HeaderFileName>
166 </HeaderFileName>
167 </Midl>
168 <ClCompile>
169 <Optimization>Disabled</Optimization>
170 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
171 <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
172 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
173 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
174 <PrecompiledHeader>
175 </PrecompiledHeader>
176 <WarningLevel>Level3</WarningLevel>
177 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
178 </ClCompile>
179 <ResourceCompile>
180 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
181 <Culture>0x0c07</Culture>
182 </ResourceCompile>
183 <Link>
184 <AdditionalLibraryDirectories>..\..\lib\Win32-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
185 <GenerateDebugInformation>true</GenerateDebugInformation>
186 <SubSystem>Windows</SubSystem>
187 <DataExecutionPrevention>
188 </DataExecutionPrevention>
189 </Link>
190 </ItemDefinitionGroup>
191 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
192 <Midl>
193 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
194 <MkTypLibCompatible>true</MkTypLibCompatible>
195 <SuppressStartupBanner>true</SuppressStartupBanner>
196 <TypeLibraryName>.\Debug/Demo.tlb</TypeLibraryName>
197 <HeaderFileName>
198 </HeaderFileName>
199 </Midl>
200 <ClCompile>
201 <Optimization>Disabled</Optimization>
202 <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
203 <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
204 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
205 <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
206 <PrecompiledHeader>
207 </PrecompiledHeader>
208 <WarningLevel>Level3</WarningLevel>
209 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
210 </ClCompile>
211 <ResourceCompile>
212 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
213 <Culture>0x0c07</Culture>
214 </ResourceCompile>
215 <Link>
216 <AdditionalLibraryDirectories>..\..\lib\Win64-visualstudio;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
217 <GenerateDebugInformation>true</GenerateDebugInformation>
218 <SubSystem>Windows</SubSystem>
219 <DataExecutionPrevention>
220 </DataExecutionPrevention>
221 </Link>
222 </ItemDefinitionGroup>
223 <ItemGroup>
224 <ClCompile Include="CDemo.cpp">
225 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
226 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
227 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
228 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
229 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
230 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
231 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
232 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
233 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
234 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
235 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
236 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
237 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
238 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
239 </ClCompile>
240 <ClCompile Include="CMainMenu.cpp">
241 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
242 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
243 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
244 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
245 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
246 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
247 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
248 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
249 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
250 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
251 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
252 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
253 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
254 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
255 </ClCompile>
256 <ClCompile Include="main.cpp">
257 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
258 <Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Disabled</Optimization>
259 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
260 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
261 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
262 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
263 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
264 <BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">EnableFastChecks</BasicRuntimeChecks>
265 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
266 <Optimization Condition="'$(Configuration)|$(Platform)'=='Release|x64'">MaxSpeed</Optimization>
267 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
268 <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
269 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
270 <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
271 </ClCompile>
272 </ItemGroup>
273 <ItemGroup>
274 <ClInclude Include="CDemo.h" />
275 <ClInclude Include="CMainMenu.h" />
276 </ItemGroup>
277 <ItemGroup>
278 <None Include="icon.ico" />
279 </ItemGroup>
280 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
281 <ImportGroup Label="ExtensionTargets">
282 </ImportGroup>
283</Project> \ No newline at end of file
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc8.vcproj b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc8.vcproj
new file mode 100644
index 0000000..5504310
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc8.vcproj
@@ -0,0 +1,300 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8.00"
5 Name="Demo_vc8"
6 ProjectGUID="{6F076455-D955-45D4-9C68-4AD4E45F2D47}"
7 >
8 <Platforms>
9 <Platform
10 Name="Win32"
11 />
12 </Platforms>
13 <ToolFiles>
14 </ToolFiles>
15 <Configurations>
16 <Configuration
17 Name="Release|Win32"
18 OutputDirectory=".\Release"
19 IntermediateDirectory=".\Release"
20 ConfigurationType="1"
21 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
22 UseOfMFC="0"
23 ATLMinimizesCRunTimeLibraryUsage="false"
24 CharacterSet="2"
25 >
26 <Tool
27 Name="VCPreBuildEventTool"
28 />
29 <Tool
30 Name="VCCustomBuildTool"
31 />
32 <Tool
33 Name="VCXMLDataGeneratorTool"
34 />
35 <Tool
36 Name="VCWebServiceProxyGeneratorTool"
37 />
38 <Tool
39 Name="VCMIDLTool"
40 PreprocessorDefinitions="NDEBUG"
41 MkTypLibCompatible="true"
42 SuppressStartupBanner="true"
43 TargetEnvironment="1"
44 TypeLibraryName=".\Release/Demo.tlb"
45 HeaderFileName=""
46 />
47 <Tool
48 Name="VCCLCompilerTool"
49 Optimization="2"
50 InlineFunctionExpansion="1"
51 AdditionalIncludeDirectories="..\..\include"
52 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
53 StringPooling="true"
54 RuntimeLibrary="0"
55 EnableFunctionLevelLinking="true"
56 UsePrecompiledHeader="0"
57 PrecompiledHeaderFile=".\Release/Demo.pch"
58 AssemblerListingLocation=".\Release/"
59 ObjectFile=".\Release/"
60 ProgramDataBaseFileName=".\Release/"
61 WarningLevel="3"
62 SuppressStartupBanner="true"
63 CompileAs="0"
64 />
65 <Tool
66 Name="VCManagedResourceCompilerTool"
67 />
68 <Tool
69 Name="VCResourceCompilerTool"
70 PreprocessorDefinitions="NDEBUG"
71 Culture="3079"
72 />
73 <Tool
74 Name="VCPreLinkEventTool"
75 />
76 <Tool
77 Name="VCLinkerTool"
78 OutputFile="..\..\bin\Win32-VisualStudio\Demo.exe"
79 LinkIncremental="0"
80 SuppressStartupBanner="true"
81 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
82 ProgramDatabaseFile=".\Release/Demo.pdb"
83 SubSystem="2"
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="VCWebDeploymentTool"
106 />
107 <Tool
108 Name="VCPostBuildEventTool"
109 />
110 </Configuration>
111 <Configuration
112 Name="Debug|Win32"
113 OutputDirectory=".\Debug"
114 IntermediateDirectory=".\Debug"
115 ConfigurationType="1"
116 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
117 UseOfMFC="0"
118 ATLMinimizesCRunTimeLibraryUsage="false"
119 CharacterSet="2"
120 >
121 <Tool
122 Name="VCPreBuildEventTool"
123 />
124 <Tool
125 Name="VCCustomBuildTool"
126 />
127 <Tool
128 Name="VCXMLDataGeneratorTool"
129 />
130 <Tool
131 Name="VCWebServiceProxyGeneratorTool"
132 />
133 <Tool
134 Name="VCMIDLTool"
135 PreprocessorDefinitions="_DEBUG"
136 MkTypLibCompatible="true"
137 SuppressStartupBanner="true"
138 TargetEnvironment="1"
139 TypeLibraryName=".\Debug/Demo.tlb"
140 HeaderFileName=""
141 />
142 <Tool
143 Name="VCCLCompilerTool"
144 Optimization="0"
145 AdditionalIncludeDirectories="..\..\include"
146 PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
147 BasicRuntimeChecks="3"
148 RuntimeLibrary="1"
149 UsePrecompiledHeader="0"
150 PrecompiledHeaderFile=".\Debug/Demo.pch"
151 AssemblerListingLocation=".\Debug/"
152 ObjectFile=".\Debug/"
153 ProgramDataBaseFileName=".\Debug/"
154 WarningLevel="3"
155 SuppressStartupBanner="true"
156 DebugInformationFormat="4"
157 CompileAs="0"
158 />
159 <Tool
160 Name="VCManagedResourceCompilerTool"
161 />
162 <Tool
163 Name="VCResourceCompilerTool"
164 PreprocessorDefinitions="_DEBUG"
165 Culture="3079"
166 />
167 <Tool
168 Name="VCPreLinkEventTool"
169 />
170 <Tool
171 Name="VCLinkerTool"
172 OutputFile="..\..\bin\Win32-VisualStudio\Demo.exe"
173 LinkIncremental="0"
174 SuppressStartupBanner="true"
175 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
176 GenerateDebugInformation="true"
177 ProgramDatabaseFile=".\Debug/Demo.pdb"
178 SubSystem="2"
179 TargetMachine="1"
180 />
181 <Tool
182 Name="VCALinkTool"
183 />
184 <Tool
185 Name="VCManifestTool"
186 />
187 <Tool
188 Name="VCXDCMakeTool"
189 />
190 <Tool
191 Name="VCBscMakeTool"
192 />
193 <Tool
194 Name="VCFxCopTool"
195 />
196 <Tool
197 Name="VCAppVerifierTool"
198 />
199 <Tool
200 Name="VCWebDeploymentTool"
201 />
202 <Tool
203 Name="VCPostBuildEventTool"
204 />
205 </Configuration>
206 </Configurations>
207 <References>
208 </References>
209 <Files>
210 <File
211 RelativePath="CDemo.cpp"
212 >
213 <FileConfiguration
214 Name="Release|Win32"
215 >
216 <Tool
217 Name="VCCLCompilerTool"
218 Optimization="2"
219 AdditionalIncludeDirectories=""
220 PreprocessorDefinitions=""
221 />
222 </FileConfiguration>
223 <FileConfiguration
224 Name="Debug|Win32"
225 >
226 <Tool
227 Name="VCCLCompilerTool"
228 Optimization="0"
229 AdditionalIncludeDirectories=""
230 PreprocessorDefinitions=""
231 BasicRuntimeChecks="3"
232 />
233 </FileConfiguration>
234 </File>
235 <File
236 RelativePath="CDemo.h"
237 >
238 </File>
239 <File
240 RelativePath="CMainMenu.cpp"
241 >
242 <FileConfiguration
243 Name="Release|Win32"
244 >
245 <Tool
246 Name="VCCLCompilerTool"
247 Optimization="2"
248 AdditionalIncludeDirectories=""
249 PreprocessorDefinitions=""
250 />
251 </FileConfiguration>
252 <FileConfiguration
253 Name="Debug|Win32"
254 >
255 <Tool
256 Name="VCCLCompilerTool"
257 Optimization="0"
258 AdditionalIncludeDirectories=""
259 PreprocessorDefinitions=""
260 BasicRuntimeChecks="3"
261 />
262 </FileConfiguration>
263 </File>
264 <File
265 RelativePath="CMainMenu.h"
266 >
267 </File>
268 <File
269 RelativePath="icon.ico"
270 >
271 </File>
272 <File
273 RelativePath="main.cpp"
274 >
275 <FileConfiguration
276 Name="Release|Win32"
277 >
278 <Tool
279 Name="VCCLCompilerTool"
280 Optimization="2"
281 AdditionalIncludeDirectories=""
282 PreprocessorDefinitions=""
283 />
284 </FileConfiguration>
285 <FileConfiguration
286 Name="Debug|Win32"
287 >
288 <Tool
289 Name="VCCLCompilerTool"
290 Optimization="0"
291 AdditionalIncludeDirectories=""
292 PreprocessorDefinitions=""
293 BasicRuntimeChecks="3"
294 />
295 </FileConfiguration>
296 </File>
297 </Files>
298 <Globals>
299 </Globals>
300</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc9.vcproj b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc9.vcproj
new file mode 100644
index 0000000..e0052aa
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/Demo_vc9.vcproj
@@ -0,0 +1,300 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="9,00"
5 Name="Demo_vc9"
6 ProjectGUID="{6F076455-D955-45D4-9C68-4AD4E45F2D47}"
7 TargetFrameworkVersion="131072"
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 PreprocessorDefinitions="NDEBUG"
42 MkTypLibCompatible="true"
43 SuppressStartupBanner="true"
44 TargetEnvironment="1"
45 TypeLibraryName=".\Release/Demo.tlb"
46 HeaderFileName=""
47 />
48 <Tool
49 Name="VCCLCompilerTool"
50 Optimization="2"
51 InlineFunctionExpansion="0"
52 WholeProgramOptimization="false"
53 AdditionalIncludeDirectories="..\..\include"
54 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
55 StringPooling="true"
56 RuntimeLibrary="0"
57 EnableFunctionLevelLinking="true"
58 UsePrecompiledHeader="0"
59 PrecompiledHeaderFile=".\Release/Demo.pch"
60 AssemblerListingLocation=".\Release/"
61 ObjectFile=".\Release/"
62 ProgramDataBaseFileName=".\Release/"
63 WarningLevel="3"
64 SuppressStartupBanner="true"
65 CompileAs="0"
66 />
67 <Tool
68 Name="VCManagedResourceCompilerTool"
69 />
70 <Tool
71 Name="VCResourceCompilerTool"
72 PreprocessorDefinitions="NDEBUG"
73 Culture="3079"
74 />
75 <Tool
76 Name="VCPreLinkEventTool"
77 />
78 <Tool
79 Name="VCLinkerTool"
80 OutputFile="..\..\bin\Win32-VisualStudio\Demo.exe"
81 LinkIncremental="0"
82 SuppressStartupBanner="true"
83 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
84 ProgramDatabaseFile=".\Release/Demo.pdb"
85 SubSystem="2"
86 RandomizedBaseAddress="1"
87 DataExecutionPrevention="0"
88 TargetMachine="1"
89 />
90 <Tool
91 Name="VCALinkTool"
92 />
93 <Tool
94 Name="VCManifestTool"
95 />
96 <Tool
97 Name="VCXDCMakeTool"
98 />
99 <Tool
100 Name="VCBscMakeTool"
101 />
102 <Tool
103 Name="VCFxCopTool"
104 />
105 <Tool
106 Name="VCAppVerifierTool"
107 />
108 <Tool
109 Name="VCPostBuildEventTool"
110 />
111 </Configuration>
112 <Configuration
113 Name="Debug|Win32"
114 OutputDirectory=".\Debug"
115 IntermediateDirectory=".\Debug"
116 ConfigurationType="1"
117 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
118 UseOfMFC="0"
119 ATLMinimizesCRunTimeLibraryUsage="false"
120 CharacterSet="2"
121 >
122 <Tool
123 Name="VCPreBuildEventTool"
124 />
125 <Tool
126 Name="VCCustomBuildTool"
127 />
128 <Tool
129 Name="VCXMLDataGeneratorTool"
130 />
131 <Tool
132 Name="VCWebServiceProxyGeneratorTool"
133 />
134 <Tool
135 Name="VCMIDLTool"
136 PreprocessorDefinitions="_DEBUG"
137 MkTypLibCompatible="true"
138 SuppressStartupBanner="true"
139 TargetEnvironment="1"
140 TypeLibraryName=".\Debug/Demo.tlb"
141 HeaderFileName=""
142 />
143 <Tool
144 Name="VCCLCompilerTool"
145 Optimization="0"
146 AdditionalIncludeDirectories="..\..\include"
147 PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
148 BasicRuntimeChecks="3"
149 RuntimeLibrary="1"
150 UsePrecompiledHeader="0"
151 PrecompiledHeaderFile=".\Debug/Demo.pch"
152 AssemblerListingLocation=".\Debug/"
153 ObjectFile=".\Debug/"
154 ProgramDataBaseFileName=".\Debug/"
155 WarningLevel="3"
156 SuppressStartupBanner="true"
157 DebugInformationFormat="4"
158 CompileAs="0"
159 />
160 <Tool
161 Name="VCManagedResourceCompilerTool"
162 />
163 <Tool
164 Name="VCResourceCompilerTool"
165 PreprocessorDefinitions="_DEBUG"
166 Culture="3079"
167 />
168 <Tool
169 Name="VCPreLinkEventTool"
170 />
171 <Tool
172 Name="VCLinkerTool"
173 OutputFile="..\..\bin\Win32-VisualStudio\Demo.exe"
174 LinkIncremental="0"
175 SuppressStartupBanner="true"
176 AdditionalLibraryDirectories="..\..\lib\Win32-visualstudio"
177 GenerateDebugInformation="true"
178 ProgramDatabaseFile=".\Debug/Demo.pdb"
179 SubSystem="2"
180 RandomizedBaseAddress="1"
181 DataExecutionPrevention="0"
182 TargetMachine="1"
183 />
184 <Tool
185 Name="VCALinkTool"
186 />
187 <Tool
188 Name="VCManifestTool"
189 />
190 <Tool
191 Name="VCXDCMakeTool"
192 />
193 <Tool
194 Name="VCBscMakeTool"
195 />
196 <Tool
197 Name="VCFxCopTool"
198 />
199 <Tool
200 Name="VCAppVerifierTool"
201 />
202 <Tool
203 Name="VCPostBuildEventTool"
204 />
205 </Configuration>
206 </Configurations>
207 <References>
208 </References>
209 <Files>
210 <File
211 RelativePath="CDemo.cpp"
212 >
213 <FileConfiguration
214 Name="Release|Win32"
215 >
216 <Tool
217 Name="VCCLCompilerTool"
218 Optimization="2"
219 AdditionalIncludeDirectories=""
220 PreprocessorDefinitions=""
221 />
222 </FileConfiguration>
223 <FileConfiguration
224 Name="Debug|Win32"
225 >
226 <Tool
227 Name="VCCLCompilerTool"
228 Optimization="0"
229 AdditionalIncludeDirectories=""
230 PreprocessorDefinitions=""
231 BasicRuntimeChecks="3"
232 />
233 </FileConfiguration>
234 </File>
235 <File
236 RelativePath="CDemo.h"
237 >
238 </File>
239 <File
240 RelativePath="CMainMenu.cpp"
241 >
242 <FileConfiguration
243 Name="Release|Win32"
244 >
245 <Tool
246 Name="VCCLCompilerTool"
247 Optimization="2"
248 AdditionalIncludeDirectories=""
249 PreprocessorDefinitions=""
250 />
251 </FileConfiguration>
252 <FileConfiguration
253 Name="Debug|Win32"
254 >
255 <Tool
256 Name="VCCLCompilerTool"
257 Optimization="0"
258 AdditionalIncludeDirectories=""
259 PreprocessorDefinitions=""
260 BasicRuntimeChecks="3"
261 />
262 </FileConfiguration>
263 </File>
264 <File
265 RelativePath="CMainMenu.h"
266 >
267 </File>
268 <File
269 RelativePath="icon.ico"
270 >
271 </File>
272 <File
273 RelativePath="main.cpp"
274 >
275 <FileConfiguration
276 Name="Release|Win32"
277 >
278 <Tool
279 Name="VCCLCompilerTool"
280 Optimization="2"
281 AdditionalIncludeDirectories=""
282 PreprocessorDefinitions=""
283 />
284 </FileConfiguration>
285 <FileConfiguration
286 Name="Debug|Win32"
287 >
288 <Tool
289 Name="VCCLCompilerTool"
290 Optimization="0"
291 AdditionalIncludeDirectories=""
292 PreprocessorDefinitions=""
293 BasicRuntimeChecks="3"
294 />
295 </FileConfiguration>
296 </File>
297 </Files>
298 <Globals>
299 </Globals>
300</VisualStudioProject>
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/Makefile b/src/others/irrlicht-1.8.1/examples/Demo/Makefile
new file mode 100644
index 0000000..1577ac9
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/Makefile
@@ -0,0 +1,43 @@
1# Irrlicht Engine Demo Makefile
2Target = Demo
3Sources = CDemo.cpp CMainMenu.cpp main.cpp
4
5CPPFLAGS = -I../../include -I/usr/X11R6/include
6CXXFLAGS = -Wall -O3 -ffast-math
7
8ifeq ($(HOSTTYPE), x86_64)
9LIBSELECT=64
10endif
11
12all: all_linux
13
14# target specific settings
15all_linux: SYSTEM=Linux
16all_linux: LDFLAGS = -L/usr/X11R6/lib$(LIBSELECT) -L../../lib/$(SYSTEM) -lIrrlicht -lGL -lXxf86vm -lXext -lX11 -lXcursor
17
18all_win32 clean_win32: SYSTEM=Win32-gcc
19all_win32: LDFLAGS = -L../../lib/$(SYSTEM) -lIrrlicht -lopengl32 -lm
20
21# if you enable sound add the proper library for linking
22#LDFLAGS += -lIrrKlang
23#LDFLAGS += -laudiere
24#LDFLAGS += -lSDL_mixer -lSDL
25
26all_win32 clean_win32: SUF=.exe
27# name of the binary - only valid for targets which set SYSTEM
28DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF)
29
30OBJ = $(Sources:.cpp=.o)
31
32all_linux all_win32: $(OBJ)
33 $(warning Building...)
34 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $^ -o $(DESTPATH) $(LDFLAGS)
35
36clean: clean_linux clean_win32
37 $(warning Cleaning...)
38 @$(RM) $(OBJ)
39
40clean_linux clean_win32:
41 @$(RM) $(DESTPATH)
42
43.PHONY: all all_win32 clean clean_linux clean_win32
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/demo.cbp b/src/others/irrlicht-1.8.1/examples/Demo/demo.cbp
new file mode 100644
index 0000000..4e58305
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/demo.cbp
@@ -0,0 +1,68 @@
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 Tech Demo" />
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\Demo" prefix_auto="0" extension_auto="1" />
12 <Option type="1" />
13 <Option compiler="gcc" />
14 <Option projectResourceIncludeDirsRelation="1" />
15 <Compiler>
16 <Add option="-g" />
17 </Compiler>
18 <Linker>
19 <Add directory="..\..\lib\Win32-gcc" />
20 </Linker>
21 </Target>
22 <Target title="Linux">
23 <Option platforms="Unix;" />
24 <Option output="..\..\bin\Linux\Demo" prefix_auto="0" extension_auto="0" />
25 <Option type="1" />
26 <Option compiler="gcc" />
27 <Compiler>
28 <Add option="-g" />
29 <Add option="-D_IRR_STATIC_LIB_" />
30 </Compiler>
31 <Linker>
32 <Add library="Xxf86vm" />
33 <Add library="Xcursor" />
34 <Add library="Irrlicht" />
35 <Add library="GL" />
36 <Add directory="..\..\lib\Linux" />
37 </Linker>
38 </Target>
39 </Build>
40 <VirtualTargets>
41 <Add alias="All" targets="Windows;Linux;" />
42 </VirtualTargets>
43 <Compiler>
44 <Add option="-Wall" />
45 <Add option="-g" />
46 <Add directory="..\..\include" />
47 </Compiler>
48 <Linker>
49 <Add library="Irrlicht" />
50 <Add directory="..\..\lib\gcc" />
51 </Linker>
52 <Unit filename="CDemo.cpp" />
53 <Unit filename="CDemo.h" />
54 <Unit filename="CMainMenu.cpp" />
55 <Unit filename="CMainMenu.h" />
56 <Unit filename="main.cpp" />
57 <Unit filename="resource.h" />
58 <Unit filename="resscript.rc">
59 <Option compilerVar="WINDRES" />
60 <Option target="Windows" />
61 </Unit>
62 <Extensions>
63 <code_completion />
64 <debugger />
65 <envvars />
66 </Extensions>
67 </Project>
68</CodeBlocks_project_file>
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/demo.dev b/src/others/irrlicht-1.8.1/examples/Demo/demo.dev
new file mode 100644
index 0000000..9e1b4c0
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/demo.dev
@@ -0,0 +1,99 @@
1[Project]
2FileName=demo.dev
3Name=Irrlicht Tech Demo
4UnitCount=5
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=Demo.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
60[Unit2]
61FileName=CDemo.h
62CompileCpp=1
63Folder=Irrlicht Tech Demo
64Compile=1
65Link=1
66Priority=1000
67OverrideBuildCmd=0
68BuildCmd=
69
70[Unit3]
71FileName=CMainMenu.cpp
72CompileCpp=1
73Folder=Irrlicht Tech Demo
74Compile=1
75Link=1
76Priority=1000
77OverrideBuildCmd=0
78BuildCmd=
79
80[Unit4]
81FileName=CMainMenu.h
82CompileCpp=1
83Folder=Irrlicht Tech Demo
84Compile=1
85Link=1
86Priority=1000
87OverrideBuildCmd=0
88BuildCmd=
89
90[Unit5]
91FileName=CDemo.cpp
92CompileCpp=1
93Folder=Irrlicht Tech Demo
94Compile=1
95Link=1
96Priority=1000
97OverrideBuildCmd=0
98BuildCmd=
99
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/icon.ico b/src/others/irrlicht-1.8.1/examples/Demo/icon.ico
new file mode 100644
index 0000000..49f8eab
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/icon.ico
Binary files differ
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/main.cpp b/src/others/irrlicht-1.8.1/examples/Demo/main.cpp
new file mode 100644
index 0000000..3d26999
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/main.cpp
@@ -0,0 +1,49 @@
1// This is a Demo of the Irrlicht Engine (c) 2005-2009 by N.Gebhardt.
2// This file is not documented.
3
4#include <irrlicht.h>
5#ifdef _IRR_WINDOWS_
6#include <windows.h>
7#endif
8
9#include <stdio.h>
10
11#include "CMainMenu.h"
12#include "CDemo.h"
13
14using namespace irr;
15
16#ifdef _WIN32
17
18#pragma comment(lib, "Irrlicht.lib")
19INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
20#else
21int main(int argc, char* argv[])
22#endif
23{
24 bool fullscreen = false;
25 bool music = true;
26 bool shadows = false;
27 bool additive = false;
28 bool vsync = false;
29 bool aa = false;
30
31#ifndef _IRR_WINDOWS_
32 video::E_DRIVER_TYPE driverType = video::EDT_OPENGL;
33#else
34 video::E_DRIVER_TYPE driverType = video::EDT_DIRECT3D9;
35#endif
36
37 CMainMenu menu;
38
39//#ifndef _DEBUG
40 if (menu.run(fullscreen, music, shadows, additive, vsync, aa, driverType))
41//#endif
42 {
43 CDemo demo(fullscreen, music, shadows, additive, vsync, aa, driverType);
44 demo.run();
45 }
46
47 return 0;
48}
49
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/resource.h b/src/others/irrlicht-1.8.1/examples/Demo/resource.h
new file mode 100644
index 0000000..eb3b976
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/resource.h
@@ -0,0 +1,16 @@
1//{{NO_DEPENDENCIES}}
2// Microsoft Developer Studio generated include file.
3// Used by resscript.rc
4//
5#define IDI_ICON1 101
6
7// Next default values for new objects
8//
9#ifdef APSTUDIO_INVOKED
10#ifndef APSTUDIO_READONLY_SYMBOLS
11#define _APS_NEXT_RESOURCE_VALUE 102
12#define _APS_NEXT_COMMAND_VALUE 40001
13#define _APS_NEXT_CONTROL_VALUE 1000
14#define _APS_NEXT_SYMED_VALUE 101
15#endif
16#endif
diff --git a/src/others/irrlicht-1.8.1/examples/Demo/resscript.rc b/src/others/irrlicht-1.8.1/examples/Demo/resscript.rc
new file mode 100644
index 0000000..be12eb7
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Demo/resscript.rc
@@ -0,0 +1,72 @@
1//Microsoft Developer Studio generated resource script.
2//
3#include "resource.h"
4
5#define APSTUDIO_READONLY_SYMBOLS
6/////////////////////////////////////////////////////////////////////////////
7//
8// Generated from the TEXTINCLUDE 2 resource.
9//
10#include "afxres.h"
11
12/////////////////////////////////////////////////////////////////////////////
13#undef APSTUDIO_READONLY_SYMBOLS
14
15/////////////////////////////////////////////////////////////////////////////
16// Deutsch (Österreich) resources
17
18#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEA)
19#ifdef _WIN32
20LANGUAGE LANG_GERMAN, SUBLANG_GERMAN_AUSTRIAN
21#pragma code_page(1252)
22#endif //_WIN32
23
24#ifdef APSTUDIO_INVOKED
25/////////////////////////////////////////////////////////////////////////////
26//
27// TEXTINCLUDE
28//
29
301 TEXTINCLUDE DISCARDABLE
31BEGIN
32 "resource.h\0"
33END
34
352 TEXTINCLUDE DISCARDABLE
36BEGIN
37 "#include ""afxres.h""\r\n"
38 "\0"
39END
40
413 TEXTINCLUDE DISCARDABLE
42BEGIN
43 "\r\n"
44 "\0"
45END
46
47#endif // APSTUDIO_INVOKED
48
49
50/////////////////////////////////////////////////////////////////////////////
51//
52// Icon
53//
54
55// Icon with lowest ID value placed first to ensure application icon
56// remains consistent on all systems.
57IDI_ICON1 ICON DISCARDABLE "icon.ico"
58#endif // Deutsch (Österreich) resources
59/////////////////////////////////////////////////////////////////////////////
60
61
62
63#ifndef APSTUDIO_INVOKED
64/////////////////////////////////////////////////////////////////////////////
65//
66// Generated from the TEXTINCLUDE 3 resource.
67//
68
69
70/////////////////////////////////////////////////////////////////////////////
71#endif // not APSTUDIO_INVOKED
72
diff --git a/src/others/irrlicht-1.8.1/examples/Makefile b/src/others/irrlicht-1.8.1/examples/Makefile
new file mode 100644
index 0000000..da65881
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/Makefile
@@ -0,0 +1,8 @@
1DIRS = $(wildcard [012]* Demo)
2
3all: $(DIRS)
4
5$(DIRS):
6 -@cd $@ && make clean && make
7
8.PHONY: $(DIRS)
diff --git a/src/others/irrlicht-1.8.1/examples/buildAllExamples.sh b/src/others/irrlicht-1.8.1/examples/buildAllExamples.sh
new file mode 100755
index 0000000..272a329
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/buildAllExamples.sh
@@ -0,0 +1,8 @@
1#! /bin/bash
2[ -z $1 ] || TARGET=$1
3[ -z $TARGET ] && TARGET=all
4for i in [012]* Demo; do
5 echo "Building $i";
6 pushd $i && make clean $TARGET;
7 popd;
8done
diff --git a/src/others/irrlicht-1.8.1/examples/whereAreTheBinaries.txt b/src/others/irrlicht-1.8.1/examples/whereAreTheBinaries.txt
new file mode 100644
index 0000000..d9f7d6a
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/examples/whereAreTheBinaries.txt
@@ -0,0 +1,7 @@
1If you are searching for executeables of the examples and the demo,
2you'll find some for Windows in the directory
3/bin/win32-VisualStudio.
4
5For Linux, just go into the directory of the example you want and
6execute a simple 'make' after you made the engine from source/Irrlicht.
7