Browse Source

Rename docs

Panagiotis Christopoulos Charitos 4 years ago
parent
commit
75995df29f

+ 5 - 0
docs/code_style.md → Docs/CodeStyle.md

@@ -85,6 +85,11 @@ Naming conventions in python
 
 Whatever the PEP 8 guide proposes.
 
+Naming conventions for files and directories
+============================================
+
+Filenames and directories should be PascalCase. The extensions of the files are lowercase.
+
 C++ rules
 =========
 

+ 0 - 0
docs/doxyfile → Docs/doxyfile


BIN
docs/drafts/2011-10-18.ora


BIN
docs/drafts/2011-10-5.png


+ 0 - 23
docs/drafts/interleaved_vbos.txt

@@ -1,23 +0,0 @@
-Changes for interleaved VBOs 
-
-Mesh
-====
-
-MeshBase
-- getIndicesVbo(lod) Return I VBO
-- getTextureChannelsCount()
-- getIndicesNumber(lod)
-- getVerticesNumber(lod)
-- getBoundingShape()
-- hasWeights()
-- getVboInfo(enum, vbo, size, type, stride, base) given an enum return some 
-  stuff that will pass to glVertexAttribPointer() to set the VAO
-
-
-Model
-=====
-
-- createVaos() Change that to accept new MeshBase interface
-
-
-

+ 0 - 44
docs/drafts/light-material-example.mtl

@@ -1,44 +0,0 @@
-<material>
-	<passes>
-		<pass>LIGHT</pass>
-	</passes>
-
-	<shaderProgram>
-		<vertexShader>
-			<includes>
-				<include>shaders/SimpleVert.glsl</include>
-			</includes>
-		</vertexShader>
-		
-		<fragmentShader>
-			<includes>
-				<include>shaders/IsPointLight.glsl</include>
-			</includes>
-			
-			<inputs>
-				<input>
-					<name>diffuseColor</name>
-					<type>vec3</type>
-					<value><x>1</x><y>2</y><z>3</z></value>
-				</input>
-				<input>
-					<name>specularColor</name>
-					<type>vec3</type>
-					<value><x>1</x><y>2</y><z>3</z></value>
-				</input>
-				<input>
-					<name>radius</name>
-					<type>float</type>
-					<value><float>1</float></value>
-				</input>
-			</inputs>
-			
-			<operations>
-				<operation>
-					<id>0</id>
-					<function>do</function>
-				</operation>
-			</operations>
-		</fragmentShader>
-	</shaderProgram>
-</material>

+ 0 - 11
docs/drafts/notes.txt

@@ -1,11 +0,0 @@
-- Have to depth buffers in the MS. The MS writes in the k frame to the first and in the k+1 in the other. With this way we can read from the one and write to the other. Test in 33Hz
-
-- The light material should contain the bool: castsShadow
-
-- All scene objects are debugable because the render at least in DBGS
-
-- Rename DBG stage to DS
-
-- Octree has SceneNodes
-
-- All scene nodes have AABB

+ 0 - 14
docs/drafts/octree.py

@@ -1,14 +0,0 @@
-from math import *
-
-octree_node_size = 112
-
-def recurse(depth):
-	if depth == 0:
-		return 1
-	else:
-		return pow(8, depth) + recurse(depth - 1)
-
-def octree_size(depth):
-	return recurse(depth) * octree_node_size
-
-print("Size %d" % (octree_size(3)))

+ 0 - 9
docs/drafts/physics.md

@@ -1,9 +0,0 @@
-
-Physics engine spec
-===================
-
-This is the spec for physics engine
-
-## 
-
-

+ 0 - 237
docs/drafts/scene-abstraction.txt

@@ -1,237 +0,0 @@
-Create a new scene organisation that follows some rules:
-- Be extendable from outside AnKi
-- Has a simple interface and correct containers
-- Be able to fast cast and fast check type (llvm isa<>)
-
-Every scene node has a few properties that are actually interfaces. This interfaces are:
-
-+========================+==================+===================================+=====================+
-| Class name             | Base class       | Interface                         | Used                |
-+========================+==================+===================================+=====================+
-| BaseRenderable         | -                | - getVao(level, type)             | -                   |
-|                        |                  | - getVertIdsNum(level, type)      |                     |
-|                        |                  | - getModelMatrix(level, type)     |                     |
-+------------------------+------------------+-----------------------------------+---------------------+
-| Renderable             | BaseRenderable   | - getMaterial                     | PatchNode           |
-|                        | VisibleCheckable | - getMaterialRuntime (Mutable)    |                     |
-|                        |                  | - getMaterialRuntime (Const)      |                     |
-|                        |                  | - renderInMs (its not virtual)    |                     |
-+------------------------+------------------+-----------------------------------+---------------------+
-| DebugRenderable        | BaseRenderable   | -                                 | Camera, Light       |
-+------------------------+------------------+-----------------------------------+---------------------+
-| IsRenderable           | BaseRenderable   | getShaderProgram                  | Light               |
-+------------------------+------------------+-----------------------------------+---------------------+
-| VisiblesContainable    | -                | - getVisiblesInfo                 | Camera, Light       |
-|                        |                  | - testFrustum(VisibleCheckable)   |                     |
-+------------------------+------------------+-----------------------------------+---------------------+
-| VisibleCheckable       | -                | getCollisionShape                 | Camera, Light,      |
-|                        |                  |                                   | ModelNode, SkinNode,|
-|                        |                  |                                   | PatchNode           |
-+------------------------+------------------+-----------------------------------+---------------------+
-| RenderablesContainable | -                | - getRenderables                  | ModelNode, SkinNode |
-|                        |                  | - nodesInheritCollisionShape      |                     |
-+------------------------+------------------+-----------------------------------+---------------------+
-| Projectable            | -                | - getViewMatrix                   | Light, Camera       |
-|                        |                  | - getProjectionMatrix             |                     |
-+------------------------+------------------+-----------------------------------+---------------------+
-
-
-- VisibleCheckable
-	- getCollisionShape [virtual]
-	- getVisible
-	- setVisible
-	- getVisibilityGroup
-	
-- Renderable
-	- material [virtual]
-	- getVao(level, passType) [virtual]
-	
-- Light (aka IsRenderable)
-	- getMaterialRuntime [virtual]
-	- getVao() [virtual]
-	
-- VisiblesContainable
-	- N * M sceneNodes where N is 4 (renderables and lights) and M is the number of the scene nodes
-	- testFrustum(VisibleCheckable)
-	
-- RenderablesContainable
-	- N * SceneNode
-	- nodesInheritCollisionShape
-
-
-
-PatchNode: Renderable, VisibleCheckable
-
-Light: IsRenderable, VisibleCheckable, VisiblesContainable
-
-Camera: VisibleCheckable, VisiblesContainable
-
-ModelNode: VisibleCheckable, RenderablesContainable
-
-
-
-Rendering passes:
-	- Level n
-		- Color
-		- Depth
-		- DepthParaboloid	
-	- Debug
-
-
-Other classes:
-	
-
-**BaseRenderableInfo**: Contains a class with public interface of:
-
-	- 
-
-**VisiblesInfo**: Contains the lists of:
-
-	- Renderables
-		- renderables in MS
-		- renderables in BS
-	- IsRenderables
-		- point lights
-		- spot lights
-		
-==================
-Visibility testing
-==================
-
-In visibility testing we gather the visible renderables of MS and BS and the lights for IS. Also for every visible light we gather the renderables.
-
-Real flow:
-
-	function test(cam)
-		for 
-	endfunction
-
-::
-
-	function test(Camera cam)
-		for node in scene's nodes
-			set node not visible
-		endfor
-		
-		for rcn in all scene's renderablesContainableNodes
-
-				if rcn not inside cam's frustum
-					break
-				endif
-			
-				set rcn to visible
-			
-				# eg skin
-				if rcn renderablesInheritContainingCollisionShape
-					for renderable in rcn's renderables
-						set renderable visible
-						put renderable in cam's container
-					endfor
-				# eg model node
-				else
-					for renderable in rcn's renderables
-						if renderable inside cam frustum
-							put renderable in cam's container
-						endif
-					endfor
-				endif
-			endif
-		endfor
-		
-		for l in all scene's lights
-			if l inside cam's frustum
-				put l in cam's container
-				
-				if l is shadow caster
-					test(l)
-				endif
-				
-			endfor
-		endfor
-		
-	endfunction
-	
-	
-- Find all the octree nodes that are inside the given frustum
-- Norrow down them using the Renderer and other tests
-- For all those octree nodes get the scene nodes
-- Resolve buckets
-- Finaly call SceneNode::visibleUpdate() for all visibles
-
-Method declaration: void performVisibilityTests(const Octree&, const Frustum&, const Renderer&, uint passMask);
-
-The Renderer is for hardware occlusion queries
-
-=========
-Rendering
-=========
-
-::
-	function render(VisiblesContainable obj, PassType pt)	
-		for renderable obj's renderables
-			level = calc from distance of obj and renderable
-		
-			setupShaderProgram for obj in pt and level
-			render using vao of level
-		endfor
-	endfunction
-
-========
-Problems
-========
-
-- All properties should contain the world transform
-- What happens in a second pass for other camera (for split screen for example). Now the renderings happen sequential so no problem. It may fuck up the visibility vectors
-
-====
-ToDo
-====
-
-- Move update redesign
-	- First update the world transforms for all nodes
-	- then for the nodes that have moved (we allready keep the previ world transform) call the SceneNode::moveUpdate
-	
-	
-===
-xxx
-===
-
-Scene
-	- N x SceneNode
-	- 1 x Octree
-	
-	- Update transforms
-	- Call move updates if moved
-
-SceneObject
-
-StaticObject: SceneObject
-
-SceneNode: SceneObject
-	- static | moving
-	- TRF
-	- parent & children
-	
-Renderable
-	- stage? MS | BS | LS | DBG
-	- material
-	- world transform [for moving]
-	- collision shape [for moving]
-	
-Frustum
-	- N x renderables
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

BIN
docs/drafts/scene.odt


+ 0 - 630
docs/drafts/scene.xmi

