A3サイズの升目帖(旧)

ゲーム制作やプログラミングに関する雑記

D言語

【D言語】クラスのインスタンスをスタック上に構築する

サイズの小さいクラスを関数内でサクッと使い捨てしたいことが稀にある。 そういうインスタンスは、ヒープ上ではなくスタック上に確保したくなるのが人情というもの。 で、D言語ではそれができるのだが、個人的に「あれ?やり方とか色々どうだっけ?」となり…

キャラクターをおんぶ中のエモーションを強化

まあ、些末なことではございますが… 一応、進捗報告としてひとつ。 こんな感じで、おんぶされているキャラクターのエモーションを強化した。 待機、走行、ジャンプなどに応じて表情や動きが変わっているのがわかると思う。 細かい演出のことなので後回しでも…

【D言語】DMD 2.097.2 がリリースされた(アナウンスされた)

※本当にただの個人的な雑記です。 DMD 2.097.2 のリリースがアナウンスされていた。 forum.dlang.org リリース自体は8月9日ごろにされていたが、公式からのアナウンスがなかったので、あれ?どうしたかな?と思って様子を見ていたが、何時間か前に広報された…

オブジェクト同士の当たり判定を実装した

四分木衝突空間の実装が完了した。 これでオブジェクト対オブジェクトの衝突も可能になったぞ。 (なお、今回から動画はニコ動のリンクを貼り付けることにする。gifに変換するとサイズが馬鹿でかくなってはてなブログの10MB規制に引っかかってしまうためだ。…

座標系をリファクタリングした

ゲーム本体の制作に目立った進捗はないなあ。 というのも、ここ4日ほどかけて座標周りのリファクタリングをしていたからだ。 このリファクタリングだけは今のうちにやっておかないと後々大きな負債になりそうだったので。 事の経緯 「Point」型 Point という…

楽譜ファイルのコンパイラを実装した

独自のサウンド記述用言語を作成 前回 の XAudio2 の問題はとりあえず置いといて、サウンドの制作に使う独自言語の定義とそのコンパイラをここ2日ほどかけて実装していた。 こんな感じの言語。テキスト形式で記述できる。 ; ';'から行末まではコメント @0 ;…

【Win32】WM_MOUSEWHEELのlParamはクライアント座標じゃないよという話

そういえば、マップエディタを実装していてひとつハマったポイントがあったので備忘録として記しておく。 まあ、内容は記事タイトルがほぼすべて物語っているのだが… WM_MOUSEWHEEL 画面の縮尺変更を実装するためにマウスホイールを使おうと思って WM_MOUSEW…

【D言語】-SUBSYSTEM:WINDOWS と writeln の確執

マップエディタの実装が遅々として進まないな。周辺ツール最大の難所なのでまあ予想はしていたが… キリのいい進捗がないからブログも放置しがちになってしまっていけない。 というわけで、お茶を濁すわけじゃないけど、技術的なハマりポイントについてちょっ…

【D言語】rdmdって便利

D言語ってコンパイル言語なんでしょ?って思ってたんだが、スクリプト言語的な 使い方もできるらしい。 D言語をインストールすると付いてくる rdmd というものを使う。 rdmd D言語はコンパイル言語なので、通常は ソースコード書く dmd でコンパイルする リ…

【D言語】リンカエラー LNK4255

突然よりよい設計が降ってきたので、ディレクトリ構造が変わるレベルのわりと大きなリファクタリングをしていた。 しかし、いざ完了してコンパイルしてみると、何やら妙なリンカエラーが出るのだ。 LNK4255 ? warning LNK4255: ライブラリは、同じ名前の複…

グラフィックの表示に成功した

こんな感じ デモ用のスプライトを画面内に撒き散らしてみた やっぱり絵が表示されると気分もあがるなあ。 あとドット絵っていいよねー じつは、ざっくりしたグラフィックの表示自体は6月3日あたりで達成していたんだが、やっぱり公開するならちゃんと体裁を…

ウインドウを表示したぞ

本日の進捗 Windowsのフォームを表示することに成功した。 こんな感じ。やはり、目に見える進捗というのはいいものだ。 あっ、そこ! 殺風景で地味だとか言わない! 確かに今は ただの灰色の板 だが、これは重要な第一歩なのだ。 それに、見た目では伝わらな…