Viewing controller for three-dimensional computer graphics
First Claim
1. A method of controlling the view of a three-dimensional computer model from a virtual camera, the method being performed by a processing apparatus and comprising:
- receiving user instructions to change the view; and
rotating the virtual camera and computer model relative to each other in accordance with the user instructions and performing additional control of the relative rotations such that;
whenever the viewing direction of the camera and the up axis of the computer model are perpendicular, the up axis of the computer model is constrained to be parallel to the camera up axis;
but whenever the viewing direction of the camera and the up axis of the computer model are parallel, no additional control of the relative rotations is performed.
1 Assignment
0 Petitions
Accused Products
Abstract
In a 3D graphics processing apparatus 2, a virtual camera 100 is controlled to view a 3D computer model 120 in accordance with user instructions. The virtual camera 100 is constrained to move to different positions on a sphere around the 3D computer model in accordance with user instructions while having a viewing direction towards the centre of the sphere. In addition, processing apparatus 2 controls the camera in dependence upon the angle between the viewing direction of the camera and the up-axis of the 3D computer model such that (i) when the viewing direction of the camera and the up-axis of the computer model are perpendicular, the camera is controlled to cause the up-axis of the computer model to be parallel to the camera up-axis, (ii) when the viewing direction of the camera and the up-axis of the computer model are parallel, the camera is not controlled to constrain the relative directions of the camera up-axis, and the computer model up axis, and (iii) when the angle between the viewing direction of the camera and the up-axis of the computer model is between 0 and 90 degrees, the relative rotation of the camera and computer model is contained by an amount dependent upon the cosine of the angle.
-
Citations
22 Claims
-
1. A method of controlling the view of a three-dimensional computer model from a virtual camera, the method being performed by a processing apparatus and comprising:
-
receiving user instructions to change the view; and
rotating the virtual camera and computer model relative to each other in accordance with the user instructions and performing additional control of the relative rotations such that;
whenever the viewing direction of the camera and the up axis of the computer model are perpendicular, the up axis of the computer model is constrained to be parallel to the camera up axis;
butwhenever the viewing direction of the camera and the up axis of the computer model are parallel, no additional control of the relative rotations is performed. - View Dependent Claims (2, 3, 4, 5, 8, 9, 10, 21, 22)
-
-
6. A method of controlling the relative position and orientation of a virtual camera and a three-dimensional computer model, the method being performed by a processing apparatus, and comprising:
-
rotating the virtual camera and computer model relative to each other in accordance with user instructions; and
controlling the relative rotation of the camera and computer model such that;
the user can cause the computer model to spin in displayed images about the up axis of the computer model without the up axis of the computer model deviating from the vertical direction in the images; and
the user can cause the computer model to spin in displayed images about an axis perpendicular to the up axis of the computer model so that the computer model inverts in the images.
-
-
7. A method of controlling a virtual camera to view a three-dimensional computer model from different positions in accordance with user instructions in a three-dimensional computer graphics processing apparatus, the method being performed by the processing apparatus and comprising:
-
constraining the camera to move to different positions on a sphere around the three-dimensional computer model in accordance with user instructions while having a viewing direction towards the centre of the sphere; and
controlling the camera in dependence upon the angle between the viewing direction of the camera and the up axis of the three-dimensional computer model such that;
when the viewing direction of the camera and the up axis of the computer model are perpendicular, the camera is controlled to cause the up axis of the computer model to be parallel to the camera up axis;
when the viewing direction of the camera and the up axis of the computer model are parallel, the camera is not controlled to constrain the relative directions of the camera up axis and computer model up axis; and
when the angle between the viewing direction of the camera and the up axis of the computer model is between 0 degrees and 90 degrees, the relative rotation of the camera and computer model is constrained by an amount dependent upon the angle.
-
-
11. Apparatus for generating image data defining views of a three-dimensional computer model from a virtual camera, the apparatus comprising:
-
a renderer operable to process data defining a three-dimensional computer model and a virtual camera to generate image data defining images of the computer model as viewed from the virtual camera;
an instruction receiver operable to receive user instructions to change the view; and
a controller operable to rotate the virtual camera and computer model relative to each other in accordance with the user instructions;
wherein the controller is arranged to perform additional control of the relative rotations such that;
whenever the viewing direction of the camera and the up axis of the computer model are perpendicular, the up axis of the computer model is constrained to be parallel to the camera up axis;
butwhenever the viewing direction of the camera and the up axis of the computer model are parallel, no additional control of the relative rotations is performed. - View Dependent Claims (12, 13, 14, 15)
-
-
16. Apparatus for controlling the relative position and orientation of a virtual camera and a three-dimensional computer model and for generating image data defining images of the computer model as viewed from the virtual camera, the apparatus comprising:
-
a renderer operable to process data defining a three-dimensional computer model and a virtual camera to generate image data defining images of the computer model as viewed from the virtual camera;
a rotation generator operable to rotate the virtual camera and computer model relative to each other in accordance with user instructions; and
a controller operable to control the relative rotation of the camera and computer model such that;
the user can cause the computer model to spin in displayed images about the up axis of the computer model without the up axis of the computer model deviating from the vertical direction in the images; and
the user can cause the computer model to spin in displayed images about an axis perpendicular to the up axis of the computer model so that the computer model inverts in the images.
-
-
17. Apparatus for controlling a virtual camera to view a three-dimensional computer model from different positions in accordance with user instructions, the apparatus comprising:
-
a renderer operable to process data defining a three-dimensional computer model and a virtual camera to generate image data defining images of the computer model as viewed from the virtual camera;
a camera movement generator operable to constrain the camera to move to different positions on a sphere around the three-dimensional computer model in accordance with user instructions while having a viewing direction towards the centre of the sphere; and
a camera controller operable to control the camera in dependence upon the angle between the viewing direction of the camera and the up axis of the three-dimensional computer model such that;
when the viewing direction of the camera and the up axis of the computer model are perpendicular, the camera is controlled to cause the up axis of the computer model to be parallel to the camera up axis;
when the viewing direction of the camera and the up axis of the computer model are parallel, the camera is not controlled to constrain the relative directions of the camera up axis and computer model up axis; and
when the angle between the viewing direction of the camera and the up axis of the computer model is between 0 degrees and 90 degrees, the relative rotation of the camera and computer model is constrained by an amount dependent upon the angle.
-
-
18. Apparatus for generating image data defining views of a three-dimensional computer model from a virtual camera, the apparatus comprising:
-
means for processing data defining a three-dimensional computer model and a virtual camera to generate image data defining images of the computer model as viewed from the virtual camera;
means for receiving user instructions to change the view; and
control means for rotating the virtual camera and computer model relative to each other in accordance with the user instructions;
wherein the control means is arranged to perform additional control of the relative rotations such that;
whenever the viewing direction of the camera and the up axis of the computer model are perpendicular, the up axis of the computer model is constrained to be parallel to the camera up axis;
butwhenever the viewing direction of the camera and the up axis of the computer model are parallel, no additional control of the relative rotations is performed.
-
-
19. Apparatus for controlling the relative position and orientation of a virtual camera and a three-dimensional computer model and for generating image data defining images of the computer model as viewed from the virtual camera, the apparatus comprising:
-
means for processing data defining a three-dimensional computer model and a virtual camera to generate image data defining images of the computer model as viewed from the virtual camera;
means for rotating the virtual camera and computer model relative to each other in accordance with user instructions; and
means for controlling the relative rotation of the camera and computer model such that;
the user can cause the computer model to spin in displayed images about the up axis of the computer model without the up axis of the computer model deviating from the vertical direction in the images; and
the user can cause the computer model to spin in displayed images about an axis perpendicular to the up axis of the computer model so that the computer model inverts in the images.
-
-
20. Apparatus for controlling a virtual camera to view a three-dimensional computer model from different positions in accordance with user instructions, the apparatus comprising:
-
means for processing data defining a three-dimensional computer model and a virtual camera to generate image data defining images of the computer model as viewed from the virtual camera;
means for constraining the camera to move to different positions on a sphere around the three-dimensional computer model in accordance with user instructions while having a viewing direction towards the centre of the sphere; and
means for controlling the camera in dependence upon the angle between the viewing direction of the camera and the up axis of the three-dimensional computer model such that;
when the viewing direction of the camera and the up axis of the computer model are perpendicular, the camera is controlled to cause the up axis of the computer model to be parallel to the camera up axis;
when the viewing direction of the camera and the up axis of the computer model are parallel, the camera is not controlled to constrain the relative directions of the camera up axis and computer model up axis; and
when the angle between the viewing direction of the camera and the up axis of the computer model is between 0 degrees and 90 degrees, the relative rotation of the camera and computer model is constrained by an amount dependent upon the angle.
-
Specification