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

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

カテゴリ:Programming > Algorithm

English version is available here:Godot: Implementing Pixel-Perfect MovementXeGrader plus では、レトロな雰囲気を出すために、その動きは全て正確なドット単位に補正しています。通常、座標の用いるのは Godot の Vector2 という浮動小数ベクトルです。例え、背景に 32 ...

あまりにAIが自分の作ったバグを直せないのでテストしてみたところ、めちゃくちゃ笑える(笑えない)結果になったので、その経過をブログにしてみました。そのやり取りのダイジェストは以下のとおりです。AI(Claude)クンは引用で表現しています。既に私は答えを分かってい ...

バッファに新しい行の文字列画像が出来たら、後はそれを画面にコピーするだけです。ただ、そのコピーの前に現在表示済みの画像も1ラインコピーして上げる処理が必要です。コピー元がバッファか画面上かの違いだけで、やってることは同じです。そのため、ここを如何に高速に処 ...

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

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

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

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

In XeGrader plus, all movements are corrected to precise pixel units to create an authentic retro atmosphere. Normally, Godot uses Vector2, which is a floating-point vector, for coordinates. Even if you use a 320x200 pixel background, if the client area i ...

今回は多くの人が間違った解釈をしていると思われる確率について、私の考えを述べたいと思います。これはあくまでも私の考えですので、正しいとも間違っているともどう思われても構いません。ただ、これをきっかけに何かを感じていただければ幸いです。 乱数の結果は予測不 ...

今回は初期化です。これ、C言語講座分類にしようか悩みました。理由は C言語で説明するためです。とはいえ、基本的な考え方は普遍的で共通ですので、その辺りを見て頂けると幸いです。 まずは宿題の答え前回の ALG 状態遷移で宿題が出ていました。こちらは実行すればすぐに ...

↑このページのトップヘ