Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Nov 24, 2010
  1. Added an example which prints out model info.

    It loads a model in any supported file format (.obj and .ply at time of
    writing) and prints out the number of polygons, vertices, textures, etc.
Commits on Oct 29, 2010
  1. Some more example programs.

    Demonstrating the use of the stencil buffer and shadow mapping.
Commits on Oct 19, 2010
Commits on Oct 18, 2010
  1. Added an example of per-face colours.

    The example uses a geometry shader to set texture coords depending on which
    face is being rendered.
Commits on Oct 13, 2010
  1. Switched to a 16 bit-per-channel renderbuffer.

    We'll probably need the extra precision...
  2. Got the picking example working.

    It doesn't use a render buffer yet though.
Commits on Oct 12, 2010
  1. More work on the picking implementation.

    Attempting to use shaders and vertex buffers to render both the picking and visual images. Doesn't totally work yet though...
Commits on Oct 11, 2010
  1. Added an example of GL-accelerated picking.

    Also fixed a compile error in the raymarch example.
Commits on Sep 5, 2010
  1. Pressing keys '0'-'6' sets a predefined camera position.

    Also got transparency rendering correctly. It wasn't enabled before.
Commits on Aug 31, 2010
  1. Added raymarch example.

    This is code ported in from a separate project. Using VGL meant cutting the lines of code by a third while ADDING functionality. Yay VGL! :-)
Commits on Aug 19, 2010
  1. Modified the other examples to use the default camera instead of prov…

    …iding their own.
    Where appropriate, of course.
    The arcball example still explicitly provides a camera, even though it's actually the same as the default camera we'd get. But the point of that example is to show how to create and use an ArcballCamera, so it seemed counter-productive to take it out...
    Naturally the imageview example still uses an OrthoCamera, too.
  2. Removed the checkGLError function from example.cpp, since we already …

    …have a function for that in core VGL.
  3. Switched the order of the camera and renderer parameters in the Viewe…

    …r constructor.
    Updated all the examples as well.
Commits on Aug 18, 2010
  1. Moved the ArcballCamera class into the main VGL codebase.

    No longer just an example. :-)
  2. Refactored the arcball camera to override the roll and move methods f…

    …rom BaseCamera, now that their signature matches what we need.
    Had to make some slight modifications to the arcball camera methods so that they work correctly with the values the default viewer gives it. The ArcballViewer class had been inverting the y coordinates before invoking the camera methods, but that should really have been done by the camera itself. Well, now it *is*.
    Was able to get rid of the ArcballViewer class altogether after that, which simplifies the example code nicely.
  3. Added an orthographic camera class to the main VGL code.

    This is a fancy way of saying that I moved the OrthoCamera from the imageview example into the main codebase. :-)
  4. Made the Camera class into a pure virtual class and moved it's functi…

    …onality into a subclass called BaseCamera.
    Updated all the examples which define their own camera classes to inherit from BaseCamera instead. Added an include line for the BaseCamera header into vgl.h. Added it to the Makefile. Tested. :-)
    This is another precursor to integrating the arcball camera (and the ortho camera from the imageview example too, now that you mention it) into the main VGL codebase.
  5. Cleaned up the arcball code.

    Roll works well enough now, but could be improved further still. In particular, when you reach the edge of the "ball" it just stops moving currently. It should transition to a virtual flat surface at that point instead and use that to determine how much to roll by.
    Move works... ish. The translation seems to happen before the camera transform is applied, so it translates along the world axes rather than the camera-local ones.
Commits on Aug 17, 2010
  1. Some arcball corrections and enhancements.

    The z value of 0 that I was passing in to the unproject function was incorrect. 0 means on the near clipping plane, but what I want is 0.5 (halfway between the near and far clipping planes).
    Added an arcballMove function which attempts to move the camera in the plane perpendicular to the view direction, rather than in the global X-Y plane. It doesn't work correctly - see the WTF message in the code - and I'm too tired to figure out why right now. Hopefully it'll make more sense after some rest.
Commits on Aug 16, 2010
  1. Got the arcball working... sort of.

    It works well for small rotations, but seems to be getting something
    like gimbal lock when you rotate about 180 degrees along any axis. Which
    is odd, since that's not supposed to happen with quaternions...
Commits on Aug 11, 2010
  1. Added some unit tests to the build and used them to get quaternions w…

    …orking properly.
    The unit tests only cover (some of) the quaternion functions so far, but the structure is there now to add more easily.
    Sadly the arcball code is still broken.
Commits on Aug 10, 2010
  1. WIP: adding arcball style camera controls. This doesn't work yet!

    It compiles but is full of bugs. This checkin is just so I've got a safety net...
Commits on Aug 8, 2010
  1. Added texture upload functionality to the RawImage class.

    Removed the corresponding code from the imageview example too.
Commits on Aug 7, 2010
  1. Added a simple image viewer as one of the example programs.

    It shows loading textures and orthographic projection using a custom
    camera subclass.
Commits on Aug 4, 2010
Commits on Aug 3, 2010
  1. Additional parser callbacks and changed the callbacks to use integer …

    Vilya Harvey authored
    …attribute IDs.
    - Added callbacks for additional attribute types: vec2, vec4, matrix3 and matrix4.
    - Parser callback functions now use integer constants to identify attribute instead of strings.
    - Updated the example code to match.
  2. Updated the examples Makefile so it doesn't automatically delete the …

    Vilya Harvey authored
    ….o files.
Something went wrong with that request. Please try again.