HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
0707
匿名希望HGIMG3 αPNGテクスチャ6解決


匿名希望

リンク

2010/7/7(Wed) 02:03:09|NO.33564

度々の質問失礼します

1.αPNGをtexload2で読み込み
2.1のテクスチャを設定したSPLATEモデルを作成し
3.2のモデルからオブジェクトを作成・設置
4.3のオブジェクトにsetefxでα値を255に設定
して表示したところ、Zオーダー?が正しく反映されません

具体的には下記の画像のようになります
http://www1.axfc.net/uploader/Img/so/88009.png&key=HGIMG3
http://www1.axfc.net/uploader/Img/so/88010.png&key=HGIMG3

24bitPNGではこのような問題は発生しませんでした
これは仕様でしょうか?
それとも、やはり何か間違っているのでしょうか?



この記事に返信する


匿名希望

リンク

2010/7/7(Wed) 17:36:10|NO.33574

補足です

HSPのバージョンは3.21a2

Win7 Ult(x86) GeForce9800GT
WinXP Home(x86) GeForce6800
の両方で同じように表示されたので
Geforce以外の環境依存ということは考えにくいと思います



匿名希望

リンク

2010/7/7(Wed) 23:01:33|NO.33578

情報を小出しにしてしまいすみません

αPNGであってもsetefxでα値を設定しなければ
Z深度に応じて正常に表示されます

黒抜きの24bitBMPであっても、α値を設定すると
同様の問題が発生します

よろしくお願いします



f3d

リンク

2010/7/8(Thu) 18:30:58|NO.33592

Zバッファとアルファブレンドって相性悪かったような気が・・・
α値を設定するとアルファブレンドが行われてしまうので
黒透過で回避するのが一番です。



R

リンク

2010/7/8(Thu) 18:53:31|NO.33593

>黒抜きの24bitBMPであっても、α値を設定すると
>同様の問題が発生します

HSP2時代のHGIMGからして既に
半透明や加算合成に設定したオブジェクトはZバッファの描画が行われなくて
描画した順にそのまま重なる状態だったので、恐らく仕様じゃないですかね。
つまり完全不透明のものしかZバッファの恩恵は受けられない、と。

レンダーステートが弄れるなら何とかし様があったりするけど
そういう手段が無いなら、自力でZソートする事になると思います。



匿名希望

リンク

2010/7/9(Fri) 02:58:49|NO.33599

回答ありがとうございます

つまり仕様のようなもので
ちょっといじってどうにかなる類の問題ではなさそうですか

別の方法を模索することにします
ありがとうございました

(解決したわけではありませんが、解決チェックしておきます)



K-s

リンク

2010/7/10(Sat) 01:12:22|NO.33606

もう遅いかもですが。
オブジェクトのモード設定の OBJ_SORT は試されたでしょうか?
設定されたオブジェクトは奥から順に描画されるので半透明もちゃんと表示されると思います。
オブジェクト同士がクロスしているとダメですが…



ONION software Copyright 1997-2021(c) All rights reserved.