エラーの原因がわかりました。
ボコスカウォーズ風コンバットゲームを
Windows2000のボロPCで実行したらエラーが出た
という話をしたのですが、
原因を探ったところ、
E3DCreateTexture命令を3回呼んでいる箇所があるのですが、
そこでエラーが出ていることがわかりました。
しかも、不思議なことに、1回目のE3DCreateTextureは
成功するのに、2回目からエラーになるんです。
DirectXのバージョンは、ボロPCも今のPCも
「DirectX 9.0c (4.09.0000.0904)」
とあったのでDirectXによるエラーではないみたいです。
ボロPCのグラボの性能を見てみると、
ATI RAGE Mobility P/M AGP 2X メモリの合計 4.0MB
とあったので、どうやらグラボのメモリ不足が原因みたいですね。
ためしに、E3DCreateTextureで読み込んでいる画像を
小さい画像にして試したところエラーがなくなりました。
私のプログラムミスでなくて良かったです。
もう、コンバットゲームは公開開始してしまいましたからね。
例によって、ダウンロード数はぜんぜん伸びませんが。
テクスチャのサイズを工夫すれば避けられるエラーだけれど、
テクスチャのロードでエラーが出るぐらいのグラボだと、
ゲームが正常に動作するとは思えないので、OKとしましょう。