トップページgamedev
989コメント399KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2006/10/05(木) 06:50:19ID:UN/zUzoQ
zlibライセンスでクロスプラットホームなゲームライブラリ、Irrlichtのスレです。

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

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

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

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

前スレ
http://pc8.2ch.net/test/read.cgi/tech/1104179696/
0002名前は開発中のものです。2006/10/05(木) 06:50:51ID:UN/zUzoQ
・特徴
zlibライセンス(組込、商利用自由)
マルチプラットホーム(Win、Linux、X-BOX...)
高速描画
DirectX9c、DirectX8、OpenGL、ソフトウェアドライバ2種、NULLデバイス
C++クラスによる初心者にも分かりやすいコーディングスタイル
キー・マウス入力対応(パッド不可)
BSPマップ対応
スキン・ボーンアニメーション対応
パーティクル、スカイドーム、テライン、ビルボード対応
コリジョン対応
屋内と屋外をシームレスに管理できるシーンマネージャー内蔵
XMLパーサー内臓
サウンド未搭載(別プロジェクト有)
ネットワーク未搭載(要各種ライブラリ)
物理エンジン未搭載(要各種ライブラリ)
0003名前は開発中のものです。2006/10/05(木) 06:52:09ID:UN/zUzoQ
・公式サイト
Irrlicht Engine - A free open source 3d engine
ttp://irrlicht.sourceforge.net/
フォーラム
ttp://irrlicht.sourceforge.net/phpBB2/

・翻訳ドキュメント
Irrlicht 非公式ドキュメント
ttp://www.realintegrity.net/~irr/

・解説サイト
Irrlicht A GoGo
ttp://www.zgock-lab.net/irrlicht/
イルリッヒたん@Wiki
ttp://www6.atwiki.jp/t-na/

・ゲームエンジン比較・評価
ttp://gamdev.org/w/?%5B%5B%A5%E9%A5%A4%A5%D6%A5%E9%A5%EA%5D%5D
0004名前は開発中のものです。2006/10/05(木) 06:54:12ID:UN/zUzoQ
移転完了!
0005名前は開発中のものです。2006/10/05(木) 11:13:39ID:W5DsfdEw
0006名前は開発中のものです。2006/10/05(木) 15:36:11ID:wO+ehfKg
1乙!

IrrlichtでSTGを最初からみんなで作るスレに挑戦
http://irrlichtstg.ifdef.jp/

Irrlichtいろいろ
http://f30.aaa.livedoor.jp/~kimkim/VC/DirectX3D/irrlicht_etc.html

Irrlicht Engine(gamdev)
http://bbs.gamdev.org/test/read.cgi/gamenews/1070942452/
0007名前は開発中のものです。2006/10/05(木) 18:49:43ID:UN/zUzoQ
>>6
げむでぶのスレは廃れてたからあえて削ったんだけど残しておいたほうがよかったかな。

日本使用で躓くと思われるものを捕捉。必要に応じて使い分けて。
2バイト文字表示クラス(Irrlicht A GoGo)
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=3995
GUIパーツで2バイト入力を実現するサブバージョン(要リコンパイル)
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?p=38338
0008名前は開発中のものです。2006/10/05(木) 22:20:31ID:4MnmgkZb
まず、Irrlicht をどう読んだらいいのか、小一時間悩んでいます・・・いるりっちゅっ?
0009名前は開発中のものです。2006/10/06(金) 00:26:26ID:aHoufkbq
ネイティブの発音だと、ィルリッヒ(ィにアクセント)って聞こえる。
日本ではイルリヒトとイルリッヒが候補で、アンケートでは現在前者が僅かにリード。
いるりっちゅもいいな。サルゲッチュみたいでw
0010名前は開発中のものです。2006/10/06(金) 01:32:12ID:uzhNh/XP
>>1 乙
3のゲームエンジンの比較・評価ってかなり前の書き込みですよね。今でも状況変わってないもの多いのですか?

ネットもこれだけ普及したんだし、記事に日付つけるの普通にならんかなー。
一年前の安売り予告で店でえらい恥かいたorz
0011名前は開発中のものです。2006/10/06(金) 03:18:28ID:aHoufkbq
ほとんどが2004年くらいのだと思う。
ほぼ実装完了した枯れたライブラリで無い限り今はずいぶん変わってるかと。
公式のFuture見ただけでは分からない細かい使用感はどうにもならないなー。
0012名前は開発中のものです。2006/10/06(金) 07:32:20ID:iqWSnB3i
ブログ見るとわかるけど、今作ってるのはirreditだよ、ブログは二日に一回更新されてる
http://www.irrlicht3d.org/
0013名前は開発中のものです。2006/10/06(金) 18:12:42ID:tU7Al24y
イリチットって読んでた
0014名前は開発中のものです。2006/10/07(土) 16:12:29ID:cHoIuEM/
>>11
ありがとです。

