[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 09/03 15:07 / Filesize : 299 KB / Number-of Response : 951
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【3Dエンジン】Irrlicht初心者質問スレ【高速描画】



1 名前:名前は開発中のものです。 mailto:sage [2006/10/05(木) 06:50:19 ID:UN/zUzoQ]
zlibライセンスでクロスプラットホームなゲームライブラリ、Irrlichtのスレです。

※回答する人も、質問する人も必ず読んでください

これらに当てはまる人のための質問スレです。
1.C/C++は多少理解している。
2.最近Irrlichtを始めたばかり
3.SDKを見ても、Googleで検索しても、エキサイト翻訳でもいまいち理解できない人

【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
 「ググれ」「英語読め」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。

【 質問する人 】
・ どんな事で躓いているのか明確にする。
・ 長くならないなら躓いている部分のコードを晒してみてください。
・ 解決した場合、お礼を言うのは当然ですが、何をどうしたら解決したかを明確に書くこと。

前スレ
pc8.2ch.net/test/read.cgi/tech/1104179696/

728 名前:名前は開発中のものです。 mailto:sage [2008/12/24(水) 14:38:01 ID:znVSQgGD]
>>712
俺もここ
ttp://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=6389
見て、DShowのレンダリングしたサーフェイスをテクスチャに
コピーする、みないなん作ったことあるけど、
普通に作ると画面のFPSがムービーのFPSになる…。

DShowがレンダリングしたサーフェイス→テクスチャにコピー を
スレッド上でやってみたら早くなった。
DXの場合は、コピー中にDrawPrimitive来ても平気だが、
OGLの場合は落ちる。
あと、DXでも垂直同期線は見える。

もう俺のアプリはDXのみ対応、みたいなことになってるから、
これでいこうかと。

>>720
ページ翻訳は無理だが、FreeTranslatorなるものを俺は使ってる
ttp://www.vector.co.jp/soft/winnt/edu/se454073.html
ってそいう話じゃないか。スマソ

>>727
俺も最初それが嫌で、EMT_TRANSPARENT_ALPHA_AND_VERTEX_CHANNEL
とか自分で作ってみたけれど、改変箇所が多くなって面どくさくなった。
今はシェーダ書くことでおちついてる…。

729 名前:名前は開発中のものです。 mailto:sage [2008/12/24(水) 14:42:24 ID:znVSQgGD]
ところで、SVN見てるんだが、branches\ogl-es ってフォルダあったのな。
これでiPhoneアプリ作れるんだろうか…。

ちょっと、フォーラムとドキュメントにいってきま ノシ

730 名前: ◆YATA/oetrw mailto:sage [2008/12/24(水) 16:36:06 ID:rLipAkzv]
>>710
なかなかよさげなのでサイトかフォーラムで公開されてはいかがでしょ?

>>725
その方法もIrrTestxxx.zipで試してみたことがあります。
利点:DLLの修正が不要
欠点:ModalDialogが機能しないため、その部分も含めて実装しなければいけない
GUIManagerに登録すればいいのかとも思うのですが、まだ試したことがないです。

>>727
いじった成果をsf.netのパッチスレへぜひ!
待っているだけでは優先順位を落とされてしまうみたい。

>>729
まだ実験中らしいけど、動くことは動くらしいです。
今、クリスマスシーズンで、ぱったりSVNが沈黙してるのが悲しい。

731 名前:名前は開発中のものです。 mailto:sage [2008/12/25(木) 20:22:23 ID:qT+jHo43]
Irrlicht(メガデモ?)コンペ開催中、締め切りは2009/1/12
ttp://irrlicht.sourceforge.net/phpBB2/viewtopic.php?p=180414

賞金は些細なものだけど楽しそう

732 名前:名前は開発中のものです。 mailto:sage [2008/12/25(木) 23:11:09 ID:TqCl1qUQ]
ttp://uproda.2ch-library.com/src/lib083958.zip.shtml
シークできるようになりました。無限ループします。
できればmain.cppから手動?ではなく自動でやらせたいんですが。
>>728
ttp://www.shader.jp/xoops/html/masafumi/directx9/DShow/dshow001.htm
私はこれを元に作りました。というか一部を書き換えて作りました。
CBaseVideoRendererの一部メソッドをオーバーライドした
クラスを作りAddFilterでレンダラーフィルタとして挿入する方法です。

733 名前:710 mailto:sage [2008/12/27(土) 22:24:08 ID:VFZuSRAM]
レス代理してもらったら名前入れるの忘れられてしまったみたいですが
>>732の書き込みは私のです。

GLでも正常に動くようになるように他のスレで訊いてきます。

>>730
>なかなかよさげなのでサイトかフォーラムで公開されてはいかがでしょ?
GLで動くようになったらそうしようかと思います。

734 名前:名前は開発中のものです。 [2009/01/06(火) 23:36:07 ID:hXPh/BNb]
age

735 名前:710 [2009/01/09(金) 21:57:21 ID:+Oa9zZ2Y]
一応動くことは動くようになりましたが、D3Dより遅いです・・

736 名前:名前は開発中のものです。 [2009/01/15(木) 19:35:56 ID:RJA+UFMv]
1.5になって2倍くらい速くなってワロタ



737 名前:710 mailto:sage [2009/01/15(木) 22:33:49 ID:knBmYho8]
一応GLでも動くようになりました。しかし遅いです・・・

GLのAPIを直接呼び出して高速化するためにムービー読み込み機能を
Irrlichtに組み込みました。
そうしてレンダラーがOpenGLの場合のみ
glTexSubImage2Dでムービーの内容をコピーするようにしたんですが
何故か画像が上下反転する上、あまり速くないです。
(OpenGLのテクスチャはDirect3Dと違って
上下が反対なはずでは?)
メッシュのUVを反転するのも面倒ですし・・。

仕方ないので一旦CImageに反転した画像を入れて
それをglTexSubImage2Dで書き込んでいます。

uproda.2ch-library.com/src/lib091786.zip.shtml
・クラスの名称をVideo→Movieに変更
・GUIで再生/一時停止、シークが出来るようにした
・シーンクラスみたいなのを作りたかった
etc

738 名前:名前は開発中のものです。 mailto:sage [2009/01/16(金) 00:44:27 ID:iK3Wokey]
>>7.37

すっごく今更ではあるんだが、
いっそGL対応するんなら、ffmpeg連動するのはどうかと言ってみるテスツ
いや、大変なのはわかってるけど、
そうするとLinuxやMacOSでも使えて、OpenGL対応が生きるなあと・・・
好き勝手言ってすまん

739 名前:名前は開発中のものです。 mailto:sage [2009/01/17(土) 17:48:32 ID:yGPU7swR]
Visual C++ 2008EEでデバッグ開始コマンドからビルドして実行するとうまくウィンドウが
立ち上がりゲームが動くのに、その後、出力された実行ファイルから起動しようとすると
「問題が発生したため、1stIrrlicht.exe を終了します。 ご不便をおかけして申し訳ありません。」
って出て強制終了されるんですけど、どうしてですか

740 名前:名前は開発中のものです。 mailto:sage [2009/01/17(土) 18:04:03 ID:yGPU7swR]
解決しますた

741 名前:名前は開発中のものです。 mailto:sage [2009/01/17(土) 18:27:24 ID:JxxGO0sa]
DLLってみんな何処に置いてる?

742 名前:名前は開発中のものです。 mailto:sage [2009/01/17(土) 20:51:34 ID:2PJ4/yoK]
膝の上

743 名前:名前は開発中のものです。 mailto:sage [2009/01/18(日) 01:34:46 ID:dulsH/UM]
>>741
開発機ではIrrlichtのbinディレクトリに環境変数でPATH切ってる

744 名前:名前は開発中のものです。 mailto:sage [2009/01/18(日) 04:24:15 ID:SNlaeLd5]
たとえば、1面から2面に以降するときのシーンのリセットでどうやるの?
最初から1,2面のリソース全部読んでおいてノードだけ消すの?
それとも、シーンを破棄・生成しなおすの?

後者だとエラー起きるんだけど・・・

745 名前:710 mailto:sage [2009/01/18(日) 22:23:37 ID:w6uQu1u7]
なぜかGLだとポスターフレームが出なかったり
一時停止中にシークすると正しい場所の画像が出なかったりします。
・・まだGLの対応は不完全でした。

何故なんでしょう?CImageに反転した画像を入れて
glTexSubImage2Dすると
テクスチャに直接書き込めるDirect3DやBurning'sVideo
より遅くなるのが、何か関係しているのでしょうか。

>>738
確かに対応しておきたいところです。
でもffmpegの他にも乱立していてどれにすべきか迷います。

746 名前:710 [2009/01/18(日) 22:55:13 ID:w6uQu1u7]
ttp://uproda.2ch-library.com/src/lib093103.zip.shtml
PBOに対応しようとしましたが失敗しました・・
FPSもあがると思ったのに。
テクスチャが3/4ぐらいしか使われていません。
ttp://wiki.livedoor.jp/mikk_ni3_92/d/PixelBufferObject

Driver->extGlBufferData(GL_PIXEL_UNPACK_BUFFER_ARB, 0,
NULL, GL_DYNAMIC_DRAW_ARB);

glMapBufferARBを呼ぶ前にNULLポインタでglBufferDataを呼べ
と上のURLに書いてありますがやったらアプリケーションが
落ちました。



747 名前:名前は開発中のものです。 mailto:sage [2009/01/19(月) 00:14:47 ID:/hAZzN2J]
Irrlicht使ってるけどML版作ってるひとありがとう。すごく助かってる。

748 名前:名前は開発中のものです。 mailto:sage [2009/01/19(月) 20:02:42 ID:/hAZzN2J]
irrlichtの静的リンクってどうやるのでしょうか?

749 名前:名前は開発中のものです。 mailto:sage [2009/01/19(月) 20:44:45 ID:y3tA2i/i]
>>748
もしVCを使っているなら、source\Irrlichtのプロジェクトファイル(ex. Irrlicht9.0.vcproj)を開いてごらん
1.5からはRelease、Debugと並んでStatic libが選べる
Static libを選んでリコンパイルすれば、静的ライブラリの出来上がり
以後はそれをリンクすればおk

750 名前:名前は開発中のものです。 mailto:sage [2009/01/19(月) 23:29:31 ID:/hAZzN2J]
あーなるほど!理解できました!ありがとうございます!

751 名前:710 mailto:sage [2009/01/20(火) 22:03:32 ID:NRdPFAc+]
//if (Driver->Version > 101)
// PixelType=GL_UNSIGNED_INT_8_8_8_8_REV;
何でか分かりませんが、COpenGLTexture.cppの
この部分をコメントアウトすると速くなりました!
(ECOLOR_FORMATがECF_A8R8G8B8のとき、OpenGLのPixelTypeを
GL_UNSIGNED_BYTEにする)
720x480の動画でもビデオのFPSが30になるようになりました。

uproda.2ch-library.com/src/lib093854.zip.shtml

752 名前:710 [2009/01/20(火) 23:10:21 ID:NRdPFAc+]
まだ
・ファイルによっては正常にシークできない(違うところにシークする)
・GLだとポスターフレームが表示されない
・GLだと一時停止時にシークしたときに画像が更新されないか
違うところの画像が表示される

等の不具合を残しています。まだまだ問題は山積みです・・。

動画をテクスチャにレンダリングする機能ってどんな使い道が
考えられるでしょうか?

753 名前:名前は開発中のものです。 mailto:sage [2009/01/20(火) 23:15:33 ID:sLt/OsE0]
使い道も分からずに一か月も何やってんのお前頭おかしいんじゃないの?と思ったが、
とりあえず3Dモデリングした各種モニタ類の表示に使える。TVとか電光掲示板とか。

754 名前:名前は開発中のものです。 mailto:sage [2009/01/21(水) 08:44:54 ID:b4uHzUkn]
なにこれ
ファイル選択画面でCPU使用率100%とかふざけてんの?

755 名前:名前は開発中のものです。 mailto:sage [2009/01/21(水) 08:48:45 ID:d16xRujn]
>>754
たぶんおまいさんのメインループの書き方に問題がある。
チュートリアルのメインループとかはそういうこと考慮していないから、
メインループにSleep(0)とかいれてみ。

756 名前:名前は開発中のものです。 mailto:sage [2009/01/22(木) 00:38:43 ID:gWDPAEFx]
1.5のlwoの読み込みでメッシュ表示を試してみたが、どうもポリゴンの裏表が逆になっているようなのだが気のせい?

textureファイル名を絶対パスで指定していると死ぬ orz
モデル側を直せばいいのかもしれないが、何か良い方法はないものか。




757 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 00:10:05 ID:8pul47RA]
Sleep(0)だとCPU使用率100%のままだろ
1以上じゃないと

