技術系メモというかTipsというか。
知ってると捗るぞ。色々と。みたいな技術をみなさんで編集していってもらえると助かります。私が。
プログラムだけじゃなくてその他の事も歓迎。
とりあえず読んでおいて損はないです。捗るぞ色々と。
DXライブラリの小技とか。現在編集中
DXライブラリには諸事情により使われてないとかの理由で封印されている隠し関数があります。
通常はSetDrawScreen(DX_SCREEN_BACK);によって指定されたバックバッファに描画してから、ScreenFlip();で表画面に反映 みたいな流れをとると思うのですが
実はDX_SCREEN_BACKじゃなくてここに書き込み可能なグラフィックハンドルを指定することができます。
これを使うとブラー効果とか画面全体を揺らす効果とか画面全体に拡縮を掛けるとか減算ブレンドで疑似マスク機能とか、かなり色々なことができます。
作り方は単純。MakeScreen();でグラフィックを作ってSetDrawScreen();の引数にグラフィックハンドルを指定するだけ。
もっと柔軟な事がやりたい場合はMakeScreen();ではなく、SetDrawValidGraphCreateFlag();とMakeGraph();を使いましょう。
具体的な使い方は下記リンク参照。
ちなみにこの方法を用いることで、320x240の仮想画面をSetWindowSizeExtendRate(2.0)で実際画面の640x480にする時とかに
環境によってはドットがくっきりせず、変なアンチエイリアスがかかる現象を抑えることが可能です。
(まずMakeScreen();で作ったバッファに描画し、その後640x480の実画面にDrawExtendGraph();で描画する)
なお、当然だがこの方法を用いると描画コストがかなり増加します。
特殊な効果を使わないゲームならばやる必要はないです。
画像処理とかパターン認識とかができるすごいライブラリらしいです。詳しくは知りません。wikipediaでおk
基本的な画像処理はほとんど出来るっぽいです。(画像処理はPhotoshopのフィルタみたいな効果出したりするもんです)
Webカメラから動画を取り込むとかで色々応用が効きそう。やってないけど。
勉強中。とりあえずこういうものがあるよって事だけ備忘録的に。