Cs345-2010

From Earlham Cluster Department

(Difference between revisions)
Jump to: navigation, search
Line 3: Line 3:
|}
|}
= Porting Intel's Smoke Game Demo to Linux =
= Porting Intel's Smoke Game Demo to Linux =
 +
<i>N.B.</i> - 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.
 +
 +
----
=== Background Information ===
=== Background Information ===
* http://software.intel.com/en-us/articles/smoke-game-technology-demo/ - Intel Software Network article
* http://software.intel.com/en-us/articles/smoke-game-technology-demo/ - Intel Software Network article
Line 10: Line 13:
** Now here are the big challenges. There are a few systems that also depend on DX. These is SystemInput and SystemFire. SystemInput uses DirectX's input support. But that's easy enough to replace (or disable). SystemFire uses DirectX for some of the math calculations. Our math library should support all the needed functionality... we just didn’t have time to get all the DX out of there.
** Now here are the big challenges. There are a few systems that also depend on DX. These is SystemInput and SystemFire. SystemInput uses DirectX's input support. But that's easy enough to replace (or disable). SystemFire uses DirectX for some of the math calculations. Our math library should support all the needed functionality... we just didn’t have time to get all the DX out of there.
 +
----
=== Near Term Tasks ===
=== Near Term Tasks ===
# Examine all of the documentation and build an annotated index of it in the wiki.  Materials that are on-line already, <i>e.g.</i> 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. (To Do)
# Examine all of the documentation and build an annotated index of it in the wiki.  Materials that are on-line already, <i>e.g.</i> 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. (To Do)
-
# Examine all of the source kit's directory tree and build an annotated map of it in the wiki. (To Do)
+
# Examine all of the source kit's directory tree and build an annotated map of it in the wiki. (To Do)  
# Examine all of the <code>#includes</code> in <code>Smoke.cpp</code> and propose solutions for porting/converting/removing each of them. Remember that <code>#includes</code> nest, we need to follow each thread starting with the ones in <code>Smoke.cpp</code>.  (To Do)
# Examine all of the <code>#includes</code> in <code>Smoke.cpp</code> and propose solutions for porting/converting/removing each of them. Remember that <code>#includes</code> nest, we need to follow each thread starting with the ones in <code>Smoke.cpp</code>.  (To Do)
-
# Figure-out how each of these works, propose a solution for porting/converting/removing each of them:
+
# Figure-out roughly how each of these works, what the dependencies are, <i>etc.</i> and propose a solution for porting/converting/removing each of them:
#* Logging (To Do)
#* Logging (To Do)
#* Debugging (To Do)
#* Debugging (To Do)
#* EngineExecuteGDF (To Do)
#* EngineExecuteGDF (To Do)
 +
#* <code>main()</code> in <code>Smoke.cpp</code>  (To Do)
 +
#* Argument processing in <code>Smoke.cpp</code>  (To Do)
#Develop an ordered plan in the wiki (collective, in class on Tuesday)
#Develop an ordered plan in the wiki (collective, in class on Tuesday)
#* Modules  
#* Modules  
Line 24: Line 30:
#** Find and guard/eliminate .NET stuff  (To Do)
#** Find and guard/eliminate .NET stuff  (To Do)
#** DirectX -> ? conversion for SystemInput and SystemFire  (To Do)
#** DirectX -> ? conversion for SystemInput and SystemFire  (To Do)
 +
#** Havoc (Future)
#* Functionality
#* Functionality
# Figure-out Doxygen and build a doc set  (To Do)
# Figure-out Doxygen and build a doc set  (To Do)
# Figure-out Make and construct the first simple Makefile that builds Smoke (collective, in class on Tuesday)
# Figure-out Make and construct the first simple Makefile that builds Smoke (collective, in class on Tuesday)
 +
 +
----
 +
=== Documentation ===
 +
* Entries from Background section above.
 +
** Description of what's in each document, what it's useful for.
 +
* Other papers Intel has published about Smoke.
 +
** <i>Etc.</i>
 +
 +
----
 +
=== Directory Tree ===
 +
* bin - Some explanation
 +
** debug - Some explanation
 +
** logs - Some explanation
 +
** profile - Some explanation
 +
** release - Some explanation
 +
* code
 +
** <i>Etc.</i>
 +
* docs
 +
* media
 +
* tools
 +
 +
----
 +
=== <code>Smoke.cpp #include</code> Files ===
 +
* windows.h - Some explanation
 +
** Files it includes - with explanations
 +
*** <i>Etc.</i>
 +
* tchar.h - Some explanation
 +
** Files it includes
 +
* ..\BaseTypes\BaseTypes.h - Some explanation
 +
** Files it includes
 +
* ..\Interfaces\Interface.h - Some explanation
 +
** Files it includes
 +
* ..\Framework\FrameworkAPI.h - Some explanation
 +
** Files it includes
 +
** ..\Framework\EnvironmentManager.cpp - Some explanation
 +
** Files it includes
 +
* atlbase.h
 +
** Files it includes
 +
 +
----
 +
=== Sub-Systems ===
 +
 +
==== Logging ====
 +
* Purpose and operation
 +
* Dependencies
 +
* Proposed adapt/convert/remove plan
 +
 +
==== Debugging ====
 +
* Purpose and operation
 +
* Dependencies
 +
* Proposed adapt/convert/remove plan
 +
 +
==== EngineExecuteGDF ====
 +
* What is it calling?
 +
* Purpose and operation
 +
* Dependencies
 +
* Proposed adapt/convert/remove plan
 +
 +
==== Ogre/OpenGL replacing Ogre/DirectX ====
 +
* Purpose and operation
 +
* Dependencies
 +
* Proposed adapt/convert/remove plan
 +
 +
==== ? replacing .NET ====
 +
* Where is it used?
 +
* Purpose and operation
 +
* Dependencies
 +
* Proposed adapt/convert/remove plan
 +
 +
==== DirectX -> ? conversion for SystemInput and SystemFire ====
 +
* Where is it used?
 +
* Purpose and operation
 +
* Dependencies
 +
* Proposed adapt/convert/remove plan

Revision as of 05:04, 13 February 2010

Contents

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.


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. (To Do)
  2. Examine all of the source kit's directory tree and build an annotated map of it in the wiki. (To Do)
  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. (To Do)
  4. 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 (To Do)
    • Debugging (To Do)
    • EngineExecuteGDF (To Do)
    • main() in Smoke.cpp (To Do)
    • Argument processing in Smoke.cpp (To Do)
  5. Develop an ordered plan in the wiki (collective, in class on Tuesday)
    • Modules
    • Libraries
      • Ogre/OpenGL replacing DirectX (To Do)
      • Find and guard/eliminate .NET stuff (To Do)
      • DirectX -> ? conversion for SystemInput and SystemFire (To Do)
      • Havoc (Future)
    • Functionality
  6. Figure-out Doxygen and build a doc set (To Do)
  7. Figure-out Make and construct the first simple Makefile that builds Smoke (collective, in class on Tuesday)

Documentation


Directory Tree


Smoke.cpp #include Files


Sub-Systems

Logging

Debugging

EngineExecuteGDF

Ogre/OpenGL replacing Ogre/DirectX

 ? replacing .NET

DirectX -> ? conversion for SystemInput and SystemFire

Personal tools
Namespaces
Variants
Actions
websites
wiki
this semester
Toolbox