Mercurial > hg > Members > kono > Cerium
view TaskManager/Test/test_render/ChangeLog @ 178:5d1b82945b0d
add makeTapestry in SceneGraph.cpp
author | gongo@localhost.localdomain |
---|---|
date | Tue, 16 Dec 2008 17:45:28 +0900 |
parents | e742053c4c87 |
children | 434846aef389 |
line wrap: on
line source
2008-12-16 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp> * SceneGraph.cpp (makeTapestry): add SceneGraph::get_data にあったけど、ごちゃごちゃしてたので 関数として生成 * viewer.cpp (Viewer::run_init, Viewer::run_draw): fix * spe/DrawSpan.cpp (DrawSpan::zRow_init): delete Z Buffering に使う zRow は DrawSpan で毎回生成、初期化するのではなく、 PPE で生成、初期化を行っておき、DrawSpan に add_inData で DMA で渡すという方法に変更。速度的にはほんのちょっとしか(ry * spe/CreateSpan.cpp (CreateSpan::half_triangle): fix getScale に渡す tex_width,tex_height を修正。 比較にそのまま tex_width, tex_height を使うと、 Span が持つテクスチャが全体の一部分だったとしても 比較結果で縮小が行われてしまうため。 - 例 span->length_x = 32; tex_width = 128; tex_x_len = (span->tex_x2 - span->tex_x1) = (0.5 - 0.3) = 0.2; 今までの処理だと、span->length_x < tex_width の結果により 縮小されたテクスチャを使うことになる。 しかし、実際に Span が使う Texture の長さは tex_width*tex_x_len = 24 なので、縮小を行う必要は無い 2008-12-12 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp> * SceneGraph.cpp (SceneGraph::get_data): Todo テクスチャの縦横が 8 の倍数でなければ弾く処理を入れる。 * spe/DrawSpan.cpp (DrawSpan::run): Todo テクスチャの座標計算と、そこから取得できる Tile の DMA を 一スレッドで処理しているのでそれを分けないといけない * spe/CreateSpan.cpp (getTapestry): Add (getScale): Add * memo: 雑記 ようやくこいつに ChangeLog を加えました。 なんか emacs で「C-x 4 a」とかすると、ChangeLog の entry が 加えれられるんだけど、上の階層のを探しにいくので、TaskManager/ のに 加えようとしてたわけさ。まあそういう仕様なんだけど。 で、だからといって不可能ってわけじゃないから書けばよかったんだが。 要するに、これからはちゃんと書いていこうと思います。