Re: 最新のライブラリでのリンクエラー ( No.1 ) |
- 名前:管理人 日時:2017/08/30 23:52
|
Re: 最新のライブラリでのリンクエラー ( No.2 ) |
- 名前:kaiser 日時:2017/08/31 00:17
試させて頂きました
無事実機での確認が取れました
が、、、、
今度は
ttp://dxlib.o.oo7.jp/temp/DxLibAndroidTest_ARM.exe
にてttp://dxlib.o.oo7.jp/cgi/patiobbs/patio.cgi?mode=view&no=4067
と同様の現象が出ております
※x86は問題なくアニメーションしております
何度もすみません
|
Re: 最新のライブラリでのリンクエラー ( No.3 ) |
- 名前:管理人 日時:2017/08/31 23:54
ビルドは正常にできた用で何よりです
> 今度は
> ttp://dxlib.o.oo7.jp/temp/DxLibAndroidTest_ARM.exe
> にてttp://dxlib.o.oo7.jp/cgi/patiobbs/patio.cgi?mode=view&no=4067
> と同様の現象が出ております
> ※x86は問題なくアニメーションしております
手元の環境では ARM版も正常にアニメーションしました
いくつかご質問させてください m(_ _)m
1.pmx や pmd ファイルの読み込みには空きメモリサイズがかなり必要です
実行された ARMの環境は搭載メモリは潤沢でしょうか?
( DxLibModelViewer.exe で mv1 ファイルに変換したものは搭載メモリが少なくても大丈夫です )
2.Android は Windowsと異なり英字の大文字・小文字が区別されます、
ファイル名は大文字・小文字も含めて問題ないでしょうか?
3.DXライブラリのファイルは確かに最新でしょうか?
最新の libDxLib.a と libDxUseCLib.a の更新日時は 2017/08/30 23:36 となっています
4.pmd, pmx, vmd ファイルの追加は VisualStudio のソリューションエクスプローラで
行いましたでしょうか?( エクスプローラを使って該当するフォルダに直接ファイルを
配置しても認識されないので )
|
Re: 最新のライブラリでのリンクエラー ( No.4 ) |
- 名前:kaiser 日時:2017/09/04 04:55
お世話になっております
環境の問題かもしれませんが
1.に関してはエミュレータにてRAM2G VM Heap128Mを用意しています
2.に関しましてはpmdのファイル名は小文字にしております。
3.に関しましても日付が 2017/08/30 23:36となっております
4.にかんしましてもソリューションエクスプローラにて行いました
環境のせいかもしれませんので一度動作しなかったプロジェクトをお送りいたします
ttp://xfs.jp/vqCfM3
※Includeパスと追加ライブラリのパスは固定になっておりますすみません
環境のせいだとするとちょっと打つ手がなくなりそうです、、
|
Re: 最新のライブラリでのリンクエラー ( No.5 ) |
- 名前:kaiser 日時:2017/09/04 07:28
再度別機種にて検証を行った際機種によって動くものと動かないものが出てきました。
どうやら環境依存のようです、、、
※Galaxy Nexus系で動かないもの多数
まさかの機種依存とは思わなかったです。申し訳ありません
何度もすみませんでした
|
Re: 最新のライブラリでのリンクエラー ( No.6 ) |
- 名前:kaiser 日時:2017/09/04 08:56
ちょっと、調べたところシェーダー系で動かなくなっている模様なのでこちらシェーダーを使わないソフトウェアでのスキンメッシュ系のライブラリを作成してみたいのですが.aファイルの作りかた等サンプルがありますでしょうか?
ヒントだけでもよろしくお願いいたします
|
Re: 最新のライブラリでのリンクエラー ( No.7 ) |
- 名前:管理人 日時:2017/09/05 00:13
> 再度別機種にて検証を行った際機種によって動くものと動かないものが出てきました。
> どうやら環境依存のようです、、、
>
> ※Galaxy Nexus系で動かないもの多数
確かに『あんまり古い機種ではそもそも pmd や pmx の描画は重すぎて使い物にならないだろうから、
○○以下の世代では動かないシェーダーの組み方でも良いかな…』と、対応しているシェーダーの世代に
よっては正常に動作しないようにした記憶が…
エミュレーターでも正常に動作しなかったのでしょうか?
もしそうでしたら、よろしければそのエミュレーターの作成の設定を教えていただけないでしょうか
シェーダーコードを少し変更するだけで動くかどうか調べてみたいと思いますので… m(_ _)m
> ちょっと、調べたところシェーダー系で動かなくなっている模様なのでこちらシェーダーを使わない
> ソフトウェアでのスキンメッシュ系のライブラリを作成してみたいのですが.aファイルの作りかた等サンプルがありますでしょうか?
> ヒントだけでもよろしくお願いいたします
すみません、DXライブラリAndroid版はモデルをソフトウエアで描画する機能はありません
( ソフトウエアでスキンメッシュを描画する処理を組んでいるのは Direct3D 9 用のみです )
|
Re: 最新のライブラリでのリンクエラー ( No.8 ) |
- 名前:kaiser 日時:2017/09/05 02:19
お世話になっております
>エミュレーターでも正常に動作しなかったのでしょうか?
>もしそうでしたら、よろしければそのエミュレーターの作成の設定を教えていただけないでしょうか
こちらVS2007でのデフォルトのAVD_GalaxyNexus_ToolsForApacheCordova.avdを作成すればどうようの検証ができると思われます。
vs2007のandroidインストールのデフォルトのARM系のAVDManagerにて最初にインストールされるエミュレーターになります
Device:GalaxyNexus(4.65”、720x1280)
Taerget:Android4.4.2 API Level 19
CPU armebi-V7a
USE HostGPU→ONでもOFFでも同じ現象
多分GPUスキニングにてGLSLの頂点シェーダボーン変形行列を渡したときにレジスタ上限に引っかかっているような感じかも?(すみません調べきれてないです)
※もしかしたらVTFでもそもそもVTFがエラーになっているかも?
まだ全部しらべていないのでなんとも言えないのですがテクスチャのピクセルフォーマットをちゃんとした形式にすれば行けそうな感じのような気がします
(ちょっとどこでエラーが帰ってきてるのかまだ追えていないので)
頂点テクスチャでスキニングをCPUでやった場合普通に表示されましたので
GLSLでの処理からそもそもフェッチでエラーが帰ってきてる模様なのでそこを別にすればいけそうな感じだと思って.aファイルの作成方法を知りたかったのですが。
>すみません、DXライブラリAndroid版はモデルをソフトウエアで描画する機能はありません
>( ソフトウエアでスキンメッシュを描画する処理を組んでいるのは Direct3D 9 用のみです )
申し訳ありません。言葉が足りなかったようなので
こちらで実装するので普通に.aファイルの作り方さえわかればいいので管理者様の手を煩わせないようにスキンメッシュの実装はこちらで行うためにただ単に.aファイルの作り方(シェーダーのコンパイル含め)
知りたかったためです。
>確かに『あんまり古い機種ではそもそも pmd や pmx の描画は重すぎて使い物にならないだろうから、
>○○以下の世代では動かないシェーダーの組み方でも良いかな…』と、対応しているシェーダーの世代に
>よっては正常に動作しないようにした記憶が…
たしかに3,4年前のスマホとかちょっと遅いかもしれませんね
ただ、ターン制とかシーンだけならスキンメッシュでのPMD,PMX程度のモデルであれば30〜15FPSはでるので特に問題はなさ気な感じです(まあ、アクションだときついですが(汗))
|
Re: 最新のライブラリでのリンクエラー ( No.9 ) |
- 名前:kaiser 日時:2017/09/05 02:26
すみませんもうちょっとDXlibのソース調べてみます。
ちょっと時間かかるかもしれませんがもう少し詳しくエラーの原因を調べてみます
|
Re: 最新のライブラリでのリンクエラー ( No.10 ) |
- 名前:kaiser 日時:2017/09/05 02:28
すみません、vs2007ではなく2017です(汗
|
Re: 最新のライブラリでのリンクエラー ( No.11 ) |
- 名前:管理人 日時:2017/09/06 00:02
> こちらVS2007でのデフォルトのAVD_GalaxyNexus_ToolsForApacheCordova.avdを作成すればどうようの検証ができると思われます。
> vs2007のandroidインストールのデフォルトのARM系のAVDManagerにて最初にインストールされるエミュレーターになります
> Device:GalaxyNexus(4.65”、720x1280)
> Taerget:Android4.4.2 API Level 19
> CPU armebi-V7a
> USE HostGPU→ONでもOFFでも同じ現象
私の環境では
Device:GalaxyNexus(4.65”、720x1280)
Taerget:Android4.4.2 API Level 19
CPU armebi-V7a
USE HostGPU ON
のエミュレーターで pmx ファイルの読み込み&描画を正常に行うことができました
( ARM CPU のエミュレーターは死ぬほど遅いので、読み込みに1分くらい掛かりましたが )
もしかして kaiserさんの環境でも1分くらい待っていれば正常に読み込まれるということはないでしょうか?
> 申し訳ありません。言葉が足りなかったようなので
> こちらで実装するので普通に.aファイルの作り方さえわかればいいので管理者様の手を煩わせないようにスキンメッシュの実装はこちらで行うためにただ単に.aファイルの作り方(シェーダーのコンパイル含め)
> 知りたかったためです。
libDxLib.a を作るには Visual Studio 2017 の新規プロジェクトで『スタティックライブラリ(Android)』を作成して、
DXライブラリのダウンロードページからダウンロードできるDXライブラリのソースのトップフォルダの
DxUseCLib???.??? となっているファイル以外の cpp, h ファイルと、同じく Android フォルダ内の DxUseCLib???.??? と
なっているファイル以外をプロジェクトに追加します( DxUseCLib???.??? のファイルを追加してしまうとビルドに zlib や
libjpeg などのファイルも必要になってしまいます )
それでビルドしていただいて作成される a ファイルは libDxLib.a となります
シェーダーのコンパイルは整理されていないので現状ビルド環境をお渡しできる状態になっていません、すみません m(_ _;m
あと、今更気付いたのですが PMD, PMX ファイルのトゥーンシェーディングの表現にはフラグメントシェーダー
( Direct3D で言うところのピクセルシェーダー )の機能が必須なので、シェーダーの機能を使用せずにソフトウエアで PMD, PMX の
描画を行うことは残念ながらできないと思います…
( 陰無し、ライティング無しのノッペリとしたレンダリングならできますが… )
|