758 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 01:00:24 ID:7x2MqZ+J]
あの、Irrlichtのノードクラスなどのremove,drop,gradの違いってなんでしょうか?
動作させてもエラー起きてよくわかりません。

あとメッシュはノードが利用中は削除できない?

しかし、irrlichtは使いやすい。便利だ。ありがたや、

759 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 01:32:01 ID:7x2MqZ+J]
ああ、自己解決しました。

node->grab();
node->drop();

と、呼べばエラー起きなかった。すいませんでした。

760 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 20:52:10 ID:7x2MqZ+J]
chris.j.mash.googlepages.com/irrphysx
このirrphysx使ってる人います?

761 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 22:32:33 ID:7x2MqZ+J]
ちなみに機能は

・DirectX9/OpenGL切り替え
・HGIMG3程度の移動・回転・描画
・リソースの共有自動管理
 ・HGIMG3のリソース共有をさらに進歩させて自動で同じものを使う
・自動で地面・キャラ・オブジェクトのコリジョン処理
 ・コリジョンはOBB〜円など
・Bullet物理エンジンによる物理処理
・xfileによるアニメーション
 ・影
 ・フォグ
・HSP用にDLL化

が、今できてるとこ。
まだやりたいことあるから次のHSPのバージョン出るころ狙ってる。

