Difference between revisions of "Game Programming Class7"

esse quam videri
Jump to: navigation, search
(New page: Audio Editors Audacity Where to get sounds Commercial * http://www.sounddogs.com Creative Commons * http://freesound.iua.upf.edu/ * http://creativecommons.org/audio/ Qu...)
 
(Homework)
 
(20 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
==Physics==
 +
http://box2d.org/
  
Audio Editors
+
c# Box2D https://code.google.com/p/box2dx/
  
Audacity
+
https://github.com/d-snp/Farseer-Physics
Where to get sounds
 
  
Commercial
+
http://farseerphysics.codeplex.com/
  
    * http://www.sounddogs.com
+
http://www.mataliphysics.com/
  
Creative Commons
+
==Platformer Example==
 +
Show platformer starter kit
  
    * http://freesound.iua.upf.edu/
+
http://msdn.microsoft.com/en-us/library/dd254918(v=xnagamestudio.31).aspx
    * http://creativecommons.org/audio/
 
  
Questionable Orgin
+
simple and elegant but not that flexible
  
    * http://www.findsounds.com
+
==Monogame samples==
    * http://www.soundshopper.com
 
    * http://www.flashsound.com
 
    * http://www.soundrangers.com
 
    * http://www.soundservice.com
 
    * http://www.cssmusic.com
 
    * http://www.soundamerica.com
 
    * http://www.a1freesoundeffects.com
 
    * http://www.flashsounds.de
 
  
XACT
+
https://github.com/Mono-Game/MonoGame.Samples
  
XNA Audio Tool
+
==Strategy Pattern==
  
    * SoundBank
+
Manager classes to implement strategy pattern
    * WaveBank
 
  
XACT Demo
+
http://www.dofactory.com/Patterns/PatternStrategy.aspx
XNA Audio Classes
 
  
private AudioEngine engine;
+
==Types of Collections==
                private WaveBank waveBank;
+
c# stacks are LIFO
                private SoundBank soundBank;
 
  
Homework
+
Queue FIFO
Make and xna project that uses and XACT Project to play a backgound track and a sound effect triggered from user input or a game event.
+
:First-In-First-Out
 +
 
 +
Peek
 +
:Get the current item in the queue
 +
Enqueue
 +
:
 +
Dequeue
 +
 
 +
Stack LIFO
 +
:Last-In-First-Out
 +
 
 +
pop
 +
:removed last object added to the stack
 +
push
 +
:push an object onto the stack
 +
peek
 +
:shows to top object on the stack
 +
 
 +
http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=65
 +
 
 +
==Demo==
 +
 
 +
Mangers and Strategy Pattern
 +
 
 +
==Homework==
 +
 
 +
Ghost Manager Component
 +
*GhostManager should be able to handle an arbitrary number of ghosts
 +
*GhostManaget should move and draw the ghosts on each update and draw
 +
*GhostManager should check for Ghost on Ghost collision and change the ghosts direction if the collide
 +
*GhostManager should create 4 ghosts in random locations and make sure that the ghosts don't spawn on top of each other
 +
*ChostManger should be able to add and remove ghosts at any time,
 +
 
 +
You can use the code we started in class
 +
 
 +
https://iam.colum.edu:8443/svn/GPMonogame3/trunk/jeff/ShotManager/

Latest revision as of 21:58, 13 March 2015

Physics

http://box2d.org/

c# Box2D https://code.google.com/p/box2dx/

https://github.com/d-snp/Farseer-Physics

http://farseerphysics.codeplex.com/

http://www.mataliphysics.com/

Platformer Example

Show platformer starter kit

http://msdn.microsoft.com/en-us/library/dd254918(v=xnagamestudio.31).aspx

simple and elegant but not that flexible

Monogame samples

https://github.com/Mono-Game/MonoGame.Samples

Strategy Pattern

Manager classes to implement strategy pattern

http://www.dofactory.com/Patterns/PatternStrategy.aspx

Types of Collections

c# stacks are LIFO

Queue FIFO

First-In-First-Out

Peek

Get the current item in the queue

Enqueue

Dequeue

Stack LIFO

Last-In-First-Out

pop

removed last object added to the stack

push

push an object onto the stack

peek

shows to top object on the stack

http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=65

Demo

Mangers and Strategy Pattern

Homework

Ghost Manager Component

  • GhostManager should be able to handle an arbitrary number of ghosts
  • GhostManaget should move and draw the ghosts on each update and draw
  • GhostManager should check for Ghost on Ghost collision and change the ghosts direction if the collide
  • GhostManager should create 4 ghosts in random locations and make sure that the ghosts don't spawn on top of each other
  • ChostManger should be able to add and remove ghosts at any time,

You can use the code we started in class

https://iam.colum.edu:8443/svn/GPMonogame3/trunk/jeff/ShotManager/