I want to involve the community in the designing of RF2. I'd like to know your requirements to make your game so that I can make RF2 as generic as possible. This will allow RF2 to be used for anything from a first person shooter to a point and click strategy game to a story driven RPG.
In this post, I would like your requirements for the camera. I will list out what I have so far and you tell me what you require by replying to this post.
Camera Design
-- Shell should be allowed to create multiple cameras and switch between them in the game (e.g. Security Camera)
-- Camera should be attached to the Ogre Compositor framework to allow post-screen shaders (e.g Bloom, Blur)
-- Camera should be able to be attached to other objects so that it follows. A camera not attached to an object is a free-look camera
-- Camera should expose properties to script which allow the users to create their own camera styles and modify the camera in the game. Properties that should be exposed are:
* Offset (Vector3) - Offset of the camera position to the attached object
* Drag (float) - Value for dragging the camera when a player starts moving
* FOV (float) - Field of view in radians
-- Camera should be able to turn collision on and off when needed
-- Camera should be attached to the physics system for realistic movement and reaction.
Last edited by paradoxnj on Wed Jan 06, 2010 8:04 pm, edited 1 time in total.
Reason:Added QoD's suggestions and attaching camera to physics system
I think you got the essential properties right there. Maybe the type of projection (orthographic / perspective) and field of view would be nice to configure per camera, though these might just be specified when creating a camera...
Is the drag value just related to translations or also rotations?
It would also be nice to be able to change the rotation of the camera by script (I only see the position property in your list, would be a vector3). Other than that, i think you have all the essential properties.
Everyone can see the difficult, but only the wise can see the simple.
-----
@zany - Stereoscopic gaming is a very new technology. This will not be available day one but is a good suggestion to incorporate into the shell eventually.