762 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 22:33:35 ID:7x2MqZ+J]
誤爆・・・orz

763 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 22:57:32 ID:7x2MqZ+J]
新しいirrの情報サイト発見、載せとく
ttp://柊つかさ.jp/wiki/index.php?title=Irrlicht


764 名前:名前は開発中のものです。 [2009/01/25(日) 22:25:33 ID:jW6fSNqp]
処理の遅れにかかわらず
1コマずつ進めるのってどうするんですか?
device->getTimer()->stop();
int frameCounter = 0;
while(device->run)
{
...
device->getTimer()->setTime(frameCounter * 16.666666f);
frameCounter++;
...
}
みたいにしてみましたが、stopしてしまったせいか
シーンノードにRotationAnimator設定しているのに動きません。
どうすればいいですか?

765 名前:名前は開発中のものです。 mailto:sage [2009/01/26(月) 00:29:31 ID:1iFFYXhs]
realtime()ではじまりと終わり取得して、差分だけSleepじゃだめ?
(コマの意味が分からないから的外れな回答かもしれないけど)

int _fps = 60;

// タイム開始
timeBegin = device->getTimer()->getRealTime();

(処理)

// タイム終了
timeEnd = device->getTimer()->getRealTime();

// タイム差
timeCount = timeEnd-timeBegin;
timeSec = (1000/_fps )-timeCount;