@@ -1,630 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<XMI verified="false" xmi.version="1.2" timestamp="2011-11-04T13:10:44" xmlns:UML="http://schema.omg.org/spec/UML/1.3" >
- <XMI.header>
-  <XMI.documentation>
-   <XMI.exporter>umbrello uml modeller http://uml.sf.net</XMI.exporter>
-   <XMI.exporterVersion>1.5.8</XMI.exporterVersion>
-   <XMI.exporterEncoding>UnicodeUTF8</XMI.exporterEncoding>
-  </XMI.documentation>
-  <XMI.metamodel xmi.version="1.3" href="UML.xml" xmi.name="UML" />
- </XMI.header>
- <XMI.content>
-  <UML:Model isSpecification="false" isAbstract="false" isLeaf="false" xmi.id="m1" isRoot="false" name="UML Model" >
-   <UML:Namespace.ownedElement>
-    <UML:Stereotype visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="folder" name="folder" />
-    <UML:Stereotype visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="datatype" name="datatype" />
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Logical View" name="Logical View" >
-     <UML:Namespace.ownedElement>
-      <UML:Package stereotype="folder" visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Datatypes" name="Datatypes" >
-       <UML:Namespace.ownedElement>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="kzAJrVD4EJ76" name="int" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="cX4NFIZFaUzG" name="char" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="IOPQJxo1uxLj" name="bool" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="QWncpthQOjne" name="float" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="2Nraprq5DFWU" name="double" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="AIU3DpmeJYG7" name="short" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="PxVlhGPhdFHQ" name="long" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="46UFJyjSGDVS" name="unsigned int" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="0F6IlKP8Guux" name="unsigned short" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="AHcmWrAaxepH" name="unsigned long" />
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="cXhriCJhPNzB" name="string" />
-       </UML:Namespace.ownedElement>
-      </UML:Package>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="HxGBsOTUAxKJ" name="SceneNode" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="public" isSpecification="false" xmi.id="ZNeGl1DugbBe" type="pNUDqxMlHfJY" name="getWorldTransform" />
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="pNUDqxMlHfJY" name="Transform" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="TEV0c7GN8THn" name="Renderable" >
-       <UML:Classifier.feature>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="true" isAbstract="true" isLeaf="false" isRoot="false" xmi.id="Vj0SWP8oBlwP" name="getMaterialRuntime" />
-        <UML:Operation visibility="public" isSpecification="false" isQuery="true" isAbstract="true" isLeaf="false" isRoot="false" xmi.id="BshfFnROWMlJ" name="getVao" >
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter kind="return" xmi.id="0tLfLwPX5SXx" type="gIneAG4GVUoA" />
-          <UML:Parameter visibility="private" isSpecification="false" xmi.id="8x4sNu7XmmC0" type="WeWTgTZTNfM1" value="" name="pass" />
-          <UML:Parameter visibility="private" isSpecification="false" xmi.id="acM6y8OSmsvQ" type="WeWTgTZTNfM1" value="" name="level" />
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="true" isAbstract="true" isLeaf="false" isRoot="false" xmi.id="vYJ3CpWBc5wv" name="getWorldTransform" >
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter kind="return" xmi.id="DRQPEuYrzSkL" type="pNUDqxMlHfJY" />
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="true" isAbstract="true" isLeaf="false" isRoot="false" xmi.id="l4JnaMDzhFxy" name="isDebug" >
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter kind="return" xmi.id="qTw93hxLNgPh" type="IOPQJxo1uxLj" />
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="ysUP7HSYgHLa" name="MaterialRuntime" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="gIneAG4GVUoA" name="Vao" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="WeWTgTZTNfM1" name="uint" />
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="DiEBl5WfC3Qx" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="GOXqkboqxGaq" type="TEV0c7GN8THn" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="C19csqk6ZxHI" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="SEhGBvr17s9i" name="GroupNode" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="ag3jjlMcBaJR" type="HxGBsOTUAxKJ" name="sceneNodes" />
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="F64WpOehOVZp" name="getSceneNodes" />
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="vfy5qYycou7n" name="nodesInheritCollisionShape" >
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter kind="return" xmi.id="T6RUUyK6uUOj" type="IOPQJxo1uxLj" />
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="XuMNHEaNI6Df" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="lu1GRqRMVPSK" type="SEhGBvr17s9i" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="xQwlI1WpvsAC" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="yadzq4qGRJfr" name="CollisionCheckable" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="SdkC951t3ZU2" type="IOPQJxo1uxLj" name="visible" />
-        <UML:Operation visibility="public" isSpecification="false" isQuery="true" isAbstract="true" isLeaf="false" isRoot="false" xmi.id="YzfQjsvGP9S4" name="getContainingCollisionShape" />
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="cgnrSMEmnc2W" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="daC1ewsFcDvi" type="SEhGBvr17s9i" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="z3l6HigsMThm" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="XbVZ567I8mC0" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="1oBuVBxEFDut" type="TEV0c7GN8THn" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="5ENk19fYi95n" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="wFIw2ToXckls" name="VisiblesContainableNode" />
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="77X4NlyEiqyl" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="SX0PVDrs4zpg" type="SEhGBvr17s9i" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="9IIYAsiFxFJK" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="0FWi5VSV0SvT" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="dkJik8OrPfNX" type="TEV0c7GN8THn" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="V5nTK4lJKI1N" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="T3ttaEIqk3ma" name="Patch" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="dCBUqHNJKHDt" name="Light" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="TjDWTnRyaQ0W" name="PointLight" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="dzv0D2dND6ET" name="SpotLight" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="M6jeAA4abaKS" type="A5llWlH7jA7w" name="cam" />
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="TXniieBBNNgp" name="Camera" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="A5llWlH7jA7w" name="PerspectiveCamera" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="HOpVrG1czhH8" name="OrthographicCamera" />
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="VXPgcBP8weGd" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="mLZx4pLrKA8J" type="A5llWlH7jA7w" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="k71zDscjPzN1" type="TXniieBBNNgp" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="Am85OMiAfG7k" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="5QbNYhfJoeG2" type="HOpVrG1czhH8" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="Wqjtq6syqy3E" type="TXniieBBNNgp" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="IkOyyUg1sHOR" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="x1ilfyl9pU2f" type="TjDWTnRyaQ0W" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="YtbOrfcANz6L" type="dCBUqHNJKHDt" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="RmMJ1ikykQkN" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="PTXCwZpUSQtI" type="dzv0D2dND6ET" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="3TSQQWjrI5BJ" type="dCBUqHNJKHDt" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="xInVBdwOO3TW" name="ModelNode" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="IAImSxAqINJD" type="8mpvtL6s4SPG" name="patchNodes" />
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="C8WhVkflKFB1" name="SkinNode" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="GL5m8JCvDqf3" type="k5hXMmPl060e" name="patchNodes" />
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="L7oVklr8mLf1" name="Frustum" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="4wVLCq3WHaGJ" type="TEV0c7GN8THn" name="renderables" />
-        <UML:Operation visibility="public" isSpecification="false" isQuery="true" isAbstract="true" isLeaf="false" isRoot="false" xmi.id="EGQi77xHauqN" name="insideFrustum" >
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter kind="return" xmi.id="FHuKqVZFis0K" type="IOPQJxo1uxLj" />
-          <UML:Parameter visibility="private" isSpecification="false" xmi.id="okFjFR0d77k4" type="J7G5adHPDLld" value="" name="cs" />
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="J7G5adHPDLld" name="CollisionShape" />
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="b018El0j4vC9" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="gqTHO5kR5RML" type="T3ttaEIqk3ma" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="YiAJQmYzkZ8y" type="TEV0c7GN8THn" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="6hOzrXgiyx43" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="hV66pRcVZtwJ" type="dCBUqHNJKHDt" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="Sv3112M5hk5X" type="TEV0c7GN8THn" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="LwB5xWTgr9qF" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="ghRFT77Qc4sP" type="TXniieBBNNgp" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="ZZUglnN5jWAf" type="L7oVklr8mLf1" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="2bLsk97OqWbH" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="biiEkYbJ55xr" type="dCBUqHNJKHDt" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="tKwcr6FrhajP" type="L7oVklr8mLf1" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="nu4V8o2k57n0" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="weLsFAwUzb3j" type="dCBUqHNJKHDt" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="ykXjGq52l9Vr" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="ZyfNzbzKSESO" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="hRyk8wSeghUj" type="TXniieBBNNgp" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="jDrE5mkclPzk" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="yx2Q9SnqtlY0" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="fzeJg63NKuZN" type="C8WhVkflKFB1" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="eJzNix7fu751" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="ZqsRZORFN3W3" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="9ZORRyo6HmRy" type="xInVBdwOO3TW" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="jZdbegcCXSd6" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="KqvrRUW77ieZ" name="TriggerNode" />
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="T854ZwujGkd8" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="B7cIEIvmbgAu" type="KqvrRUW77ieZ" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="ilEbckr4tu8Q" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="4qfk1XRml0NU" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="rRNjZnZZudJh" type="KqvrRUW77ieZ" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="qCZcLdhQUK8V" type="L7oVklr8mLf1" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="LWWoU59L1oad" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="tinxx4UtbrZl" type="yadzq4qGRJfr" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="7aiw4aaN659Y" type="T3ttaEIqk3ma" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="AIrB6Qmy8Zv3" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="dNvCCUvH4dD7" type="yadzq4qGRJfr" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="BoUFtcn1udAz" type="dCBUqHNJKHDt" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="3wx9TqA4B5HN" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="YCecqshzeCFV" type="yadzq4qGRJfr" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="o2Wgdedeaal3" type="xInVBdwOO3TW" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="Ow5Z1MwZZZAN" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="PrM31bWnc0SD" type="yadzq4qGRJfr" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="e5sEgdF4XKcZ" type="C8WhVkflKFB1" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="6E5EZU6tX5T3" name="RenderablesContainableNode" >
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="P6mJow8joMsD" type="TEV0c7GN8THn" name="renderables" />
-        <UML:Operation visibility="public" isSpecification="false" isQuery="true" isAbstract="true" isLeaf="false" isRoot="false" xmi.id="o4bgFCEoF1hf" name="renderablesInheritContainingCollisionShape" >
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter kind="return" xmi.id="onDcroH4zVqC" type="IOPQJxo1uxLj" />
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="t33LGhQ6t4i8" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="7FRjm8FrKL5r" type="6E5EZU6tX5T3" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="p9kLFBM6EORT" type="HxGBsOTUAxKJ" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="3pZxsF3xTUgF" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="at6uEAl2JULW" type="xInVBdwOO3TW" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="fhcu31L7ps2f" type="6E5EZU6tX5T3" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="83cbWGo69tzM" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="3iMKAhpqMPiQ" type="C8WhVkflKFB1" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="R3VEtVt1YTa2" type="6E5EZU6tX5T3" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="jP7sI6CJmYbx" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="DQlaqR0FSTRL" type="TEV0c7GN8THn" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="yKNUnvVUKcMa" type="T3ttaEIqk3ma" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="rS5RPJp8rfZp" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="s1IJNEbigMdB" type="T3ttaEIqk3ma" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="qwnBWTiMwlnJ" type="TEV0c7GN8THn" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="cStG1i63yOQC" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="z8rKj2AfoJCH" type="dCBUqHNJKHDt" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="zWBlHTlrvf7u" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="PTfWL4xJYs5g" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="r8bzzQ21bmHM" type="6E5EZU6tX5T3" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="zG3fiFR5g6bz" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="2FVwxdbo4TYi" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="8xMbQWFMLfIE" type="T3ttaEIqk3ma" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="c3OIQEjQTDMP" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="k5hXMmPl060e" name="SkinPatch" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="8mpvtL6s4SPG" name="ModelPatch" />
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="bMhnnLTWO83i" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="sTUtXSVdEKY8" type="k5hXMmPl060e" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="deyh6NvgjdRU" type="T3ttaEIqk3ma" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="wt0J121uTTl0" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="vGd8YAGAoCrt" type="8mpvtL6s4SPG" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="XlXGOyiIphbr" type="T3ttaEIqk3ma" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="L9wzvgLFO61j" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="Pu37Gr5xm7ZD" type="TXniieBBNNgp" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="9oPQuHdGOZFH" type="TEV0c7GN8THn" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="L9fACcxH98Qy" name="" >
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="VoqnR69zJRDs" type="TEV0c7GN8THn" name="" aggregation="none" />
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="xlVV5XsOeWYo" type="yadzq4qGRJfr" name="" aggregation="none" />
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Bpu6BGkYvCYw" name="ShadowCaster" />
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="6XNDMJbcbNoP" name="SceneObject" />
-     </UML:Namespace.ownedElement>
-     <XMI.extension xmi.extender="umbrello" >
-      <diagrams>
-       <diagram showopsig="1" linecolor="#ff0000" snapx="10" showattribassocs="1" snapy="10" linewidth="2" showattsig="1" showpubliconly="1" showpackage="1" showstereotype="1" name="class diagram" font="Sans Serif,9,-1,0,50,0,0,0,0,0" canvasheight="848" canvaswidth="1409" localid="" snapcsgrid="0" showgrid="1" showops="1" usefillcolor="1" fillcolor="#ffff00" zoom="100" xmi.id="JS0nkGE0Iukh" documentation="" showscope="1" snapgrid="1" showatts="1" type="1" >
-        <widgets>
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="370" showattsigs="601" y="170" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="218" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="HxGBsOTUAxKJ" showscope="1" height="40" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="10" showattsigs="601" y="640" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="256" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="TEV0c7GN8THn" showscope="1" height="88" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="370" showattsigs="601" y="620" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="222" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="yadzq4qGRJfr" showscope="1" height="40" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="160" showattsigs="601" y="480" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="53" isinstance="0" usefillcolor="1" fillcolor="#ffff00" xmi.id="T3ttaEIqk3ma" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="0" x="450" showattsigs="601" y="280" showattributes="1" font="Sans,10,-1,5,50,0,0,0,0,0" width="47" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="dCBUqHNJKHDt" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="0" x="390" showattsigs="601" y="460" showattributes="1" font="Sans,10,-1,5,50,0,0,0,0,0" width="85" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="TjDWTnRyaQ0W" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="490" showattsigs="601" y="550" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="81" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="dzv0D2dND6ET" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="0" x="660" showattsigs="601" y="280" showattributes="1" font="Sans,10,-1,5,50,0,0,0,0,0" width="68" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="TXniieBBNNgp" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="0" x="570" showattsigs="601" y="420" showattributes="1" font="Sans,10,-1,5,50,0,0,0,0,0" width="154" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="A5llWlH7jA7w" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="0" x="790" showattsigs="601" y="460" showattributes="1" font="Sans,10,-1,5,50,0,0,0,0,0" width="164" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="HOpVrG1czhH8" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="20" showattsigs="601" y="390" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="96" isinstance="0" usefillcolor="1" fillcolor="#ffff00" xmi.id="xInVBdwOO3TW" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="200" showattsigs="601" y="390" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="83" isinstance="0" usefillcolor="1" fillcolor="#ffff00" xmi.id="C8WhVkflKFB1" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="640" showattsigs="601" y="670" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="282" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="L7oVklr8mLf1" showscope="1" height="40" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="0" x="1020" showattsigs="601" y="280" showattributes="1" font="Sans,10,-1,5,50,0,0,0,0,0" width="101" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="KqvrRUW77ieZ" showscope="1" height="32" showopsigs="601" />
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="0" x="10" showattsigs="601" y="280" showattributes="1" font="Sans Serif,10,-1,5,50,0,0,0,0,0" width="361" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="6E5EZU6tX5T3" showscope="1" height="40" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="260" showattsigs="601" showstereotype="1" y="470" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="79" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="k5hXMmPl060e" showscope="1" height="28" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="20" showattsigs="601" showstereotype="1" y="490" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="90" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="8mpvtL6s4SPG" showscope="1" height="28" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="770" showattsigs="601" showstereotype="1" y="280" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="114" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="Bpu6BGkYvCYw" showscope="1" height="29" showopsigs="601" />
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="210" showattsigs="601" showstereotype="1" y="100" showattributes="1" font="Sans Serif,9,-1,0,75,0,0,0,0,0" width="99" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="6XNDMJbcbNoP" showscope="1" height="29" showopsigs="601" />
-        </widgets>
-        <messages/>
-        <associations>
-         <assocwidget indexa="1" indexb="2" widgetaid="A5llWlH7jA7w" linecolor="none" totalcounta="2" xmi.id="VXPgcBP8weGd" widgetbid="TXniieBBNNgp" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="650" starty="420" />
-           <endpoint endx="690" endy="312" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="4" widgetaid="HOpVrG1czhH8" linecolor="none" totalcounta="2" xmi.id="Am85OMiAfG7k" widgetbid="TXniieBBNNgp" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="870" starty="460" />
-           <endpoint endx="710" endy="312" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="TjDWTnRyaQ0W" linecolor="none" totalcounta="2" xmi.id="IkOyyUg1sHOR" widgetbid="dCBUqHNJKHDt" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="430" starty="460" />
-           <endpoint endx="470" endy="312" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" widgetaid="dzv0D2dND6ET" linecolor="none" totalcounta="3" xmi.id="RmMJ1ikykQkN" widgetbid="dCBUqHNJKHDt" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="520" starty="550" />
-           <endpoint endx="480" endy="312" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="2" indexb="1" visibilityA="0" widgetaid="dzv0D2dND6ET" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="3" xmi.id="M6jeAA4abaKS" changeabilityB="900" widgetbid="A5llWlH7jA7w" totalcountb="2" type="510" linewidth="none" >
-          <linepath>
-           <startpoint startx="540" starty="550" />
-           <endpoint endx="650" endy="452" />
-          </linepath>
-          <floatingtext width="41" x="560" y="460" usesdiagramusefillcolor="1" posttext="" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="20" role="710" linecolor="none" xmi.id="Vo1GluobeMU9" usefillcolor="1" linewidth="none" font="Sans,10,-1,5,50,0,0,0,0,0" text="cam" pretext="-" />
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" widgetaid="dCBUqHNJKHDt" linecolor="none" totalcounta="5" xmi.id="6hOzrXgiyx43" widgetbid="TEV0c7GN8THn" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="460" starty="312" />
-           <endpoint endx="160" endy="640" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" visibilityA="0" widgetaid="L7oVklr8mLf1" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="2" xmi.id="4wVLCq3WHaGJ" changeabilityB="900" widgetbid="TEV0c7GN8THn" totalcountb="3" type="510" linewidth="none" >
-          <linepath>
-           <startpoint startx="640" starty="690" />
-           <endpoint endx="266" endy="700" />
-          </linepath>
-          <floatingtext width="89" x="270" y="680" usesdiagramusefillcolor="1" posttext="" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="20" role="710" linecolor="none" xmi.id="lBuIvZDAgIza" usefillcolor="1" linewidth="none" font="Sans,10,-1,5,50,0,0,0,0,0" text="renderables" pretext="-" />
-         </assocwidget>
-         <assocwidget indexa="3" indexb="2" widgetaid="TXniieBBNNgp" linecolor="none" totalcounta="5" xmi.id="LwB5xWTgr9qF" widgetbid="L7oVklr8mLf1" totalcountb="4" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="700" starty="312" />
-           <endpoint endx="780" endy="670" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="4" indexb="1" widgetaid="dCBUqHNJKHDt" linecolor="none" totalcounta="5" xmi.id="2bLsk97OqWbH" widgetbid="L7oVklr8mLf1" totalcountb="4" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="490" starty="312" />
-           <endpoint endx="710" endy="670" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="dCBUqHNJKHDt" linecolor="none" totalcounta="2" xmi.id="nu4V8o2k57n0" widgetbid="HxGBsOTUAxKJ" totalcountb="4" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="470" starty="280" />
-           <endpoint endx="480" endy="210" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" widgetaid="TXniieBBNNgp" linecolor="none" totalcounta="2" xmi.id="ZyfNzbzKSESO" widgetbid="HxGBsOTUAxKJ" totalcountb="4" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="690" starty="280" />
-           <endpoint endx="530" endy="210" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="KqvrRUW77ieZ" linecolor="none" totalcounta="2" xmi.id="T854ZwujGkd8" widgetbid="HxGBsOTUAxKJ" totalcountb="2" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="1020" starty="300" />
-           <endpoint endx="588" endy="190" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" widgetaid="KqvrRUW77ieZ" linecolor="none" totalcounta="2" xmi.id="4qfk1XRml0NU" widgetbid="L7oVklr8mLf1" totalcountb="4" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="1070" starty="312" />
-           <endpoint endx="850" endy="670" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="6E5EZU6tX5T3" linecolor="none" totalcounta="2" xmi.id="t33LGhQ6t4i8" widgetbid="HxGBsOTUAxKJ" totalcountb="4" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="190" starty="280" />
-           <endpoint endx="420" endy="210" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="xInVBdwOO3TW" linecolor="none" totalcounta="2" xmi.id="3pZxsF3xTUgF" widgetbid="6E5EZU6tX5T3" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="70" starty="390" />
-           <endpoint endx="80" endy="320" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" widgetaid="C8WhVkflKFB1" linecolor="none" totalcounta="2" xmi.id="83cbWGo69tzM" widgetbid="6E5EZU6tX5T3" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="240" starty="390" />
-           <endpoint endx="230" endy="320" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="T3ttaEIqk3ma" linecolor="none" totalcounta="2" xmi.id="rS5RPJp8rfZp" widgetbid="TEV0c7GN8THn" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="190" starty="512" />
-           <endpoint endx="110" endy="640" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="2" indexb="1" visibilityA="0" widgetaid="6E5EZU6tX5T3" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="5" xmi.id="P6mJow8joMsD" changeabilityB="900" widgetbid="TEV0c7GN8THn" totalcountb="5" type="510" linewidth="none" >
-          <linepath>
-           <startpoint startx="150" starty="320" />
-           <endpoint endx="60" endy="640" />
-          </linepath>
-          <floatingtext linecolor="none" usesdiagramfillcolor="1" linewidth="none" usesdiagramusefillcolor="1" x="0" showstereotype="1" y="0" text="renderables" font="Sans Serif,9,-1,0,50,0,0,0,0,0" pretext="-" role="710" width="83" isinstance="0" posttext="" usefillcolor="1" fillcolor="none" xmi.id="2MZI3zHWnGnW" height="18" />
-         </assocwidget>
-         <assocwidget indexa="4" indexb="1" widgetaid="6E5EZU6tX5T3" linecolor="none" totalcounta="5" xmi.id="PTfWL4xJYs5g" widgetbid="yadzq4qGRJfr" totalcountb="2" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="300" starty="320" />
-           <endpoint endx="480" endy="620" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="k5hXMmPl060e" linecolor="none" totalcounta="2" xmi.id="bMhnnLTWO83i" widgetbid="T3ttaEIqk3ma" totalcountb="2" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="260" starty="480" />
-           <endpoint endx="213" endy="500" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="8mpvtL6s4SPG" linecolor="none" totalcounta="2" xmi.id="wt0J121uTTl0" widgetbid="T3ttaEIqk3ma" totalcountb="2" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="110" starty="500" />
-           <endpoint endx="160" endy="500" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" visibilityA="0" widgetaid="xInVBdwOO3TW" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="2" xmi.id="IAImSxAqINJD" changeabilityB="900" widgetbid="8mpvtL6s4SPG" totalcountb="2" type="510" linewidth="none" >
-          <linepath>
-           <startpoint startx="70" starty="422" />
-           <endpoint endx="70" endy="490" />
-          </linepath>
-          <floatingtext linecolor="none" usesdiagramfillcolor="1" linewidth="none" usesdiagramusefillcolor="1" x="10" showstereotype="1" y="470" text="patchNodes" font="Sans Serif,9,-1,0,50,0,0,0,0,0" pretext="-" role="710" width="84" isinstance="0" posttext="" usefillcolor="1" fillcolor="none" xmi.id="AZ6ovavgjoxf" height="18" />
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" visibilityA="0" widgetaid="C8WhVkflKFB1" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="2" xmi.id="GL5m8JCvDqf3" changeabilityB="900" widgetbid="k5hXMmPl060e" totalcountb="2" type="510" linewidth="none" >
-          <linepath>
-           <startpoint startx="240" starty="422" />
-           <endpoint endx="300" endy="470" />
-          </linepath>
-          <floatingtext linecolor="none" usesdiagramfillcolor="1" linewidth="none" usesdiagramusefillcolor="1" x="190" showstereotype="1" y="450" text="patchNodes" font="Sans Serif,9,-1,0,50,0,0,0,0,0" pretext="-" role="710" width="84" isinstance="0" posttext="" usefillcolor="1" fillcolor="none" xmi.id="NAp1QoaS89j9" height="18" />
-         </assocwidget>
-         <assocwidget indexa="1" indexb="4" widgetaid="TXniieBBNNgp" linecolor="none" totalcounta="5" xmi.id="L9wzvgLFO61j" widgetbid="TEV0c7GN8THn" totalcountb="5" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="670" starty="312" />
-           <endpoint endx="210" endy="640" />
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="TEV0c7GN8THn" linecolor="none" totalcounta="3" xmi.id="L9fACcxH98Qy" widgetbid="yadzq4qGRJfr" totalcountb="2" type="512" linewidth="none" >
-          <linepath>
-           <startpoint startx="266" starty="670" />
-           <endpoint endx="370" endy="640" />
-          </linepath>
-         </assocwidget>
-        </associations>
-       </diagram>
-      </diagrams>
-     </XMI.extension>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Use Case View" name="Use Case View" >
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Component View" name="Component View" >
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Deployment View" name="Deployment View" >
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Entity Relationship Model" name="Entity Relationship Model" >
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-   </UML:Namespace.ownedElement>
-  </UML:Model>
- </XMI.content>
- <XMI.extensions xmi.extender="umbrello" >
-  <docsettings viewid="JS0nkGE0Iukh" uniqueid="6XNDMJbcbNoP" documentation="" />
-  <listview>
-   <listitem open="1" type="800" label="Views" >
-    <listitem open="1" type="801" id="Logical View" >
-     <listitem open="0" type="807" id="JS0nkGE0Iukh" label="class diagram" />
-     <listitem open="1" type="813" id="TXniieBBNNgp" />
-     <listitem open="1" type="813" id="yadzq4qGRJfr" >
-      <listitem open="0" type="814" id="SdkC951t3ZU2" />
-      <listitem open="0" type="815" id="YzfQjsvGP9S4" />
-     </listitem>
-     <listitem open="1" type="813" id="J7G5adHPDLld" />
-     <listitem open="1" type="813" id="L7oVklr8mLf1" >
-      <listitem open="0" type="814" id="4wVLCq3WHaGJ" />
-      <listitem open="0" type="815" id="EGQi77xHauqN" />
-     </listitem>
-     <listitem open="1" type="813" id="SEhGBvr17s9i" >
-      <listitem open="0" type="814" id="ag3jjlMcBaJR" />
-      <listitem open="0" type="815" id="F64WpOehOVZp" />
-      <listitem open="0" type="815" id="vfy5qYycou7n" />
-     </listitem>
-     <listitem open="1" type="813" id="dCBUqHNJKHDt" />
-     <listitem open="1" type="813" id="ysUP7HSYgHLa" />
-     <listitem open="1" type="813" id="xInVBdwOO3TW" >
-      <listitem open="0" type="814" id="IAImSxAqINJD" />
-     </listitem>
-     <listitem open="1" type="813" id="8mpvtL6s4SPG" />
-     <listitem open="1" type="813" id="HOpVrG1czhH8" />
-     <listitem open="1" type="813" id="T3ttaEIqk3ma" />
-     <listitem open="1" type="813" id="A5llWlH7jA7w" />
-     <listitem open="1" type="813" id="TjDWTnRyaQ0W" />
-     <listitem open="1" type="813" id="TEV0c7GN8THn" >
-      <listitem open="0" type="815" id="Vj0SWP8oBlwP" />
-      <listitem open="0" type="815" id="BshfFnROWMlJ" />
-      <listitem open="0" type="815" id="vYJ3CpWBc5wv" />
-      <listitem open="0" type="815" id="l4JnaMDzhFxy" />
-     </listitem>
-     <listitem open="1" type="813" id="6E5EZU6tX5T3" >
-      <listitem open="0" type="814" id="P6mJow8joMsD" />
-      <listitem open="0" type="815" id="o4bgFCEoF1hf" />
-     </listitem>
-     <listitem open="1" type="813" id="HxGBsOTUAxKJ" >
-      <listitem open="0" type="814" id="ZNeGl1DugbBe" />
-     </listitem>
-     <listitem open="1" type="813" id="6XNDMJbcbNoP" />
-     <listitem open="1" type="813" id="Bpu6BGkYvCYw" />
-     <listitem open="1" type="813" id="C8WhVkflKFB1" >
-      <listitem open="0" type="814" id="GL5m8JCvDqf3" />
-     </listitem>
-     <listitem open="1" type="813" id="k5hXMmPl060e" />
-     <listitem open="1" type="813" id="dzv0D2dND6ET" >
-      <listitem open="0" type="814" id="M6jeAA4abaKS" />
-     </listitem>
-     <listitem open="1" type="813" id="pNUDqxMlHfJY" />
-     <listitem open="1" type="813" id="KqvrRUW77ieZ" />
-     <listitem open="1" type="813" id="gIneAG4GVUoA" />
-     <listitem open="1" type="813" id="wFIw2ToXckls" />
-     <listitem open="1" type="813" id="WeWTgTZTNfM1" />
-     <listitem open="0" type="830" id="Datatypes" >
-      <listitem open="1" type="829" id="IOPQJxo1uxLj" />
-      <listitem open="1" type="829" id="cX4NFIZFaUzG" />
-      <listitem open="1" type="829" id="2Nraprq5DFWU" />
-      <listitem open="1" type="829" id="QWncpthQOjne" />
-      <listitem open="1" type="829" id="kzAJrVD4EJ76" />
-      <listitem open="1" type="829" id="PxVlhGPhdFHQ" />
-      <listitem open="1" type="829" id="AIU3DpmeJYG7" />
-      <listitem open="1" type="829" id="cXhriCJhPNzB" />
-      <listitem open="1" type="829" id="46UFJyjSGDVS" />
-      <listitem open="1" type="829" id="AHcmWrAaxepH" />
-      <listitem open="1" type="829" id="0F6IlKP8Guux" />
-     </listitem>
-    </listitem>
-    <listitem open="1" type="802" id="Use Case View" />
-    <listitem open="1" type="821" id="Component View" />
-    <listitem open="1" type="827" id="Deployment View" />
-    <listitem open="1" type="836" id="Entity Relationship Model" />
-   </listitem>
-  </listview>
-  <codegeneration>
-   <codegenerator language="C++" />
-  </codegeneration>
- </XMI.extensions>
-</XMI>

