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

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

タグ:最適化

当初、マップはそのままの配置データを RLE圧縮(ランレングス)で保持していました。無圧縮だと 2.8KBですが、この圧縮で 1.7KBには縮んでいたので、これで良いと思っていました。これがすぐにぶっちぎりに甘い見積りだったとすぐに思い知らされる事になります。今回はサイ ...

諸星圭さん @kmoroboshi からリクエストを頂きましたので、緊急に記事にしてみます。諸星さんが仰るとおり、Z80で処理を高速化するためには、16ビット計算は 8ビットに落とし込めないかという試行を行う事が肝要となります。前回、16bitループカウンタで最高速だった B,C を ...

Z80 アセンブラにとって、高速化は命題となります。その中で2バイトをまとめて処理出来る push / pop は使い方によってはかなりの高速化が期待出来るため、本来の使い方以外の使用方法がいくつも開発されてきました。今回はそんなスタック(以下、SP と略す)に纏わるお話で ...

配列範囲外チェックはどうしていますでしょうか。普通に記述すると…     public int[,] array = new int[100, 100];    private bool IsArrayRange(int x, int y)    {        return true            && x >= 0            && y >= 0   ...

C# では並列化の実装が簡単に出来るようにと、便利な下記のステートメント(クラス)が用意されています。Parallel.For()Parallel.ForEach()Parallel.Invoke()なるほどぉと for や foreach で記述されている箇所を単純に置き換えると、割と高確率で例外で落ちます。これは、 ...

↑このページのトップヘ