じゃあORGEを書き直そうかな、って書き直されてる!?maxうんぬんのあたりが変わってる・・・。乙。
じゃあ2004年と現在の最新情報が断わりなしに一覧になって評価されてるのか・・・。更新日を明記しないのって問題にならないのかしら。

イルたんブログ面白シロス。
0015名前は開発中のものです。2006/10/07(土) 23:35:01ID:5v6ZJbni
評価に一覧表作ったら収拾つかなくなった('A`)
あんな見づらいんじゃいらないな。
0016名前は開発中のものです。2006/10/08(日) 03:51:30ID:2YNm3Owv
>>7の日本語入力時に変換ウィンドウが左上に出て気になる。
ってわけで、ウィンドウ表示制御のサンプル書いてフォーラムに投げといた。
ttp://irrlicht.sourceforge.net/phpBB2/viewtopic.php?p=91437

どうやら、メインウィンドウ以外にはウィンドウハンドルがないっぽい。
GUIのハンドル取れれば楽チンなのに。
0017名前は開発中のものです。2006/10/13(金) 03:17:27ID:M/9tq8+w
Irrlichtでゲーム作るときにState管理は何でやってますか?
ICE、IrrWizard、IrrRPG等があるけど、これ以外にも既存のものがあれば紹介して欲しいです。
0018名前は開発中のものです。2006/10/14(土) 20:10:01ID:BxLuWOj2
だれか、雪をパーティクルで・・・Customizeable Particle systems for snow, smoke, fireらしいし
0019名前は開発中のものです。2006/10/15(日) 06:56:38ID:BXOe9w0I
あ、それならパーティクルエディタってのがフォーラムかリンクのところにあるよ。
それにテクスチャ変えれば粉雪でもなんでも調節できるのあった。
0020名前は開発中のものです。2006/10/15(日) 13:22:16ID:xgQ8jorI
>>19
見つからなかった・・・・どこ?
まあ、irreditで作ったよ
ttp://l.skr.jp/vip357493.wmv.html
0021名前は開発中のものです。2006/10/16(月) 12:24:00ID:lLtuzvXA
フォーラムでサーチした?
2種類ほど以前にDLしたけどIrredit使うならそのほうがベターだと思われ。
ttp://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=2987&highlight=particleeditor

nikoのブログにIrredit0.5のアナウンス書いてあるね。
エンジンのニュースにはないが、Irreditサイトは更新されてた。
ttp://irredit.irrlicht3d.org/

余談だけど>>20のうpしたものが既に消えてた件('A`)
0022名前は開発中のものです。2006/10/16(月) 16:12:28ID:sXhCjS/p
>>21
次は俺の気分しだいで残るから安心(ry
http://aok3day.ddo.jp/helloup/link.php?id=0003
0023名前は開発中のものです。2006/10/16(月) 17:08:25ID:lLtuzvXA
フォントマップ回ってるの見て笑ってしまった。
>>21のURLはよく確かめてなかった。
俺が落としたのはこれね。URL控えておけば良かった。
ttp://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=13373&highlight=particle+editor

ふと思ったけど、花びらのようなヒラヒラ感出すには自前コード必須かなぁ。
0024名前は開発中のものです。2006/10/22(日) 15:09:31ID:Zxn2V5oD
mikoto2xのサンプルを読ませたらコマ送りになってしまった。
ってかアニメーションXファイルはどれもおかしくなってしまう。

MD2は作るのめんどいしなぁ
0025名前は開発中のものです。2006/10/22(日) 19:05:13ID:a0fByjKA
>>24
アニメーションスピードってIrrlichtから変えられなかった?
0026名前は開発中のものです。2006/10/22(日) 19:05:44ID:a0fByjKA
さげちまった、あげあげ
0027名前は開発中のものです。2006/10/23(月) 19:17:11ID:mGcUOLM0
>>25
MD2以外も変えられた?
良ければその方法か、リファレンスへのリンクを教えてもらえるとすごく助かる

Xファイル内部のウェイトを変えても駄目っぽいな。
0028名前は開発中のものです。2006/10/23(月) 20:39:14ID:wY9PEWBQ
>>27
OK、コマ送り現象確認した。 てら遅す。
setAnimationSpeedでなんとかなったよ。
DirectXSDKのtinyで検証してみた。
↓イカソース
0029名前は開発中のものです。2006/10/23(月) 20:40:15ID:wY9PEWBQ
#include <windows.h>
#include <irrlicht.h>
using namespace irr;
using namespace core;
using namespace video;
using namespace scene;
#pragma comment(lib, "Irrlicht.lib")
int main()
{
IrrlichtDevice *Device = createDevice(EDT_OPENGL, dimension2d<s32>(640, 480), 32, false, false, 0);
IVideoDriver *Driver = Device->getVideoDriver();
ISceneManager *Scene = Device->getSceneManager();
Scene->addCameraSceneNode(0, vector3df(1000,500,-40), vector3df(0,0,0));

IAnimatedMesh *SydneyMesh = Scene->getMesh("tiny.x");
IAnimatedMeshSceneNode *SydneyNode = Scene->addAnimatedMeshSceneNode( SydneyMesh );

SydneyNode->setMaterialFlag(EMF_LIGHTING, false);
SydneyNode->setFrameLoop(0, 5000); //←歩き終わるまでの桁が大杉な件
SydneyNode->setAnimationSpeed(5000);//5000frame/sec(だから大杉だって)

while(Device->run())
{
Driver->beginScene(true, true, SColor(0,100,100,160));
Scene->drawAll();
Driver->endScene();
}
Device->drop();

return 0;
}
0030名前は開発中のものです。2006/10/24(火) 16:16:49ID:1HiJlOW7
>>28-29
あなたが神ですか?
Tinyちゃんが滑らかに歩いてくれたよ。

でもkobito(mikoto2xサンプル)は相変わらず異常なんだよなあ
動くには動いているんだけど、二つのポーズを交互に取っている状態。
他のxファイルでも試してみる。
0031名前は開発中のものです。2006/10/24(火) 16:47:35ID:SsH6+hfs
うーむ、mikoto2xだけの問題かもねぇ。
kobito見たけどアニメーションくっついてなくて試してなかった。
他のアニメーションソフトを中継して出力してみるのもいいんじゃないかと思う。
0032302006/10/24(火) 17:44:15ID:1HiJlOW7
GameSpace light で円柱にボーン仕込んでクネクネさせてみた。
そしたら、とりあえず意図した通りにクネクネしてくれた。メインで使っていこうかな。

ちなみに、kobitoはGSLでは読み込めなかった。Tinyは正常に読み込まれたけど。
一方で、mikoto2xのデータをDirectX9で利用している人がいたけど、特に問題は無いみたいだった。
他のソフトと相性が悪いんだろうか。
0033名前は開発中のものです。2006/10/24(火) 18:09:27ID:SsH6+hfs
>>32
GSLのファイル動作おめでと。
mikoto2x出力のファイルにはGSLやIrrlichtで使用するためのデータが欠落してる予感。
TinyはMSオフィシャルだから動いて当然だものね。

そういえば、Irrlichtのdwarf.xってMSのMesh Viewerで開けない件。
0034名前は開発中のものです。2006/10/25(水) 09:27:48ID:JDwTit+S
xメッシュ事態に方言あるし
0035名前は開発中のものです。2006/11/28(火) 01:32:32ID:ffG4Yfcn
irrEdit0.6記念age
0036名前は開発中のものです。2006/11/28(火) 07:23:19ID:gHTOVHiX
パッド使いたいときってなに使えば良いん
0037名前は開発中のものです。2006/11/28(火) 19:30:28ID:ffG4Yfcn
2つある。
1つはmmsystem.h中のjoyで始まる関数を使う方法(joyGetDevCaps、joyGetPos)
※#ifndef MMNOJOYから下に関数と構造体が列挙されてる、winmm.libをリンクすればOK
2つ目はDirectInputを使う方法

前者はどの環境でも使用可能だがパフォーマンス悪し。
後者はDirectXの手続きを覚えないといけない、ただしパフォーマンス良し。
OSに標準でDirectXがインストールされてる時代、後者がお薦めだと思う。
0038362006/11/28(火) 23:15:42ID:gHTOVHiX
>>37
レスサンクス
今上の方法を試してみたけどなんかエラーがいっぱい出てコンパイルできなかった
コンパイラはVC2005EE
0039名前は開発中のものです。2006/11/28(火) 23:34:00ID:ffG4Yfcn
前者の方法はWi95のときに使っただけだから、VC2005では試した事ないや。
この辺参考になるだろうか。
ttp://www.geocities.co.jp/SiliconValley/7201/tech.html#Joystick
ttp://members.at.infoseek.co.jp/teflonNF/ab/apix_03.html
0040362006/12/01(金) 00:52:34ID:xtV8Ooq8
やっぱり駄目だったorz
DirectInput使うことにする
サンクス
0041名前は開発中のものです。2006/12/02(土) 13:39:17ID:KjNEorVZ
今なら、DirectInputがらくだ織るね
0042名前は開発中のものです。2006/12/07(木) 09:46:19ID:OV4RuHsD
irrklang使った人いる?
0043名前は開発中のものです。2006/12/07(木) 23:38:22ID:vmK3sHf9
やっとウィンドウが出せるようになったんですが
モデルの表示方法がわかりません
どのような流れで表示するんですか?
0044名前は開発中のものです。2006/12/07(木) 23:54:45ID:kjgljBjA
釣れますか
0045名前は開発中のものです。2006/12/08(金) 08:10:02ID:cL28nlQt
demoぱくれ
0046名前は開発中のものです。2006/12/08(金) 13:21:47ID:j7CKzRkT
>>42
お試しで使ってる。
ソースコードなくて不安だから、他のライブラリに切り替えられるようにラッピングしてあるけどね。
0047名前は開発中のものです。2006/12/17(日) 12:28:46ID:CUsiFeQS
モデルの移動とか回転ってどうやるの?
サンプルどうりにやっても動かない
モデルはXファイルでやってる
0048名前は開発中のものです。2006/12/18(月) 03:20:37ID:dvGgNW4D
これは試した?
ttp://www.zgock-lab.net/irrlicht/tut05.htm
0049472006/12/20(水) 23:25:55ID:UedEvhl1
>>48
上手くいきました
ありがとうございます
0050名前は開発中のものです。2006/12/25(月) 20:00:25ID:vF+jCogh
モデルAとモデルBがあってその両方が常に向かい合うようにしたいときはどうやれば良いんですか?
0051名前は開発中のものです。2006/12/26(火) 08:14:51ID:q+jy3CW5
二人の中間を二人で見ればいいと思います
0052名前は開発中のものです。2006/12/29(金) 16:00:14ID:IiGUVzZg
相手を見ればいいじゃん
なぜ中間
0053名前は開発中のものです。2006/12/29(金) 18:08:59ID:h8J0vHHg
>>50が向かい合っているって自分で言ってるからそれは考えて別な方法を探してるのかと、ほとんど一緒だけどww
0054名前は開発中のものです。2007/01/02(火) 22:39:36ID:i1cvRmIr
irrKlang0.3リリースage
変更点
・プラグイン機能によりmp3読込対応(使用にはライセンス料必須なので選択制)
・3Dサラウンドの本格実装
・マルチバッファリングを標準として追加(←リニアとの違いがよくわからんが)

手頃なサウンドエンジンとして、何よりIrrlichtとの親和性で注目株だな。
0055名前は開発中のものです。2007/01/03(水) 12:43:20ID:eM6BKtCS
FPS固定する方法ってある?
0056名前は開発中のものです。2007/01/03(水) 15:36:56ID:W6lffxGL
余った時間sleep入れるのが簡単でいいんじゃないかな。
0057名前は開発中のものです。2007/01/10(水) 20:05:12ID:o7h3y59i
IrrlichtNX++の派生らしい

Lightfeather: News
http://lf.mmdevel.de/news.php

日本語リソースが知り合いの日記しかねーww
0058名前は開発中のものです。2007/01/11(木) 13:15:08ID:o8ZpH5kk
派生というかNX++が名称変えただけだよ。
オリジナルの機能が積極的にマージされてれば、肌に合ったほうを選べるんだけどね。
0059名前は開発中のものです。2007/01/12(金) 08:36:16ID:vcHi0rw8
っ最新版1.2の日本語入力マージ
ttp://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=6513
0060名前は開発中のものです。2007/01/14(日) 04:33:42ID:gu/ia/06
何でこの手のサウンドエンジンはどれもこれもループ開始位置を指定できないんだろう。
音屋さんとの交流がないんだろうか。
0061名前は開発中のものです。2007/01/14(日) 08:38:43ID:3O/iWOFf
位置の指定むずかしんじゃ?
0062名前は開発中のものです。2007/01/17(水) 05:40:44ID:beyBZu4O
>>59
ここの人が言ってる左上に変換候補が出ちゃうよ問題に対応した奴を
フォーラムにぶちこんどいた。

uuencodeでなwwww
0063名前は開発中のものです。2007/01/17(水) 08:22:31ID:Oz+qvTxl
うにこで?
0064名前は開発中のものです。2007/01/17(水) 17:34:42ID:beyBZu4O
>>63
uuencode ってなテキストでデータをやり取りするのがあるんだ。すまんな。
http://e-words.jp/w/uuencode.html

あと、件のパッチは一応Linuxでも日本語入力できるようにしてあるつもりだよ。
0065名前は開発中のものです。2007/01/17(水) 17:37:20ID:Oz+qvTxl
base64とちがうの?
0066名前は開発中のものです。2007/01/17(水) 17:44:19ID:beyBZu4O
>>65
違うなぁ。元に戻すにはこういのとかを使ってクレ
http://www.vector.co.jp/soft/win95/util/se072502.html
0067名前は開発中のものです。2007/01/17(水) 19:40:13ID:dxyzSM5S
>>62
フォーラムでGUIのハンドル取れないよバーローって言ってた者だけどuudecodeでpatch出してみた。
Linuxパッチまで当たってて震撼したよ、すごいわ。
Win32でJPtester動かしたら見事に変換ウィンドウがキャレットに追従してくれました。

で、フォーラムにさっき必死に英語で書いた内容について。
>>62氏の改造したオリジナルに近いCGUITTFONTだと開放時(アプリ閉じるとき)にアクセス違反起すと思うんだけどどうでしょ?
0068名前は開発中のものです。2007/01/17(水) 20:10:27ID:beyBZu4O
>>67
そのバグ悩んでたんですわ。
と思って>>67氏の書いたcodeを読んでアクセス違反する原因がわかったので
そのまま取り込んで件のcodeに対するパッチとして投げといた。ありがとう〜
0069672007/01/19(金) 00:14:43ID:4ViJjUXT
>>68
フォーラムのsvn411パッチを少しだけ整形してみた。
ひとつはIrrlichtDeviceの参照カウンタ増減コードの挿入。
もうひとつが今のところ必要なさそうなヘッダ挿入の削除と
Irrlichtソースの記述方法を真似てヘッダ挿入場所の移動。

改悪に見えたらごめんね。

ttp://etwas.wolfish.org/Irrlicht/Irrlicht-svn-jp-20070118.zip
0070622007/01/21(日) 21:03:51ID:h2P6Ovzc
>>69
おー。いけてないなーと思ってたところが綺麗に直ってていい感じです。
手元のにも取り込んでおきました。ありがとう〜

で、Linux版の動作確認を半年ほどやってないなぁと思って手元でやってみたら駄目になってました。
CIrrDeviceLinux.cpp の 893行目あたりに } の閉じが一つ足りないのと、
同じあたりのcase文で FocusIn と FocusOut が重複しちゃってます。
case FocusIn:
WindowActive=true;
if(ic!=NULL) XSetICFocus(ic);
break;
てな感じで修正してやってください。

そうすればLinuxでもちゃんと変換文字列がキャレットのところに表示されるヨ!
0071672007/01/22(月) 01:53:40ID:uv5VkyKb
>>70
やばい、既にnikoに「62氏が神パッチ作ってくれたよー」ってメールしてしまった。
Win環境でしか使ってないから、Linuxコードは見て無かったです。
こっちでもまとめて修正して、またフォーラムに上げておきます。

ちなみに現フォーラムに掲示してある1.2差分はGUIFontのenumタイプ削ってあるっす(1.3で実装っぽい)
0072名前は開発中のものです。2007/01/22(月) 13:38:41ID:j1MM+pDJ
ついでにリコンパイルのも配布してくれ
0073672007/01/23(火) 14:35:34ID:RD0A4fem
>>70
修正個所迷った。
irrevent.KeyInput.PressedDown = (event.type == KeyPress);
irrevent.KeyInput.Char = buf[i];
irrevent.KeyInput.Control = (event.xkey.state & ControlMask) != 0;
}←ここ?
postEventFromUser(irrevent);

>>72
VS2005でコンパイルしたのを添付しておきました、どうぞ〜。
ttp://etwas.wolfish.org/Irrlicht/IrrTT-1.2-win32Linux.zip
■ このスレッドは過去ログ倉庫に格納されています