Re: Android版のSetDrawAddColorのバグ...? ( No.1 ) |
- 名前:管理人 日時:2023/02/28 02:17
ご報告ありがとうございます
手元の環境でも色が変わらない現象を確認できました
原因を調べてみたのですが、単純なテストとコードを確認した上では特に問題がみつかりませんでした
少し時間を掛けて調べる必要がありそうなので、修正は次の週末になるかもしれません m(_ _;m
|
Re: Android版のSetDrawAddColorのバグ...? ( No.2 ) |
- 名前:管理人 日時:2023/02/28 05:38
|
Re: Android版のSetDrawAddColorのバグ...? ( No.3 ) |
- 名前:barrier(解決) 日時:2023/02/28 19:53
ちゃんと予想通りの挙動になりました!
ありがとうございます!
これにて解決とさせていただきます!
|
Re: Android版のSetDrawAddColorのバグ...? ( No.4 ) |
- 名前:Naohiro19 日時:2023/03/01 20:39
このコードは、DxLibを使用してウィンドウを作成し、3つの四角形を描画し、それぞれ異なる色を与えるものです。
しかし、問題があるようです。
問題は、 SetDrawAddColor() 関数を使用して、描画時に加算色を指定している点にあります。
この関数は、現在の描画色に対して加算色を指定するものであり、
現在の描画色が (0, 0, 0) の場合、加算色を指定しても何も表示されません。
これを修正するためには、 SetDrawBlendMode() 関数を使用してブレンドモードを設定することが必要です。
例えば、以下のように修正することができます。
int android_main(){
SetGraphMode(1280,720,32);
if (DxLib_Init() == -1){return -1;}
SetDrawScreen(DX_SCREEN_BACK);
SetDrawBlendMode(DX_BLENDMODE_ADD, 255);
while (ProcessMessage() != -1){
DrawBox(0,0,50,50,GetColor(255,-128,-128),TRUE);
DrawBox(50,0,100,50,GetColor(-128,255,-128),TRUE);
DrawBox(100,0,150,50,GetColor(-128,-128,255),TRUE);
ScreenFlip();
ClearDrawScreen();
}
DxLib_End();
return 0;
}
この修正により、正常に色が変化することが確認できます。
|
Re: Android版のSetDrawAddColorのバグ...? ( No.5 ) |
- 名前:管理人(解決) 日時:2023/03/02 02:44
> Naohiro19さん
こちらは ChatGPT の出力テキストでしょうか?
barrierさんのプログラムは SetDrawAddColor の不具合を再現するためのプログラムなので
『SetDrawAddColor を使用する必要がない』
との指摘は的外れな回答となっています…
あと、代わりとなるプログラムとして
DrawBox(0,0,50,50,GetColor(255,-128,-128),TRUE);
DrawBox(50,0,100,50,GetColor(-128,255,-128),TRUE);
DrawBox(100,0,150,50,GetColor(-128,-128,255),TRUE);
が提示されていますが、正しくは
DrawBox(0,0,50,50,GetColor(127,255,255),TRUE);
DrawBox(50,0,100,50,GetColor(255,127,255),TRUE);
DrawBox(100,0,150,50,GetColor(255,255,127),TRUE);
となります
このように ChatGPT の回答は間違いがあることが多いので、あまり出力された
内容をそのまま投稿するのは控えたほうが良いと思います
|
|