From Earlham Cluster Department

Revision as of 19:21, 5 March 2010 by Leemasa (Talk | contribs)
Jump to: navigation, search


Porting Intel's Smoke Game Demo to Linux

N.B. - If you edit by section (using the "edit" links next to the section heading) you will be much less likely to cause a Save conflict.

Latest Issues

Not an issue so much as a concern:

Smoke Wiki Pages

Background Information

Near Term Tasks

  1. Examine all of the documentation and build an annotated index of it in the wiki. Materials that are on-line already, e.g. the ones listed above, can have URLs and annotations. Ones that come with the source kit should just have titles, file system paths, and annotations. We don't want to upload those to the wiki without first checking with Intel about re-publishing their materials. (Nick)(Done!)
  2. Examine all of the source kit's directory tree and build an annotated map of it in the wiki. (Nick)(Done!)
  3. Examine all of the #includes in Smoke.cpp and propose solutions for porting/converting/removing each of them. Remember that #includes nest, we need to follow each thread starting with the ones in Smoke.cpp. (Sam)(Done!)
  4. Develop a Perl script/command line that converts back slashes to front slashes in directory paths. Use the feature that creates a backup of each changed file as it goes. (Sam)(Done!)
  5. Figure-out roughly how each of these works, what the dependencies are, etc. and propose a solution for porting/converting/removing each of them:
    • Logging (Gil)
      • Internal messages
      • Debug messages, add the ability to
    • Debugging (Gil)
      • getopt()
    • EngineExecuteGDF (Gil)
    • main() in Smoke.cpp (Gil)(Done)
    • Argument processing in Smoke.cpp (Gil)(Done)
  6. Develop an ordered plan in the wiki (collective, in class on Friday)
    • Modules
    • Libraries
      • Ogre/OpenGL replacing DirectX (Sam)
      • Find and guard/eliminate .NET stuff (Nick)
      • DirectX -> ? conversion for SystemInput and SystemFire (To Do before 2/26)
      • Havoc (Nick)(Done(ish))(See Note*)
    • Functionality
  7. Figure-out Doxygen and build a doc set (Sam)(Done!)
  8. Figure-out Make and construct the first simple Makefile that builds Smoke (To Do before 2/26)


Directory Tree

Note: Ogre subdirectories already include many things pertaining to Linux and OpenGL, so rendering differently may be easier than expected.
Note 2: A full directory tree, including files, has been uploaded to the repo.

Smoke.cpp #include Files

System Path #include files

Format is: (A file that includes the header) #include <(include file)>





Ogre/OpenGL replacing Ogre/DirectX

High-level 3D graphics engine

OpenGL, DirectX, or Cg

Figure out how DirectX is being used and switch out DirectX functionality (HLSL in Ogre), with OpenGL (GLSL).

 ? replacing .NET


DirectX -> ? conversion for SystemInput and SystemFire


Streaming SIMD Extensions (SSE) is a system for speeding operations required for audio and video processing. These were implemented as extensions to the IA32 (i.e. x86) instruction set.


Personal tools
this semester