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


HSPTV!掲示板


未解決 解決 停止 削除要請

2016
0720
ZAPHGIMG3と4のメリット・デメリットについて4解決


ZAP

リンク

2016/7/20(Wed) 19:41:58|NO.76270

今回、3Dモデルを使ったゲームを作ろうと思っています。
過去にHGIMG3でX形式のモデル(モーションなし)を読み込んで動く
ソフトは作ったのですが、HGIMG4は使ったことがありません。

最近の更新でWindowsAPIが使えるようになったとのことで、
ジョイパッド対応や音楽再生系の外部DLLもOKとなれば
HGIMG3と同じ感覚で使えるのかもしれないと思うのですが、
あえてHGIMG4に乗り換えるメリットはあるのでしょうか?

なお、ソフトはWindowsのみで動かすことを想定しています。
激しいアクションを要求するのでジョイパッド対応は必須、
BGMはOGG形式で用意する予定です。
モデルデータについては、FBX形式、X形式いずれも作成は可能、
プログラム側からモデルの持つモーションを任意のタイミングで
制御できればベストなのですが・・・

あと、HGIMG4を初めて使う人のためのチュートリアル的な
サイトがあれば教えてください。
(HGIMG3では「いなえの鉛筆」がとても役に立ちました。)

HGIMG4については情報があまり出てこないので、
細かいことでもよいのでご教示いただけると幸いです。



この記事に返信する


法貴優雅

リンク

2016/7/22(Fri) 19:00:04|NO.76305

HGIMG4を使っていますが、現状のHGIMG4は発展途上と思われます。
ZAPさんが、やりたいと言われているモデルのモーション制御もまだ未実装です。

メリットは、物理エンジンとシェーダーが利用できます、Androidで動かせます。
デメリットは、機能の未実装が多く、資料が少ない。

細かい内容はdoclib\hgimg4.txtを読むとよいと思われます。

以上のことから、HGIMG3と同じ感覚で…というのは、少し苦しいかもしれません。



D-Shinomiya

リンク

2016/7/23(Sat) 07:11:40|NO.76310

私自身hgimg4は初心者というか仕様を読むほど使う気が萎える者の一人ですが、
触った感じを書いて行きたいと思います。宜しくお願いいたします。

●ようこそ魔境へ!

早速ですが、hgimg4にgetang命令やその代価となる命令が存在しないという事実を知り、
多くのhgimg3からの移行者は一瞬困惑することになるでしょう。
しかしsetang命令は存在することに気付き、hgimg4は変数を用い自前で全ての角度を
管理すればいいと一旦は落ち着きを取り戻します。
しかし以下のコードを実行することで、
実質的にはhgimg4で「角度」を扱うべきではないと思い知らされることになるのです。

#include "hgimg4.as" gpreset    ;hgimg4リセット setcls CLSMODE_SOLID, 0    ;背景をブラックに設定 setpos GPOBJ_CAMERA, 0,0,5    ;カメラ座標を設定 gpbox box, 1    ;箱を作成 angle=3.14,0.0    ;箱の角度を設定 repeat redraw 0 angle(1)+=0.02    ;箱のY軸を回転 setang box,angle,angle(1) ;箱の角度を確定 gpdraw    ;描画 redraw 1 await 30 loop

●上のサンプルを実行したいんだけど?

一体何のコードかと上記サンプルをスクリプトエディタに貼り付けて実行しようとした入門者は
見慣れないエラーコードを目の当たりにしてため息をつくことなるでしょう。
hgimg4はこれまでのように単にソースコードだけで実行できる代物ではなくなっているのです。
doclib/hgimg4.txt「リソースフォルダについて」欄に書かれていることですが、
hgimg4のサンプルフォルダ(sample/hgimg4/)内に存在するresフォルダを
スクリプトファイルと同じ場所にコピーしておかなければhgimg4用スクリプトは実行できないのです。
上記サンプルを実行するために、とりあえずフォルダを作成し、
サンプルスクリプトを保存、そしてそのスクリプトファイルと同じ場所に
このresフォルダを丸ごとコピーしてから実行しなければなりません。
準備ができたら、早速F5キーを押して実行してみましょう。


●一体何が起こっているんだ?

ようやくサンプルコードが実行できたあなたはサンプルの実行結果に再び困惑します。
コードの意味は理解できるものの、なぜモデルがぷるぷると振動するのか理解に苦しみます。
この角度に関する問題と不自由さはhgimg4で直ちに改善すべき問題でありながら
公式からは何の声明もないことにあなたは更に頭を抱えます。

