Description: Engine Introduction
Many people have asked me for the DirectX demo C++ source code, so here it is. The Demo framework I ve build for creating the demos consist of the following components:
* Kernel system, with scene manager, camera and simple culling.
* Model loading (.x files) and collision detection. I ve made my models with Delgine and exported to .x file.
* The usual frustum, resource, log classes etc.
* Rendering with HLSL shader (no fixed function pipeline drawing).
* Cube and stencil shadows. Environment mapping onto object.
* Settings manager for parsing simple setup data from text file.
* HUD elements and UI buttons.
* Simple emitter system for smoke and fire effects.
* Screen distort effects (haze effects etc).
* Skybox and clouds, just to avoid a blue/black background.
* ODE physic integration so we can throw around with simple objects.
* TODO: Skinning animations, add level editor, and a lot more ...
File list (Check if you may need any files):
XDemo_2008.sln
Bin\Maps
...\....\sample1.xmap
...\....\sample2.xmap
...\....\sample3.xmap
...\Models
...\......\brik_shine.x
...\......\brik_solid.x
...\......\building00.x
...\......\building01.x
...\......\building02.x
...\......\building05.x
...\......\carwreck.x
...\......\ground.x
...\......\hill0.x
...\......\hill1.x
...\......\hill2.x
...\......\hill3.x
...\......\hill4.x
...\......\hill6.x
...\......\hill7.x
...\......\hill8.x
...\......\hill9.x
...\......\sam1_shadow.x
...\......\sam2_firesmoke.x
...\......\skydome.x
...\Shader
...\......\base.fxo
...\......\cubelightmap.fxo
...\......\depth.fxo
...\......\diffuse.fxo
...\......\diffuse_envmap.fxo
...\......\diffuse_lightmap.fxo
...\......\diffuse_shadowcube.fxo
...\......\diffuse_specular.fxo
...\......\dist.fxo
...\......\distort.fxo
...\......\emitter.fxo
...\......\entity.fxo
...\......\hill_fog.fxo
...\......\hud.fxo
...\......\postprocess_screen.fxo
...\......\screenquad.fxo
...\......\stencilshadow.fxo
...\......\ui.fxo
...\......\ui_bg.fxo
...\......\world.fxo
...\Textures
...\........\Actors
...\........\......\concrete
...\........\......\........\concrete_03_s.jpg
...\........\......\........\concrete_03_sn.jpg
...\........\......\........\concrete_04_s.jpg
...\........\......\........\concrete_04_sn.jpg
...\........\......\........\concrete_08_s.jpg
...\........\......\........\concrete_08_sn.jpg
...\........\......\........\concrete_09_s.jpg
...\........\......\........\concrete_09_sn.jpg
...\........\......\........\concrete_11_s.jpg
...\........\......\........\concrete_11_sn.jpg
...\........\......\........\concrete_12_s.jpg
...\........\......\........\concrete_12_sn.jpg
...\........\......\........\concrete_13_s.jpg
...\........\......\........\concrete_13_sn.jpg
...\........\......\........\concrete_19_s.jpg
...\........\......\........\concrete_19_sn.jpg
...\........\......\........\concrete_24_s.jpg
...\........\......\........\concrete_24_sn.jpg
...\........\......\........\concrete_45_s.jpg
...\........\......\........\concrete_45_sn.jpg
...\........\......\........\cover_01_m.jpg
...\........\......\........\cover_01_mn.jpg
...\........\......\........\cover_02_m.jpg
...\........\......\........\cover_02_mn.jpg
...\........\......\........\cover_03_m.jpg
...\........\......\........\cover_03_mn.jpg
...\........\......\........\cover_04_m.jpg
...\........\......\........\cover_04_mn.jpg
...\........\......\........\Thumbs.db
...\........\......\elements
...\........\......\........\brik_s.jpg
...\........\......\........\brik_sn.jpg
...\........\......\........\carwreck_m.jpg
...\........\......\........\carwreck_mn.jpg
...\........\......\........\white.jpg
...\........\......\........\whiten.jpg
...\........\......\metal
...\........\......\.....\metal_01_m.jpg
...\........\......\.....\metal_01_mn.jpg
...\........\......\.....\metal_02_m.jpg
...\........\......\.....\metal_02_mn.jpg
...\........\......\.....\metal_10_m.jpg
...\........\......\.....\metal_10_mn.jpg
...\........\......\.....\metal_17_m.jpg
...\........\......\.....\metal_17_mn.jpg
...\........\......\.....\metal_43_m.jpg
...\........\......\.....\metal_43_mn.jpg
...\........\......\.....\metal_51_m.jpg
...\........\......\.....\metal_51_mn.jpg
...\........\......\.....\metal_52_m.jpg