A3サイズの升目帖(旧)

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

【祝】サイト移転しました

ホームページ作ったぞ このたび、ホームページを制作してそちらに移転することにした。 リンクは以下。 A3サイズの升目帖 移転の理由はあちらにも書いているが、一応ざっと羅列するとこんな感じ。 失踪せずコンスタントに続けられそうだとわかった。 ゲー…

はてなブログは動画の管理が難しいなあ

早いもんで、はてなブログでゲーム制作の過程を公開し始めてからそろそろ半年になる。 特別不満はないのだけれど、ただ1点、動画ファイルの管理が結構難儀だなあと個人的に感じ始めているところ。 mp4がアップできない… はてなブログにアップできるファイル…

ステータスバーのUIを考え中

先日 立ち絵に取り掛かろうとしたときに、ステータスバーのデザインをまだ考えていなかったことを思い出したので、今日はそっちのアイデア出しをやっていた。 UIはやっぱりムズいな。デザイン系の学問はこれっぽっちも修めてないので、勘所もノウハウもまっ…

背景のブラッシュアップとかをしていた

ここまでに書き散らしてきた酷いソースコードの整理を引き続きやっている最中。 そのついでに、ほぼ仮置き状態だった背景などのブラッシュアップをやっていた。 若干だけど描き込みが濃くなってると思う。 MP切れでこれ以上は作りこめなかったので、続きはま…

ステータスバー(仮)を実装した

プレイヤーの状態を表示するステータスバーを実装した。 表示できる情報は今のところライフしかなくてちょっと寂しい。ほんとにプロトタイプって感じだなあ。 まあここから改善を重ねていこう。 ステータスバー全体を囲むボックスを表示するかどうかが一番悩…

面倒なイベントの実装が終わった

プロローグの最も面倒くさいイベントのひとつがようやく終わったので、次からステータス表示などの実装していて楽しい部品に移ることができる。 あ~ 久しぶりに気乗りするのが来ましたね。 趣味のゲーム制作とはいえ、全部が全部やってて楽しいわけじゃない…

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

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

イベントの実装は手間がかかるなあ

駅から脱出したあとのイベントを実装していた。 う~ん… イベントの実装に差し掛かるたびに開発速度が落ちてしまっていけない。 イベントは、キャラクターのアクションやカメラの制御などを地道に積み上げて、何度も何度も動作確認と調整を繰り返しながら進…

気乗りしない日にはリファクタリングでも

今夜はどうも気が乗らなかったので、気を紛らわすためにリファクタリングとかを細々とやっていた。 あとは、プレイヤーが調べられる個所に出すマークとか、そういう細かい部品を作ったり色々… まあ、大きな進捗はないです。 リファクタリングはいい。ソース…

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

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

追加のイベントやおんぶ処理なんかを実装

前回の紹介動画の時点では未実装だったイベントやなんやかんやを実装していた。 キビねえがダウンしてしまうので、ここからちょっとの間おんぶして進むというイベント。 おんぶの実装をどうするかは若干迷ったが、プレイヤー側から位置情報などを毎フレーム…

マップ制作や諸々のことについて動画アップした

単純にゲームの録画を公開し続けるのも微妙なので、趣向を変えて解説(?)動画風のものを作ってみた。 まあその、こういう動画に需要があるかは知らんけど、モチベーション維持の一環としては新鮮な空気になったと思うよ。 ただ動画作るのめっちゃ大変だった…

地味な進捗しかないなあ

なかなかこう、前回プレイ動画をアップしてからというもの地味な進捗しかなくてブログが更新しにくいなあ。 坂道(階段)を実装したとか、新しい敵キャラを追加したとか、そういう細かいのばっかりでネタに困る。 確実に前進してはいるのだがね… まあ一応スク…

プロローグのイベントがちょっと完成した

あー大変だった。 まあ何とかある程度「ゲームらしいもの」を公開できてひとつ区切りがついた感じだ。 音量が大きかったり小さかったりしたらごめんなさい。最善は尽くしたのだが… 音量調整って難しいんやな… この調子で進めていこう しかし、まだプロローグ…