// もし待機時間がプラスなら
// 待機
if ( timeSec > 0 ) {
Sleep( timeSec );
}

とかで_fpsで指定したフレーム/秒を維持させてカウントじゃだめ?

766 名前:名前は開発中のものです。 mailto:sage [2009/01/26(月) 02:52:25 ID:6Wqz3VFh]
>>765
その方法だと、60フレーム固定にはならないね。





767 名前:名前は開発中のものです。 mailto:sage [2009/01/26(月) 06:34:46 ID:1iFFYXhs]
まじで?この方法でgetFPS()で60って出てたからいいのかと思ってた。
あとどうやるんだろ。

768 名前:名前は開発中のものです。 mailto:sage [2009/01/26(月) 08:44:42 ID:6yTEP1R4]
ん〜、というかね、sleepってそういう使い方しない方がいいね。
どれだけ止まるかわからないコードを組み込むとデッドロックになる可能性がある。
winの場合特に。

769 名前:名前は開発中のものです。 mailto:sage [2009/01/26(月) 18:50:51 ID:1iFFYXhs]
つまり、待機幅を16ms以上いかないようにするとかってこと?
プログラムは難しいね。

770 名前:名前は開発中のものです。 mailto:sage [2009/01/26(月) 21:51:56 ID:1iFFYXhs]
自分の環境だけかもしれないけど。
DirectionalLightは座標無効・光源ベクトル有効のはずが座標必須・ベクトル無効になってる。
逆にPointLightは座標必須なのに座標動かない。

今のところ、カメラの視線上(radius分)に平行光源を座標移動させると通常のDirectionaLight動作になってる。
光源周りの実装が不安定?



771 名前:名前は開発中のものです。 mailto:sage [2009/01/27(火) 02:22:16 ID:xmRAMtaz]
>>769
いや16msで終わらないときの動作がバラバラになる。
よほど古い環境を使ってなければ対処は不要かもしれないけれど
古い環境でもそれなりに遊べるようにするにはキー入力を含めた
内部的な処理と描画は分けて考えたほうがいいと思う


772 名前:名前は開発中のものです。 mailto:sage [2009/01/27(火) 19:19:29 ID:xhf1lpaD]
そうか、単に待機だけじゃなくて描画コストとかも視野にいれなくちゃだめか。
今FPSについて調べたら描画飛ばしてた、ありがとう。


773 名前:764 mailto:sage [2009/01/27(火) 21:58:40 ID:kWYCqtij]
タイマーを手動で進めたいだけなんです・・・
(連番BMP出力が出来るように)
setTimerの後にtickを呼んだりしてみましたが、やっぱりシーンノードのアニメータが
動きません。

774 名前:名前は開発中のものです。 mailto:sage [2009/01/27(火) 23:41:01 ID:xhf1lpaD]
dispatchとか送ったりじゃだめなの?

775 名前:名前は開発中のものです。 mailto:sage [2009/01/28(水) 00:07:10 ID:JeeNdE6V]
OnAnimate と os::TImer 周りをちょろっと見てみたが、
とりあえず stopTimer() しておけば、getTimer() 時には
setTimer() した値がそのまま流れるから、>>764
アニメーションできそうだけどなあー(1.5 で確認した限り)。

とりあえず、device 作ったらすぐに stopTimer() して、
setTimer(0) したあとに、各種 node を add するようにしてみると
どうだろうか?

776 名前:764 mailto:sage [2009/01/29(木) 21:43:37 ID:3EGnGNZl]
あれ、いろいろやっていたらちゃんと動きました・・・
何でさっき動かなかったんだろ?
stopとsetTimeだけでOKでした。



777 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 01:28:09 ID:KbId8Vyo]
irrEditのFogって何処で指定するんですか?
デフォルトで色は白みたいですが。

