The Camera

1 / 17

# The Camera - PowerPoint PPT Presentation

The Camera. Course Information CVG: Programming 4 My Name: Mark Walsh Website: www.activehelix.co.uk/courses Recommended Reading Introduction to 3D Game Programming with DirectX 9.0 (Frank D. Luna). Re-Cap. Local Space World Space View Space. Local Space. World Space. View Space.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' The Camera' - kale

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
The Camera

Course Information

• CVG: Programming 4
• My Name: Mark Walsh
• Website: www.activehelix.co.uk/courses

• Introduction to 3D Game Programming with DirectX 9.0 (Frank D. Luna)
Re-Cap
• Local Space
• World Space
• View Space
Flexible Camera Class
• Objective is to build a flexible FP based games camera: Flight Simulators and Shooters
• The first stage is camera design
Camera Design
• The camera position is defined relative to the world coordinate system using 4 vectors
• Right, Up, Look, Position
• They define a local coordinate system relative to the world coordinate system
• They are therefore the orientation vectors
• The orientation vectors must be orthonormal
• Mutually perpendicular to each other
• Of Unit Length
• A row matrix where the rows are made up of orthonormal vectors is orthagonal
Camera Operations
• Using the 4 vectors we wish to be able to:
• Rotate around the right vector or X axis (Pitch)
• Rotate around the up vector or Y axis (Yaw)
• Rotate around the look vector Z axis (Roll)
• Strafe along the right vector
• Fly along the up vector
• Move along the look vector
Implementation
• We calculate the view matrix using the camera vectors
• Remember that view space transforms the geometry in the world…
• …so that the camera is centred at the origin and the axes are aligned with the major coordinate axes
Rotation
• D3DXMatrixRotationAxis
• Angle in Radians to Rotate
• Rotate around arbitrarily defined vector
Walking, Strafing, Flying
• Walking = Moving along the Look vector
• Strafing = Moving along the Right vector
• Flying = Moving along the Up Vector
To move we add a vector to our position vector
• The should have the same direction
• Need to set restrictions
• Walking, flying distinctions