annotate TaskManager/Test/test_render/scene_graph_pack.h @ 144:949af5ee555e

fix
author gongo@localhost.localdomain
date Sat, 29 Nov 2008 11:43:13 +0900
parents 6cf991f28c6c
children 38cbb7aecc70
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
1 #ifndef INCLUDED_SCENE_GRAPH_PACK
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
2 #define INCLUDED_SCENE_GRAPH_PACK
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
3
137
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
4 #ifndef INCLUDED_SCENE_GRAPH
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
5 # include "SceneGraph.h"
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
6 #endif
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
7
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
8 #define MAX_NODE 16
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
9 #define MAX_POLYGON 36
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
10
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
11 typedef struct SceneGraphNode {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
12 int size; // この Node で使ってるポリゴンの数、でいいのかな
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
13 float vertex[MAX_POLYGON*3];
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
14 float texture[MAX_POLYGON*2];
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
15 float obj_pos[4];
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
16 float angle[4];
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
17 float translation[16];
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
18 long *tex_addr, tex_width, tex_height;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
19 int id;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
20 int move, interaction;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
21 int pn; // parent number?
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
22 SceneGraphNode *next;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
23 int pad[3];
137
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
24 SceneGraphPtr self;
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
25 SceneGraphPtr tree;
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
26
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
27 void init(void) {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
28 size = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
29 next = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
30 }
137
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
31
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
32 void finish(void) {
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
33 SceneGraphNode *p = this->next, *p1;
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
34
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
35 while (p) {
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
36 p1 = p->next;
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
37 free(p);
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
38 p = p1;
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
39 }
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
40 }
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
41 }SceneGraphNode, *SceneGraphNodePtr;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
42
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
43 typedef struct SceneGraphInfo {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
44 int size;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
45 int pad[2];
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
46 }SceneGraphInfo;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
47
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
48 typedef struct SceneGraphPack {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
49 SceneGraphInfo info;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
50 SceneGraphNode node[MAX_NODE];
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
51 SceneGraphPack *next;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
52
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
53 void init(void){
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
54 next = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
55 info.size = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
56
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
57 for (int i = 0; i < MAX_NODE; i++) {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
58 node[i].size = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
59 }
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
60 }
137
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
61
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
62 void finish(void) {
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
63 for (int i = 0; i < info.size; i++) {
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
64 node[i].finish();
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
65 }
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
66
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
67 next = 0;
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
68 info.size = 0;
6cf991f28c6c SceneGraphPack の代わりに、今は SceneGraph をそのまま使う様に設定。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 123
diff changeset
69 }
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
70 } SceneGraphPack, *SceneGraphPackPtr;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
71
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
72 #endif