2024/03/30(土) [n年前の日記]
#1 [prog] スクリーンセーバのソースを弄ってる。その3
以前作成したスクリーンセーバのC言語ソースを弄ってる。
設定ダイアログ関係と、OpenGL描画関係を、元のソースから分離して複数ファイルに分割できたので、疑似3D道路を描画するソースで置き換えているところ。
メインPC上では動くようになったのだけど、サブPCに持っていって動作確認してみたら上手く行かない。
真っ暗な画面のままでも、GPUにはずっと負荷がかかっているみたいなので、描画処理を一応しているような気もするけど…。何故画面が出ないのか…。
メインPCのGPUは NVIDIA GeForce GTX 1060 6GB。サブPCは、AMD Radeon R3。AMD製GPUのドライバは OpenGL関係でバグがたくさんあるから、そのせいだろうか。でも、そうだとしたら、スクリーンセーバ設定画面上でプレビュー表示ができてしまうのはおかしい…。
VRAMが足りなくてテクスチャのロードに ―― バイナリを展開して OpenGL のテクスチャとして登録してるあたりで処理に失敗してプログラムが終了してるのではないかと疑って、テクスチャのロードに失敗した時はエラーメッセージを画面に出すようにしてみたけれど、全く変化無し。
BG画像のサイズが 2560x1440 という妙なサイズなのがマズいのだろうか。2048x1024 等にしてみるか…。いや、そもそもBG画像をロードしない設定をつけてみようか。BG画像のロードをしなければ動作するのであれば、VRAMが関係しているのかもしれないし。
設定ダイアログ関係と、OpenGL描画関係を、元のソースから分離して複数ファイルに分割できたので、疑似3D道路を描画するソースで置き換えているところ。
メインPC上では動くようになったのだけど、サブPCに持っていって動作確認してみたら上手く行かない。
- スクリーンセーバの設定画面上ではそれらしく動作する。
- スクリーンセーバとして呼び出すと真っ暗な画面を表示したままになる。
- マウスカーソルが表示されていて、マウスの動きに反応してマウスカーソルの位置は変化するが、デスクトップは黒いまま。
- キーボードを叩くとデスクトップ画面に復帰する。
- Windowsのイベントビューアにはそれらしいクラッシュ情報が残ってない。
真っ暗な画面のままでも、GPUにはずっと負荷がかかっているみたいなので、描画処理を一応しているような気もするけど…。何故画面が出ないのか…。
メインPCのGPUは NVIDIA GeForce GTX 1060 6GB。サブPCは、AMD Radeon R3。AMD製GPUのドライバは OpenGL関係でバグがたくさんあるから、そのせいだろうか。でも、そうだとしたら、スクリーンセーバ設定画面上でプレビュー表示ができてしまうのはおかしい…。
VRAMが足りなくてテクスチャのロードに ―― バイナリを展開して OpenGL のテクスチャとして登録してるあたりで処理に失敗してプログラムが終了してるのではないかと疑って、テクスチャのロードに失敗した時はエラーメッセージを画面に出すようにしてみたけれど、全く変化無し。
BG画像のサイズが 2560x1440 という妙なサイズなのがマズいのだろうか。2048x1024 等にしてみるか…。いや、そもそもBG画像をロードしない設定をつけてみようか。BG画像のロードをしなければ動作するのであれば、VRAMが関係しているのかもしれないし。
[ ツッコむ ]
以上です。