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


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
1107
あり環境によるtexload2の挙動の違いについて0解決


あり

リンク

2014/11/7(Fri) 11:51:09|NO.65942

HGIMG3のtexload2は読み込み時にビデオカードに適応しない画像サイズの場合
自動で適正なテクスチャサイズ(2のn乗サイズ)に合わせて拡大縮小して読み込む仕様なのですが
どうも最近のPCではこの自動調整が行われずそのままの画像サイズで読み込まれるようで
古いPCとテクスチャ表示の結果が変わってしまう事があります。

下のスクリプトはtexload2の自動調整機能ONとOFFの二通りで作成したテクスチャを
左クリックで交互に切り替えて表示させるもので
本来想定される動作はそれぞれ表示結果が違うものになるのが正しいはずです。
(最初のテクスチャは左上部分だけ切り取られて表示される)

#include "hgimg3.as" screen 0, 640, 480 hgini texload2 dir_tv + "\\sozai2.jpg" ; テクスチャサイズは自動(1024x512になるはず) texload2 dir_tv + "\\sozai2.jpg", 640, 480 ; テクスチャを画像サイズ(640x480)に合わせてロード *main stick key if key & 256 : tex + 1 : tex \ 2 ; 左クリックでテクスチャ切り替え hgdraw gmode 0, 640, 480 pos 320, 240 hgrotate tex, 0, 0;, 0, 640, 480 hgsync 16 goto *main
実際自分の所有するWindowsXP時代のPCでは想定した通りの表示結果になりましたが
Windows8のPCではテクスチャサイズの調整が行われない為
両方の表示内容が同じになるという想定しない結果になってしまいました。

texload2はDirectXAPIの機能を使ってテクスチャを読み込むので
この事象は厳密には不具合とは言えないのかもしれませんが
HSPコンテストでHGIMG3を利用した応募作品の中には変則的(2のn乗サイズではない)なサイズの
テクスチャ画像を使用している作品も結構あり、それらでこの事象が発生しています。

これを回避する為にはtexloadを使うかtexload2を利用する際2のn乗サイズに
合わせた画像を使うかテクスチャサイズを指定して読み込めば良いので
できるだけ多くの人に自分の作品を完全な形で楽しんでもらいたいという人は
こういった点にも気を使ってみてはどうでしょう?



この記事に返信する


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