778 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 05:50:39 ID:aYp0krC2]
>>777
君はラッキーだ!とてもラッキーだ!
それはまるで青い鳥に逢えた兄弟のように!
さて質問だが知らない

779 名前:名前は開発中のものです。 mailto:sage [2009/02/06(金) 01:32:14 ID:9Imz+9bB]
シェーダーを使ってみたい
でも、分からないいいサイトとかサンプルないでしょうか?

780 名前:名前は開発中のものです。 mailto:sage [2009/02/07(土) 00:59:24 ID:XPy8bQ1y]
irrlicht1ヶ月目でやっと特殊な地面・壁判定できた。
ちょっと拡張したことやろうとすると日本語の情報まったく無いねー。
(チュートリアルの翻訳とかばっかり?)

本家のAPIリファレンスでクラス追って翻訳繰り返すしかないか。
調べたことサイト載せたいけど維持できる自信ねー。長い戦いだぜ。

781 名前:名前は開発中のものです。 mailto:sage [2009/02/07(土) 09:56:25 ID:ScHW0xDd]
ぜひ、そのノウハウをブログに書いてくれ

782 名前:名前は開発中のものです。 mailto:sage [2009/02/07(土) 13:28:50 ID:lKasty/T]
がらんどう状態の翻訳wikiがテンプレに載ってるんだからそっちに書いてくれよ

783 名前:名前は開発中のものです。 mailto:sage [2009/02/07(土) 15:43:46 ID:XPy8bQ1y]
気が向いたら書いてみる

784 名前:名前は開発中のものです。 mailto:sage [2009/02/07(土) 23:24:51 ID:XPy8bQ1y]
質問

www.irrlicht3d.org/wiki/index.php?n=Main.HowToUseTheNewAnimationSystem
wikiのTransitionsをモーション補間だと思ってるんだけど合ってる?

翻訳してコーディング試したけどブレンドしないね。
既存のモーションの先頭に追加の場合 = モーションが動作してない

// モーション関係
node->setTransitionTime( 15 );
node->animateJoints();
node->setAnimationSpeed( 15 );
 ・・・ 以後、ループなどの設定で描画

この関数は呼び出すタイミングとか必要?

785 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 19:54:49 ID:Y2SoBYRA]
あ、分かった ありがとう

786 名前:名前は開発中のものです。 mailto:sage [2009/02/10(火) 12:30:16 ID:/MJN1cDT]
解決法書けよ



787 名前:名前は開発中のものです。 mailto:sage [2009/02/12(木) 05:41:09 ID:1p75ZWmt]
785じゃないけど、こうかな?

モデル読み込んでるとこで、

model->setAnimationSpeed(30);
model->setFrameLoop(0, 60);
node->setTransitionTime( 15 );

ループで、

while(device->run())
{
model->animateJoints();

// biginScene〜endScene
}

ソフトウェアでボーン処理(1.4.2)してるから結構重いと思われ。
モレは、通常は
setJointMode( EJUOR_NONE );
で、ブレンディングが必要なタイミングだけ、
setJointMode( EJUOR_CONTROL );
して、ループで
animateJoints();
するようにして、なんとか凌いでる…。

ところで、まだ1.4.2なんだが、1.5は安定してる?
changes.txt見ると、魅力的な機能やらfixやらがあるんだが、
1.4.1→1.4.2でxの読み込みが超バグって泣かされたんで、躊躇してる…。

788 名前:名前は開発中のものです。 mailto:sage [2009/02/12(木) 19:54:21 ID:z0e2gKlB]
1.5普通に使えてるよ。オヌヌメ。

789 名前:名前は開発中のものです。 mailto:sage [2009/02/12(木) 20:30:40 ID:1p75ZWmt]
>>788
おk、煎ってくる

790 名前:名前は開発中のものです。 mailto:sage [2009/02/13(金) 09:37:35 ID:V2MX8176]
セレクター部分が良く分からないんだけど

IAnimatedMesh で読み込んで IAnimatedMeshSceneNode で描画ノード作る。
判定用に ISceneNode で同じメッシュデータから ITriangleSelector を作る。
そうすると ISceneNode と IAnimatedMeshSceneNode の2つ描画されちゃうよね。

こーゆー場合はどうすればいいの?
理想は1つのNodeで両方管理したい。

791 名前:名前は開発中のものです。 mailto:sage [2009/02/14(土) 00:03:47 ID:xrAfzk3Z]
>>790
IAnimetedMeshの親はIMesh
IAnimatedMeshSceneNode の親はISecenNode

irrlicht.sourceforge.net/docu/classirr_1_1scene_1_1_i_animated_mesh.html
irrlicht.sourceforge.net/docu/classirr_1_1scene_1_1_i_scene_node.html

irrlicht.sourceforge.net/docu/classirr_1_1scene_1_1_i_scene_manager.html#266625379b1558e9be1dc062ea4e71f7
を使えば 上記2つから作れるんじゃないかな?
もう少し詳しいひと補間よろ

