Difference between revisions of "Chili Framework"

From Chilipedia
Jump to: navigation, search
Line 1: Line 1:
 
The Chili Framework is designed as a vehicle to make it fun and easy to learn C++ in a graphical context. It wraps a bunch of pain-in-the-ass WinAPI and Direct3D bullshit giving us direct access to the framebuffer for manipulating screen pixels. This allows us to explore basic graphical concepts at the same time that we are learning the fundamentals of the C++ language. Our research shows that this results in a 69% lower incidence of learners shitting themselves to death out of sheer boredom.
 
The Chili Framework is designed as a vehicle to make it fun and easy to learn C++ in a graphical context. It wraps a bunch of pain-in-the-ass WinAPI and Direct3D bullshit giving us direct access to the framebuffer for manipulating screen pixels. This allows us to explore basic graphical concepts at the same time that we are learning the fundamentals of the C++ language. Our research shows that this results in a 69% lower incidence of learners shitting themselves to death out of sheer boredom.
  
=== Criticisms ===
+
== Core Classes ==
Some people resent a proprietary framework being used in the tutorials. Fuck em.
+
  
[[File:http://gph.is/1feRo0E]]
+
=== Game ===
 +
The <code>Game</code> class is where you put the code to make the game do its thing. The predefined member functions <code>UpdateModel()</code> and <code>ComposeFrame()</code> are where you put your game logic and your rendering code, respectively. This <code>Game</code> is composed of the <code>Graphics</code> object used for drawing and keeps a reference to the <code>MainWindow</code> object to interface with the Windows system.
  
{| class="wikitable"
+
=== Graphics ===
|+ The table's caption
+
! Column header 1
+
! Column header 2
+
! Column header 3
+
|-
+
! Row header 1
+
| Cell 2 || Cell 3
+
|-
+
! Row header A
+
| Cell B
+
| Cell C
+
|}
+
  
Some Code:<br />
 
  
<syntaxhighlight lang="cpp">
+
=== MainWindow ===
if( FAILED( hr = pSwapChain->GetBuffer(
+
=== Keyboard ===
      0,
+
=== Mouse ===
      __uuidof( ID3D11Texture2D ),
+
=== Color ===
      (LPVOID*)&pBackBuffer ) ) )
+
  {
+
      throw CHILI_GFX_EXCEPTION( hr,L"Getting back buffer" );
+
  }
+
  
// becomes this
+
 
if( FAILED( hr = pSwapChain->GetBuffer(
+
=== Criticisms ===
      0,
+
Some people resent a proprietary framework being used in the tutorials. Fuck em.
      IID_PPV_ARGS( &pBackBuffer ) ) ) )
+
{
+
  throw CHILI_GFX_EXCEPTION( hr,L"Getting back buffer" );
+
}
+
</syntaxhighlight>
+

Revision as of 14:46, 4 July 2016

The Chili Framework is designed as a vehicle to make it fun and easy to learn C++ in a graphical context. It wraps a bunch of pain-in-the-ass WinAPI and Direct3D bullshit giving us direct access to the framebuffer for manipulating screen pixels. This allows us to explore basic graphical concepts at the same time that we are learning the fundamentals of the C++ language. Our research shows that this results in a 69% lower incidence of learners shitting themselves to death out of sheer boredom.

Core Classes

Game

The Game class is where you put the code to make the game do its thing. The predefined member functions UpdateModel() and ComposeFrame() are where you put your game logic and your rendering code, respectively. This Game is composed of the Graphics object used for drawing and keeps a reference to the MainWindow object to interface with the Windows system.

Graphics

MainWindow

Keyboard

Mouse

Color

Criticisms

Some people resent a proprietary framework being used in the tutorials. Fuck em.