+ 0 - 612
docs/drafts/scene2.xmi

@@ -1,612 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<XMI verified="false" xmi.version="1.2" timestamp="2011-12-29T04:41:49" xmlns:UML="http://schema.omg.org/spec/UML/1.3">
- <XMI.header>
-  <XMI.documentation>
-   <XMI.exporter>umbrello uml modeller http://uml.sf.net</XMI.exporter>
-   <XMI.exporterVersion>1.5.8</XMI.exporterVersion>
-   <XMI.exporterEncoding>UnicodeUTF8</XMI.exporterEncoding>
-  </XMI.documentation>
-  <XMI.metamodel xmi.version="1.3" href="UML.xml" xmi.name="UML"/>
- </XMI.header>
- <XMI.content>
-  <UML:Model isSpecification="false" isAbstract="false" isLeaf="false" xmi.id="m1" isRoot="false" name="UML Model">
-   <UML:Namespace.ownedElement>
-    <UML:Stereotype visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="folder" name="folder"/>
-    <UML:Stereotype visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="datatype" name="datatype"/>
-    <UML:Stereotype visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="enum" name="enum"/>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Logical View" name="Logical View">
-     <UML:Namespace.ownedElement>
-      <UML:Package stereotype="folder" visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Datatypes" name="Datatypes">
-       <UML:Namespace.ownedElement>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="zbqJPYCQnefR" name="int"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="2BMVEe9cFOaP" name="char"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="zMzwwkKvM9Ej" name="bool"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="hQAU3pu3zGWB" name="float"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="sfn72LUzhTvd" name="double"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="EDWYKiF17PUA" name="short"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="DMBCciLUL7ZL" name="long"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="S3K8VFjhRGFl" name="unsigned int"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="wUl3sFB5bNFB" name="unsigned short"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="3adOfCk8D4Gi" name="unsigned long"/>
-        <UML:DataType stereotype="datatype" visibility="public" isSpecification="false" namespace="Datatypes" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="IzNjDaSA3DDv" name="string"/>
-       </UML:Namespace.ownedElement>
-      </UML:Package>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="SNy1kBAljn9P" name="SceneObject"/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="rXBulrAiDtwn" name="SceneStatic">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="DSP5dDFXtQKz"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="J6qXHlxchzMq" name="SceneNode">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="nzX15IngEBiV"/>
-       </UML:GeneralizableElement.generalization>
-       <UML:Classifier.feature>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="DqiQZJDHpKfG" name="frameUpdate"/>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="mxnhfcJHH4qm" name="moveUpdate"/>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="zfiPC1aTps65" name="visibleUpdate">
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter visibility="private" isSpecification="false" xmi.id="BL9hjGjVIhhU" type="Z2oCygxy3epf" value="" name="frustum"/>
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="SPg4o80rLkIE" name="getWorldTransform"/>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="SoOg2Qz97mJe" name="getLocalTransform"/>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="DDoIy5xBZff3" name="getPreviousWorldTransform"/>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="rHvioBRln7i8" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="xqDXlQUbVwdP" type="rXBulrAiDtwn" name="" aggregation="none"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="9SW5WTwNiq3U" type="SNy1kBAljn9P" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="mawuVk81TWV5" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="zSgPb8veeMbz" type="J6qXHlxchzMq" name="" aggregation="none"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="3P1XQSlA0g5V" type="SNy1kBAljn9P" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="JFHkOnc4nZlD" name="Camera">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="1A3JNPhCUH5V"/>
-        <UML:Generalization xmi.idref="5l6JyUr4ko1P"/>
-        <UML:Generalization xmi.idref="nAuXyvwBw1mu"/>
-        <UML:Generalization xmi.idref="xc3hGeG1xK9X"/>
-        <UML:Generalization xmi.idref="6deEBqMPAeYr"/>
-        <UML:Generalization xmi.idref="m9JNBShousbN"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="rG36YOguGgft" name="ModelNode">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="heUjIsJhJEXK"/>
-        <UML:Generalization xmi.idref="EzYAJgfcpn2S"/>
-        <UML:Generalization xmi.idref="rUSa6y9PAq27"/>
-       </UML:GeneralizableElement.generalization>
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="OlMOTXMLf3gj" type="PYT9spdRoBNv" name="modelPatchNodes"/>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="qRB4itQTVUH2" name="SkinNode">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="NfYgt5yDEDPZ"/>
-        <UML:Generalization xmi.idref="ggqVRqwliqtq"/>
-        <UML:Generalization xmi.idref="Dx5Ml5RPNuwQ"/>
-       </UML:GeneralizableElement.generalization>
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="gj4DDh52nXDC" type="112Y3vw1DbQl" name="skinPatchNodes"/>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Dependency visibility="public" isSpecification="false" namespace="Logical View" supplier="SNy1kBAljn9P" xmi.id="hf7gdfiFWe3s" client="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="J6qXHlxchzMq" xmi.id="nzX15IngEBiV" parent="SNy1kBAljn9P" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="rXBulrAiDtwn" xmi.id="DSP5dDFXtQKz" parent="SNy1kBAljn9P" name=""/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="0NjsdvgyuCHT" name="Light">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="hpa94ecw4dQa"/>
-        <UML:Generalization xmi.idref="A8w47iyQRoG5"/>
-        <UML:Generalization xmi.idref="rbxnyzWmmgbb"/>
-        <UML:Generalization xmi.idref="mDLBX4kpG6g7"/>
-        <UML:Generalization xmi.idref="k63Y7SyC5fnB"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="tRKo3clH6yzT" name="Renderable">
-       <UML:Classifier.feature>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="i1a0wMeuxyfs" name="getMaterial"/>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="hup81s2ak3bD" name="getVao">
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter visibility="private" isSpecification="false" xmi.id="u1jbuvlWp4f8" type="vgq4ym8aTrBV" value="" name="key"/>
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="anjW7OQ4M3wy" name="getWorldTransformation">
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter visibility="private" isSpecification="false" xmi.id="08G3mMT7GKye" type="vgq4ym8aTrBV" value="" name="key"/>
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="T05FNZKbtIDV" name="getVertexIdsSize">
-         <UML:BehavioralFeature.parameter>
-          <UML:Parameter visibility="private" isSpecification="false" xmi.id="tqt3pitW2xqp" type="vgq4ym8aTrBV" value="" name="key"/>
-         </UML:BehavioralFeature.parameter>
-        </UML:Operation>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="5k8R7nYDjUlk" name="getProperties"/>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="vVjn756QCL3I" name="getRenderingStages"/>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Z2oCygxy3epf" name="Frustum">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="ZVdRgsuZKELN"/>
-        <UML:Generalization xmi.idref="3MMBumzpG7XC"/>
-       </UML:GeneralizableElement.generalization>
-       <UML:Classifier.feature>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="zZHMzsqTyJyB" name="isInside"/>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="Z2oCygxy3epf" xmi.id="ZVdRgsuZKELN" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="JFHkOnc4nZlD" xmi.id="1A3JNPhCUH5V" parent="Z2oCygxy3epf" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="0NjsdvgyuCHT" xmi.id="hpa94ecw4dQa" parent="Z2oCygxy3epf" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="rG36YOguGgft" xmi.id="heUjIsJhJEXK" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="qRB4itQTVUH2" xmi.id="NfYgt5yDEDPZ" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="JFHkOnc4nZlD" xmi.id="5l6JyUr4ko1P" parent="Z2oCygxy3epf" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="JFHkOnc4nZlD" xmi.id="nAuXyvwBw1mu" parent="tRKo3clH6yzT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="0NjsdvgyuCHT" xmi.id="A8w47iyQRoG5" parent="Z2oCygxy3epf" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="0NjsdvgyuCHT" xmi.id="rbxnyzWmmgbb" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="JFHkOnc4nZlD" xmi.id="xc3hGeG1xK9X" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="rG36YOguGgft" xmi.id="EzYAJgfcpn2S" parent="tRKo3clH6yzT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="qRB4itQTVUH2" xmi.id="ggqVRqwliqtq" parent="tRKo3clH6yzT" name=""/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="HWqxKhoAyn7H" name="StaticGeometry">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="JIEpiA19a1U1"/>
-        <UML:Generalization xmi.idref="qMoQMJPMNT0s"/>
-        <UML:Generalization xmi.idref="TDV00RrlHN2J"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="HWqxKhoAyn7H" xmi.id="JIEpiA19a1U1" parent="rXBulrAiDtwn" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="HWqxKhoAyn7H" xmi.id="qMoQMJPMNT0s" parent="tRKo3clH6yzT" name=""/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="pMvCpt3xbeEr" name="PerspectiveCamera">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="WilVNneG7Bvd"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="LwjR0FVi9FGO" name="OrthographicCamera">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="4ae9jZkMlSM2"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="OTT5nNmCL1f4" name="SpotLight">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="YqiJI3JsTTMN"/>
-       </UML:GeneralizableElement.generalization>
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="XZmmvWRBCaep" type="pMvCpt3xbeEr" name="camera"/>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="9vKXhXVI6N4T" name="HemiLight">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="Cz0aoGT9Dldx"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="tlRLHbjj2mWP" name="PointLight">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="gm47GOUMOqIu"/>
-        <UML:Generalization xmi.idref="jhYwQBtoKUT2"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="pMvCpt3xbeEr" xmi.id="WilVNneG7Bvd" parent="JFHkOnc4nZlD" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="LwjR0FVi9FGO" xmi.id="4ae9jZkMlSM2" parent="JFHkOnc4nZlD" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="OTT5nNmCL1f4" xmi.id="YqiJI3JsTTMN" parent="0NjsdvgyuCHT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="tlRLHbjj2mWP" xmi.id="gm47GOUMOqIu" parent="0NjsdvgyuCHT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="9vKXhXVI6N4T" xmi.id="Cz0aoGT9Dldx" parent="0NjsdvgyuCHT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="tlRLHbjj2mWP" xmi.id="jhYwQBtoKUT2" parent="0NjsdvgyuCHT" name=""/>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="cYAw0dwLiHhZ" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="1" xmi.id="WopQ3ulvUlPW" type="Z2oCygxy3epf" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="*" xmi.id="1JHwkwINSQHS" type="tRKo3clH6yzT" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="Hrso1XHFNAMm" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="1" xmi.id="0Fz2wn7dWjnO" type="Z2oCygxy3epf" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="*" xmi.id="JSbYHg1ZWrLX" type="tRKo3clH6yzT" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="aCSkjpKcYIQB" name="OctreeNode"/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="CLERaYxl75Nb" name="Octree"/>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="6hqsVP4y9lnT" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="1" xmi.id="LJkkUDAhXO67" type="CLERaYxl75Nb" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="*" xmi.id="x1s26FbAvP0Q" type="aCSkjpKcYIQB" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="Ul3N4g6Lct9Q" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="1" xmi.id="5cEfnpZhUSVA" type="Z2oCygxy3epf" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" multiplicity="*" xmi.id="iHE6z2cTldpq" type="aCSkjpKcYIQB" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="Z2oCygxy3epf" xmi.id="3MMBumzpG7XC" parent="tRKo3clH6yzT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="JFHkOnc4nZlD" xmi.id="6deEBqMPAeYr" parent="Z2oCygxy3epf" name=""/>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="7zcnD3kOQKlZ" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="HCMttJJucpaU" type="aCSkjpKcYIQB" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="EO5Pdo9imlVx" type="tRKo3clH6yzT" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="0NjsdvgyuCHT" xmi.id="mDLBX4kpG6g7" parent="Z2oCygxy3epf" name=""/>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="LxJc3xjPujQg" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="MqeLM1vfVDhk" type="Z2oCygxy3epf" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="yhluyyOJthtu" type="aCSkjpKcYIQB" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="cbKWKiAeWmxt" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="false" isSpecification="false" xmi.id="lqWG1D0xsmsq" type="HWqxKhoAyn7H" name="" aggregation="none"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="iG8ZwzTYYl5r" type="J6qXHlxchzMq" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="HWqxKhoAyn7H" xmi.id="TDV00RrlHN2J" parent="J6qXHlxchzMq" name=""/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="7qtCN74kkWxC" name="lklk"/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="vgq4ym8aTrBV" name="PassLodKey"/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="e1aG9DDOGL7s" name="Scene">
-       <UML:Classifier.feature>
-        <UML:Attribute visibility="private" isSpecification="false" xmi.id="imMDNtOADG1f" type="J6qXHlxchzMq" name="nodes"/>
-        <UML:Operation visibility="public" isSpecification="false" isQuery="false" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="IuNpzsprGl9N" name="getSceneNodes"/>
-       </UML:Classifier.feature>
-      </UML:Class>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="npTGeUApNi3c" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="d2MI3wWB7hXO" type="e1aG9DDOGL7s" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="3eEBHp14cUJG" type="CLERaYxl75Nb" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Enumeration stereotype="enum" visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="uXYCja7WeNcm" name="SceneNodeFlags">
-       <UML:EnumerationLiteral visibility="public" isSpecification="false" namespace="uXYCja7WeNcm" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="GoRJcvD4hYMw" name="SNF_INHERIT_PARENT_TRANFORM"/>
-       <UML:EnumerationLiteral visibility="public" isSpecification="false" namespace="uXYCja7WeNcm" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Kpcl5qztHHTA" name="SNF_MOVED"/>
-      </UML:Enumeration>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="cCU5jvTzzFUs" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="CmgnWldTfuk8" type="J6qXHlxchzMq" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="3BesCVeoi9sR" type="uXYCja7WeNcm" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="ZpkSnu1SkM7x" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="AfHeFzap43eH" type="e1aG9DDOGL7s" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="eZ2I0HnX6Xzs" type="J6qXHlxchzMq" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Association visibility="public" isSpecification="false" namespace="Logical View" xmi.id="ITF8Q7vFLgPj" name="">
-       <UML:Association.connection>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="lw9IWrxOqHNB" type="e1aG9DDOGL7s" name="" aggregation="aggregate"/>
-        <UML:AssociationEnd changeability="changeable" visibility="public" isNavigable="true" isSpecification="false" xmi.id="H67a6gUP8jVW" type="CLERaYxl75Nb" name="" aggregation="none"/>
-       </UML:Association.connection>
-      </UML:Association>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="0NjsdvgyuCHT" xmi.id="k63Y7SyC5fnB" parent="tRKo3clH6yzT" name=""/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="OVIwhsCoFZ74" name="GeometryNode">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="0emnFZrhG8yH"/>
-        <UML:Generalization xmi.idref="qh27nyOVj1gj"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="OVIwhsCoFZ74" xmi.id="0emnFZrhG8yH" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="OVIwhsCoFZ74" xmi.id="qh27nyOVj1gj" parent="tRKo3clH6yzT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="rG36YOguGgft" xmi.id="rUSa6y9PAq27" parent="OVIwhsCoFZ74" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="qRB4itQTVUH2" xmi.id="Dx5Ml5RPNuwQ" parent="OVIwhsCoFZ74" name=""/>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="PYT9spdRoBNv" name="ModelPatchNode">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="CY13PB4kNxQ5"/>
-        <UML:Generalization xmi.idref="EPpaNDfFISa2"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Class visibility="public" isSpecification="false" namespace="Logical View" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="112Y3vw1DbQl" name="SkinPatchNode">
-       <UML:GeneralizableElement.generalization>
-        <UML:Generalization xmi.idref="crA1eMMXttC1"/>
-        <UML:Generalization xmi.idref="vmABEkD60kD0"/>
-       </UML:GeneralizableElement.generalization>
-      </UML:Class>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="112Y3vw1DbQl" xmi.id="crA1eMMXttC1" parent="tRKo3clH6yzT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="PYT9spdRoBNv" xmi.id="CY13PB4kNxQ5" parent="tRKo3clH6yzT" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="PYT9spdRoBNv" xmi.id="EPpaNDfFISa2" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="112Y3vw1DbQl" xmi.id="vmABEkD60kD0" parent="J6qXHlxchzMq" name=""/>
-      <UML:Generalization discriminator="" visibility="public" isSpecification="false" namespace="Logical View" child="JFHkOnc4nZlD" xmi.id="m9JNBShousbN" parent="tRKo3clH6yzT" name=""/>
-     </UML:Namespace.ownedElement>
-     <XMI.extension xmi.extender="umbrello">
-      <diagrams>
-       <diagram showopsig="1" linecolor="#ff0000" snapx="10" showattribassocs="1" snapy="10" linewidth="0" showattsig="1" isopen="1" showpackage="1" showpubliconly="1" showstereotype="1" name="class diagram" font="Sans Serif,9,-1,0,50,0,0,0,0,0" canvasheight="854" canvaswidth="1604" localid="" snapcsgrid="1" showgrid="1" showops="1" griddotcolor="#808080" backgroundcolor="#ffffff" usefillcolor="1" fillcolor="#ffff00" zoom="100" xmi.id="PbF0CcmZxcnO" documentation="" showscope="1" snapgrid="1" showatts="1" type="1">
-        <widgets>
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="1" x="420" showattsigs="601" showstereotype="1" y="130" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="250" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="J6qXHlxchzMq" showscope="1" height="130" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="120" showattsigs="601" showstereotype="1" y="520" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="70" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="JFHkOnc4nZlD" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="710" showattsigs="601" showstereotype="1" y="660" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="100" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="rG36YOguGgft" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="840" showattsigs="601" showstereotype="1" y="660" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="80" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="qRB4itQTVUH2" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="430" showattsigs="601" showstereotype="1" y="510" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="50" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="0NjsdvgyuCHT" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="1" x="880" showattsigs="601" showstereotype="1" y="330" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="310" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="tRKo3clH6yzT" showscope="1" height="110" showopsigs="601"/>
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="1" x="280" showattsigs="601" showstereotype="1" y="430" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="130" isinstance="0" usefillcolor="1" fillcolor="#ffffc0" xmi.id="Z2oCygxy3epf" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="0" showattsigs="601" showstereotype="1" y="660" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="160" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="pMvCpt3xbeEr" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="180" showattsigs="601" showstereotype="1" y="680" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="170" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="LwjR0FVi9FGO" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="390" showattsigs="601" showstereotype="1" y="660" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="90" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="OTT5nNmCL1f4" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="590" showattsigs="601" showstereotype="1" y="660" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="90" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="9vKXhXVI6N4T" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="490" showattsigs="601" showstereotype="1" y="660" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="90" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="tlRLHbjj2mWP" showscope="1" height="40" showopsigs="601"/>
-         <notewidget width="200" x="1200" noteType="0" y="330" usesdiagramusefillcolor="1" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="270" linecolor="none" xmi.id="eCXMZulyodF1" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,0,50,0,0,0,0,0" text="Renderable is the entity that renders in one or more from MS, BS, IS, DBGS, DPS stages. It contains only stuff that renderer needs and nothing else.&#xa;&#xa;The renderables are, ModelPatchNodes, SkinPatchNodes or lights&#xa;&#xa;Renderable flags:&#xa;MOVABLE&#xa;RENDER_ONLY_CHILDREN&#xa;DEBUG"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="920" showattsigs="601" showstereotype="1" y="200" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="100" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="aCSkjpKcYIQB" showscope="1" height="40" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="880" showattsigs="601" showstereotype="1" y="100" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="60" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="CLERaYxl75Nb" showscope="1" height="40" showopsigs="601"/>
-         <notewidget width="160" x="310" noteType="0" y="40" usesdiagramusefillcolor="1" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="80" linecolor="none" xmi.id="tsst9QuOreU7" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,0,50,0,0,0,0,0" text="SceneNode is the basis of all scene related objects"/>
-         <notewidget width="120" x="1260" noteType="0" y="140" usesdiagramusefillcolor="1" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="140" linecolor="none" xmi.id="C5MU06Rmn4O7" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,0,50,0,0,0,0,0" text="Passes:&#xa;- 0: MS&#xa;- 1: BS&#xa;- 2: IS&#xa;- 3: DP"/>
-         <notewidget width="180" x="1030" noteType="0" y="100" usesdiagramusefillcolor="1" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="130" linecolor="none" xmi.id="uLDYJh1g4PSb" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,0,50,0,0,0,0,0" text="The OctreeNode contains Renderables"/>
-         <classwidget linecolor="#ff0000" usesdiagramfillcolor="0" linewidth="none" showoperations="1" usesdiagramusefillcolor="0" showpubliconly="1" showpackage="1" x="690" showattsigs="601" showstereotype="1" y="10" showattributes="1" font="Sans Serif,9,-1,5,50,0,0,0,0,0" width="140" isinstance="0" usefillcolor="1" fillcolor="#ffff00" xmi.id="e1aG9DDOGL7s" showscope="1" height="60" showopsigs="601"/>
-         <enumwidget width="240" x="80" y="180" usesdiagramusefillcolor="0" usesdiagramfillcolor="0" isinstance="0" fillcolor="#ffffc0" height="100" linecolor="#ff0000" xmi.id="uXYCja7WeNcm" showpackage="0" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,5,50,0,0,0,0,0"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="780" showattsigs="601" showstereotype="1" y="510" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="120" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="OVIwhsCoFZ74" showscope="1" height="50" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="690" showattsigs="601" showstereotype="1" y="780" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="130" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="PYT9spdRoBNv" showscope="1" height="60" showopsigs="601"/>
-         <classwidget linecolor="none" usesdiagramfillcolor="1" linewidth="none" showoperations="1" usesdiagramusefillcolor="1" showpubliconly="1" showpackage="1" x="840" showattsigs="601" showstereotype="1" y="780" showattributes="1" font="Sans Serif,9,-1,0,50,0,0,0,0,0" width="120" isinstance="0" usefillcolor="1" fillcolor="none" xmi.id="112Y3vw1DbQl" showscope="1" height="60" showopsigs="601"/>
-         <notewidget width="230" showstereotype="1" x="1370" noteType="0" y="720" usesdiagramusefillcolor="1" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="130" linecolor="none" xmi.id="B67nr6LzdJvV" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,0,50,0,0,0,0,0" text="Things to note:&#xa;- Bucket objects&#xa;- Replacable Scene&#xa;- Particle emitter"/>
-        </widgets>
-        <messages/>
-        <associations>
-         <assocwidget indexa="1" indexb="2" widgetaid="0NjsdvgyuCHT" linecolor="none" totalcounta="2" xmi.id="rbxnyzWmmgbb" widgetbid="J6qXHlxchzMq" totalcountb="6" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="430" starty="510"/>
-           <endpoint endx="430" endy="260"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="JFHkOnc4nZlD" linecolor="none" totalcounta="2" xmi.id="xc3hGeG1xK9X" widgetbid="J6qXHlxchzMq" totalcountb="6" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="190" starty="520"/>
-           <endpoint endx="420" endy="260"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="pMvCpt3xbeEr" linecolor="none" totalcounta="2" xmi.id="WilVNneG7Bvd" widgetbid="JFHkOnc4nZlD" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="160" starty="660"/>
-           <endpoint endx="160" endy="560"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="LwjR0FVi9FGO" linecolor="none" totalcounta="2" xmi.id="4ae9jZkMlSM2" widgetbid="JFHkOnc4nZlD" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="190" starty="680"/>
-           <endpoint endx="190" endy="560"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="OTT5nNmCL1f4" linecolor="none" totalcounta="2" xmi.id="YqiJI3JsTTMN" widgetbid="0NjsdvgyuCHT" totalcountb="4" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="480" starty="660"/>
-           <endpoint endx="480" endy="550"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" widgetaid="9vKXhXVI6N4T" linecolor="none" totalcounta="2" xmi.id="Cz0aoGT9Dldx" widgetbid="0NjsdvgyuCHT" totalcountb="4" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="590" starty="660"/>
-           <endpoint endx="480" endy="550"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="tlRLHbjj2mWP" linecolor="none" totalcounta="2" xmi.id="jhYwQBtoKUT2" widgetbid="0NjsdvgyuCHT" totalcountb="4" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="490" starty="660"/>
-           <endpoint endx="480" endy="550"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="CLERaYxl75Nb" linecolor="none" totalcounta="2" xmi.id="6hqsVP4y9lnT" widgetbid="aCSkjpKcYIQB" totalcountb="2" type="501" linewidth="none">
-          <linepath>
-           <startpoint startx="940" starty="140"/>
-           <endpoint endx="940" endy="200"/>
-          </linepath>
-          <floatingtext width="20" x="900" y="140" usesdiagramusefillcolor="1" posttext="" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="20" role="701" linecolor="none" xmi.id="xfhMBtQwKDoR" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,0,50,0,0,0,0,0" text="1" pretext=""/>
-          <floatingtext width="20" x="960" y="180" usesdiagramusefillcolor="1" posttext="" usesdiagramfillcolor="1" isinstance="0" fillcolor="none" height="20" role="702" linecolor="none" xmi.id="DyWRYaUhP2tu" usefillcolor="1" linewidth="none" font="Sans Serif,9,-1,0,50,0,0,0,0,0" text="*" pretext=""/>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="JFHkOnc4nZlD" linecolor="none" totalcounta="3" xmi.id="6deEBqMPAeYr" widgetbid="Z2oCygxy3epf" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="190" starty="520"/>
-           <endpoint endx="280" endy="470"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="aCSkjpKcYIQB" linecolor="none" totalcounta="2" xmi.id="7zcnD3kOQKlZ" widgetbid="tRKo3clH6yzT" totalcountb="2" type="501" linewidth="none">
-          <linepath>
-           <startpoint startx="1010" starty="240"/>
-           <endpoint endx="1010" endy="330"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="0NjsdvgyuCHT" linecolor="none" totalcounta="2" xmi.id="mDLBX4kpG6g7" widgetbid="Z2oCygxy3epf" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="430" starty="510"/>
-           <endpoint endx="410" endy="470"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="J6qXHlxchzMq" linecolor="none" totalcounta="2" xmi.id="cCU5jvTzzFUs" widgetbid="uXYCja7WeNcm" totalcountb="2" type="501" linewidth="none">
-          <linepath>
-           <startpoint startx="420" starty="180"/>
-           <endpoint endx="320" endy="180"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="e1aG9DDOGL7s" linecolor="none" totalcounta="2" xmi.id="ZpkSnu1SkM7x" widgetbid="J6qXHlxchzMq" totalcountb="3" type="501" linewidth="none">
-          <linepath>
-           <startpoint startx="690" starty="70"/>
-           <endpoint endx="670" endy="130"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="e1aG9DDOGL7s" linecolor="none" totalcounta="4" xmi.id="ITF8Q7vFLgPj" widgetbid="CLERaYxl75Nb" totalcountb="2" type="501" linewidth="none">
-          <linepath>
-           <startpoint startx="830" starty="70"/>
-           <endpoint endx="880" endy="100"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="0NjsdvgyuCHT" linecolor="none" totalcounta="2" xmi.id="k63Y7SyC5fnB" widgetbid="tRKo3clH6yzT" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="480" starty="510"/>
-           <endpoint endx="880" endy="440"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="3" indexb="2" visibilityA="0" widgetaid="e1aG9DDOGL7s" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="4" xmi.id="imMDNtOADG1f" changeabilityB="900" widgetbid="J6qXHlxchzMq" totalcountb="3" type="510" linewidth="none">
-          <linepath>
-           <startpoint startx="690" starty="70"/>
-           <endpoint endx="670" endy="130"/>
-          </linepath>
-          <floatingtext linecolor="none" usesdiagramfillcolor="1" linewidth="none" usesdiagramusefillcolor="1" x="670" showstereotype="1" y="90" text="nodes" font="Sans Serif,9,-1,0,50,0,0,0,0,0" pretext="-" role="710" width="50" isinstance="0" posttext="" usefillcolor="1" fillcolor="none" xmi.id="hCFuhz6denzn" height="20"/>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="5" widgetaid="OVIwhsCoFZ74" linecolor="none" totalcounta="2" xmi.id="0emnFZrhG8yH" widgetbid="J6qXHlxchzMq" totalcountb="6" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="780" starty="510"/>
-           <endpoint endx="670" endy="260"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" widgetaid="rG36YOguGgft" linecolor="none" totalcounta="2" xmi.id="rUSa6y9PAq27" widgetbid="OVIwhsCoFZ74" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="810" starty="660"/>
-           <endpoint endx="810" endy="560"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" widgetaid="qRB4itQTVUH2" linecolor="none" totalcounta="2" xmi.id="Dx5Ml5RPNuwQ" widgetbid="OVIwhsCoFZ74" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="900" starty="660"/>
-           <endpoint endx="900" endy="560"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="2" indexb="2" widgetaid="112Y3vw1DbQl" linecolor="none" totalcounta="4" xmi.id="crA1eMMXttC1" widgetbid="tRKo3clH6yzT" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="950" starty="780"/>
-           <endpoint endx="950" endy="440"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="3" indexb="1" widgetaid="PYT9spdRoBNv" linecolor="none" totalcounta="4" xmi.id="CY13PB4kNxQ5" widgetbid="tRKo3clH6yzT" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="820" starty="780"/>
-           <endpoint endx="880" endy="440"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" widgetaid="PYT9spdRoBNv" linecolor="none" totalcounta="4" xmi.id="EPpaNDfFISa2" widgetbid="J6qXHlxchzMq" totalcountb="6" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="690" starty="780"/>
-           <endpoint endx="670" endy="260"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="4" widgetaid="112Y3vw1DbQl" linecolor="none" totalcounta="4" xmi.id="vmABEkD60kD0" widgetbid="J6qXHlxchzMq" totalcountb="6" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="840" starty="780"/>
-           <endpoint endx="670" endy="260"/>
-          </linepath>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="2" visibilityA="0" widgetaid="rG36YOguGgft" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="2" xmi.id="OlMOTXMLf3gj" changeabilityB="900" widgetbid="PYT9spdRoBNv" totalcountb="4" type="510" linewidth="none">
-          <linepath>
-           <startpoint startx="780" starty="700"/>
-           <endpoint endx="780" endy="780"/>
-          </linepath>
-          <floatingtext linecolor="none" usesdiagramfillcolor="1" linewidth="none" usesdiagramusefillcolor="1" x="740" showstereotype="1" y="740" text="modelPatchNodes" font="Sans Serif,9,-1,0,50,0,0,0,0,0" pretext="-" role="710" width="120" isinstance="0" posttext="" usefillcolor="1" fillcolor="none" xmi.id="eQhzbWOoSuFy" height="20"/>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="3" visibilityA="0" widgetaid="qRB4itQTVUH2" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="2" xmi.id="gj4DDh52nXDC" changeabilityB="900" widgetbid="112Y3vw1DbQl" totalcountb="4" type="510" linewidth="none">
-          <linepath>
-           <startpoint startx="920" starty="700"/>
-           <endpoint endx="920" endy="780"/>
-          </linepath>
-          <floatingtext linecolor="none" usesdiagramfillcolor="1" linewidth="none" usesdiagramusefillcolor="1" x="880" showstereotype="1" y="740" text="skinPatchNodes" font="Sans Serif,9,-1,0,50,0,0,0,0,0" pretext="-" role="710" width="110" isinstance="0" posttext="" usefillcolor="1" fillcolor="none" xmi.id="UheshXkOhzJN" height="20"/>
-         </assocwidget>
-         <assocwidget indexa="1" indexb="1" visibilityA="0" widgetaid="OTT5nNmCL1f4" visibilityB="0" linecolor="none" changeabilityA="900" totalcounta="2" xmi.id="XZmmvWRBCaep" changeabilityB="900" widgetbid="pMvCpt3xbeEr" totalcountb="2" type="510" linewidth="none">
-          <linepath>
-           <startpoint startx="390" starty="660"/>
-           <endpoint endx="160" endy="660"/>
-          </linepath>
-          <floatingtext linecolor="none" usesdiagramfillcolor="1" linewidth="none" usesdiagramusefillcolor="1" x="160" showstereotype="1" y="660" text="camera" font="Sans Serif,9,-1,0,50,0,0,0,0,0" pretext="-" role="710" width="60" isinstance="0" posttext="" usefillcolor="1" fillcolor="none" xmi.id="wN0aBxLnL3kw" height="20"/>
-         </assocwidget>
-         <assocwidget indexa="2" indexb="1" widgetaid="JFHkOnc4nZlD" linecolor="none" totalcounta="3" xmi.id="m9JNBShousbN" widgetbid="tRKo3clH6yzT" totalcountb="3" type="500" linewidth="none">
-          <linepath>
-           <startpoint startx="190" starty="520"/>
-           <endpoint endx="880" endy="440"/>
-          </linepath>
-         </assocwidget>
-        </associations>
-       </diagram>
-      </diagrams>
-     </XMI.extension>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Use Case View" name="Use Case View">
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Component View" name="Component View">
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Deployment View" name="Deployment View">
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-    <UML:Model stereotype="folder" visibility="public" isSpecification="false" namespace="m1" isAbstract="false" isLeaf="false" isRoot="false" xmi.id="Entity Relationship Model" name="Entity Relationship Model">
-     <UML:Namespace.ownedElement/>
-    </UML:Model>
-   </UML:Namespace.ownedElement>
-  </UML:Model>
- </XMI.content>
- <XMI.extensions xmi.extender="umbrello">
-  <docsettings viewid="PbF0CcmZxcnO" uniqueid="vVjn756QCL3I" documentation=""/>
-  <listview>
-   <listitem open="1" type="800" id="Views">
-    <listitem open="1" type="801" id="Logical View">
-     <listitem open="0" type="807" id="PbF0CcmZxcnO" label="class diagram"/>
-     <listitem open="1" type="813" id="JFHkOnc4nZlD"/>
-     <listitem open="1" type="813" id="Z2oCygxy3epf">
-      <listitem open="0" type="815" id="zZHMzsqTyJyB"/>
-     </listitem>
-     <listitem open="1" type="813" id="OVIwhsCoFZ74"/>
-     <listitem open="1" type="813" id="9vKXhXVI6N4T"/>
-     <listitem open="1" type="813" id="0NjsdvgyuCHT"/>
-     <listitem open="1" type="813" id="rG36YOguGgft">
-      <listitem open="0" type="814" id="OlMOTXMLf3gj"/>
-     </listitem>
-     <listitem open="1" type="813" id="PYT9spdRoBNv"/>
-     <listitem open="1" type="813" id="CLERaYxl75Nb"/>
-     <listitem open="1" type="813" id="aCSkjpKcYIQB"/>
-     <listitem open="1" type="813" id="LwjR0FVi9FGO"/>
-     <listitem open="1" type="813" id="vgq4ym8aTrBV"/>
-     <listitem open="1" type="813" id="pMvCpt3xbeEr"/>
-     <listitem open="1" type="813" id="tlRLHbjj2mWP"/>
-     <listitem open="1" type="813" id="tRKo3clH6yzT">
-      <listitem open="0" type="815" id="i1a0wMeuxyfs"/>
-      <listitem open="0" type="815" id="hup81s2ak3bD"/>
-      <listitem open="0" type="815" id="anjW7OQ4M3wy"/>
-      <listitem open="0" type="815" id="T05FNZKbtIDV"/>
-      <listitem open="0" type="815" id="5k8R7nYDjUlk"/>
-      <listitem open="0" type="815" id="vVjn756QCL3I"/>
-     </listitem>
-     <listitem open="1" type="813" id="e1aG9DDOGL7s">
-      <listitem open="0" type="814" id="imMDNtOADG1f"/>
-      <listitem open="0" type="815" id="IuNpzsprGl9N"/>
-     </listitem>
-     <listitem open="1" type="813" id="J6qXHlxchzMq">
-      <listitem open="0" type="815" id="DqiQZJDHpKfG"/>
-      <listitem open="0" type="815" id="mxnhfcJHH4qm"/>
-      <listitem open="0" type="815" id="zfiPC1aTps65"/>
-      <listitem open="0" type="815" id="SPg4o80rLkIE"/>
-      <listitem open="0" type="815" id="SoOg2Qz97mJe"/>
-      <listitem open="0" type="815" id="DDoIy5xBZff3"/>
-     </listitem>
-     <listitem open="1" type="813" id="SNy1kBAljn9P"/>
-     <listitem open="1" type="813" id="rXBulrAiDtwn"/>
-     <listitem open="1" type="813" id="qRB4itQTVUH2">
-      <listitem open="0" type="814" id="gj4DDh52nXDC"/>
-     </listitem>
-     <listitem open="1" type="813" id="112Y3vw1DbQl"/>
-     <listitem open="1" type="813" id="OTT5nNmCL1f4">
-      <listitem open="0" type="814" id="XZmmvWRBCaep"/>
-     </listitem>
-     <listitem open="1" type="813" id="HWqxKhoAyn7H"/>
-     <listitem open="1" type="813" id="7qtCN74kkWxC"/>
-     <listitem open="0" type="830" id="Datatypes">
-      <listitem open="1" type="829" id="zMzwwkKvM9Ej"/>
-      <listitem open="1" type="829" id="2BMVEe9cFOaP"/>
-      <listitem open="1" type="829" id="sfn72LUzhTvd"/>
-      <listitem open="1" type="829" id="hQAU3pu3zGWB"/>
-      <listitem open="1" type="829" id="zbqJPYCQnefR"/>
-      <listitem open="1" type="829" id="DMBCciLUL7ZL"/>
-      <listitem open="1" type="829" id="EDWYKiF17PUA"/>
-      <listitem open="1" type="829" id="IzNjDaSA3DDv"/>
-      <listitem open="1" type="829" id="S3K8VFjhRGFl"/>
-      <listitem open="1" type="829" id="3adOfCk8D4Gi"/>
-      <listitem open="1" type="829" id="wUl3sFB5bNFB"/>
-     </listitem>
-     <listitem open="1" type="831" id="uXYCja7WeNcm">
-      <listitem open="0" type="839" id="GoRJcvD4hYMw"/>
-      <listitem open="0" type="839" id="Kpcl5qztHHTA"/>
-     </listitem>
-    </listitem>
-    <listitem open="1" type="802" id="Use Case View"/>
-    <listitem open="1" type="821" id="Component View"/>
-    <listitem open="1" type="827" id="Deployment View"/>
-    <listitem open="1" type="836" id="Entity Relationship Model"/>
-   </listitem>
-  </listview>
-  <codegeneration>
-   <codegenerator language="C++"/>
-  </codegeneration>
- </XMI.extensions>
-</XMI>

