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


HSPTV!掲示板


未解決 解決 停止 削除要請

2006
0908
ルーイヨッシーes_syncでエラーが起こる理由2解決


ルーイヨッシー

リンク

2006/9/8(Fri) 07:46:49|NO.2317

こんちは。シューティングゲームを作っているのですが、
DirectXの3つ目のエラーにどうしても引っかかるようになってしまいました。
(VRAMの容量が不足しているか、もしくは、画像サイズが大きすぎるために転送に失敗しました。)
ちなみに、使用している画像は288×288で、グラフィックボードが
256ドットを超えた画像に対応していないという事も考えましたが、
前は大丈夫だったので、違うと思います。

前から変更した点は、スプライトを10個ほど追加登録した事。

#include "hspdx.AS" es_ini es_screen 640,480,16,0,1,0 if stat = 1 { ; goto *DXerr1 } ;DirectXとスクリーンの初期化が if stat = 2 { ;OKかをチェック。 goto *DXerr2 } ; goto *start *DXerr3 es_bye ;DirectXシステムと切り離し wait 100 dialog "VRAMの容量が不足しているか、\nもしくは、画像サイズが大きすぎるために\n転送に失敗しました。\n"+"stat="+stat,1,"User nomination error" end *start ;基本設定 es_cls 0,0,100 es_cls es_sync buffer 3,,,1 bmppalette "a.bmp" picload "a.bmp" es_buffer 0,0 if stat : goto *DXerr3

ちなみに、本当はhspdxfixを使用していて、statには
es_syncの値(200〜800)が返っていて、es_bufferの値は
返っていませんでした。



この記事に返信する


KIMU

リンク

2006/9/8(Fri) 19:06:28|NO.2321

>ちなみに、本当はhspdxfixを使用していて、statには
これが一番重要な事なのに、何でちなみになのか・・・

今回の件は、hspdxfixの作者さんに報告して、hsp2.6と3.0の
違いによる不都合だろうと解答頂いてます。
正式なバージョンアップの時に直るんじゃないかと・・・

mref es_stat,64
とかやって

es_stat=0 es_buffer
って、statをクリアしてからes_bufferを使うってやれば、一応は動くけど
本当にエラーが出てても0が帰って来るような気がするから、エラーチェック自体が無意味に・・・
(エラーが出る状況を作りだせなかったので、実際にどうなるかは不明)



ルーイヨッシー

リンク

2006/9/9(Sat) 09:43:18|NO.2333

す、すいません・・・
本来ならばhspdxfixの作者さんのHPで
確認すべきだったのに・・・
失礼しました。



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