hgimg4は物理エンジンに対応とうたっています。
サンプルを見ると物理演算によってばらばらと崩れ落ちるブロックをドヤと表示してくれますが、
そのブロックの角度を取得する手段は提供されません。
またブロック以外のものに物理挙動を与えることもできません。
ブロックを、自由な地形に配置することもできません。
実際のところこの機能は本格的に利用することが不可能に近く、
物理ブロックの山を画面に表示させて、「まあ、すてき!」とやること以外に利用価値がないのです。
ベクターの計算命令もバグったまま放置されているし、もう本当になんなのコレ??


●packfileは利用できない

ここまでを読んでいるうちに薄々感づいているかもしれませんが、
フォルダ構成に縛りを受けている現在はモデルやシェーダ等の各種ファイルは
hgimg3のようにpackfileが利用できないことを意味しています。
hgimg4を使用する以上、あなたの作ったテクスチャやモデルデータは全て裸のまま
ユーザーに提供することを受け入れなければなりません。

ちなみに、bcopyを使えばpackfileが使えると反論しようと思ったあなたは甘い。
それは不可能ではありませんが、gpdファイルとセットになっているマテリアルファイルの拡張子は8文字もあり、
パックするファイル名に使えるのはたったの2文字までとなってしまいます。
packfileを使うとすれば、bcopy前のデータの拡張子を短くしたりして、
スパゲティにならないよう自分なりに特殊なコピー処理を組み込む作業が必須となります。


●でもそのうち改善されるでしょ?

一つの事実として、2016年7月現在、hgimg4の最近のバグフィックスは2015年の5月です。
この年1回あるかないかのアップデート速度で改善すべき課題は山積しています。
hgimg3と異なりhgimg4は刻々と変化するスマホ環境の変化に追従しながら
gameplayエンジンの仕様に合わせつつアップデートしていく必要があり、
Windows版の利便性の向上やまして機能追加なんて考えている余裕がないようにさえ見えます。
スマホ仕様 ⇔ gameplay仕様 ⇔ Windows仕様
この3つがお互いにお互いの脚を引っ張り合っている三すくみ状態は
パワフルな3Dゲームを開発する環境とは程遠く、
hgimg4が永遠にかかえる一つの大きな癌と言えるのかもしれません。
おそらく今年も状況は何も改善されないまま放置され、
貴重な時間はHSPコンテストを盛り上げることに使われるのでしょう。

ちなみに、ZAPさんがご所望のモーション関連の機能は現在ありません。
(gpbファイル内のアニメーションの1つが勝手に再生されるだけです。)


●最後に

hgimg4はリリースから4年目となりますが、全く利用者が増えない現状にはそうした背景がある気がします。
チュートリアルの作成すら尻込みしたくなる機能欠落状態に、あなたが未来や希望を見出したのなら、
ぜひこのシステムを使って素晴らしい作品を世に送り出し、我々に道標をもたらしてください。
私からもぜひお願いしたいところです。コンテストの主催者も恐らくそれを願っていることでしょう。

あっ、そうそう。まだhgimg4のメリットの説明がありませんでした。
hgimg4ではシェーダーが搭載されている事が唯一メリットと言えるかもしれません。
ただ、シェーダーの詳しい説明はありませんけどね。表示されるモデルに光沢があって美しいです。
マルチプラットフォームはまだ形式上って感じ。ベータ版で、最近ようやく対応が始まるのか?という状況。
その他機能面や安定性、情報量に至るまで、全面的にhgimg3が4を上回っています。



ZAP

リンク

2016/7/23(Sat) 14:06:21|NO.76312

>法貴優雅さん
>D-Shinomiyaさん

私のもやっとした疑問に答えていただきありがとうございます。
現状がよくわかりました。
スマホでの開発を想定していないので、当面はhgimg3を使っていこうと思います。

確かに、hgimg4はネット上にもあまり資料的なものがないので、
まだまだ発展途上なのかなあと思っていましたが、
予想以上に未完成な感じなのですね。

D-Shinomiyaさんの言われている
スマホ仕様 ⇔ gameplay仕様 ⇔ Windows仕様の三すくみが
hgimg4の利便性の向上を妨げているのであれば、
このまま中途半端なプラグインとして存続するよりは
hgimg4はスマホ開発のための機能に注力して
開発してもらったほうがよいのかもしれませんね。



ZAP

リンク

2016/7/24(Sun) 13:41:41|NO.76322

もう少しいろんな方のご意見をお聞きしたいとも思いますが、
一応解決としておきます。



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