+ 0 - 57
docs/drafts/texture_format.txt

@@ -1,57 +0,0 @@
-
-======
-Header
-======
-
-ANKITEX1
-width
-height
-depth
-texture type  2D | cube | 3D | 2DArray
-color_format  RGB8 | RGBA8
-compression_formats  RAW & ETC2 & S3TC
-normal
-miplevels
-
-
-===========
-Data layout
-===========
-
-- Format A
-	- Level 0
-		- Depth 0 or face 0
-		- Depth N or face N
-	- Level N
-- Format B
-
-
-================
-Helper functions
-================
-
-PtrSize getDataSectionSize()
-
-Get The size of all the texture data. header+data_section_size == file_size
-
-
-PtrSize getCompressedFormatSize(format)
-
-Get the size of the a compressed format
-
-
-UVec2 getLevelSize(width, height, level)
-
-
-UVec2 getSurfaceSize(data_compression, level);
-
-Given a data compression format and the level get the size that the data should 
-be
-
-=============
-Sanity checks
-=============
-
-- Compressed format and no mipmap should issue a warning
-- Get the total size of the file, sub the header, calculate the size and check 
-  if they match

+ 0 - 113
docs/drafts/tiler_optimized.txt

@@ -1,113 +0,0 @@
-=============
-Update planes
-=============
-
-planetrf = 22* 14+
-
-updatealltileplanes = planetrf * (15 + 15 + 256 * 2)
-
-sum = 11924* 7588+
-
-
-=============
-transform everything else
-=============
-
-100 lights
-1000 other spatials
-
-trfaabb = 30* 27+
-
-lighttrf = 900* 600+
-otherspatialstrf = 30000* 27000+
-
-=============
-transform them for 2D checks
-=============
-
-mat4mulvec4 = 16* 12+
-
-alllights = 3200* 2400+
-otherspatial = 128000* 96000+
-
-
-
-function create_tiles
-	
-end
-
-
-algorithm cs aabb fr
-	MAX_POINTS = 8
-
-	pointsWorld[MAX_POINTS]
-
-	if cs.type is pespective frustum
-		pointsWorld[...] = get the 5 points
-		n = 5
-	else
-		pointsWorld[...] = get the 8 aabb points
-		n = 8
-	end
-
-	pointsNdc[MAX_POINTS]
-
-	minZ, maxZ
-	for i in (0, n)
-		pointsNdc[i] = fr.projectionMat * pointsWorld[i]
-		pointsNdc[i] /= pointsNdc[i].w
-
-		update minZ and maxZ
-	end
-
-	edges = convexHull2D(pointsNdc, n)
-
-	depth = log 2 TILES
-
-	for edge in edges
-		do_edge edge -1..1, -1..1 depth
-	end
-end
-
-do_edge edge min max depth
-	if min and max not inside min max
-		return
-	end
-
-	if depth == 0
-		mark visible
-	endif
-
-	center = (min + max) / 2
-	inside[4] = false
-
-	if center left of edge
-		// right up
-		p = max
-		if p is left of edge
-			inside[0] = true;
-		end
-
-		// center top
-		p = center.x, max.y
-		if p is left of edge
-			inside[0] = true;
-			inside[1] = true;
-		end
-
-		// left top
-		p = min.x, max.y
-		if p is left of edge
-			inside[1] = true;
-		end
-
-		// blah blah
-	else
-		inside[all] = true
-	end
- 
-	for all that are inside
-		do_edge new_min new_max depth - 1
-	end
-end
-