1<html>
2<head>
3<title>Defining Cameras</title>
4<link rel="stylesheet" href="../css/mainpage.css" type="text/css">
5<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
6</head>
7
8<body>
9
10<h1>Defining Cameras</h1>
11
12<h2>Overview</h2>
13<p>
14Camera data are defined as <CODE>&lt;Camera&gt; </CODE> tags below the <CODE>&lt;Cameras&gt; </CODE>tag.  Where there are multiple sets of camera data, there are multiple <CODE>&lt;Camera&gt; </CODE> tags below the <CODE>&lt;Cameras&gt; </CODE>tag.  Each <CODE>&lt;Camera&gt;</CODE> tag has data for the camera's SRT information, orientation control type and projection type.
15</p>
16
17<h2>Camera SRT Information</h2>
18<p>
19This stores information about the camera's position, rotation and scaling.
20</p>
21
22<table>
23<tr><td>
24<pre>
25&lt;NintendoWareIntermediateFile&gt;<br>
26  &lt;GraphicsContentCtr&gt;<br>
27    &lt;Cameras&gt;<br>
28      &lt;Camera&gt;<br>
29        &lt;Transform&gt;<br>
30</pre>
31</td></tr>
32</table>
33
34<h2>Camera Position Control Type</h2>
35<p>
36NW4C provides the following three types of control of camera orientation:
37</p>
38
39<ul>
40<li>Rotate Camera <CODE>&lt;RotateViewUpdater&gt;</CODE></li>
41<p>
42In this type of camera, orientation is controlled using the camera's SRT parameter.
43</p>
44<table>
45<tr><td>
46<pre>
47&lt;NintendoWareIntermediateFile&gt;<br>
48  &lt;GraphicsContentCtr&gt;<br>
49    &lt;Cameras&gt;<br>
50      &lt;Camera&gt;<br>
51        &lt;RotateViewUpdater&gt;<br>
52</pre>
53</td></tr>
54</table>
55<li>Aim Camera <CODE>&lt;RotateViewUpdater&gt;</CODE></li>
56<p>In this type of camera, orientation is controlled using the camera's position, viewpoint and <CODE>Twist</CODE> parameter. With the viewpoint from the position of the camera, the orientation of the camera is determined by rotating it by the amount specified in the <CODE>Twist</CODE> parameter along the view vector.
57</p>
58<table>
59<tr><td>
60<pre>
61&lt;NintendoWareIntermediateFile&gt;<br>
62  &lt;GraphicsContentCtr&gt;<br>
63    &lt;Cameras&gt;<br>
64      &lt;Camera&gt;<br>
65        &lt;AimTargetViewUpdater&gt;<br>
66</pre>
67</td></tr>
68</table>
69<li>LookAt Camera <CODE>&lt;LookAtTargetViewUpdater&gt;</CODE></li>
70<p>
71In this type of camera, orientation is controlled using the camera's position, viewpoint and Up vector.  With the viewpoint from the position of the camera, the orientation of the camera is determined by calculating the remaining one axis from the cross product of the normal vector and the specified Up vector.
72</p>
73<table>
74<tr><td>
75<pre>
76&lt;NintendoWareIntermediateFile&gt;<br>
77  &lt;GraphicsContentCtr&gt;<br>
78    &lt;Cameras&gt;<br>
79      &lt;Camera&gt;<br>
80        &lt;LookAtTargetViewUpdater&gt;<br>
81</pre>
82</td></tr>
83</table>
84</ul>
85
86<h2>Projection Type</h2>
87<p>
88There are two projection types:
89</p>
90<ul>
91<li>Perspective Projection <CODE>&lt;PerspectiveProjectionUpdater&gt;</CODE></li>
92<table>
93<tr><td>
94<pre>
95&lt;NintendoWareIntermediateFile&gt;<br>
96  &lt;GraphicsContentCtr&gt;<br>
97    &lt;Cameras&gt;<br>
98      &lt;Camera&gt;<br>
99        &lt;PerspectiveProjectionUpdater&gt;<br>
100</pre>
101</td></tr>
102</table>
103<li>Parallel Projection &lt;OrthoProjectionUpdater&gt;</li>
104<table>
105<tr><td>
106<pre>
107&lt;NintendoWareIntermediateFile&gt;<br>
108  &lt;GraphicsContentCtr&gt;<br>
109    &lt;Cameras&gt;<br>
110      &lt;Camera&gt;<br>
111        &lt;OrthoProjectionUpdater&gt;<br>
112</pre>
113</td></tr>
114</table>
115</ul>
116
117<hr><p>CONFIDENTIAL</p></body>
118</html>
119