792 名前:名前は開発中のものです。 [2009/02/14(土) 01:33:42 ID:GNk4XXfi]
IrrlichtMLの中の人も見ているらしいので、質問させてください。

IrrlichtML1.5のビルドで、「Release - Fast FPU」の時だけ、

1>------ ビルド開始: プロジェクト: Irrlicht, 構成: Release - Fast FPU Win32 ------
1>リンクしています...
1> ライブラリ ..\..\lib\Win32-visualstudio\Irrlicht.lib とオブジェクト ..\..\lib\Win32-visualstudio\Irrlicht.exp を作成中
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_Done_Face@4" は未解決です。
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_Init_FreeType@4" は未解決です。
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_Load_Glyph@12" は未解決です。
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_Done_FreeType@4" は未解決です。
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_New_Face@16" は未解決です。
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_Get_Char_Index@8" は未解決です。
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_Render_Glyph@8" は未解決です。
1>CGUITTFont.obj : error LNK2001: 外部シンボル "@FT_Set_Pixel_Sizes@12" は未解決です。
1>..\..\bin\Win32-visualstudio\Irrlicht.dll : fatal error LNK1120: 外部参照 8 が未解決です。

というリンクエラーが出ます。
他の構成だとエラーおきずにちゃんとlib/dllが作られます。
FreeTypeのビルドで何か特別な設定とかいるのでしょうか?

ビルド環境は、

VS2008SP1
DirectX November 2008
Vista(32bit)

です。

793 名前:名前は開発中のものです。 mailto:sage [2009/02/14(土) 02:34:45 ID:GXRpJZjr]
787
1.4.2→1.5
う〜ん。結構変わってるね。
Mayaスタイルのカメラの初期位置指定ができなくなった
カメラの移動速度単位が変わった
string型に直接イコール演算子でs32とかf32とかを代入できなくなった
setRotationは、現在からの相対角度ではなくて絶対角度を入れる仕様になった

bool HardwareSkinning;
の実装が待ち遠しいぜ

794 名前: ◆YATA/oetrw mailto:sage [2009/02/14(土) 17:22:54 ID:doIyOwPB]
>>792
エラーの原因は「Release - Fast FPU」の呼び出し規約が__cdeclから__fastcallに変更されているからです。
スタティックライブラリだと問題ないのが不思議。

対策は2つ。
1つ目はIrrlicht側の呼び出し規約だけ__cdeclに戻す方法。
2つ目はFreetypeの呼び出し規約を__fastcallに変更する方法。

後者のほうが速度的には最適だと思われるためファイル一式にまとめてみました。
動作確認をしていないので、動くかどうか報告お願いします。
ttp://etwas.wolfish.org/files/IrrlichtML-1.5-FastFPUModTEST.zip


795 名前:名前は開発中のものです。 mailto:sage [2009/02/15(日) 22:12:45 ID:lvPVKAdJ]
>>794
なるほど……呼び出し規約とは気付きませんでした。

ビルドは通り、サンプルのIMETestの動作は確認しました。
Irrlichtは、ごく最近サンプルを読みながら勉強し始めた所なので
それ以上の動作確認はできていません。

対応ありがとうございます。

796 名前:名前は開発中のものです。 mailto:sage [2009/02/16(月) 12:33:55 ID:e7/u8sva]
久しぶりに有意義な書き込みが増えたね



797 名前:名前は開発中のものです。 mailto:sage [2009/02/16(月) 22:38:12 ID:j0MqxWkl]
文字描画はなんとかしてくんないか?
それさえありゃ、使い物になったのに

798 名前:名前は開発中のものです。 mailto:sage [2009/02/16(月) 23:46:47 ID:rBU4Xntr]
MLつかった?あっちは文字つかえなかったけ?

799 名前:名前は開発中のものです。 mailto:sage [2009/02/17(火) 00:13:02 ID:RDK28y0e]
>>791
出来ました!ありがとうございます!
普通に

ITriangleSelector Selector = this->Core->Scene->createTriangleSelector( Mesh, Node );
Node->setTriangleSelector( Selector );
Selector->drop();

で出来ました!
OBBとか以前レスあったようなのですが、使いたいのにソースDLできません><
どなたか分かる方いませんか

800 名前:名前は開発中のものです。 mailto:sage [2009/02/20(金) 20:30:27 ID:3qadtHxy]
irrPhysxの作者に1.5対応してくれない?ってメール送ったら対応してくれた
一応報告

801 名前:名前は開発中のものです。 mailto:sage [2009/02/24(火) 23:32:26 ID:0RewKqWh]
SDLからキー入力が奪えない・・・
ジョイスティックは取得できてるからレシーバー継承して書くしかないのだろうか・・・
なんかスマートじゃない実装で欝だわー

802 名前:名前は開発中のものです。 mailto:sage [2009/02/25(水) 18:00:38 ID:cuEKcEeQ]
併用する時点でスマートじゃない気がするが

