annotate TaskManager/Test/simple_render/task/update_sgp.cpp @ 86:61bacd3b4405

*** empty log message ***
author gongo
date Wed, 27 Feb 2008 10:56:09 +0900
parents 9b96b190cb73
children a309cf4eafc5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
1 #include <math.h>
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
2 #include "scene_graph_pack.h"
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
3 #include "sys.h"
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
4 using namespace std;
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
5
49
64ef030deb22 *** empty log message ***
gongo
parents: 48
diff changeset
6 #include "error.h"
64ef030deb22 *** empty log message ***
gongo
parents: 48
diff changeset
7
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
8 int
48
70a0ac46133e *** empty log message ***
gongo
parents: 36
diff changeset
9 update_sgp(SceneGraphPack *sgp, SceneGraphPack *_sgp)
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
10 {
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
11 SceneGraphNodePtr node;
36
650e46810d04 *** empty log message ***
gongo
parents: 35
diff changeset
12 float y_angle;
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
13
85
9b96b190cb73 *** empty log message ***
gongo
parents: 49
diff changeset
14 __debug("[%s]\n", __FUNCTION__);
49
64ef030deb22 *** empty log message ***
gongo
parents: 48
diff changeset
15
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
16 for (int i = 0; i < sgp->info.size; i++) {
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
17 //(*my_func[node->move])(node);
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
18 //(*my_func[node->interaction])(node, sgp);
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
19
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
20 node = &sgp->node[i];
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
21
36
650e46810d04 *** empty log message ***
gongo
parents: 35
diff changeset
22 // 本当は、ここは上の my_func で行う
650e46810d04 *** empty log message ***
gongo
parents: 35
diff changeset
23 y_angle = node->angle[1];
650e46810d04 *** empty log message ***
gongo
parents: 35
diff changeset
24 y_angle += 1.0f;
650e46810d04 *** empty log message ***
gongo
parents: 35
diff changeset
25 if (y_angle > 360.0f) y_angle = 0.0f;
650e46810d04 *** empty log message ***
gongo
parents: 35
diff changeset
26 node->angle[1] = y_angle;
48
70a0ac46133e *** empty log message ***
gongo
parents: 36
diff changeset
27 //node->obj_pos[0] += 0.5f;
70a0ac46133e *** empty log message ***
gongo
parents: 36
diff changeset
28 //node->obj_pos[1] += 0.5f;
70a0ac46133e *** empty log message ***
gongo
parents: 36
diff changeset
29 //node->obj_pos[2] += 0.5f;
36
650e46810d04 *** empty log message ***
gongo
parents: 35
diff changeset
30
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
31 if (node->pn != -1) {
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
32 get_matrix(node->translation,
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
33 node->angle, node->obj_pos,
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
34 sgp->node[node->pn].translation);
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
35 } else {
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
36 get_matrix(node->translation,
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
37 node->angle, node->obj_pos,
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
38 NULL);
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
39 }
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
40 }
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
41
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
42 // まあこれは多分駄目なんだけど。
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
43 // in/out と update は分ける必要ある?
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
44 // それはユーザ側で in/out になるように書かせるもの?
86
61bacd3b4405 *** empty log message ***
gongo
parents: 85
diff changeset
45 //memcpy(_sgp, sgp, sizeof(SceneGraphPack));
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
46
86
61bacd3b4405 *** empty log message ***
gongo
parents: 85
diff changeset
47 //return sizeof(SceneGraphPack);
61bacd3b4405 *** empty log message ***
gongo
parents: 85
diff changeset
48 return 0;
35
1e17e0b441a7 *** empty log message ***
gongo
parents:
diff changeset
49 }