Skip to content

jnsnow/OpenGL

master
Switch branches/tags
Code

Latest commit

These are bad and hacky too, but I'm the captain of this sinking ship
89592cb

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 

HSC

  • This is the Readme file for the UMass Lowell Computer Graphics 2 class project, Spring semester 2013. It it based on the Computer Graphics 1 final project by Chris Compton, Nick St. Pierre, and John Huston.

License

TBD.

Authors

  • Chris Compton - Particle Systems, Graphical User Interface

  • John Fallon -- Graphical User Interface

  • Greg Giannone -- Modelling, Shaders, Bugfixes

  • John Huston -- Engine, Debugging, Wii Support, Components Integration

  • Franck Kamayou -- Graphical User Interface

  • Zach Maybury -- Model Morphing Logistics, Morphing UI Integration

  • Eric McCann -- Integration, Logistics, Bugfixes, Raytracing, Lighting, Kinect Support, Git Guru

  • Hoanh Nguyen -- Raytracing, Lighting

  • Nick St.Pierre -- Particle Systems, Math, Sound

  • Luan Tran -- Graphical User Interface (Linux Support)

  • Nick VerVoort -- Particle Systems, Modelling, Lighting

Third-Party Libraries

  • OpenGL, GLEW, Freeglut, and the usual suspects.

  • Libmagick++: Image loader, utilized for converting JPEG tetxures to RGBA.

  • LibWiiC/++: Wii Remote driver library, see Gabrielle Randelli below.

  • exprtk: C++ Mathematical Expression Library, Arash Parttow, http://www.partow.net/programming/exprtk/index.html

  • fModEX: Sound library, http://www.fmod.org/

  • QT: Multi-platform GUI library

Credits and Acknowledgements

  • Etay Mieri, olgdev.atspace.co.uk: Invaluable tutorials on OpenGL, and 99.9% of our Texture class.

  • Daniel Beard, Paul Boxley and Paul Martz: Information and code for generating random terrain. The code we eventually implemented is heavily modified from Daniel Beard's implementation, using Boxley and Martz's writeups as guidelines.

  • Ed Angel: Author of "Interactive Computer Graphics: A Top-Down Approach," Provided the basis of our executable's main skeleton, and 99.9% of our vec and mat classes, from his book's code.

  • Gabriele Randelli: Lead developer of the WiiC/PP library, which itself has been developed out of the (now defunct) WiiUse library, authored by Michael Laforest.

  • Dan Lecocq: For a really great blog post on how to draw a mesh with GL_TRIANGLE_STRIPs. http://dan.lecocq.us/wordpress/2009/12/25/triangle-strip-for-grids-a-construction/

  • Simon Murray: Founder of www.goodtextures.com from which we obtained all of our terrain textures.

  • blacknote: Composer of Forever Endless, our audio loop. blacknote: http://blacknote.newgrounds.com/ Forever Endless: http://www.newgrounds.com/audio/listen/371629

Outdated HSC Readme

  • This is our Graphics I final project for Prof. Grinstein, at UMass Lowell, Fall 2012.

  • It has been written ground-up without utilizing the fixed-pipeline API of OpenGL.

  • It implements a fully Object-Oriented scene graph, independent and arbitrary cameras (realized via splitscreen), and multiple methods of input.

  • The project features prominently random terrain generation. This is performed using the Diamond-Square algorithm; see below for additional reading on the technique.

  • This project utilizes a lot of code snippets, libraries and ideas from a variety of authors. They are credited above!

  • To build the project, pushd Flythrough && make; To run, pushd Flythrough && ./fly;

  • Controls (as of Mon 03 Dec 2012) w,a,s,d: Forward, back, strafe left and right (As in most commercial FPS games) q,e: Fly up, Fly down. mouse: Look around. click and move mouse: Rotate left or right. right-click: Open a menu that allows you to toggle mouselook between fixed-y and free-y rotations.

    z,x,c,v,b: Various perspective modes; z: Perspective x: Ortho2D b: Identity

    l: Generate new terrain.

    +,-: Add or remove cameras.

    left,right: Cycle between the active scene objects.

    F1,F2,F3,F4: Change the rendering mode of the active scene object. F1: GL_POINTS F2: GL_LINE_LOOP F3: GL_TRIANGLE_STRIP F4: GL_TRIANGLES

    Wiimote Minus Button: Enable/Calibrate Gyroscope Keyboard '~': Calibrate Gyroscope, Reset Camera.

    Wiimote Balance Board Button: Begin Tare (Calibrate to Zero.)

  • wiic/pp library utilizes the LGPL license, The source code is included in our source tree here for convenience, with minor alterations.

About

An OpenGL project for UML Graphics I with Professor Grinstein

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published