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

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

カテゴリ: Programming

ゲームクリエイターになる登竜門として、ゲーム学科がある専門学校に進む人はそれなりに多いです。夢を追い求めるのは結構ですが、だいたい最初の1年で現実を突きつけられて、夢は夢としてちょっとコンピュータに強い一般職として、ゲーム業界以外に就職していく人は本当に多 ...

某所で素数を列挙するプログラムを見かけて、自分も作ってみようという気になりました。また、ついでに C言語、C++、C# でも同じように作成して、そのコードの違いや実行速度の差を検証もしてみました。私の当初の予定では、圧倒的に C++ が高速だと思ってました。さて、その ...

データ圧縮する際に最初に考えるのは「まとめる」事と同じ表現をより小さい値に「置き換える」事です。一箇所指定したら、周辺にドドドッと配置してしまえば、それだけでかなり省メモリです。座標系が1024x512だと座標系はデータが大きいですが、前回のデータからのオフセッ ...

PC-8001 シリーズの中で唯一 mk2 だけが 1200baud でのカセット読み込み機能を有しています。ですが、折角の 1200bayd 読み込みは、N80-BASIC では使用されず封印されています。今回はその 1200baud を使って、様々なゲームを読み込ませる手法について解説します。 ファン ...

プログレスバーとローディングアイコンを合体させたのが、今回の XeGrader のスライムです。プログレスバーはどこまで読み込んだかが分かるのは良いのですが、カセットだと時間がかかりすぎるので、バーの動きが少なくて、暴走してても気が付きにくいです。ではと、ローディ ...

乗算に続いて今回は除算、そう割り算です。割り算はA÷Bだと、AからBを何回引けるかという計算なので、単純にA-Bを引けなくなるまで繰り返すと答えが出ます。これまた簡単です。この処理も乗算の時と同様に、最大で256回ループする可能性がある(1で割れば…ですが)ので、こ ...

乗算って、例えばA×Bってのは、AをB回足したのと同じだから、単純に掛ける数の回数で掛けられる数を加算すると、これで答えが出てしまうんです。簡単ですよね。 ただ、この処理系だと最大で256回ループしてしまうので、それを何とか減らしたいワケです。今回はこの乗算につ ...

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

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

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

↑このページのトップヘ