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


HSPTV!掲示板


未解決 解決 停止 削除要請

2019
0516
Hdahgimg4を使用したソースのhtml変換について4解決


Hda

リンク

2019/5/16(Thu) 14:47:23|NO.87361

いつもお世話になります。
この度hgimg4で簡単なものを作ってみました。
(キー入力で3Dフィールドをカメラ方向に移動するだけ)
windows上では動作したのですが、HSP3DISH helperを使ってhtml化するとエラーが出ます。
内容を読んだ感じだと、resフォルダにあるファイルが読み込めていない・・・?
解決法をご存知の方がいれば教えていただけると嬉しいです。

以下エラー内容。

INIT 960x640 HSPDish ver3.5
GL version: -1.-1
#create --
#Failed to open file 'res/font.gpb'.
#

#create --
#Failed to load font bundle 'res/font.gpb'.
#

#readAll --
#Failed to load file: res/shaders/sprite.vert
#

#createFromFile --
#Failed to read vertex shader from file 'res/shaders/sprite.vert'.
#

#init2DRender --
#2D shader initalize failed.
#

#readAll --
#Failed to load file: res/shaders/sprite.vert
#

#createFromFile --
#Failed to read vertex shader from file 'res/shaders/sprite.vert'.
#

#init2DRender --
#2D shader initalize failed.
#

#readAll --
#Failed to load file: res/shaders/textured.vert
#

#createFromFile --
#Failed to read vertex shader from file 'res/shaders/textured.vert'.
#

#initialize --
#Failed to create effect for pass. vertexShader = res/shaders/textured.vert, fragmentShader = res/shaders/textured.frag, defines = MODULATE_ALPHA;DIRECTIONAL_LIGHT_COUNT 1
#

#create --
#Failed to create pass for material: vertexShader = res/shaders/textured.vert, fragmentShader = res/shaders/textured.frag, defines = MODULATE_ALPHA;DIRECTIONAL_LIGHT_COUNT 1
#

#Error 3 --> パラメータの値が異常です



この記事に返信する


Hda

リンク

2019/5/17(Fri) 12:31:44|NO.87370

色々試行錯誤しているのですが、一向に解決していません。
今までに試した事は以下の通りです。

・hgimg4のサンプル(test2.hspたtest9.hspなど)をhtml変換
・HSPのバージョンを3.51にバージョンアップ(前のは3.5でした)
・IEやchromeなどブラウザを変えてhtmlを起動(ローカルサーバを立ててテスト)
・DirectX版でテスト

いずれもwindows上ではちゃんと動いています。
ちなみに別ソースですが、hsp3dishでのhtml変換はちゃんとできています。
hgimg4を使用してhtml変換する事はできないのでしょうか?
せめて、現状の仕様で可能か不可能かだけでも教えていただけると助かります・・・。



zakki

リンク

2019/5/17(Fri) 14:03:01|NO.87371

データフォルダにhsp35\sample\hgimg4\resフォルダがないかフォルダ構造が違うんじゃないかとおもいます。
生成されたhtmlの後半にdataファイルに含まれるファイルがあって

new DataRequest(7165712, 7168728, 0, 0).open('GET', '/res/shaders/colored.frag'); ... DataRequest.prototype.requests["/res/shaders/colored.frag"].onload();
みたいなのが無いかパスが違えばそれが原因です。

例えばhspがC:\hsp35にあるとすると、
ソーススクリプトに C:\hsp35\sample\hgimg4\test2.hsp を指定して
データフォルダは C:\hsp35\sample\hgimg4\ を指定します。

もちろんこのままだと使っていないデータすべてがtest2.dataに含まれて無駄なので
実際は新規フォルダにtest2.hspとresフォルダをコピーして使います。

hgimg4使用時はメモリ消費も増えるので、アプリ毎の必要に応じてメモリサイズも増やす必要があるかもしれません。



Hda

リンク

2019/5/17(Fri) 15:45:09|NO.87372

>zakki様

お返事ありがとうございます。
おかげさまでできました!

resフォルダはソースファイルと同じフォルダに入れてあったのですが、どうもそれがいけなかったようですね。
zakki様のおっしゃる通り、htmlにはshadersフォルダの中身がロードされていませんでした。
解決したやり方として、ソースファイルと同じディレクトリに適当なフォルダを用意し、そこへresフォルダを丸ごと入れたらちゃんとロードされました。
ありがとうございます!



Hda

リンク

2019/5/17(Fri) 15:46:33|NO.87373

解決済みにするのを忘れていました。



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