Fall2008.CSCI210 History

Hide minor edits - Show changes to output

Changed lines 78-79 from:
* [[http://scratch.mit.edu/ | Scratch]] environment [[http://youtube.com/watch?v=jxDw-t3XWd0 | intro video]], and [[http://youtube.com/watch?v=ix6Hlt8xL3E | image effects video]]. Also [[http://scratch.mit.edu/files/ScratchGettingStarted.pdf | Getting Started (PDF)]], and [[http://scratch.mit.edu/files/ScratchReferenceGuide.pdf | Reference Guide (PDF)]].
to:
* [[http://scratch.mit.edu/ | Scratch]] a cross-platform graphical environment for developing 2D games and animations (Windows, Mac OS X and Linux)
**
[[http://youtube.com/watch?v=jxDw-t3XWd0 | Intro video]], and [[http://youtube.com/watch?v=ix6Hlt8xL3E | image effects video]].
** [[http://scratch.mit.edu/files/ScratchGettingStarted.pdf | Getting Started (PDF)]], and [[http://scratch.mit.edu/files/ScratchReferenceGuide.pdf | Reference Guide (PDF)]].

* [[http://education.mit.edu/starlogo/ | StarLogo TNG]] - a cross-platform graphical environment for developing 3D games and simulations (Windows, Mac OS X and Linux)
.
Added lines 86-87:
* [[http://pypi.python.org/pypi/Rabbyt/ | Rabbyt]] - a sprite library for Python with game development in mind. It provides fast performance with an easy to use but flexible API (Windows, Mac OS X and Linux).
Changed lines 27-34 from:
!!Handouts

* Magnus Lie Hetland, [[http://hetland.org/writing/instant-hacking.html | Instant Hacking in
Python]] (for non-programmers) and [[http://hetland.org/writing/instant-python.html | Instant Python]] (for programmers).

* J. Zelle's ''Teaching Computer Science with
Python'' transparencies: [[http://www.cs.cofc.edu/~manaris/uploads/Fall2006/sigcse-slides.pdf | one slide per page]] and [[http://www.cs.cofc.edu/~manaris/uploads/Fall2006/sigcse-handout.pdf | four slides per page]] (PDF).

!!Readings
to:
!!Readings & References

# Intro to '''
Python'''
** Magnus Lie Hetland,
[[http://hetland.org/writing/instant-hacking.html | Instant Hacking in Python]] (for non-programmers) and [[http://hetland.org/writing/instant-python.html | Instant Python]] (for programmers).
** John Zelle, ''Teaching Computer Science with Python'' transparencies:
[[http://www.cs.cofc.edu/~manaris/uploads/Fall2006/sigcse-slides.pdf | one slide per page]] and [[http://www.cs.cofc.edu/~manaris/uploads/Fall2006/sigcse-handout.pdf | four slides per page]] (PDF).
** Jeffrey Elkner, Allen B. Downey and Chris Meyers (2008), "[[http://openbookproject.net/thinkCSpy/index.xhtml | How to Think Like a Computer Scientist - Learning with Python)]]", 2nd ed., The Open Book Project.
Added lines 40-41:
# Wikipedia, [[http://en.wikipedia.org/wiki/Computer_and_video_game_genres | Computer and video game genres]].
Added line 43:
Added line 45:
Added line 47:
Changed lines 50-54 from:
!!References

*
Wikipedia, [[http://en.wikipedia.org/wiki/Computer_and_video_game_genres | Computer and video game genres]].
* Wikipedia, [[http://en.wikipedia.org/wiki/Game_engine | Overview of Game Engines]].
*
Alternative user interfaces (UIs) for game (and other) development:
to:
# Wikipedia, [[http://en.wikipedia.org/wiki/Game_engine | Overview of Game Engines]].

# Alternative user interfaces (UIs) for game (and other) development:
Added lines 57-58:
!!Artifacts and Rules
Deleted lines 72-73:
!!!Media Manipulation
Added line 74:
Deleted lines 77-78:
!!!Engines for Visualization and Game Development [-(Python, freeware)-]
Added line 84:
Added line 87:
Deleted lines 90-91:
!!!User Interface
Changed lines 25-26 from:
* [[Fall2008/CSCI210_Homework1 | Homework #1]], [[Fall2008/CSCI210_Homework2 | Homework #2]], [[Fall2008/CSCI210_Homework3 | Homework #3]], [[Fall2008/CSCI210_Homework4 | Homework #4]].
to:
* [[Fall2008/CSCI210_Homework1 | Homework #1]], [[Fall2008/CSCI210_Homework2 | Homework #2]], [[Fall2008/CSCI210_Homework3 | Homework #3]], [[Fall2008/CSCI210_Homework4 | Homework #4]], [[Fall2008/CSCI210_Homework5 | Homework #5]].
Changed lines 25-26 from:
* [[Fall2008/CSCI210_Homework1 | Homework #1]], [[Fall2008/CSCI210_Homework2 | Homework #2]], [[Fall2008/CSCI210_Homework3 | Homework #3]].
to:
* [[Fall2008/CSCI210_Homework1 | Homework #1]], [[Fall2008/CSCI210_Homework2 | Homework #2]], [[Fall2008/CSCI210_Homework3 | Homework #3]], [[Fall2008/CSCI210_Homework4 | Homework #4]].
Added lines 78-80:

* [[http://www.pyglet.org/ | pyglet]] - a cross-platform windowing and multimedia Python library for developing games and other visually-rich applications (Windows, Mac OS X and Linux).
Added lines 29-30:
* Magnus Lie Hetland, [[http://hetland.org/writing/instant-hacking.html | Instant Hacking in Python]] (for non-programmers) and [[http://hetland.org/writing/instant-python.html | Instant Python]] (for programmers).
Changed lines 29-30 from:
* J. Zelle's ''Teaching Computer Science with Python'' transparencies: [[Attach:sigcse-slides.pdf | one slide per page]] and [[Attach:sigcse-handout.pdf | four slides per page]] (PDF).
to:
* J. Zelle's ''Teaching Computer Science with Python'' transparencies: [[http://www.cs.cofc.edu/~manaris/uploads/Fall2006/sigcse-slides.pdf | one slide per page]] and [[http://www.cs.cofc.edu/~manaris/uploads/Fall2006/sigcse-handout.pdf | four slides per page]] (PDF).
Added lines 33-34:
# [[http://www.nytimes.com/2008/10/11/arts/television/11hamm.html | <img src="http://graphics8.nytimes.com/images/2008/10/11/arts/television/hammer.jpg" height=50 alt="fractal"/> A Fantasy Universe Raises Its Broadsword Against World of Warcraft]] from NY Times. [-Designing a successful massively multiplayer online game may be one of the supreme challenges in all entertainment.-]
Changed lines 25-26 from:
* [[Fall2008/CSCI210_Homework1 | Homework #1]], [[Fall2008/CSCI210_Homework2 | Homework #2]].
to:
* [[Fall2008/CSCI210_Homework1 | Homework #1]], [[Fall2008/CSCI210_Homework2 | Homework #2]], [[Fall2008/CSCI210_Homework3 | Homework #3]].
Added lines 51-52:
* [[http://www.findsounds.com/ | Sounds]] - find sound effects and musical instrument samples.
Changed lines 7-10 from:
!!Description

A course introducing principles of game programming, including computer modeling, data visualization and animations, media transformations, and video game ethics. Students will be exposed to several game engines, a scripting language, and develop at least one game
.
to:
!!Introduction

Do you like to play computer games? Who doesn't? Have you ever wondered if you could build your own? If you are interested in exploring game development as a hobby or as a career, this introductory course is for you! We will learn how to develop computer games from the ground up
. We will play with one prototyping environment for quick game development. We will experience one programming language used in the gaming industry. We will develop several games. Who knows... by the end of the semester you may have a working prototype of the next big gaming hit!
Changed lines 25-26 from:
* [[Fall2008/CSCI210_Homework1 | Homework #1]].
to:
* [[Fall2008/CSCI210_Homework1 | Homework #1]], [[Fall2008/CSCI210_Homework2 | Homework #2]].
Changed lines 25-26 from:
* [[Fall2008/CSCI210_Homework1 | Homework #1]] (not available yet).
to:
* [[Fall2008/CSCI210_Homework1 | Homework #1]].
Changed line 19 from:
* '''Test 1''': ''TBA''
to:
* '''Test 1''': Thursday, October 2, 2008
Added lines 35-36:
# [[http://www.paperprototyping.com/what.html | Paper prototyping]] - what is it?
Added line 69:
* [[http://scratch.mit.edu/ | Scratch]] environment [[http://youtube.com/watch?v=jxDw-t3XWd0 | intro video]], and [[http://youtube.com/watch?v=ix6Hlt8xL3E | image effects video]]. Also [[http://scratch.mit.edu/files/ScratchGettingStarted.pdf | Getting Started (PDF)]], and [[http://scratch.mit.edu/files/ScratchReferenceGuide.pdf | Reference Guide (PDF)]].
Changed lines 33-37 from:
* Geoff Howland, "[[http://www.gamedev.net/reference/design/features/makegames/default.asp | How do I make games? A Path to Game Development]]".
* Schiesel, S. "[[Fall2006/CSCI299_NYTimes1 | Online Game, Made in U.S., Seizes
the Globe]]", New York Times, September 5, 2006.
* [[Fall2006/Games and violence]] readings.
*
Laitinen, S. "[[http://www.gamasutra.com/features/20050623/laitinen_pfv.htm | Better Games Through Usability Evaluation and Testing]]", Gamasutra, June 23, 2005.
to:
# [[http://agile.csc.ncsu.edu/pairlearning/educators.php | An introduction to pair programming]]. [-This 9-minute video describes what pair programming is, the do's and don'ts of effective pairing, and the pros and cons of pair programming. Here is the [[http://agile.csc.ncsu.edu/pairlearning/worksheet.pdf | accompanying worksheet]].-]

# Geoff Howland, "[[http://www.gamedev.net/reference/design/features/makegames/default.asp | How do I make games? A Path to Game Development]]".
# Schiesel, S. "[[Fall2006/CSCI299_NYTimes1 | Online Game, Made in U.S., Seizes the Globe]]", New York Times, September 5, 2006.
# [[Fall2006/Games and violence]] readings.
#
Laitinen, S. "[[http://www.gamasutra.com/features/20050623/laitinen_pfv.htm | Better Games Through Usability Evaluation and Testing]]", Gamasutra, June 23, 2005.
Deleted lines 48-49:
* [[http://www.prey.com/ | Prey]] - first-person-shooter game built on an enhanced Doom 3 engine.
Changed lines 15-16 from:
* Student %newwin%[[http://www.cs.cofc.edu/~manaris/notes/pmwiki.php/CSCI210Fall2008/ | wiki for lecture notes]] [- (requires password, opens new window) -]
to:
* Student %newwin%[[http://www.cs.cofc.edu/~manaris/notes/pmwiki.php/CSCI210Fall2008/StudentNotes | wiki for lecture notes]] [- (requires password, opens new window) -]
Changed lines 9-10 from:
An introduction to general computer programming. Through game development, students will be exposed to computer modeling, data visualization, and media transformations: images, sounds, music, and text. Programming exercises will mainly involve computer games and animations developed in Python and VPython. Students will develop at least one computer game of their choice. Upon completion of the course, students will be able to develop programs to model information and processes in their field of study.
to:
A course introducing principles of game programming, including computer modeling, data visualization and animations, media transformations, and video game ethics. Students will be exposed to several game engines, a scripting language, and develop at least one game.
Deleted lines 12-13:
'''Prerequisite:''' Mathematics 111 or permission of instructor.
Changed lines 21-22 from:
* '''Final''': 4-7pm, Tuesday, December 12, 2006
to:
* '''Final''': 12-3pm, Tuesday, December 16, 2008
Deleted lines 26-27:
* [[Fall2006/CSCI299_FinalProject | Final Project]].
Changed lines 30-33 from:
* [[Fall2006/CSCI299Vectors | Vector]] overview in VPython.
* M. Bailey's [[http://www.edcenter.sdsu.edu/cs575viz/viz_files/frame.htm | Computer Graphics and Visualization]] transparencies.
* Introduction to [[http://en.wikipedia.org/wiki/Sonification | sonification]] [-(also see earlier [[http://www.cs.cofc.edu/~manaris/index.php/Fall2005/CSCI221Homework1 | assignment]])-].
to:
Changed lines 33-34 from:
* Wikipedia, [[http://en.wikipedia.org/wiki/Computer_and_video_game_genres | Computer and video game genres]].
* Wikipedia, [[http://en.wikipedia.org/wiki/Roguelike | Roguelike computer games
]] - games for ASCII platforms.
to:
* Geoff Howland, "[[http://www.gamedev.net/reference/design/features/makegames/default.asp | How do I make games? A Path to Game Development]]".
Changed line 35 from:
* [[Games and violence]] readings.
to:
* [[Fall2006/Games and violence]] readings.
Changed lines 37-58 from:
* Geoff Howland, "[[http://www.gamedev.net/reference/design/features/makegames/default.asp | How do I make games? A Path to Game Development]]".
* P. Prusinkiewicz and A. Lindenmayer (1990), "[[http://algorithmicbotany.org/papers/#abop | The Algorithmic Beauty of Plants]]", Springer-Verlag.
** Also see Wikipedia [[http://en.wikipedia.org/wiki/L-system | intro to L-systems]].
* Worth, P., Stepney, S. (2005), "[[http://www-users.cs.york.ac.uk/susan/bib/ss/nonstd/eurogp05/index.html | Growing Music: musical interpretations of L-Systems]]". EvoMUSART2005 3rd European Workshop on Evolutionary Music and Art, Lausanne, Switzerland, Lecture Notes in Computer Science, Applications of Evolutionary Computing, LNCS 3449, Springer-Verlag.

!!Code

* [[http://mcsp.wartburg.edu/zelle/python/code | Sample programs]] from textbook.
* Python [[http://vsbabu.org/mt/archives/2002/02/20/sample_script_operator_overloading.html | operator overloading example]].
* Input from file(s) provided as program argument(s): [[http://docs.python.org/lib/module-fileinput.html | fileinput module]].
* Keyboard input events through [[http://www.amk.ca/python/howto/curses/ | curses]] (for MS Windows use [[http://adamv.com/dev/python/curses/ | wcurses]]).

* L-Systems: [[(Attach:)l-system.koch.py]], [[(Attach:)l-system.tree.py]].
** require [[(Attach:)stack.py]], [[(Attach:)lsystem.py]] [-([[http://ada.rg16.asn-wien.ac.at/~python/xturtle/ | docs]])-], [[(Attach:)xturtle.py]] [-([[http://www.alcyone.com/pyos/lsystem/ | docs]])-].

* [[http://jmusic.ci.qut.edu.au/ | jMusic]] - a programming library for sound and music applications in Java [-([[http://www.cs.cofc.edu/~manaris/index.php/JMUSIC/Docs | docs]])-].
** Download Jython + jMusic bundle: [[http://www.cs.cofc.edu/~manaris/uploads/jythonMusic.zip | jython and jMusic]] [-(4MB)-] or [[http://www.cs.cofc.edu/~manaris/uploads/jythonMusicPlusJava.zip | jython, jMusic and Java Runtime]] [-(16MB)-].
** MIDI: [[(Attach:)bing.py]], [[(Attach:)myFavoriteMelody.py]], [[(Attach:)stochastic.py]].
** Audio: [[(Attach:)sonOfBing.py]], [[(Attach:)audioReadWrite.py]], [[(Attach:)audioVisualize.py]], [[(Attach:)audioDrums.py]] [-(samples for [[http://jmusic.ci.qut.edu.au/jmdemos/Hats.au | hihat]], [[http://jmusic.ci.qut.edu.au/jmdemos/HHOpen.au | open hihat]], [[http://jmusic.ci.qut.edu.au/jmdemos/Kick.au | kick]], and [[http://jmusic.ci.qut.edu.au/jmdemos/Snare.au | snare]])-].
** L-Systems: [[(Attach:)l-system.music.py]] (requires [[(Attach:)stack.py]], [[(Attach:)lsystem.py]] [-([[http://www.alcyone.com/pyos/lsystem/ | docs]])-]).
to:
Added lines 40-41:
* Wikipedia, [[http://en.wikipedia.org/wiki/Computer_and_video_game_genres | Computer and video game genres]].
* Wikipedia, [[http://en.wikipedia.org/wiki/Game_engine | Overview of Game Engines]].
Changed lines 46-47 from:
* Wikipedia, [[http://en.wikipedia.org/wiki/Game_engine | Overview of Game Engines]].
to:
Deleted lines 54-55:
* [[http://www.granularsynthesis.com/guide.php | Granular synthesis]] - a method by which sounds are broken into tiny grains which are then redistributed and reorganized to form other sounds. Also, see this [[http://www.sfu.ca/~truax/gran.html | entry]].
Changed line 58 from:
** Python 2.4 [[http://rgruet.free.fr/PQR24/PQR2.4.html | quick reference]].
to:
** Python 2.5 [[http://rgruet.free.fr/PQR25/PQR2.5.html | quick reference]].
Changed lines 60-62 from:
* [[(http://www.)Jython(.org/Project/index.html)]] (Java + Python) official site.
* [[http://jmusic.ci.qut.edu.au/ | jMusic]] - a programming library for sound and music applications in Java. Also see [[http://www.cs.cofc.edu/~manaris/index.php/JMUSIC/Setup | jMusic]] setup instructions and documentation.
to:
Deleted lines 63-64:
* CPython with Media Support for MS Windows. [-(For other platforms, see the [[http://coweb.cc.gatech.edu/mediaComp-plan/117 | CPython Media source site]].)-]
** [[Python Media API | API reference]], [[(CPython Media )installation instructions]].
Deleted lines 66-72:
!!!Data Visualization

* [[http://zunzun.com/| ZunZun]] - on-line 2D and 3D data modeling and visualization.
* [[http://en.wikipedia.org/wiki/VRML | VRML]] (Virtual Reality Modeling Language, usually pronounced ''vermal'') is a standard file format for representing 3-dimensional (3D) interactive vector graphics.
* [[http://simkin.asu.edu/holodraw/ | HoloDraw]] is free VRML converter of data to rotating, fly-through and fly-by 3D images (Unix, Mac or Windows).
* Free VRML Viewers: [[http://www.sim.no/products/SIM_VRMLview/ | SIM VRMLview]], [[http://www.parallelgraphics.com/products/cortona/ | Cortona VRML Client]], [[http://ovrt.nist.gov/cosmo/ | CosmoPlayer]].
Changed lines 75-77 from:
* [[http://www.blender.org | Blender]] - 3D modeling, animation, rendering, post-production, interactive creation and playback:
** [[http://blender.org/cms/About%20Blender.20.0.html | overview]], [[http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Blender_Interface | tutorial]], [[http://www.blender.org/modules/documentation/228PythonDoc/Blender-module.html | API reference]], [[http://www.blender.org/cms/Wizards.6.0.html | examples]].
to:
Added lines 29-84:
* [[Fall2006/CSCI299_FinalProject | Final Project]].

!!Handouts

* J. Zelle's ''Teaching Computer Science with Python'' transparencies: [[Attach:sigcse-slides.pdf | one slide per page]] and [[Attach:sigcse-handout.pdf | four slides per page]] (PDF).
* [[Fall2006/CSCI299Vectors | Vector]] overview in VPython.
* M. Bailey's [[http://www.edcenter.sdsu.edu/cs575viz/viz_files/frame.htm | Computer Graphics and Visualization]] transparencies.
* Introduction to [[http://en.wikipedia.org/wiki/Sonification | sonification]] [-(also see earlier [[http://www.cs.cofc.edu/~manaris/index.php/Fall2005/CSCI221Homework1 | assignment]])-].

!!Readings

* Wikipedia, [[http://en.wikipedia.org/wiki/Computer_and_video_game_genres | Computer and video game genres]].
* Wikipedia, [[http://en.wikipedia.org/wiki/Roguelike | Roguelike computer games]] - games for ASCII platforms.
* Schiesel, S. "[[Fall2006/CSCI299_NYTimes1 | Online Game, Made in U.S., Seizes the Globe]]", New York Times, September 5, 2006.
* [[Games and violence]] readings.
* Laitinen, S. "[[http://www.gamasutra.com/features/20050623/laitinen_pfv.htm | Better Games Through Usability Evaluation and Testing]]", Gamasutra, June 23, 2005.
* Geoff Howland, "[[http://www.gamedev.net/reference/design/features/makegames/default.asp | How do I make games? A Path to Game Development]]".
* P. Prusinkiewicz and A. Lindenmayer (1990), "[[http://algorithmicbotany.org/papers/#abop | The Algorithmic Beauty of Plants]]", Springer-Verlag.
** Also see Wikipedia [[http://en.wikipedia.org/wiki/L-system | intro to L-systems]].
* Worth, P., Stepney, S. (2005), "[[http://www-users.cs.york.ac.uk/susan/bib/ss/nonstd/eurogp05/index.html | Growing Music: musical interpretations of L-Systems]]". EvoMUSART2005 3rd European Workshop on Evolutionary Music and Art, Lausanne, Switzerland, Lecture Notes in Computer Science, Applications of Evolutionary Computing, LNCS 3449, Springer-Verlag.

!!Code

* [[http://mcsp.wartburg.edu/zelle/python/code | Sample programs]] from textbook.
* Python [[http://vsbabu.org/mt/archives/2002/02/20/sample_script_operator_overloading.html | operator overloading example]].
* Input from file(s) provided as program argument(s): [[http://docs.python.org/lib/module-fileinput.html | fileinput module]].
* Keyboard input events through [[http://www.amk.ca/python/howto/curses/ | curses]] (for MS Windows use [[http://adamv.com/dev/python/curses/ | wcurses]]).

* L-Systems: [[(Attach:)l-system.koch.py]], [[(Attach:)l-system.tree.py]].
** require [[(Attach:)stack.py]], [[(Attach:)lsystem.py]] [-([[http://ada.rg16.asn-wien.ac.at/~python/xturtle/ | docs]])-], [[(Attach:)xturtle.py]] [-([[http://www.alcyone.com/pyos/lsystem/ | docs]])-].

* [[http://jmusic.ci.qut.edu.au/ | jMusic]] - a programming library for sound and music applications in Java [-([[http://www.cs.cofc.edu/~manaris/index.php/JMUSIC/Docs | docs]])-].
** Download Jython + jMusic bundle: [[http://www.cs.cofc.edu/~manaris/uploads/jythonMusic.zip | jython and jMusic]] [-(4MB)-] or [[http://www.cs.cofc.edu/~manaris/uploads/jythonMusicPlusJava.zip | jython, jMusic and Java Runtime]] [-(16MB)-].
** MIDI: [[(Attach:)bing.py]], [[(Attach:)myFavoriteMelody.py]], [[(Attach:)stochastic.py]].
** Audio: [[(Attach:)sonOfBing.py]], [[(Attach:)audioReadWrite.py]], [[(Attach:)audioVisualize.py]], [[(Attach:)audioDrums.py]] [-(samples for [[http://jmusic.ci.qut.edu.au/jmdemos/Hats.au | hihat]], [[http://jmusic.ci.qut.edu.au/jmdemos/HHOpen.au | open hihat]], [[http://jmusic.ci.qut.edu.au/jmdemos/Kick.au | kick]], and [[http://jmusic.ci.qut.edu.au/jmdemos/Snare.au | snare]])-].
** L-Systems: [[(Attach:)l-system.music.py]] (requires [[(Attach:)stack.py]], [[(Attach:)lsystem.py]] [-([[http://www.alcyone.com/pyos/lsystem/ | docs]])-]).


!!References

* Alternative user interfaces (UIs) for game (and other) development:
** [[http://mrl.nyu.edu/~jhan/ftirtouch/ | Multi-Touch Interaction]] - bi-manual, multi-point, and multi-user interactions on a graphical interaction surface.
** [[http://www.ercim.org/publication/Ercim_News/enw57/leikas.html| Pressure-sensitive floor tiles]] - users interact intuitively and naturally with the environment and with each other.
** [[http://www.bodypad.com/eng/QuestionsMainPoints.php | Bodypad game controller]] actuated by the body.
* Wikipedia, [[http://en.wikipedia.org/wiki/Game_engine | Overview of Game Engines]].

* [[http://www.prey.com/ | Prey]] - first-person-shooter game built on an enhanced Doom 3 engine.

* Stock photos [[(http://)www.sxc.hu]], [[(http://)morguefile.com]].
* Textures [[(http://)www.mayang.com/textures]], [[(http://)www.imageafter.com]], [[(http://)www.spiralgraphics.biz(/packs)]].

* [[http://www.writedesignonline.com/resources/design/rules/color.html | Color design rules]] - rules of thumb about color.
* [[(http://wellstyled.com/tools/colorscheme2/index-en.html | Color wheel]] for user interface design.

* [[http://www.granularsynthesis.com/guide.php | Granular synthesis]] - a method by which sounds are broken into tiny grains which are then redistributed and reorganized to form other sounds. Also, see this [[http://www.sfu.ca/~truax/gran.html | entry]].
Changed lines 87-103 from:
!!!Jython

* [[http://www-static.cc.gatech.edu/classes/AY2006/cs1315_summer/software/JES.zip | Jython Environment for Students]]. [-('''Note:''' For other platforms, see the [[http://www-static.cc.gatech.edu/classes/AY2006/cs1315_summer/software.html#JES | JES source site]].)-]

!!!CPython

* [[http://www.python.org/ftp/python/2.4.1/python-2.4.1.msi | Python 2.4]]
* [[http://vpython.org/download/VPython-Win-Py2.4-3.2.9.exe | Vpython]]
* MS Windows Media Support for Python 2
.4. [-('''Note:''' For other platforms, see the [[http://coweb.cc.gatech.edu/mediaComp-plan/117 | CPython Media source site]].)-]\\
Install in this order
:
** [[http://effbot.org/downloads/PIL-1.1.5.win32-py2.4.exe | Python Imaging Library 1.1.5 for Python 2.4]]
** [[http://pygame.org/ftp/pygame-1.7.1release.win32-py2.4.exe | pygame-1.7.1release.win32-py2.4.exe]]
** [[http://prdownloads
.sourceforge.net/numpy/Numeric-24.2.win32-py2.4.exe | Numeric-24.2.win32-py2.4.exe]]
**
[[http://coweb.cc.gatech.edu/mediaComp-plan/uploads/117/media.py-1.win32.exe | media.py-1.win32.exe]]
** Then, go to directory C:\Python24\Lib\site-packages\media
and
*** Delete all six files -- YES, delete them!
*** Save the following updated files,
[[(http://www.cs.cofc.edu/~manaris/download/)__init__.py]] and [[(Attach:)media.py]], into that directory.
to:
* [[(http://www.)Python(.org)]] official site.
** Python 2.4 [[http:
//rgruet.free.fr/PQR24/PQR2.4.html | quick reference]].
** Guido van Rossum (2006), [[http://docs.python.org/tut/tut.html | "The Python Tutorial"]] (also available under Help within IDLE).
*
[[(http://www.)Jython(.org/Project/index.html)]] (Java + Python) official site.
* [[http://jmusic.ci.qut.edu.au/ | jMusic]] - a programming library for sound and music applications in Java. Also see [[http://www.cs.cofc.edu/~manaris/index.php/JMUSIC/Setup | jMusic]] setup instructions and documentation.

!!!Media Manipulation

* [[http
://www.irfanview.com/ | Irfan View]] image viewer - a useful image manipulation utility.
* CPython with Media Support for MS Windows. [-(For other platforms, see the [[http://coweb.cc.gatech.edu/mediaComp-plan/117 | CPython Media source site]].)-]
** [[Python Media API | API reference]],
[[(CPython Media )installation instructions]].
* [[http://www
.pythonware.com/products/pil/ | Python Imaging Library]] - supports many file formats, and provides powerful image processing and graphics capabilities:
** [[http://www.pythonware.com/library/pil/handbook/overview.htm | overview]],
[[http://www.pythonware.com/library/pil/handbook/introduction.htm | tutorial]], [[http://www.pythonware.com/library/pil/handbook/concepts.htm | concepts]], [[http://www.pythonware.com/library/pil/handbook/index.htm | API reference]].

!!!Data Visualization

* [[http://zunzun.com/| ZunZun]] - on-line 2D and 3D data modeling and visualization.
* [[http://en.wikipedia.org/wiki/VRML | VRML]] (Virtual Reality Modeling Language, usually pronounced ''vermal'') is a standard file format for representing 3-dimensional (3D) interactive vector graphics.
* [[http://simkin.asu.edu/holodraw/ | HoloDraw]] is free VRML converter of data to rotating, fly-through and fly-by 3D images (Unix, Mac or Windows).
* Free VRML Viewers: [[http://www.sim.no/products/SIM_VRMLview/ | SIM VRMLview]], [[http://www.parallelgraphics.com/products/cortona/ | Cortona VRML Client]], [[http://ovrt.nist.gov/cosmo/ | CosmoPlayer]].

!!!Engines for Visualization and Game Development [-(Python, freeware)-]

* [[http://www.vpython.org | Vpython]] - interactive 3D data visualization and modeling for novice programmers:
** [[http://vpython.org/VisualOverview.html | overview]], [[http://vpython.org/VPython_Intro.pdf | tutorial]] (PDF), [[http://vpython.org/webdoc/visual/index.html | API reference]], [[http://vpython.org/contributed.html | examples]].
* [[http://pygame.org/ | PyGame]] - fully featured 2D games and multimedia programs:
** [[http://www.pygame.org/docs/tut/intro/intro.html | overview]], [[http://www.pygame.org/docs/tut/chimp/ChimpLineByLine.html | tutorial]], [[http://www.pygame.org/docs/ref/index.html | API reference]], [[http://mu.arete.cc/pcr/cat/pygame | examples]], [[http://pygame.org/wiki/resources | resources]].
* [[http://www.panda3d.org/ | Panda3D]] - a 3D engine for rendering and game development:
** [[http://www.python.org/pycon/dc2004/papers/29/ | overview]], [[http://panda3d.org/wiki/index.php/A_Panda_%22Hello_World%22 | tutorial]], [[http://panda3d.org/wiki/index.php/Main_Page | manual]], [[http://panda3d.org/wiki/index.php/Examples_Contributed_by_the_Community | examples]].
* [[http://www.blender.org | Blender]] - 3D modeling, animation, rendering, post-production, interactive creation and playback:
** [[http://blender.org/cms/About%20Blender.20.0.html | overview]], [[http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Blender_Interface | tutorial]], [[http://www.blender.org/modules/documentation/228PythonDoc/Blender-module.html | API reference]], [[http://www.blender.org/cms/Wizards.6.0.html | examples]].

!!!User Interface

* [[http://pyui.sourceforge.net/ | PyUI]] - a simple user interface library in Python
.
Added lines 1-47:
!Game Programming

!!When/Where

TR 1:40-2:55PM / ECTR 109

!!Description

An introduction to general computer programming. Through game development, students will be exposed to computer modeling, data visualization, and media transformations: images, sounds, music, and text. Programming exercises will mainly involve computer games and animations developed in Python and VPython. Students will develop at least one computer game of their choice. Upon completion of the course, students will be able to develop programs to model information and processes in their field of study.

Course is open to any major. No previous programming experience required.

'''Prerequisite:''' Mathematics 111 or permission of instructor.

* %newwin%[[Fall2008.CSCI210_Course_Syllabus | Course syllabus]]

* Student %newwin%[[http://www.cs.cofc.edu/~manaris/notes/pmwiki.php/CSCI210Fall2008/ | wiki for lecture notes]] [- (requires password, opens new window) -]

!!Test Dates

* '''Test 1''': ''TBA''
* '''Test 2''': ''TBA''
* '''Final''': 4-7pm, Tuesday, December 12, 2006

!!Assignments

* [[Fall2008/CSCI210_Homework1 | Homework #1]] (not available yet).

!!Software

!!!Jython

* [[http://www-static.cc.gatech.edu/classes/AY2006/cs1315_summer/software/JES.zip | Jython Environment for Students]]. [-('''Note:''' For other platforms, see the [[http://www-static.cc.gatech.edu/classes/AY2006/cs1315_summer/software.html#JES | JES source site]].)-]

!!!CPython

* [[http://www.python.org/ftp/python/2.4.1/python-2.4.1.msi | Python 2.4]]
* [[http://vpython.org/download/VPython-Win-Py2.4-3.2.9.exe | Vpython]]
* MS Windows Media Support for Python 2.4. [-('''Note:''' For other platforms, see the [[http://coweb.cc.gatech.edu/mediaComp-plan/117 | CPython Media source site]].)-]\\
Install in this order:
** [[http://effbot.org/downloads/PIL-1.1.5.win32-py2.4.exe | Python Imaging Library 1.1.5 for Python 2.4]]
** [[http://pygame.org/ftp/pygame-1.7.1release.win32-py2.4.exe | pygame-1.7.1release.win32-py2.4.exe]]
** [[http://prdownloads.sourceforge.net/numpy/Numeric-24.2.win32-py2.4.exe | Numeric-24.2.win32-py2.4.exe]]
** [[http://coweb.cc.gatech.edu/mediaComp-plan/uploads/117/media.py-1.win32.exe | media.py-1.win32.exe]]
** Then, go to directory C:\Python24\Lib\site-packages\media and
*** Delete all six files -- YES, delete them!
*** Save the following updated files, [[(http://www.cs.cofc.edu/~manaris/download/)__init__.py]] and [[(Attach:)media.py]], into that directory.