![]() | こんにちは。ごろぉです |
![]() | どもども。こんにちはー 比芦 美沙(ひろ はずな)でーす |
![]() | さぁて、このコーナーも3回目になりました |
![]() | …あれ? 前、独自画像やって、2回目じゃないの? |
![]() | ふむ。2回目はちゃんとあるぞ。ただ…調整中だから公開はまた後日だ |
![]() | … |
![]() | そういう顔するなよ。俺が何か間違えてるみたいじゃないか |
![]() | 先送りにするなら、それを3回目にすればいいじゃない |
![]() | まぁそうなんだがな…もう今回3回目にしちゃったし。 |
![]() | 過ぎたことは仕方ない。さくさく進もう |
![]() | …まぁいいか。深く考えても無駄なだけだし |
![]() | お。分かって貰えてうれしいぞ |
![]() | 慣れたから。 |
![]() | さてと。んで、今回はディスプレイの解像度をやるが… はずな、解像度って知ってるか? |
![]() | え? うーんと… 画面の細かさのコトだよね |
![]() | まぁそんな感じでいいかな。 俺も良くは知らんしな。 ようは画面の大きさだな。 |
![]() | で、それがゲームとどんな関係があるの? |
![]() | ああ。Windowsのゲームには、『フルスクリーンモード』を備えているものが多い。 『フルスクリーンモード』というのは、パソコンの画面全体を使ってゲーム画面を表示することだ |
![]() | うん。分かる分かる |
![]() | それの多くは、画面の解像度を変更、ゲーム画面の大きさと同じにして実現しているんだ。 |
![]() | へぇー… |
![]() | だから、フルスクリーンを実装するのに画面の解像度変更は避けて通れないんだ。 |
![]() | なるほどぉ |
![]() | 解像度変更にはDirectXを使うとかいくつか方法があるが…今回はWindowsAPIの"ChangeDisplaySettings"を使用してみる |
![]() | ん?なにそれ |
![]() | APIの細かな説明は省くぞ。"ChangeDisplaySettings"APIは、そのまんま『ディスプレイの設定を変更する』ものだ。 |
![]() | へぇ〜 |
![]() | んで、この関数を使用する前に"EnumDisplaySettings"(ディスプレイの設定を列挙する)APIが必要になる。 "EnumDisplaySettings"で変更できる解像度を取得して"ChangeDisplaySettings"で実際に変更する流れだ。 |
![]() | よく分かんないけど、その2つの関数を使えばフルスクリーンモードになるのね? |
![]() | そ。…まぁ実際フルスクリーンモードにするにはゲーム画面のタイトルバーとかメニュー消したり、最前面に表示したりと諸々の処理が必要になるがな。 |
![]() | さて。今回は解像度を簡単に扱えるように、クラスを用意してみた。 |
![]() | クラス? |
![]() | ああ。何て説明しようか…まぁ一つのオブジェクトだよ。 |
![]() | オブジェクト? |
![]() | ……今度細かく説明してやるから。今は納得しておけ。 |
![]() | はーい |
![]() | さてと。では実際に使ってみようか |
![]() | うん |
![]() | サンプルのクラスは2種類、VB用とVC++用に作ってみた。 |
![]() | あれ?ごろぉ、VCなんてできるの? |
![]() | まぁ、何とか…つか、俺だって成長くらいするさ |
(ダウンロード)解像度変更クラス VB6.0用 VC++6.0用 | |
![]() | 使い方は次のページにするか |
クラスの使い方 VB6.0 VC++6.0 |