2006-03-01から1ヶ月間の記事一覧

off

桜をみて感動するあたり、自分も年をとったなぁと思った。

W32S の MMF 再生

LED のフラグが立ってたら再生出来ない(´・ω・`) 実機って怖いよぅ(;つД`)

IDISPLAY_Update

BREW の API リファレンスには、 IDISPLAY_Update()BREW 2.1 以下のバージョンでは、この関数はデバイスビットマップからのディスプレイを常に更新しました。BREW 2.1 からは、この関数は、この IDisplay のターゲットビットマップがデバイスビットマップで…

成分解析

off

http://d.hatena.ne.jp/tailliar/20060328#p2 より、 メルトの成分解析結果 : メルトの90%は花崗岩で出来ています。 メルトの4%は株で出来ています。 メルトの2%は保存料で出来ています。 メルトの1%は苦労で出来ています。 メルトの1%は砂糖で出来ています…

プログラマーの死亡フラグ

2ch

http://blog.livedoor.jp/silentworld/archives/50345304.html 痛い……(;つД`)

イメージクラスの扱い方

実イメージのクラスは直接扱わないようにして、画像の一部を表すためのスプライトイメージクラスを使用した方が、様々なメリットがあることにやっと気が付いた。

一行ずつ人間っていいなを歌おう

2ch

http://blog.livedoor.jp/insidears2/archives/50389738.html 面白すぎwww

土下座

off

http://www.youtube.com/watch?v=bG6oT5kYI0Y 土下座って難しいね(´・ω・`)

アナタのブログ 影響力はどれくらいあるの?

off

http://nekoare.blog30.fc2.com/blog-entry-579.html おいらのところは 254.4 ですた(´・ω・`)

最近のウィニー

off

http://sylphys.ddo.jp/upld2nd/neta/src/1142865230257.jpg 最近のウィニーは意図せず入るらしい。

株式会社海賊

off

http://www.kaizoku.biz/ クソワロスwwww

何か質問ある? まとめのまとめ2

2ch

http://d.hatena.ne.jp/dangerous1192/20060318/p2 案外たくさん出てたんだなぁ……。

IGraphics(2)

W21S で IGraphics が動作しない理由を調べてみたところ、どうやら自分でアロケートしたメモリに対して IGraphics を使用しようとするとアウトらしい。 つまり、 IBitmap* pDeviceBitmap = NULL; ISHELL_CreateInstance(pMe->a.m_pIShell, AEECLSID_GRAPHICS…

IGraphics

W21S で IGraphics がまともに動作しない件について。 FillRect や DrawRect ぐらい自分で実装しろってことですかそうですか(´・ω・`)

拡大縮小(7)

で、同様にして Y 軸もループさせる。 この場合は +1 というのは 1line になる。 あと、昨日の sr は 0 から開始したけど、それだと縮小するときに左側のドットしか取れなくなってしまうので、を開始値とする。 それを踏まえた上で実装すると、こうなる。

拡大縮小(6)

昨日のプログラムだとなので、は毎ループ1以上増える。 なので、をに毎ループ加算して、残りの部分をに加算し、を超えるとを1つ増やすようにすればいい。 同様にの場合は、は毎ループ2以上増える。 なので、をに毎ループ加算して、残りの部分をに加算し、…

忙しい

off

最近手抜き+延ばしエントリーばっかり書いてるのは、今ちょっち忙しいからですごめんなさい(´・ω・`)

拡大縮小(5)

なぜ縮小でうまくいかないか考えてみる。 例えばがでがだった場合、は毎ループだけ進む。 1回ループすると、が、がになる。 2回目のループでは、が、がになる。 この時点でおかしい。本来であれば、はを超えた場合、へ値を渡さなければならない。 つまり、…

拡大縮小(4)

昨日は倍したを元に戻すために除算を使っていたのだけれど、そんなのは必要ない。 例えば、がで、がだった場合、の位置は、毎ループだけ進む。これのスケールを倍すると、毎ループづつ進むことになるのだ。 で、それがを超えた場合のみ、をだけ加算すれば良…

拡大縮小(3)

のを除けるのは簡単だ。両辺を倍してやればいい。 そうするとになる。 これで、を倍した値が得られるのだ。 ということは、毎ループを加算していって、転送するときにで割れば、が求まるということだ。 int big_sx = 0; int dx = 0; while( true ){ if( dx >…

拡大縮小(2)

考えてみれば、を1ずつ増やす形にするために調節したのだから、になるのは当たり前だ。 とりあえず、これでは1ずつ増やせばいいようになった。 今の状態をプログラムで書いてみると、次のようになるだろう。 float sx = 0; int dx = 0; float sa = sw / (f…

拡大縮小

BREW で拡大縮小ルーチンを書く必要が出てきたので、考えてみる。 ただ、普通に考えると、倍率を出してどうこうするのかもしれないけれども、そんなのは低速すぎる気がするので、ブレゼンハムを使って実装してみる。 水平方向について考えてみると、dx を毎…

設計(6)

RTTI の実装を、自前でやるか type_info を使って実装するか思案中。

テンプレートに対する friend

なぜか VC6 は、 template< class T > friend class Hoge; こんな感じで、テンプレートに対する friend をすることが出来ない(ARM なら出来る)。 で、これを解決するためにいろいろ考えてみた。 例えば、あるクラス Hoge があって、テンプレートな Factory…

社内ライブラリ

今、社内で使うライブラリを書いているんだけれども、このライブラリ、スマートポインタを使用してはならないという方針になっている。 まあ、社内にスマートポインタを扱える人間が少ないということを考えるとそれもありかなぁとか思って、スマートポインタ…

設計(5)

あとは、どうやって実オブジェクトを生成するか、という問題がある。 今までは仮実装として new で生成したポインタをセットしていたが、new の返り値がポインタなのは頂けない。リークの原因になる。 あと、内部クラスである Data クラスにもアクセスされて…

設計(4)

あとは、内部のデータクラスは公開する必要はないので内部クラスに入れて protected にして、ポインタはスマートポインタに変えてやる。 class Hoge{ protected: class Data{ public: virtual void foo(){} virtual void bar(){} }; private: Data* get(){ r…

設計(3)

このライブラリのミソは、ほとんどのクラスは参照型オブジェクトだという点だ。 簡単に言ってしまえば、Java ライクなのだ。 例えば Java で、 Hoge hoge; hoge.foo(); こんなプログラムを書くと、エラーが出る。 なぜなら、Hoge は実体への参照であり、その…

設計(2)

namespace 周りのことを考えてみる。 namespace は、グローバル名前空間を汚さないので、非常に便利だ。 なので、LunaCat は全て "LunaCat" という namespace で囲んでやることにする。 で、さらにその上から、機能別に namespace を使う。 // Object.h name…

設計

自分のライブラリの目的は Luna を wrap することなので、LunaCat を使う側は、DirectX や Luna が可視状態になってはいけない。 つまり、LunaCat のヘッダで、DirectX や Luna のヘッダをインクルードしてはならない。 なので、共通インクルードファイル st…