803 名前:名前は開発中のものです。 mailto:sage [2009/02/25(水) 18:11:24 ID:MKsiDZl8]
どうすればいいぬかーーーーーーづけ!!

804 名前:名前は開発中のものです。 mailto:sage [2009/02/28(土) 00:15:08 ID:PWBt4IjE]
おま!irrlichtにもジョイスティックのイベントあるじゃないか!
なぜ教えてくれなかった!

> event.JoystickEvent

しかし、イベントが50ms毎とかなのか検出にムラがあるな・・・

805 名前:名前は開発中のものです。 mailto:sage [2009/02/28(土) 03:49:36 ID:PWBt4IjE]
なんとかirrlichtだけでキーボードのpress,down,up,releaseの4つ取得と
ジョイスティック使えるようにできた・・・ながいなー

806 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 13:12:49 ID:ISZp42BO]
ビルボードのUVの変え方貼り逃げ

vector2df UVCount, UVSize, UVScale, UVFrame;

// UVの縦横のコマ個数を保存
UVCount = vector2df( 4, 4 );
//UVの縦横の現在のコマを保存
UVFrame = vector2df( 0, 0 );

// 1つあたりのサイズ取得
UVSize.X = Texture->getOriginalSize().Width/UVCount.X;
UVSize.Y = Texture->getOriginalSize().Height/UVCount.Y;
// スケール比
UVScale.X = 1.0f/UVCount.X;
UVScale.Y = 1.0f/UVCount.Y;
// リソースサイズ取得
f32 sizeW = Texture->getOriginalSize().Width;
f32 sizeH = Texture->getOriginalSize().Height;
//
matrix4 mat;
// UV変更
mat = Node->getMaterial( 0 ).getTextureMatrix( 0 ).buildTextureTransform( 0.0f, vector2df( 0.0f ), vector2df( UVSize.X*UVFrame.X, UVSize.Y*UVFrame.Y ), vector2df( UVScale.X, UVScale.Y ) );
// マテリアル再設定
Node->getMaterial( 0 ).setTextureMatrix( 0, mat );



807 名前:名前は開発中のものです。 mailto:sage [2009/03/14(土) 14:43:49 ID:MYdApQq5]
ジョイスティックイベントってずいぶん簡素な感じだけど
イベント起こるたびに使ってるキーの状態取るように自前で書いてねってこと?

808 名前:名前は開発中のものです。 mailto:sage [2009/03/15(日) 10:05:04 ID:acZCrlw8]
Rockdebone2で作ったXファイル、読めはすれども動かん……。
他人様がBlenderで作ったらしい奴はちゃんと動くんだが。

809 名前:名前は開発中のものです。 mailto:sage [2009/03/15(日) 21:31:22 ID:I1rvJPrN]
イルリヒトレッスンに正常に読めるように直すやり方が書いてあるけど

810 名前:名前は開発中のものです。 mailto:sage [2009/03/18(水) 12:41:59 ID:O/5piR/c]
>>809
情報thx。

Meshviewerで再保存したら普通に読めた。

811 名前:名前は開発中のものです。 mailto:sage [2009/03/22(日) 23:27:46 ID:CBvGJds+]
頂点数20,000ぐらいのモーション付きxファイルを動かそうとしているのですが、処理が重くて詰まってます。

irrlicht → ver 1.3

exampleの01.HelloWorld → 40fps前後
上記を自前のxファイルに差し替え → 1〜2fps

・そもそもそんな頂点数は無謀?
・PCスペックをどうにかしないと厳しい?


