From db072ad4dc181eca5a1458656b130beb43f475bf Mon Sep 17 00:00:00 2001
From: 53hornet <53hornet@gmail.com>
Date: Sat, 2 Feb 2019 23:33:15 -0500
Subject: Init.
---
hw6/doc/xml_scene_format.txt | 112 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 112 insertions(+)
create mode 100644 hw6/doc/xml_scene_format.txt
(limited to 'hw6/doc')
diff --git a/hw6/doc/xml_scene_format.txt b/hw6/doc/xml_scene_format.txt
new file mode 100644
index 0000000..1bdf4b5
--- /dev/null
+++ b/hw6/doc/xml_scene_format.txt
@@ -0,0 +1,112 @@
+* The whole scene should be contained in a ... node.
+
+* In a scene you can have (multiple of) the following nodes:
+ -
+ -
+ -
+ -
+ -
+ -
+ -
+ -
+
+* Basic value types:
+ - vec3d "x y z" or "xyz". E.g., name="1.0 2.0 3.0" (vec3d(1,2,3)) or name="1.0" (vec3d(1,1,1)).
+ - vec2d "x y" or "xy"
+ - float "f"
+ - string "s"
+ - integer "i"
+ - bool "true" or "false"
+ - color "r g b" or "rgb"
+
+* A node is of the form: , with the following defaults:
+ - eye="0.0 0.0 0.0"
+ - view="0.0 0.0 1.0"
+ - up="0.0 1.0 0.0"
+ - fov="60"
+ - width="256"
+ - height="256"
+ - auto="false"
+ When 'auto' is set to true, the camera will be moved along the view direction (i.e., change 'eye') such that the scene's bounding box fully falls within the view.
+
+* has the following form: .. , where either id or ref occurs. 'id' allows you to name the node. 'ref' refers to a named sceneGraphNode, and the rest of the sceneGraphNode is ignored. A sceneGraphNode can contain (multiple of) the following nodes:
+ -
+ -
+ -
+ -
+
+* A node can have any of multiple of the following nodes:
+ -
+ -
+ -
+ -
+ -
+ -
+ The resulting transformation is the multiplication of the nodes.E.g., a followed by a and then a , will be equivalent to **
+
+* A has the following form:
+
+* A has the form:
+
+* A has the form:
+
+* A has the form: , with a default of axis="0.0 0.0 1.0".
+
+* A has the following form: .. , where 'ref' and 'id' are the same as with , and 'obj' can contain the name of an OBJ file. A triangleMesh can contain (multiple of) the following nodes:
+ -
+ -
+ - or
+
+* A (or node can have multiple occurances of a which can have any of the following forms:
+ -
+ -
+ -
+ -
+ where 'v' refers to the vertex position, 'n' to the vertex normal, and 't' to the vertex' texture coordinate. Vertices are expected to be provided in CCW order.
+
+* A node has the following form: which can have the following children:
+ -
+ -
+ -
+ - or
+
+* A has the following form with the following general children:
+ -
+ -
+ -
+ - or
+ in addition to specific node dependent children depending on the 'type' which can be:
+ - normalMap
+ - bumpMap
+
+* A node has a child node, and a node to apply it too.
+* A node has a child node, and a node to apply it too. In addition, the shadingFrameTransformation-node also has a 'scale' parameter defined that sets the height of the bump, and a 'channel' parameter that indicates which color channel in the texture defines the bump map.
+
+* A node has the following form ..., where it can have the following children:
+ - and which can have a as child. (preference if given of 'texture' over a fixed 'value'
+
+* A node has the following form ..., where it can have the following children:
+ - and which can have a as child. (preference if given of 'texture' over a fixed 'value'
+ - and which can have a as child. (preference if given of 'texture' over a fixed 'value'
+
+* A node has the following form: . Depending on type the following additional parameters are defined:
+ - "directional": 'direction=vec3d power=color'
+ - "spot": 'direction=vec3d power=color position=vec3d cutoff=float sharpness=float attenutation=vec3d'
+ - "point": 'position=vec3d power=color attenuation=vec3d'
+ - "area": 'power=color attenuation=vec3d'. Furthermore, it can have a and / children. The material is the surface reflectance of the light source, and the geometry represents the shape of the area light source.
+
+* An node has the following form: , where type can be any of the following:
+ - "linear" : brute force linear intersector O(N) time complexity.
+ - "bvh" : bounding volume hierarchy
+
+
+* A node has the following form: , where type can be
+ - "nearest": nearest pixel look-up.
+ - "bilinear": bilinear interpolation.
+ Textures are cached (map based on filename & type) and only read once.
+
+
+* A node has the following forms:
+ -
+ -
+ -
--
cgit v1.2.3