Re: Paint()で色漏れします。 ( No.1 ) |
- 名前:管理人 日時:2007/03/19 13:30
お父さんさんどうも、DXライブラリの管理人です。
私の環境で DrawBox で描いた四角の中を Paint で塗り潰す
という処理を SetUse3DFlag を TRUE にしたり FALSE にしたりして
色々試してみましたが、とりあえず色が漏れるということはありませんでした。
現在私の手元にある最新版では正常に動作するかもしれませんので、
宜しければこちらのバージョンをお試しになってみて下さい。m(_ _)m
http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe //VC用
http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe //BCC用
(中身を既存のライブラリのファイルに上書きして、BCCをお使いの
場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい)
因みに正常に描画されない状態とは具体的にどのような描画が行われて
しまっているのでしょうか? 3D RAGE LT PRO の環境が無いので
対応出来る可能性は低いかもしれませんが、宜しければ教えて下さい。m(_ _)m
|
Re: Paint()で色漏れします。 ( No.2 ) |
- 名前:お父さん 日時:2007/03/19 16:53
管理人様
早速のご返事ありがとうございます。最新版を試してみましたが、残念ながら、色漏れ、3DFlagともにうまくいきませ
んでした。
3DFlagをTRUEにして、正常に描画されない状態ですが、うまく説明できませんので、下記URLにプログラムとその
実行結果のスクリーンショットをアップしましたので、よろしければご覧になってください。
http://www.geocities.jp/dokuzenryu_pc/
|
Re: Paint()で色漏れします。 ( No.3 ) |
- 名前:管理人 日時:2007/03/20 11:50
お父さんさんどうも、DXライブラリの管理人です。
駄目でしたか・・・・
うーん、なんででしょう。
ちょっとご質問なのですが、SetUse3DFlag( FALSE ); で色漏れが
発生してしまうプログラムでも、お父さんさんのPCでは色漏れが
発生しないのでしょうか? それとも SetUse3DFlag( FALSE ); では
お父さんさんのPCでも色漏れが発生してしまうのでしょうか?
もし後者でしたら、実際に私の環境で確認出来れば恐らく原因を
突き止められると思いますので、宜しければ色漏れが発生してしまう
プログラムのプロジェクトを丸ごと圧縮して
BQE00322(アットマーク)nifty.com 迄送って頂けないでしょうか?
そして、SetUse3DFlag( TRUE ); にした状態の実行結果ですが・・・・
すいません、私の想像を遥かに超える結果でした。orz
手元に実機があれば何故そのような結果になってしまうのか根掘り
葉掘り調べてみたいのですが、それは出来ないので申し訳ありませんが
SetUse3DFlag( TRUE );で正常に実行出来るようにするのはちょっと無理そうです。m(_ _;m
|
Re: Paint()で色漏れします。 ( No.4 ) |
- 名前:お父さん 日時:2007/03/20 14:02
管理人様
色漏れの件ですが、色漏れが発生するのは息子のPCだけです。我が家のその他のPCではすべて正常に描画でき
ます。また、息子のPCでも、ver2.19bでは正常に描画できます。
色漏れが発生するプログラムのプロジェクトの件ですが、息子のPCで失敗したプログラムのexeやobjなど全
てをひっくるめてお送りすればいいのでしょうか?
SetUse3DFlagについては、残念ですが、SetUse3DFlagをFALSEにして作成したプログラムでも、私が作る程度の
プログラム(わくわくCゲームプログラミング程度のものです)なら実行スピードも十分ですので、息子のPC
ではFALSEでコンパイルしなおして使いますので、お気になさらないでください。もともと古いPCをいつまでも
使っているこちらが悪いのですから。
ひとつ質問ですが、息子のPCにはもともとDirectXのVer7が入っていたようなのですが、息子が自分で
ver9.0Cに入れ替えたと言っています。DirectXを9.0Cに入れ替えたことが原因となっているようなことはないで
しょうか? またその場合DirectXをver7にもどすというようなことはできるのでしょうか?
いつもつまらないことでご面倒をお掛けして申し訳ありませんが、どうぞよろしくお願いいたします。
|
Re: Paint()で色漏れします。 ( No.5 ) |
- 名前:管理人 日時:2007/03/21 08:48
お父さんさんどうも、DXライブラリの管理人です。
> 色漏れの件ですが、色漏れが発生するのは息子のPCだけです。我が家のその他のPCではすべて正常に描画でき
> ます。また、息子のPCでも、ver2.19bでは正常に描画できます。
うーん、そうですか・・・
> 色漏れが発生するプログラムのプロジェクトの件ですが、息子のPCで失敗したプログラムのexeやobjなど全
> てをひっくるめてお送りすればいいのでしょうか?
はい、プロジェクトフォルダを丸ごとでお願いします。m(_ _)m
(プログラムファイルと実行に必要な画像ファイル・音ファイルだけでも大丈夫ですが)
> ひとつ質問ですが、息子のPCにはもともとDirectXのVer7が入っていたようなのですが、息子が自分で
> ver9.0Cに入れ替えたと言っています。DirectXを9.0Cに入れ替えたことが原因となっているようなことはないで
> しょうか?
Windows98 全盛の頃はそんな話(バージョンアップによる動作の不具合)を何回か聞いた
ことがあるような気がしますが、私自身は体験していないので結局噂だったのか
事実だったのかはわかりません。
> またその場合DirectXをver7にもどすというようなことはできるのでしょうか?
DirectX のバージョンを下げることは出来ません、どうしてもという場合はハードディスクを
初期化して0の状態からOSを再インストールするしかありません。
因みに、息子さんのPC以外では正常に描画されるとなると、私の環境でも色漏れが
発生しない可能性が高いですので、宜しければ最近追加したよりハードウエア依存の
少ない状態で実行する方式を試してみて頂けないでしょうか?
方法は簡単で、DxLib_Init の前に
SetUseDirectDrawFlag( FALSE );
と書くだけです。これで DirectDraw の機能も使わなくなりますので、正常に動作する
可能性が高いと思います。
あと、ディスプレイドライバの更新で問題が解消される可能背もありますので、
宜しければ NEC LaVie NX(LW23/4) 用のドライバ関係のページから最新のドライバ
(といっても2000年ですが)をダウンロード・インストールしてみて下さい。
http://121ware.com/psp/PA121/NECS_SUPPORT_SITE/CRM/s/WEBLIB_NECS_DID.PRODUCT_ID.FieldFormula.IScript_VDown_Id_Mod?prodId=PC-LW2343C
|
Re: Paint()で色漏れします。 ( No.6 ) |
- 名前:お父さん 日時:2007/03/21 23:22
管理人様
SetUseDirectDrawFlag(FALSE); とすると、おっしゃるとおり息子のPCでもPaint命令が正常に動作するように
なりました。ありがとうございます。
ただ、しかたのないこととはいえ、スピードがかなり落ちてしまいますので(ScreenFlipを使うとかなり遅くな
るようです)、無理は承知の上で、もしなんとかしていただければと思い、色漏れのするプロジェクトのファイ
ルを丸ごとメールでお送りさせていただきました。
いつも無理ばかり言ってどうも申し訳ございませんが、もしできましたら、息子のPCでもPaint命令が普通に使
えるようになるよう、なんとかお考えください。よろしくお願いします。
|
Re: Paint()で色漏れします。 ( No.7 ) |
- 名前:管理人 日時:2007/03/23 16:35
お父さんさんどうも、DXライブラリの管理人です。
メールを拝見致しました。
添付して頂いたプロジェクトの実行ファイルを手元にある幾つかの環境で
実行してみたところ、Windows98 で同様の現象が発生しました。
同じPCに入っている Windows2000 では正常に描画されましたので、
恐らく 95カーネルの WindowsOS(95,98,98SE,ME) 上で今回ご報告頂いた現象が
発生するのではないかと思います。
原因を突き止めるにはそれなりに纏まった時間が必要そうですので、週末にでも
詳しく調べてみたいと思います。
申し訳ありませんが少々お待ち下さい。m(_ _)m
|
Re: Paint()で色漏れします。 ( No.8 ) |
- 名前:お父さん 日時:2007/03/23 18:53
管理人様
どうもありがとうございます。息子のPC以外でも同様の現象が発生したということで、変な話しですが、ちょっ
と安心しました。
私のほうは、いくらでも待たせていただきますので、管理人様のお手すきの時にどうぞゆっくりお調べください。
そんなに古いPCを使っているほうが悪い、と言われても仕方のないようなことですのに、いつもいつもの親切
で素早いご対応には本当に恐れ入ります。お手間をかけますがどうかよろしくお願いします。
|