プログラミング指南 - Code Knowledge

ゲーム制作に関するプログラミング等を主に書き溜めていきます。ただ、どちらかと言えば日記的な書き方が続くと思いますが、そこは温かい目で見て頂ければ。あと、ちょっとしたサンプルやツールのダウンロードも出来るようにしておきます。

カテゴリ: Programming

PC-8001mk2でゲームを制作する上で、避けては通れない問題、それがBEEPを使った音楽再生です。この機種は音を出す方法が 2400Hzという固定の周波数しか出せない BEEP のみなのです。まあ、カセットのリレーを使ってカチカチと音を出せなくはないのですが、それはとりあえずこ ...

公式のブログネタに制作中!というお題があったので、昨年から作り続けている PC-8001mk2 用のゲーム制作の進捗状況について、簡単に説明していきたいと思います。このゲームはひみつをときあかす要素もあったりあるので、そういう謎部分には殆ど触れないように説明していき ...

現在、80mk2 専用で開発を進めているゲームですが、実は当初 60mk2 で全ての面が同時接続状態の広範囲で動ける内容で作ろうと考えてたモノでした。ところが 60mk2 ではあまりに荷が重くて挫折。今回ターゲットを 80mk2に変更してCPUパワーは上げたものの、あの時の反省と教訓 ...

このフォントデータの無駄に気が付いたので、データの削減を行うことにしました。この状態ではデータのサイズは 84バイトです。文字のサイズは 4×7ドットです。横4ドットは PC-8001mk2では 1バイトです。そのため、1文字のデータサイズは 7バイトで、それが 12種類あるので ...

Z80 でプログラムを組んでいると、Acc の内容によって、それぞれの処理にジャンプしたいことが割と多くあります。例えば、Acc が 0,1,2... という場合に、それぞれ対応したラベル L0, L1, L2... にジャンプしたい場合です。今回はその実装方法について解説していきたいと思い ...

現在、趣味のゲーム制作で PC-8001mk2 専用のソフトを鋭意制作中です。とはいえ、趣味の範囲なので、余暇の時間を使っている関係で、なかなか進捗は遅いのですが…。そして、最近知ったのですが、PC-8001mk2 では、例えテキストの DMA を停止しても、GVRAM(グラフィック画面 ...

前回 Z80 で左右判定を行いました。Z80 ではアナログの扱いではなく 8方向で表現してた事もあり、各方向毎に専用判定を記述することで対応しました。C# ではベクトルで座標を、向きはベクトルや角度で扱っているため、角度毎の専用処理では判定できません。そこで数式を用い ...

自分から見て、相手が左右どちらにいるのかを判定したいことがよくあります。コンパイラ系であれば、内積を使えば一発なのですが、Z80 ではなかなかそういう訳にもいきません。そこで今回は、8方向に移動している自分から見て、相手が左右どちらにいるのかをどう判定すれば良 ...

前回まででベクトルや行列を使った動きに関する説明を行いました。ただ、Program.cs にベタ書きされているので、このままプログラムの規模が大きくなっていくと、可動性が著しく劣ることが考えられます。また、今後の拡張も面倒なことになりそうですので、まだ規模か小さい今 ...

前回の記事で、メインループからプレイヤーを自由自在に動かせるようになりました。ですが、キャラはずっと正面を向いたままです。方向に応じた画像表示に入れ替えたら、それなりに見えるのは分かりますが、例えば自動車のように、各方向にアナログ的に回転させて表示しよう ...

↑このページのトップヘ