annotate TaskManager/Test/test_render/ChangeLog @ 210:e75f9eb97180 draft

fix DrawSpan
author gongo@localhost.localdomain
date Fri, 30 Jan 2009 14:55:04 +0900
parents 1eba8570808c
children 59f4129a9562
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
210
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
1 2009-01-30 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
2
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
3 * spe/DrawSpan.cpp (DrawSpan::drawDot1): add
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
4 span->length_x == 1 の処理。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
5
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
6 (DrawSpan::drawDot2): add
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
7 Dot1 の続き。要は Dot1 で load して、Dot2 で wait->書き込みって感じ
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
8 しかし、1ドットだとそこまで待つ必要もないかなって感じなので
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
9 今は Dot 2には何も書いてない。ちゃんとしらべて、必要そうだったら
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
10 ここで書き込みを行う
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
11
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
12 (DrawSpan::drawLine1): add
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
13 span->length_x > 1 の処理。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
14 いくつか Load パターンを考えてる途中
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
15
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
16 1. 全部 load
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
17 1. z buf で描きこむと判断したとき、その pixel の texture tile を
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
18 load する。(すでにある、ないに関わらず。ある場合は、実際には
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
19 Load の処理は行われないが)
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
20 2. Line2 で描画する(ここで使う tile はすでに全部読み込まれてるとする
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
21
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
22 2. 無い物だけload
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
23 1. 書き込むと判断したとき、tile があるかどうかを調べ
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
24 あればそのまま linebuf に、無ければ load を掛けて continue;
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
25 このとき、load した(つまりまだ書き込まれてない) 場所を覚えておく
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
26 2. Line2 で、1. で覚えた場所から再び計算して描画する。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
27 tile はすでに全部読み込まれているとする
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
28
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
29 まだあったけど忘れた。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
30 今のところ描画領域が 256x8、もしくは512x8 で、
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
31 単純に考えて、領域pixel と texture pixel が一緒だと考えると
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
32 一個の Span で最大 64 (512/8) 個の tile があればいいと考えられる。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
33 一個の SPE には Tile を 128 個持っておけるし、
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
34 今は Span を二つ平行して処理しているので、
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
35 途中で Tile が足りなくなる!ってことはないはず。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
36 とまあ、いろいろ考えてたんだけど、何書けばいいのか忘れた。。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
37 思い出したらまた書きます。
e75f9eb97180 fix DrawSpan
gongo@localhost.localdomain
parents: 203
diff changeset
38
199
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
39 2009-01-26 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
40
203
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
41 * spe/CreateSpan.cpp (CreateSpan::run): fix
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
42 ポリゴンをx軸に水平に分割し、その二つを計算するってのが
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
43 half_triangelで、上としたで、何故か渡すテクスチャの情報が違う。
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
44 なんでだろうと思いつつも、今まで特に問題が出なかったから無視してたが、
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
45 今回、三つのSceneGraph を動かしてる時に問題発生。
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
46 それぞれ違うテクスチャを貼ってるのに、なぜかそれらのうちの半分が
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
47 別のテクスチャが貼られていた。簡単に言うと、A,B,C の SG があった。
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
48
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
49 A: 正常
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
50 B: 右上だけ A のテクスチャ
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
51 C: 右上だけ A のテクスチャ
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
52
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
53 といった具合。わけがわからなかったんだが、
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
54 half_triangle に渡すやつの所為だと気づきました
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
55 なんでここだけ pp->tri[0].tex_info.addr とか渡してんのか未だに謎。
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
56 単なる書き間違いか直し間違いか。微妙なところ。
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
57 これ書いた後輩はもう居ない
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
58
1eba8570808c fix CreateSpan::run
gongo@localhost.localdomain
parents: 202
diff changeset
59
202
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
60 * SceneGraphIterator.cpp (SceneGraphIterator::hasNext)
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
61 (SceneGraphIterator::next): fix
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
62 検索する引数を int id に変更。
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
63
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
64 * SceneGraph.h (class SceneGraph): add variable
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
65 int flag_drawbale : この SceneGraph は描画する物かどうか
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
66 int sgid : SceneGraph の ID 。ID は SGList.h にあるものを使う
76bf19f9e305 fix SceneGraphIterator::hasNext(), next()
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 201
diff changeset
67
201
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
68 * SceneGraphIterator.cpp : add file
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
69 SceneGraph を走査する用。
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
70 基本、Java の Iterator を参考にしてます。
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
71 追加機能としては
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
72
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
73 - hasNext(const char* name);
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
74 名前が name の SceneGraph があるかどうか
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
75
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
76 - next(const char* name);
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
77 名前が name の SceneGraph まで進ませる
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
78
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
79 * SceneGraphIterator.cpp : TODO
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
80 hasNext とかは名前じゃなくて ID が良いかなーとも思うけどね。
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
81 てかその方がいいな。あとで直します
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
82
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
83 * ieshoot.cpp (ieboss_move): add
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
84 (ieboss_collision): add
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
85 BOSSの動きを追加。
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
86 IETAMA が数回衝突したら BOSS を消すって処理。
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
87
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
88 * SceneGraphIterator.cpp (SceneGraphIterator::next): fix
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
89 break してなかった。そりゃ取れないわ
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
90
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
91 * SceneGraph.cpp (SceneGraph::realRemoveFromTree): fix
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
92
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
93 < p1 = p1->next;
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
94 < p = p->next;
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
95 =====
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
96 > p1 = p1->brother;
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
97 > p = p->brother;
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
98
9484318b3e8f add SceneGraphIterator
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 200
diff changeset
99
200
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
100 * viewer.cpp (Viewer::run_draw): fix
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
101 Spanの無い部分を塗りつぶす処理はタスクを走らせず、
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
102 そのまま memset とかの方が早い。
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
103 まとめてするタスクを立ち上げるってのもいいかもしれない。
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
104 あと、memsetで指定する値が、0xFF と 0x00 とで速度が違う。
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
105 universe だと、
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
106
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
107 0xFF 24fps
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
108 0x00 30fps
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
109
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
110 なんだろう。0x00 だと、ただのクリアになるから速いってことかな。
efd7e4712342 fix run_draw
gongo@localhost.localdomain
parents: 199
diff changeset
111
199
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
112 * Camera.h (class Camera): add
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
113 とりあえず Camera を作って、これを SceneGraph の Top にした。
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
114
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
115 * SceneGraph.cpp (SceneGraph::realRemoveFromTree): add
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
116 realRemove() の Tree構造用。削除後の tree top を返す様にしている。
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
117 まあ top が消えなければ返す必要も無いし、top が消えるってことは
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
118 SceneGraph そのものが消えるってことでそうは無い・・はずだけどね。
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
119 (SceneGraph::realRemoveFromList): add
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
120 realRemove() の list用。削除後の list top を返す様にしている。
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
121 (SceneGraph::realRemoveFromTree): fix
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
122 < p->next = p1->next;
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
123 ===
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
124 > p->brother = p1->brother;
1fd0107ebb25 add SceneGraph(ieshoot), add SystemSceneGraph(Camera)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 196
diff changeset
125
195
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
126 2009-01-25 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
127
196
ecda783a926f add SceneGraphRoot, tools/create_sglist.pl
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 195
diff changeset
128 * add (tools/create_sglist): new
ecda783a926f add SceneGraphRoot, tools/create_sglist.pl
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 195
diff changeset
129 必要な SceneGraph xml file から SceneGraph を抽出し、
ecda783a926f add SceneGraphRoot, tools/create_sglist.pl
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 195
diff changeset
130 名前と対応する ID を SGList.h に出力する。
ecda783a926f add SceneGraphRoot, tools/create_sglist.pl
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 195
diff changeset
131 また、名前から ID を求める sglist_table を SGList.cpp に出力する。
ecda783a926f add SceneGraphRoot, tools/create_sglist.pl
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 195
diff changeset
132
195
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
133 * SceneGraph.cpp (SceneGraph::remove): add
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
134 User API。ここで削除するのではなく、まずはフラグを立てるだけ
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
135 ここですぐに消すと、allExecute() の走査で何気に困る
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
136
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
137 (SceneGraph::isRemoved): add
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
138 この SceneGraph 削除フラグが立っているかどうか
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
139
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
140 (SceneGraph::realRemove): TODO
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
141 子を持つ SceneGraph が消された場合、
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
142 その子孫を全て削除するかどうか。まあ削除するのかな。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
143
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
144 (SceneGraph::realRemove): add
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
145 Cerium System で呼ばれる。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
146 remove flag の立った SceneGraph を削除する。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
147 parentやbrother、next は繋ぎ直す。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
148
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
149 * SceneGraphRoot.cpp (SceneGraphRoot::addNext): add
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
150 sg_available_list に追加していく
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
151 木の操作が要らないアクセスの際にはこっちの方がいい。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
152
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
153 (SceneGraphRoot::setSceneData): add
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
154 Cerium に SceneGraph の tree を渡す。Cerium はこの tree を辿って
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
155 処理を行う
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
156
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
157 (SceneGraphRoot::createFromXMLfile): add
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
158 xml file を指定して、そこから SceneGraph を生成し、
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
159 sg_src に格納する。ユーザはこの SceneGraph を直接は扱えない。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
160 以下に示す createSceneGraph の、読み込み元データとして保存しておく。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
161
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
162 (SceneGraphRoot::createSceneGraph): add
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
163 オリジナルの SceneGraph を clone してユーザに返す。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
164 この SceneGraph をユーザが操作する。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
165
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
166 * SceneGraphRoot.h (class SceneGraphRoot): new variables
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
167 sg_src, sg_exec_list, sg_draw_list, sg_available_list
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
168
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
169 * addfile (SceneGraphRoot.cpp)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
170 SceneGraph を管理するクラス、ってところか。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
171 Root ってのは SceneGraph という名前からすると
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
172 一番親と思われそうで微妙です。変えるかも。
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 191
diff changeset
173
191
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
174 2009-01-12 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
175
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
176 * Joystick.cpp: TODO
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
177 使用している Joystick が
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
178
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
179 1. PS3 コントローラ
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
180 2. PS2 コントローラにUSB変換をかましたやつ
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
181
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
182 によってボタンの番号配置が違うので
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
183 そこを自動的に取得して割り振りたい
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
184
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
185 SDL_JoystickName() で名前取れるんだけど
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
186 全部共通なのかなー。「PS3って文字列があるか否か」でわけてもいいけど
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
187
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
188 * Joystick.cpp: fix
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
189 コントローラボタンの番号を PS3 コントローラに合わせました。
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
190
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
191 - 参考
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
192 PS3 Linux SDLでプログラミング -コントローラを使う-
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
193 http://yun.cup.com/ps3sdl007.html
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
194
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
195 アナログスティックの方はまだです
4f85911aa183 fix Joystick Button
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 188
diff changeset
196
188
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
197 2009-01-08 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
198
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
199 * spe/DrawSpanRenew.cpp (DrawSpanRenew::run): fix
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
200 next_spack を free() していたが、do-while の最初で
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
201 next_spack = NULL とかやっている。
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
202 DrawSpan だと、free するのは free_spack ってやつなので
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
203 問題なかったが、なぜここは free(next_spack) とかやってるのか。
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
204 というわけで、next_spack,spack 両方用の
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
205 free_spack1, free_spack2 を生成して、これを free させることに。
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
206 これで、ようやくまともに動くようになった。けど微妙です。
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
207 遅いですね。
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
208
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
209 * addFile : DrawSpanRenew.cpp
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
210 DrawSpan の再起動 ver。
fe854a6ee9e2 メモりリーク箇所発見:TaskManager/Test/test_render/ChangeLog参照
gongo@localhost.localdomain
parents: 180
diff changeset
211
180
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
212 2008-12-22 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
213
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
214 * fix
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
215 charles を Fedora 10 に上げて、コンパイラが新しくなったせいか、
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
216 以下のような warning が出始めた
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
217
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
218 warning: deprecated conversion from string constant to 'char *'
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
219
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
220 まあよくわからんが、例えば
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
221
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
222 char *str = "hoge";
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
223
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
224 みたいな所だとこの warning が出る。これを
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
225
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
226 const char *str = "hoge";
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
227
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
228 にすると消えた。
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
229 以後こういう形に統一しろよ的なやつなのかな。
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
230
179
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
231 2008-12-19 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
232
180
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
233 * viewer.cpp (Viewer::run_draw): fix
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
234 startx, endx に対して、start_y, end_y って名前は統一されてなくて
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
235 わかりづらいので、starty, endy に変更
e3b7776b1420 いろいろ fix 。詳しくは TaskManager/Changelog、test_render/Changelog を
gongo@localhost.localdomain
parents: 179
diff changeset
236
179
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
237 * main.cpp (init): fix
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
238 bpp (BitsPerPixel) の値がデフォルトで 0 になっていた。
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
239 今のレンダリング方式では 32 がデフォルトなので、間違ってた。
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
240 今まで気づかなかったのは
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
241
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
242 1. SDL_SetVideoMode に bpp = 0 で渡される
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
243 2. SDL が開発・実行環境に合わせて bpp を設定
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
244 3. 今までそれが 32 になってた
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
245
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
246 しかし、ゲーム班の環境では bpp = 16 になってしまったため、
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
247 その次の bitmap の allocate の時に
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
248 screen->pitch*height = 16*width*height となり、
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
249 DrawSpan では 32 のつもりで書き込んでいたため領域外への
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
250 メモリ書き込み->エラー
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
251
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
252 ゲーム班ありがとう
6e62f8cfbfe3 SDL_SetVideoMode に渡す bpp が 0 になってた (環境依存になってしまう)
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 178
diff changeset
253
176
gongo@localhost.localdomain
parents: 175
diff changeset
254 2008-12-16 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
gongo@localhost.localdomain
parents: 175
diff changeset
255
178
4efb799779d7 add makeTapestry in SceneGraph.cpp
gongo@localhost.localdomain
parents: 177
diff changeset
256 * SceneGraph.cpp (makeTapestry): add
4efb799779d7 add makeTapestry in SceneGraph.cpp
gongo@localhost.localdomain
parents: 177
diff changeset
257 SceneGraph::get_data にあったけど、ごちゃごちゃしてたので
4efb799779d7 add makeTapestry in SceneGraph.cpp
gongo@localhost.localdomain
parents: 177
diff changeset
258 関数として生成
4efb799779d7 add makeTapestry in SceneGraph.cpp
gongo@localhost.localdomain
parents: 177
diff changeset
259
177
deb02b0e6291 zRow の生成、初期化の変更
gongo@localhost.localdomain
parents: 176
diff changeset
260 * viewer.cpp (Viewer::run_init, Viewer::run_draw): fix
deb02b0e6291 zRow の生成、初期化の変更
gongo@localhost.localdomain
parents: 176
diff changeset
261 * spe/DrawSpan.cpp (DrawSpan::zRow_init): delete
deb02b0e6291 zRow の生成、初期化の変更
gongo@localhost.localdomain
parents: 176
diff changeset
262
deb02b0e6291 zRow の生成、初期化の変更
gongo@localhost.localdomain
parents: 176
diff changeset
263 Z Buffering に使う zRow は DrawSpan で毎回生成、初期化するのではなく、
deb02b0e6291 zRow の生成、初期化の変更
gongo@localhost.localdomain
parents: 176
diff changeset
264 PPE で生成、初期化を行っておき、DrawSpan に add_inData で
deb02b0e6291 zRow の生成、初期化の変更
gongo@localhost.localdomain
parents: 176
diff changeset
265 DMA で渡すという方法に変更。速度的にはほんのちょっとしか(ry
deb02b0e6291 zRow の生成、初期化の変更
gongo@localhost.localdomain
parents: 176
diff changeset
266
176
gongo@localhost.localdomain
parents: 175
diff changeset
267 * spe/CreateSpan.cpp (CreateSpan::half_triangle): fix
gongo@localhost.localdomain
parents: 175
diff changeset
268 getScale に渡す tex_width,tex_height を修正。
gongo@localhost.localdomain
parents: 175
diff changeset
269 比較にそのまま tex_width, tex_height を使うと、
gongo@localhost.localdomain
parents: 175
diff changeset
270 Span が持つテクスチャが全体の一部分だったとしても
gongo@localhost.localdomain
parents: 175
diff changeset
271 比較結果で縮小が行われてしまうため。
gongo@localhost.localdomain
parents: 175
diff changeset
272
gongo@localhost.localdomain
parents: 175
diff changeset
273 - 例
gongo@localhost.localdomain
parents: 175
diff changeset
274 span->length_x = 32;
gongo@localhost.localdomain
parents: 175
diff changeset
275 tex_width = 128;
gongo@localhost.localdomain
parents: 175
diff changeset
276 tex_x_len = (span->tex_x2 - span->tex_x1) = (0.5 - 0.3) = 0.2;
gongo@localhost.localdomain
parents: 175
diff changeset
277
gongo@localhost.localdomain
parents: 175
diff changeset
278 今までの処理だと、span->length_x < tex_width の結果により
gongo@localhost.localdomain
parents: 175
diff changeset
279 縮小されたテクスチャを使うことになる。
gongo@localhost.localdomain
parents: 175
diff changeset
280 しかし、実際に Span が使う Texture の長さは
gongo@localhost.localdomain
parents: 175
diff changeset
281
gongo@localhost.localdomain
parents: 175
diff changeset
282 tex_width*tex_x_len = 24
gongo@localhost.localdomain
parents: 175
diff changeset
283
gongo@localhost.localdomain
parents: 175
diff changeset
284 なので、縮小を行う必要は無い
gongo@localhost.localdomain
parents: 175
diff changeset
285
gongo@localhost.localdomain
parents: 175
diff changeset
286
175
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
287 2008-12-12 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp>
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
288
176
gongo@localhost.localdomain
parents: 175
diff changeset
289 * SceneGraph.cpp (SceneGraph::get_data): Todo
gongo@localhost.localdomain
parents: 175
diff changeset
290 テクスチャの縦横が 8 の倍数でなければ弾く処理を入れる。
gongo@localhost.localdomain
parents: 175
diff changeset
291
175
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
292 * spe/DrawSpan.cpp (DrawSpan::run): Todo
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
293 テクスチャの座標計算と、そこから取得できる Tile の DMA を
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
294 一スレッドで処理しているのでそれを分けないといけない
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
295
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
296 * spe/CreateSpan.cpp (getTapestry): Add
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
297 (getScale): Add
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
298
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
299 * memo: 雑記
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
300 ようやくこいつに ChangeLog を加えました。
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
301 なんか emacs で「C-x 4 a」とかすると、ChangeLog の entry が
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
302 加えれられるんだけど、上の階層のを探しにいくので、TaskManager/ のに
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
303 加えようとしてたわけさ。まあそういう仕様なんだけど。
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
304 で、だからといって不可能ってわけじゃないから書けばよかったんだが。
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
305
1268e1a9a7db add file "ChangeLog"
gongo@localhost.localdomain
parents:
diff changeset
306 要するに、これからはちゃんと書いていこうと思います。