トップページ > 過去ログ > 記事閲覧
3DアクセラレータOFFでのフルスクリーン切り替えの不具合
名前:KWT 日時: 2012/09/16 23:06

いつもお世話になっております。KWTと申します。 私の環境において、以下のような症状を確認したのですが、 失礼ながら、これはライブラリ側の問題でしょうか。 私のコードの方に問題があるようでしたら、 お手数ですが、ご指摘頂けると助かります。 ■ 症状 SetUse3DFlag( false ) などで3DアクセラレータOFFにした状態で、 フルスクリーン/ウィンドウの切り替えを行なうと、 フルスクリーンからウィンドウに切り替えた際に、 解像度がフルスクリーン状態から元に戻らなくなります。 ■ コード #include "DxLib.h" void ChangeCallback( void * ) { } int APIENTRY _tWinMain( HINSTANCE, HINSTANCE, LPTSTR, int ) { SetUse3DFlag( false ); // SetScreenMemToVramFlag( false ) でも良い. ChangeWindowMode( true ); SetGraphMode( 640, 480, 32 ); SetUseASyncChangeWindowModeFunction( 1, ChangeCallback, 0 ); DxLib_Init(); while( ProcessMessage() == 0 ); DxLib_End(); return 0; } ■ 環境 DXライブラリ Ver 3.08c Microsoft Visual C++ 2008 Express Edition SP1 WindowsXP Professional SP3 以上、よろしくお願いします。

Page: 1 |

Re: 3DアクセラレータOFFでのフルスクリーン切り替えの不具合 ( No.1 )
名前:管理人 日時:2012/09/22 22:30

ご報告ありがとうございます 修正版をアップしましたので、よろしければこちらをお試しください m(_ _)m http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe // VisualC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe // BorlandC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibGCC_DevCppTest.exe // Dev-C++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibGCC_MinGWTest.exe // MinGW 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibDotNet.zip // .NET用 http://homepage2.nifty.com/natupaji/DxLib/DxLibMakeTest.exe // ソース (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』を、VCをお使いの場合は『リビルド』を、 Dev-C++をお使いの方は「Rebuild All(Ctrl+F11)」をして下さい)
Re: 3DアクセラレータOFFでのフルスクリーン切り替えの不具合 ( No.2 )
名前:KWT 日時:2012/09/22 23:24

ご対応ありがとうございます。 VisualC++ 用を上書きしリビルドして確認を行ないましたが、 ご報告させて頂きました症状は、解消されませんでした。 私の環境でのみ症状が解消されていない、という可能性もあるかと思いますので、 1で記述していなかった環境を、念のため追記しておきます。 ■ 環境 GPU NVIDIA GeForce 7300 SE/7200 GS ※ 関係があるか判りませんが、デュアルディスプレイにしています。
Re: 3DアクセラレータOFFでのフルスクリーン切り替えの不具合 ( No.3 )
名前:管理人 日時:2012/09/23 01:09

うーん駄目でしたか・・・ こちらでは以下のようなプログラムを実行して修正できたかを確認しました #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { SetScreenMemToVramFlag( FALSE ) ; if( DxLib_Init() < 0 ) return -1 ; DrawBox( 100, 100, 540, 380, GetColor( 0,255,0 ), TRUE ) ; WaitTimer( 5000 ) ; ChangeWindowMode( TRUE ) ; DrawBox( 100, 100, 540, 380, GetColor( 0,255,0 ), TRUE ) ; WaitTimer( 5000 ) ; ChangeWindowMode( FALSE ) ; DrawBox( 100, 100, 540, 380, GetColor( 0,255,0 ), TRUE ) ; WaitTimer( 5000 ) ; ChangeWindowMode( TRUE ) ; DrawBox( 100, 100, 540, 380, GetColor( 0,255,0 ), TRUE ) ; WaitTimer( 5000 ) ; ChangeWindowMode( FALSE ) ; DrawBox( 100, 100, 540, 380, GetColor( 0,255,0 ), TRUE ) ; WaitTimer( 5000 ) ; DxLib_End() ; return 0 ; } よろしければKWTさんの環境でも上記のプログラムで正常にウインドウモードの切り替えができるか試してみていただけないでしょうか? 因みに私のPCは WindowsXP で GeForce GTX 560 Ti のデュアルディスプレイなので環境的には近いはずです
Re: 3DアクセラレータOFFでのフルスクリーン切り替えの不具合 ( No.4 )
名前:KWT 日時:2012/09/23 12:19

No.3 にて貼って頂いたコードで確認しましたが、 やはり、症状の解消は確認できませんでした。 友人にも手伝って頂き、VisualC++ 用でNo.3のコードをを ビルドして貰いましたが、同じ不具合が確認できたとの事でした。 ■ 友人の環境 Processor: Genuine Intel(R) CPU 2140 @ 1.60GHz (2 CPUs) Memory: 2040MB RAM DirectX Version: DirectX 9.0c (4.09.0000.0904) Operating System: Windows XP Home Edition (5.1, Build 2600) Service Pack 3 (2600.xpsp_sp3_gdr.120504-1619) Card name: Intel(R) 82945G Express Chipset Family 私のビルド環境、PC環境のどちらが問題か 判断がつかないところがありましたので、 こちらでビルドした実行ファイルを上げておきました。 ttp://dl.dropbox.com/u/3793647/screen_test.zip また、DXlib 3.02 時点では少なくとも、 この症状が確認できませんでしたので、 そちらの実行ファイルも合わせて同封しています。 管理人様の環境で、一度これらの実行ファイルを動かして頂いてもよろしいでしょうか。
Re: 3DアクセラレータOFFでのフルスクリーン切り替えの不具合 ( No.5 )
名前:管理人 日時:2012/09/23 18:16

アップして頂いた実行ファイルでは私の環境でも症状が改善されていないことが確認できました というか、申し訳ありません、今確認したところ昨日作成した修正版のパッケージを アップしたつもりでいたのですが、アップしていませんでした orz お手数ですが再度こちらのURLから修正版パッケージをダウンロードしてください http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe // VisualC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe // BorlandC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibGCC_DevCppTest.exe // Dev-C++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibGCC_MinGWTest.exe // MinGW 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibDotNet.zip // .NET用 http://homepage2.nifty.com/natupaji/DxLib/DxLibMakeTest.exe // ソース (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』を、VCをお使いの場合は『リビルド』を、 Dev-C++をお使いの方は「Rebuild All(Ctrl+F11)」をして下さい) 私のミスで貴重なお時間を割くことになってしまい本当に申し訳ありません
Re: 3DアクセラレータOFFでのフルスクリーン切り替えの不具合 ( No.6 )
名前:KWT(解決) 日時:2012/09/23 19:38

VisualC++ 用にて症状の解消を確認しました。 各テストコードでも問題ないようです。 ご対応ありがとうございました。 > 私のミスで貴重なお時間を割くことになってしまい本当に申し訳ありません こちらは、ライブラリを使わせて頂いている身ですので、どうぞお気になさらずに。 ライブラリの発展へ少しでもお力になれたのなら、むしろ幸いな事です。 ありがとうございました。

Page: 1 |