ひたすらマップや素材作りをしている

ここ数日は、イベントで使うマップやゲームオブジェクトの実装を進めている。 作るものが多くてなかなか大変だ。 まだまだ粗削りだが、進捗としてスクショを2枚ほど貼って寝る。 序盤のイベントで使う貨物駅にて。 一応、テーマカラーがバイオレットなので…

シングルトンの誘惑に抗う(でもインスタンスのたらい回しはツラすぎる…)

うわぁ… またコンストラクタに引数追加しなきゃ… ゲームには様々なインフラオブジェクトが必要になる。 レンダラー、ミキサー、ゲームパッド、フォント、セーブデータ、ワールドクロック、etc… ゲームの根幹を成すものだけでもこれだけあるのに、ここにさら…

マップ境界のカメラ制御とか細かいのを色々実装した

グラフィック、サウンド、テキスト… ここのところ素材作りばっかりで、なかなか絵になる進捗ができない。 それでもまあ、細かいことだが成果を公開しておくか。 うん、やはり地味。 えー、これが何かと言うと、今までプレイヤーの動くがままに追随していたカ…

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

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

プレイヤーキャラの基本動作を実装した

走る、ジャンプするといった、プレイヤーキャラのごく基本的なアクションを実装した。(うわ、これ画質上げなきゃなあ) 動画内でとんだり跳ねたりしているのは、本作の主人公のミツバくんだ。 しかしまあ、素材の準備に相当骨が折れるな…。グラフィックとか…

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

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

マップの当たり判定を実装した

いままでグラフィックだけのハリボテ状態だったマップに当たり判定を付けた。 ようやくゲームオブジェクトとブロックが接触できるようになったぞ。 せっかくなので、これを祝して D言語くん に登場してもらった。 D言語くんとは、D言語の公式マスコットキャ…

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

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

セーブデータ管理画面(暫定版)を実装した

進捗報告 セーブデータ管理画面のプロトタイプが完成した。 う~ん、見るからに仮置きの「ゲームタイトル」といい、オブジェクトの配置といい、色々と粗削りですね… まあ、とりあえず必要最低限の動作をするものは作れたから良しとしよう。 細かい調整をここ…

【7-Zip】特定の拡張子のファイルやフォルダを除外して圧縮

今やっている個人プロジェクトは外部のリモートリポジトリを使っていないので、週1くらいの間隔でバックアップをとっている。 その際、圧縮には 7-Zip を使っているのだが、プロジェクト内に .lib や .exe のようなバイナリファイルが大量にあると、圧縮に…

エフェクト付きのテキスト表示を実装した

あれ? テキスト表示まだ作ってないやん タイトル画面で使うセーブデータ管理画面を実装している途中にふと思い出したのだが、そういえばまともなテキストの表示機能をまだ実装していなかった。 テキスト表示といっても、デバッグ用みたいな簡易なやつではな…

波形コンバータを実装した

インフラ完全攻略 前回の楽譜コンパイラ に続き、楽譜を波形に変換する波形コンバータの実装が完了した。 よっしゃああああああ!! これでインフラの難関は全部突破 したわけだ! 今のところ音源は正弦波だけだが、それでも書いた楽譜のとおりに音楽が再生…

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

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

サウンドの再生に成功した…が

D言語でゲームサウンド とりあえず Windows 上で動作させようということで、サウンドの再生には XAudio2 を採用した。 OS は Windows10 なので、XAudio2.9 がターゲットになる。 もともとは DirectSound を検討していたんだが、あれって知らん間に非推奨にな…

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

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

マップエディタ完成した

ようやく完成した 10日間くらいかかった。大変だったぞ… 座標計算地獄で。 それでもまあ、苦労の甲斐あって、けっこうまともなものが出来上がった気がする。 周辺ツールの出来栄えって、本体のゲームの質やモチベーションに割ともろに影響を及ぼすので馬鹿に…