トップページ > 過去ログ > 記事閲覧
画像が透過しない
名前:PNG人 日時: 2006/11/08 12:45

Dxlibを使い、透過色を指定したのですが 透過しませんでした。 なぜかわかる方は教えてください><。 #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { ////////////////////////////////////////////////////////////// // // // 画面サイズ変更(800×600の16Bitのウインドウモード) // // // ////////////////////////////////////////////////////////////// SetGraphMode( 800 , 600 , 16 ) ; ////////////////////////////////////////////////////////////// // ウインドウモードに変更 ChangeWindowMode( TRUE ) ; //透過色の指定 SetTransColor(0,255,0) ; //右からR,G,B if( DxLib_Init() == -1 ) // DXライブラリ初期化処理 { return -1; // エラーが起きたら直ちに終了 } /*背景を描画*/ int GHandle; int kyara01; // int kyara02; // int kyara03; // int kyara04; // int kyara05; // kyara01 = LoadGraph( "kyara\\kyara01.png" ); // kyara02 = LoadGraph( "kyara\\kyara02.png" ); // kyara03 = LoadGraph( "kyara\\kyara03.png" ); // kyara04 = LoadGraph( "kyara\\kyara04.png" ); // kyara05 = LoadGraph( "kyara\\kyara05.png" ); // GHandle = LoadGraph( "kyara\\test.jpg" ) ; //画像をメモリに読み込む //DrawGraph( 0 , 0 , GHandle , TRUE ) ; //画像を表示 WaitTimer(1000); DrawGraph( 0 , 0 , kyara01 , TRUE ) ; //画像を表示 WaitTimer(1000); DrawGraph( 60 , 60 , kyara02 , TRUE ) ; //画像を表示 WaitTimer(1000); DrawGraph( 120 , 120 , kyara03 , TRUE ) ; //画像を表示 WaitTimer(1000); DrawGraph( 190 , 190 , kyara04 , TRUE ) ; //画像を表示 WaitTimer(1000); DrawGraph( 250 , 250 , kyara05 , TRUE ) ; //画像を表示 WaitKey(); DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 } 透過させたいものはkyara01から05の五つ。 画像の色は(0.255.0)と合っていました。 わかりにくい文かとおもいますが、よろしくお願いします。

Page: 1 |

Re: 画像が透過しない ( No.1 )
名前:Will 日時:2006/11/08 14:11

PNGの場合、もともと画像データに透過情報を持っているため、DrawGraph関数の透過設定は TREU = 透過情報を有効にする FALSE = 透過情報を無効にする となっていたと思います。 そのため、透過色指定による画像の透過処理は出来ないと思います。
Re: 画像が透過しない ( No.2 )
名前:PNG人 日時:2006/11/08 17:56

Willさんお返事ありがとうございます^^ 試しましたところ、 BMPでも透過されなかったことから 拡張子が問題ではないようです。 別のプログラムではPNGでも透過色はしていできたのですが、 このプログラムのみ透過しないという事態になっています。 引き続きお返事お待ちしております
Re: 画像が透過しない ( No.3 )
名前:mas 日時:2006/11/08 20:16

SetTransColorをDxLib_Initの前に呼んでるのが原因です。 問題が発生する最小限のプログラムを書いて、 サンプル(今回はSetTransColor)と比較すれば、気づくこともありますよ。
Re: 画像が透過しない ( No.4 )
名前:PNG人 日時:2006/11/10 16:29

透過できました。 masさんwillさんありがとうございます。

Page: 1 |