1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
3	<head>
4		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5		<meta http-equiv="Content-Style-Type" content="text/css" />
6		<link rel="stylesheet" href="../css/mainpage.css" type="text/css" />
7		<base target="content" />
8		<title>Intermediate File Notation Rules</title>
9	</head>
10
11	<body>
12
13<h1>Intermediate File Notation Rules</h1>
14
15<h2>XML Declaration</h2>
16<p>The intermediate files use a text-based XML format.</p>
17<p>To clearly indicate that the file is an XML document, you must put the following XML declaration in the first line of the file:</p>
18<table class="arguments">
19<tr><td>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</td></tr>
20</table>
21
22<h2>Character codes.</h2>
23<p>The character encoding used is UTF-8.<br> UTF-8 <CODE>BOM</CODE> (0xef 0xbb 0xbf) is at the start of the intermediate file.</p>
24
25<h2>Version</h2>
26<p>The <CODE>Version</CODE> attribute of <CODE>&lt;GraphicsContentCtr&gt;</CODE> describes the version of the intermediate file. The version number is updated only when a change has been made to the format.<br> It has the same version as NintendoWare at the time of release.<br> The current version is 1.0.0</p>
27
28<h2>Element Rules</h2>
29<p><strong>Element Content</strong></p>
30<p>In some cases the content of an element will be data, while in other cases it will be child elements.<br> The intermediate file cannot contain elements with data and child elements at the same time.</p>
31<pre>
32   Correct :    &lt;element1&gt;6  3  11&lt;/element1&gt;
33
34   Correct :    &lt;element1&gt;
35        &lt;element2&gt;6  3  11&lt;/element2&gt;
36        &lt;element3&gt;9  0  4&lt;/element3&gt;
37      &lt;/element1&gt;
38
39   Incorrect:      &lt;element1&gt;
40        6  3  11
41         &lt;element3&gt;9  0  4&lt;/element3&gt;
42      &lt;/element1&gt;
43</pre>
44<p>When the content of an element is a list of numerical values, any single-byte spaces, tabs and line breaks are treated as delimiters between values.</p>
45
46<p><strong>Element Closing</strong></p>
47<p>When an element does not contain content, the closing of the element is described by one single-byte space placed after the final attribute.</p>
48<pre>
49   Correct :     &lt;element attribute1=&quot;0&quot; attribute2=&quot;30&quot; /&gt;
50
51   Incorrect :     &lt;element attribute1=&quot;0&quot; attribute2=&quot;30&quot;/&gt;
52</pre>
53
54<p>
55<strong>Other</strong>
56<ul>
57<li>There are rules for the export order and positioning of elements.</li>
58<li>Child elements are indented by a tab.</li>
59<li>Everything in the element between the angled brackets (&lt;   &gt;) is described in a single line with no line feed.</li>
60<li>A line feed is placed after the closing angled bracket ( &quot;&gt;&quot;)  of the element.</li>
61</ul>
62
63<h2>Path Notation</h2>
64<p>References to materials, textures, shapes and the like are described as follows:</p>
65<pre>
66Array element name[&quot;<I>item name</I>&quot;]@file:<I>file path</I>
67</pre>
68<p>or</p>
69<pre>
70Array element name[<I>item index</I>]@file:<I>file path</I>
71</pre>
72<p>The forward slash (/) is used as the delimiter for folders in the file path.<br> If the file path is not an absolute path, it is treated as a relative path from the folder of the referencing file.<br> If the referenced item is located inside the referencing file, the file path can be omitted as shown below.</p>
73<pre>
74Array element name[&quot;<I>item name</I>&quot;]
75</pre>
76<p>For example, in the case of <CODE>&lt;TextureReference&gt;</CODE>, the texture path can be described in the following format.</p>
77<pre>
78Textures[&quot;<I>texture name</I>&quot;]@file:<I>texture file path</I>.
79</pre>
80
81<h2><CODE>Name</CODE> Attribute</h2>
82<p>If only one <CODE>&lt;SkeletalModel&gt;</CODE> exists in a <CODE>CMDL</CODE> file, the <CODE>Name</CODE> attribute of <CODE>&lt;SkeletalModel&gt;</CODE> is an empty string (&quot; &quot;). <br> When this is the case, the name of the <CODE>CMDL</CODE> file is used as the name of the model.</p>
83<p>The same holds true for the <CODE>Name</CODE> attributes of <CODE>&lt;ImageTextureCtr&gt;</CODE> and <CODE>&lt;CubeTextureCtr&gt;</CODE> in the <CODE>CMDL</CODE> file.</p>
84<p>It is also the same for the <CODE>Name</CODE> attribute of <CODE>&lt;SkeletalAnimationData&gt;</CODE> in the <CODE>CSKLA</CODE> file.</p>
85
86<h2>Units</h2>
87<p>Angles are handled in units of radians.</p>
88<p>The unit for distance is not defined.<br> Values on the DCC tool are multiplied by the value specified by the <CODE>Magnify</CODE> option and output.</p>
89
90<p><br><br><br><br></p>
91
92	<hr><p>CONFIDENTIAL</p></body>
93</html>
94