【ソースコードを弄るときの覚書】
Boost系関数からSetTexture2を呼び出してはいけない。必ずSetTextureを使うこと

【TODO】
画面モードの切り替え関数を作る
深度バッファを使えるようにする
ステンシルバッファを使えるようにする

【アイディア】
DrawExtendGraph
DrawModiGraph
DrawExtendGraphF
DrawModiGraphF

他のモードは上記四つのどれかを呼ぶ。
Sliceを利用する際にどうしてもExtendGraphにfloatが必要になる。
頂点型
u16が使える場合
DrawGraph
DrawTurnGraph

DrawRectGraph系を作ってmu,mvを渡したほうがいいか

sceJpeg系関数使い方判明したｗｗｗしかもjpegの解凍成功したしｗｗｗｗｗｗ
これでlibjpegから開放されるからライブラリサイズがぐっと小さくなるわー♪　とか思ったら思うほど小さくなってくれないんだけど…orz
ま、80KB小さくなったんだし進歩だよねｗ　500KB超えてたのが400KB台まで落ちた♪



【問題点】
実行ファイルの肥大化が深刻なレベルまで来てる。でもユーザーモード前提だからprxプラグインは使えない？
アイディア１　実行コードを別ファイルにしておいて無理やり呼ぶ　なんのためのユーザーモードだよｗ
アイディア２　暇なときにコード長が短くなるように最適化をかける　これしかなくね？
アイディア３　変換テーブルとかが大きく場所をとっているので圧縮、解凍できるようにする。　これ必須　どのアルゴリズム使おうか？RLE？

【解決済み】
LoadRAWDataの最後あたりでMoveGraphToVRAMを呼ぶとデータがぶっ壊れる件について。
…なんでだようorz　よくわからないけど直った

【疑問】



【ごみ箱】

カスタム頂点型は「xyz成分の先頭」が構造体の先頭から32bitアラインメントされている必要がある。ややこしい！


JPEGのデコード　ほかの画像ライブラリもだいたい同じっぽい
①一行分のデータを得る
②muの分だけバッファからグラフィックに転送
③次の行を読み出す

画像読み込み時は最低限メモリが1MByteほど空いていることが望ましいです。特に圧縮された画像の場合は解凍用のバッファまで必要です。

MP3再生手順
モジュールのロード
sceMp3InitResourceを呼んでリソースの確保
sceMp3ReserveMp3Handleを呼んでハンドルを生成

MP3の再生は延期。とりあえずWAVに対応させたい。SDLでも使う？やだ

-lstdc++をMakeFileで指定しないとnewとかdeleteとか使えないので注意。

sceIoOpenはマルチスレッドに対してプロテクトかかってるかも… ←ただのミスだった。別スレッドでオープンしたハンドルも使えるｗ

sceKernelStartThreadでスレッドをスタート。void *argpに渡したポインタからSceSize arglenバイト分だけのデータがスレッドのスタックにコピーして置かれる。


＊PlaySound系関数
全データをメモリ上にロードしてから再生
メモリをけっこう食う
DDRだけで済むので複数同時再生に向く
再生するたびにスレッドを生成してしまえー

＊PlayMusic系関数
二次記憶装置からのストリーム再生
省メモリ
複数再生すると厳しいかもBGMとして使うのが基本かな
スレッドをひとつ立てて、コマンドで通信する方式（ほぼ確定）




＃＃＃＃＃＃＃＃＃＃既知のバグ
DrawRotaGraphの表示がおかしい。座標計算の式にミスがあるので迅速な修正が必要。
ミスじゃなかった。現在修正案模索中。

＃＃＃＃＃＃＃＃＃＃途中のもの
PSP専用形式のフォント描画
音楽再生機能
MP3ファイルへの対応

＃＃＃＃＃＃＃＃＃＃未着手のもの
BMPファイルへの対応
DXライブラリ形式のアーカイブへの対応
通信機能への対応
マスク効果
メルセンヌ・ツイスター法の乱数はメモリを馬鹿食いするのでSFMT607に切り替える事を予定中
osk系関数の文字変換処理をlibcccに置き換える。うまくいけばPSP本体の文字コード変換が使えそう。
Libcccの全部がintraFontに採用されているわけではないのかもしれない。確認が必要。