812 名前:名前は開発中のものです。 mailto:sage [2009/03/23(月) 21:43:43 ID:XcDakVO9]
>irrlicht → ver 1.3
なぜ最新版を使わない!(現在1.5
あと01.HelloWorldはレンダラーがソフトウェアになっていたと思うけど
EDT_DIRECT3D9かEDT_OPENGLにした方が・・

・そもそもそんな頂点数は無謀?
そんな事無い。2万ぐらい普通。・・多分。
・PCスペックをどうにかしないと厳しい?
スペック見ないとわかんない

813 名前:名前は開発中のものです。 [2009/03/23(月) 21:47:29 ID:XcDakVO9]
ageとく

814 名前:名前は開発中のものです。 mailto:sage [2009/03/24(火) 00:00:53 ID:EA/4/CJa]
EDT_DIRECT3D9にしてみたところ、30fpsぐらいになりました。

これで行けそうな気がしたので現段階では十分です。
頂点数による比較やバージョンによる比較は別途やってみます。
(1.5にすると早くなるのでしょうか)

ありがとうございました。


815 名前:名前は開発中のものです。 mailto:sage [2009/03/24(火) 21:23:24 ID:gs9CpZfM]
>>814

www.realintegrity.net/~irr/index.php?News
・頂点バッファオブジェクト (GPU上にメッシュを保存するなど)
とか
>>736とか

1.3→1.5への移行ってそんなに大変か

816 名前:名前は開発中のものです。 mailto:sage [2009/03/24(火) 21:28:58 ID:gs9CpZfM]
バグフィックスも多いからアップデートしたほうがいいのでは。



817 名前:名前は開発中のものです。 mailto:sage [2009/03/24(火) 21:51:14 ID:qkIry6qe]
細かいところでAPI仕様が変わりまくるから、思いっきり作りこんでるときはアップデートNGだけどね
試しに使っている分には最新版がよかろう


818 名前:名前は開発中のものです。 mailto:sage [2009/03/24(火) 23:39:11 ID:fefIo8eu]
漏れの場合はバグ潰しの切のいいとこで移行するのが自然かな
バグ潰しと仕様変更の同時進行なんて考えただけで死ねる

819 名前:名前は開発中のものです。 [2009/04/17(金) 23:45:16 ID:T51/DXpG]
あげ

820 名前:名前は開発中のものです。 mailto:sage [2009/05/01(金) 15:14:35 ID:FdqGkXmG]
面数が70000とかのメッシュでポリが半分くらい消えます
GPUの限界なのか頂点数や面数の16ビット制限なのかよくわかりませんが
面数20000のメッシュを4個表示するなら欠けが出ないので分割する事にし
2DマップエディタのcsvからXYZ反映したポリ生成してUV割当し任意数に分割とかmqo出力するツールをちょこっと作りました
最初は読み込んだモデルに問題があるのかと思って調べたり
irrlichtが1.5から32ビットメッシュ(頂点数だと思うんですが)に対応と書かれてるから大丈夫なのかと思って試してみたり
svnリポジトリで1.6取ってきて試すと頂点数?が16ビット超えてる的なメッセージが新たに出るようになっててダメなのか使えるのかどっちだー!?と悩んでみたり
そもそもソース見ると16bitしか使えないようにenum値を固定的に返してるように見えたり頭こんがらがりましたが
mqoのフォーマットを理解するいい機会になりましたしデカイマップ用のツールもできて無駄にはならなかったようなそうでもないような
何が言いたいかというと、疲れた、おやすみなさいorz

821 名前:名前は開発中のものです。 mailto:sage [2009/05/02(土) 22:02:50 ID:O/fjO5Vy]
>そもそもソース見ると16bitしか使えないようにenum値を固定的に返してるように見えたり頭こんがらがりましたが
32bitの頂点インデックス使いたいなら
32bitのインデックスを使うCMeshBufferを自作すればいいんじゃない。
(最初から含まれてはいない?)

1.5で
SSharedMeshBufferというクラス(構造体?)があるのを知ったが
なぜか実装されていないメソッドがたくさんあった。
仕方なくCMeshBufferから移してきたけどなんで実装されてないの?

822 名前:名前は開発中のものです。 mailto:sage [2009/05/02(土) 22:26:30 ID:O/fjO5Vy]
MikuMikuDanceのPMDファイル読み込むCPMDMeshFileLoader作った
www.77c.org/d.php?f=nk7142.zip

・・のだけど、MeshBufferのマテリアルのDiffuseColor
に設定しても面の色が黒いままのはなぜ?
EmissiveColor二設定すると反映されるけど・・
これは自己照明だから使うべきではない気がする

823 名前:名前は開発中のものです。 [2009/05/03(日) 00:07:18 ID:rlwz5c0a]
age

824 名前:822 mailto:sage [2009/05/04(月) 17:27:55 ID:MvR/yAW0]
頂点色で表示されているみたい・・
ならDiffuseColorには何の意味が?

825 名前:822 [2009/05/10(日) 21:59:15 ID:o8OHU3+s]
どうやらディフューズ色に頂点色を使うかマテリアルのDiffuseColorを使うか
指定するための機能が無いみたい・・。
PMDを表示するにはスキンメッシュを扱う機能が必要だけど
Irrlichtのはハードウェアスキニングに対応していなくて遅いようだ。
ブレンドの重みが頂点配列じゃなくて別の配列に設定するようになってるけど
これじゃハードウェアスキニングできないじゃん・・

826 名前:名前は開発中のものです。 mailto:sage [2009/05/11(月) 13:55:48 ID:hDDgNhJJ]
テクスチャのUVの仕方分からんのだけど・・・



827 名前:名前は開発中のものです。 mailto:sage [2009/05/12(火) 21:25:44 ID:bOT4f8ce]
>>826

何をしようとしているの?その書き方だと分からん

828 名前:名前は開発中のものです。 mailto:sage [2009/05/12(火) 23:05:33 ID:V8xdT15e]
3DモデルのBillbordクラスのテクスチャをUVさせたい
UVの分割とかの設定はできてるんだけど移動ができない

上に出てた通り書いてみたんだけど・・・






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<299KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef