【3Dエンジン】Irrlicht初心者質問スレ【高速描画】at GAMEDEV
【3Dエンジン】Irrlicht初心者質問スレ【高速描画】 - 暇つぶし2ch891:名前は開発中のものです。
10/02/06 20:02:13 8x9605Mb
>>889
衝突を検知したいならgContactAddedCallbackやgContactProcessedCallbackなどを使うと良いかと
詳しくはリファレンスを。

892:889
10/02/06 22:57:14 xeWNCPCE
>>891
ありがとうございました

893:名前は開発中のものです。
10/02/07 02:53:50 WbXOFWpS
簡単なことかもしれませんが質問です。
テクスチャを拡大せず、繰り返し適用するにはどうしたらいいでしょうか?
OpenGLでいうところの
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
に相当する機能を探しています。

894:名前は開発中のものです。
10/02/07 09:54:50 rG31jIi4
setEventReceiver()でレシーバーをセットすると、FPSカメラを使用したとき視点や位置の移動ができなくなってしまいます。
これを回避する方法はあるのでしょうか?


895:名前は開発中のものです。
10/02/07 22:02:14 yps3IRVf
>>893
ドキュメントを見ると、SMaterialLayer(SMaterialのメンバ)から設定できるっぽい
TextureWrapU、TextureWrapVがある。

896:名前は開発中のものです。
10/02/08 21:08:49 gabkWAP7
>>895
私の環境では、恐らくバージョン違いのためTextureWrapU, VではなくTextureWrapでしたが
どうやらこれらはリピートがデフォのようですね。UV座標を変えただけでうまくいきました。
回答ありがとうございました

897:名前は開発中のものです。
10/02/08 22:19:56 AkdKuPD1
>>894
自己解決しました。
お騒がせしてすみませんでした。

898:名前は開発中のものです。
10/02/09 01:48:36 uidmueAZ
>>889
>>891でスレ違いの回答をしてしまいました…。
サンプル7のcollisionを参考にしてください。

899:名前は開発中のものです。
10/02/12 21:43:21 bqiyQwPA
質問です。
Irrlichtを使ってオンラインで対戦できるゲームを作ろうと思っています。
通信はWinSockあたりを使おうと思っているのですが、
ウィンドウメッセージを自分で処理したい部分があったときはどのようにすればいいのでしょうか?

900:名前は開発中のものです。
10/02/15 19:37:16 312L4zV6
ウィンドウを最初からあるのと別にもう1つ作りたいんですが、どうやればできますか?

901:名前は開発中のものです。
10/02/15 22:25:17 oPapLW7S
>>899
Win32APIは門外漢だけど
IVideoDriver::getExposedVideoDataで、Windowsならウィンドウハンドル(HWND)が取得できる。これで何とかならない?
ダメなら、Irrlichtのソースコードを編集するしかないのかも。あるいはirrNet、irrNetLiteを使うとか。
URLリンク(irrlicht.sourceforge.net)

>>900
ドキュメントにIVideoDriver::beginSceneにはSExposedVideoDataへの参照を指定する機能があるみたい。
これに(Windowsなら)別ウィンドウのHWNDの入ったSExposedVideoDataを指定してやれば良さそうだけど・・・
どうやって作れば?

902:名前は開発中のものです。
10/02/16 02:56:47 34WoVUEc
>>900
複数画面を表示したいだけなら、ひとつのウィンドウを分割してもいいかもしれない。
カメラを複数作って、各カメラごとにsetViewPortで分割後の画面の大きさを指定すれば
いけると思う。


903:名前は開発中のものです。
10/02/17 21:54:23 R4kdaweb
3dsとobj形式のマップを表示したいのですがどうすればできますか?
Irrlicht A GoGOにはbsp形式の場合しか載っていなかったので分かりません…

904:名前は開発中のものです。
10/02/17 22:35:53 R4kdaweb
>>903
自己解決しました。
サンプル8にありましたね…

一応解説(?)のURLを
URLリンク(irrlicht.sourceforge.net)

905:名前は開発中のものです。
10/02/18 12:10:21 jHJyuWrx
Irrlicht 1.7.1 released!
URLリンク(irrlicht.sourceforge.net)

URLリンク(irrlicht.sourceforge.net)


906:名前は開発中のものです。
10/02/18 12:25:29 jHJyuWrx
念のためniko のblog
Irrlicht 1.7.1 and irrKlang 1.3.0 out now
URLリンク(www.irrlicht3d.org)

> One afternoon, two releases: I just packaged and uploaded
> Irrlicht 1.7.1 as well as irrKlang 1.3.0.
> All users of irrlicht 1.7 should update to this new version,
> because it also fixes a severe bug in the aabbox collision test
> which causes reduced rendering speed.

> Same for the irrKlang release: It doesn't only add the often
> requested possibility to capture the mixed output audio data,
> but also fixes a bug causing irrKlang not to work on 64 bit linux
> systems.


907:名前は開発中のものです。
10/02/18 22:31:06 y2HLRbeq
Xファイルのアニメーションが再生できません。
ビューワではきちんと再生できています。
しかし、アニメーションを再生するプログラムを実行してもまったく動きません。
IAnimatedMesh* Mesh = smgr->getMesh("media/hoge.x");
IAnimatedMeshSceneNode* = smgr->addAnimatedMeshSceneNode(Mesh);
この後に何か処理が必要なのでしょうか?
ちなみにアニメーションは1秒間隔で全部で60フレームあります。

908:名前は開発中のものです。
10/02/18 23:14:04 y2HLRbeq
>>907
補足です。
モデル自体は表示されているのですがアニメーションが再生されないということです。

909:名前は開発中のものです。
10/02/18 23:15:48 jHJyuWrx
>>907
こんな感じでできるかも
間違っていたらごめん(3年前のソースから持ってきたので)
mesh->setAnimationSpeed(35);

mesh->setFrameLoop(0, 40);



910:名前は開発中のものです。
10/02/23 22:31:59 FTPCGmp9
Irrlicht Leesonに載っているやり方でSDLでのキー検知のプログラムを書いたのですが、

LINK : fatal error LNK1561: エントリー ポイントを定義しなければなりません。

と出てしまいます。
どうすれば解決できるのでしょうか?

911:名前は開発中のものです。
10/02/23 23:03:01 7KugFZOK
エスパーするとlibの登録し忘れだと思う

912:名前は開発中のものです。
10/02/27 17:34:35 Nn7m3FYW
DXライブラリとIrrlichtを同時に使用しようとするとライブラリが競合してしまって、DXライブラリのページを参考に
プロジェクトのプロパティを変更すると
general error c101008a:が出てしまってコンパイルが通りません。
DXライブラリとIrrlichtってどうやったら同時に使用できますか?

913:名前は開発中のものです。
10/02/27 18:19:04 exjGPoh3
Macで使ってるんだけど、Irrlichtの描画機能を Cocoa の GUI と併用して使いたくて、
NSOpenGLView 内で描写するように MyIrrDeviceMacOSX を作ってるんだが、中々大変だ。

でも先は見えてきたんで、多分作れるようだ。

914:名前は開発中のものです。
10/02/27 18:26:39 YI14B23L
>>912
そこで躓くようなら無理です。


915:名前は開発中のものです。
10/02/27 22:10:59 Nn7m3FYW
>>912
ソリューションのクリーンを行ったら無事動きました。

916:名前は開発中のものです。
10/03/04 00:06:19 cWwY0bz4
Irrluaってもう更新されてないんだな。JIrrとかIrrlicht.NETと同様に・・
手軽にIrrlichtでスクリプトが使えたらいいなと思ったのに

917: ◆YATA/oetrw
10/04/02 14:21:34 mgT/p1lI
お久しぶりのIrrlichtML 1.7.1 Unicode Widows専用
URLリンク(etwas.wolfish.org)

EditBox MultiiLineモードの挙動が怪しかったり、静的リンクがエラー起こしたり
CGUITTFontをDLLにマージするとメモリリークしたりしますが
NalinさんのおかげでVista、Win7でのサロゲートペア入力にも対応しました

1.6系は文字コードの関係で日本語でのANSIコンパイル壊滅。従ってスキップ
1.7系からはUnicode対応が進んだため文字化けは90%くらい解消

918:名前は開発中のものです。
10/04/17 14:20:28 162MfgCk
>>917
バグっぽいの見つけました
同じフォントだけどサイズの違うフォントを作成して、
それらを同一フレームですべて使って描画すると、何故か描画位置が全て上にずれます。
(IrrlichtML付属のIMETestも、最初の1フレームだけ描画位置が上にずれています)

ソースコードを弄って読み込み済みのグリフの再利用をやめさせれば、一応は治りますが
こんな適当な修正だとメモリリークしますね。
(連想配列のc_facesをコメントアウトした後、エラーの出る部分を修正しただけ)

919: ◆YATA/oetrw
10/04/17 16:04:18 DGpVRFnV
>>918
スクリーンショットや再現比較可能な検証ツールの提供をお願い出来ますでしょうか
いまいち確認出来なかったもので

それと、CGUITTFontはIrrlicht.dllへの埋め込み(従来のirrML)とプロジェクトへのインクルード(1.7.1での推奨)、どちらを採用してますか?
Nalinさんが公開している新しいバージョンのCGUITTFontだと、また違った結果になるかもしれません
URLリンク(irrlicht.sourceforge.net)

と思ったら、日本時間22時までSF.netがメンテナンスのようです ( URLリンク(twitpic.com) )
メンテ後に上記フォーラムからNalinさんのCGUITTFontスレッドを辿って確認してみて下さい

920:918
10/04/19 12:38:54 DMP/xBFr
>>919
IrrlichtML-1.7.1に付属しているのを使っています。埋込みです。
ML1.7.1が出るまで、フォーラムにあったCGUITTFontを使っていましたが、
そちらでも同じ症状がありました。

URLリンク(www.dotup.org)
スクリーンショットです。
両方のフォントを使うと、描画時にhcenter = true, vcenter = true
にした文字の位置がちょっと下にずれます。描画内容によってはもっとずれることもあるようです。
ソースはつけましたが、さっき実行してみたところ再現できず・・なぜでしょうか。

921: ◆YATA/oetrw
10/04/23 13:10:47 nMYr0txh
>>920
こちらでも再現したので新CGUITTFontの作者Nalinさんに報告しておきました
URLリンク(irrlicht.sourceforge.net)

922: ◆YATA/oetrw
10/04/25 16:03:23 j4Dad0VM
早速修正してくれました(私はまだ未評価)。上記URLからDLして下さい。
以下、そのときの書き込みを適当翻訳。"as"みたいな副詞は苦手です。

>オゥケイ、その問題を修正しました。スレ1のダウンロードリンクを新バージョンに更新してあります。
>
>この問題は私がFT_Faceオブジェクトをキャッシュしていたことにあります。
>より大きなフォントをロードしたときに、FT_Faceのいくつかの領域が上書きされていました。
>このため、フォント位置を計算するときにエラーを引き起こしました。

>私はfaceサイズをセットするため、サイズ計算を実行する前に2~3つFreeType関数を追加しました。
>これら関数は、この問題に関係した部分で動作します。
>願わくば、FT_Faceをキャッシュするのと、フォントサイズ毎にこれを新規作成するのでは、どちらが良いかを判断したいです。
>これは、パフォーマンス改善のため、読み込み、描画コードを書き直す際にでもやろうと思います。
>
>------
>更新:
>実は、描画コードをどう改良するか思案しています。もちろん、解決策は描画呼び出しの一括処理(バッチ)です。
>通常のIGUIFontは単一のビットマップを使い、video driverのdraw2DImageBatch()を利用しています。
>
>私は解決策に関して、全レンダリング済グリフを保持するために空のITextureを作成する方向で検討しています。
>「新しいグリフがロードされるときは常に、自力でこれをITextureに追加し、グリフのインデックスを格納するためにmapを更新する」と言う流れです。
>これは、グリフ読み込みが遅くなる代わりに、ビルトインのIGUIFontクラスと同じくらい早い描画になります。
>
>あるいは、「個々の文字ごとに一括描画を行う」と言う、簡単ですが動作の遅い解決策もあります(例:aだけ、bだけ、cだけ、と言う単位で、いっぺんに描画)
>ひょっとすると、1つ目の方法と比べてエラーが少ないかもしれません。
>しかし、文字ごとにテクスチャを用意し、描画するのに状態変更が必要になる限り、1つ目の方法より遅くなります。
>
>誰か他の考えはありませんか?

923:名前は開発中のものです。
10/04/28 00:48:51 u76YujbC
820くらいで、面数というか、インデックスについて、16bit制限の話をされていますが、
その後、どういう状況になっているか、ご存知の方はいらっしゃいませんでしょうか?

当方でも、STLフォーマットのファイルを読み込んで、描画しようとしていますが、
14万ほどのvertex情報があり、1/7程度しか描画されていない状況です。

32bit対応できそうな、キーワードとしてはIDynamicMeshBufferかなぁ、と
思い、試行錯誤してみたのですが、ファイルを読み込んで、、、という
形にはたどり着けませんでした、、、

924:918
10/04/29 22:13:17 QeXnvPHr
>>922
実行してみて、修正されたの確認しました。
ありがとうございました!
しかし、デバッグ実行してみるとメモリリークが確認できます。ファイル名と行数は出ません。
「CGUITTFontをマージするとメモリリークする」と書いてありましたが、これのことなんでしょうか

Detected memory leaks!
Dumping objects ->
{1792} normal block at 0x04910040, 1053448 bytes long.
Data: < > 00 CD CD CD 00 00 00 00 00 00 00 00 CD CD CD CD
{1773} normal block at 0x04800040, 1053448 bytes long.
Data: < > 00 CD CD CD 00 00 00 00 00 00 00 00 CD CD CD CD
Object dump complete.

925:名前は開発中のものです。
10/04/29 22:16:49 QeXnvPHr
>>923
CSTLMeshFileLoaderで"SMeshBuffer"になっている部分を、
"CDynamicMeshBuffer"に変えたらもしかしたら動くかもしれません。試していませんが。
(勿論コンストラクタのindexTypeはEIT_32BITにする)

926: ◆YATA/oetrw
10/04/29 22:42:56 BTTizsdj
>>924
はい、如何にもその通りです。
新しいCGUITTFontは本体への組み込みを想定していないようです。
作者本人も、「本体を弄る必要はないのだからプロジェクト側で使ってくれ」と言う趣向の事を発言しています。
そのため、デフォルトでは_IRR_COMPILE_WITH_CGUITTFONT_を無効にして、使用は非推奨としました。

28日更新分:gccでirrUString.hがエラーになる不具合の修正(またまた他力本願です)

927:名前は開発中のものです。
10/05/17 01:50:57 i06Cfpje
質問です。
3Dゲームで、ビューポートの中心(この言い方があっているかどうかはわかりませんが)を画面の特定の位置に移動させたいのですが、
これはどうやればいいのでしょうか?
具体的には、、800x480の画面から左640x480を切り取ったような表示を行いたいのですが。

928:名前は開発中のものです。
10/05/17 04:01:47 jEChwdWZ
>>927
D3DXMatrixPerspectiveOffCenterLH

929:名前は開発中のものです。
10/05/17 17:48:56 i06Cfpje
>>928
Irrlichtの機能では可能でしょうか?

930:名前は開発中のものです。
10/05/17 20:31:00 i06Cfpje
すみません解決しました

931:名前は開発中のものです。
10/05/25 21:39:24 AoE41w8A
GUIで発生したイベントは、親のGUI Elementへどんどん上っていくことを
つい最近になって知った。

ウィンドウ内のボタンを押したときにFileOpenDialogが表示されて、
ファイルを選択するとEditBoxに反映されるようなものを作りたいんだけど、
ウィンドウのクラスにEditBoxの内容を設定できるメソッドを追加しておいて、
イベントレシーバーで受け取る→設定するしかないのかな

932:名前は開発中のものです。
10/05/28 00:08:30 6L0xpmPe
オレオレ仕様のIrrlicht、Gitで管理したら楽かも

933:名前は開発中のものです。
10/05/29 03:58:31 j4CXfBAG
>>2 のサウンド未搭載 (別プロジェクト有) の別プロジェクトって何のことでしょうか?

934: ◆YATA/oetrw
10/05/29 09:56:00 oygxH/Ke
irrKlang

935: ◆YATA/oetrw
10/05/29 09:57:32 oygxH/Ke
>>933
おそらくirrKlangのことです
URLリンク(www.ambiera.com)

936:名前は開発中のものです。
10/05/29 23:05:42 ikOU6e2y
FileOpenDialogでディレクトリ開いたときに
勝手に作業ディレクトリ変えるのやめて欲しいんだけど
開く前に作業ディレクトリ覚えておいて後で戻すとか面倒すぎる

937:名前は開発中のものです。
10/05/29 23:13:21 E8KXy43H
好きに作り変えればいいよ

938:名前は開発中のものです。
10/05/30 15:05:53 7vBQnTZH
黙々とDirectXを学び続けてきたがIrrlichtチュートリアルをざっと見て驚いたわ
チュートリアル2でもうカメラの操作ができるってすごいな
クオータニオン使って一生懸命カメラを移動させてた俺が馬鹿みたいじゃないか

939:名前は開発中のものです。
10/05/30 15:12:04 w37j579N
そうですね!

940:名前は開発中のものです。
10/06/01 13:32:01 oC9i3EeB
そんなに使いやすいの?

941:名前は開発中のものです。
10/06/01 20:35:20 g8Cq2FME
そんなことをここで確認してる人には到底使えないと思う。


942:名前は開発中のものです。
10/06/02 09:17:33 JM7RN9XQ
Irrに限らず自分で試そうとしない奴はライブラリなんて使えないと思うな

943:名前は開発中のものです。
10/06/02 10:11:02 hvR3WVDn
フォーラムで不思議な質問をしているestamisuさんを見て反面教師にするといい

944:名前は開発中のものです。
10/06/03 11:49:44 kt0SY9V0
Irrlicht Unofficial Docsを復活させたい
何で消えちゃったの?

945:名前は開発中のものです。
10/06/03 13:03:40 Ec5SilEk
大人の事情


946:名前は開発中のものです。
10/06/25 15:08:24 aHLBZOPC
Irrlicht Unofficial Docsってもう内容拾えない?
自分で訳した分だけでも再利用しようと思うんだが・・・。

947:名前は開発中のものです。
10/06/26 19:51:34 BrywJMLc
インターネットアーカイブで拾った記事を再編集してうpしてもいい?

948:名前は開発中のものです。
10/06/26 20:23:03 VPMhmWth
だれにいってるんだ?
著作権持ってるやつに許可取ってるんだったら問題ないだろ?


949:名無しさん@そうだ選挙に行こう
10/07/11 11:21:14 5KearaY9
この場合の著作権は誰になるの?

950:名無しさん@そうだ選挙に行こう
10/07/11 12:36:43 2UduHit/
元記事の作成者かと
一般に公表してるからアーカイブにおさってるんだろうから
引用であることを明示すればいいのか?
ってもしかして翻訳のあれ?


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch