はじめに ここではVRAM操作の際の基礎知識として、なるべくプログラム言語に依存しないように解説しています。 不足な部分も多々あるかと思われますが、どうかご容赦くださいまし(^^; なお、内容はフルカラー画像の取り扱いを前提としています。 VRAMとは 画像1ピクセルあたりの大きさは3バイトです。なぜかと言うと、色はコンピュータ上といえども、 実際と同じく赤緑青からなる、いわゆる「色の三原色」で表されています。そしてその各要素の大きさは1バイトとなっています。 なお、その各要素には0〜255の数値が収められています。これは色の明暗を表しています。 つまるところ、この1バイト1バイトの色の明暗の数値が、プログラムで扱うVRAM情報というやつです。 VRAM操作 VRAM操作は単純に1バイトずつVRAM情報を取得し、それを計算で増減したりすれば良いわけですが、実はそう単純な問題でもありません。 まず、例えば10×10の画像なら(0,11)などといった画像の範囲外を操作しようとすると、一般保護エラーを起こす可能性があります。 このあたりはプログラムを組む側の注意が必要です。 また、WindowsではVRAM情報は画像の原点(0,0)から始まっておらず、左下座標(10×10の画像なら、(0,9))から始まっているのです。 加えて厄介なことに色の要素は「赤→緑→青」の順ではなく、逆の「青→緑→赤」と並んでいます。 VRAM操作の際は多少ややこしいのですが、これらの事項を留意しておく必要があります。 イメージ画像