C++

include/linkスイッチによる抽象化

仮想関数(抽象化)は、異なる2つの環境に、ひとつのソースコードで対応するための数ある対応策のひとつとしてしばしば利用されます。この方法は、ソースコードの字面は非常に綺麗になりますが、全般的な処理が重くなるため、プログラマにとって "理性が受…

Listener か function pointer か

C++

アセンブリやC言語の場合、モジュール化したプログラムの特定の状態で通知や処理の移譲を受けるために関数ポインタを利用する。このテクニックはC++でも変わらず使われている。関数ポインタと、ペアになる void* アドレスの登録を受け付ければ大抵の状況に対…

使える言語の棚卸し

ちょうど面白い話をしてるところなので、自分が使える言語を整理してみた。しかしよく考えるとゲームプログラマってアセンブリ、C言語、C++ は絶対使えるし(使えないと就職できん)、さらに VLSL、HLSL あたりは使えてもおかしくないよね…… その前に、VMXは…

namespace 重要

C++

現代の開発は大型化し、自プロジェクト製ライブラリ、自社製ライブラリのほかに、他社製大型ミドルウェアの導入が必須になっている。こういったプログラム同士を組み合わせたときに namespace がないとひどい目にあう。かつてその(ぷち)ミドルウェアを作っ…