トップページgamedev
105コメント39KB

【3Dエンジン】Irrlicht初心者質問スレその4

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2010/09/21(火) 17:32:25ID:pmlmAOqn
zlibライセンスでクロスプラットホームなゲームライブラリ、Irrlichtのスレです。

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

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

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

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

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

・翻訳ドキュメント
Irrlicht 非公式ドキュメント
http://wiki.game-develop.com/index.php?irrlicht

・解説サイト
Irrlicht A GoGo
http://www.zgock-lab.net/irrlicht/
イルリッヒたん@Wiki
http://www6.atwiki.jp/t-na/
0004名前は開発中のものです。2010/09/21(火) 17:35:20ID:pmlmAOqn
IrrLicht Lesson
http://lesson.ifdef.jp/

・ゲームエンジン比較・評価
http://wiki.game-develop.com/index.php?%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%2F%A5%E9%A5%A4%A5%D6%A5%E9%A5%EA%2F%C8%E6%B3%D3

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

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

日本使用で躓くと思われるものを捕捉。必要に応じて使い分けて。
・2バイト文字表示クラス(Irrlicht A GoGo)
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=3995
・GUIパーツで2バイト入力を実現するサブバージョン(要リコンパイル)
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?p=38338

・使用例(動画)
月桂樹Gekkeiju online
http://www.youtube.com/watch?v=wh3HBUx6s3w
Miku in Motion
http://www.youtube.com/watch?v=J6tV0Hr4Koc
Irrlicht + Augmented Reality
http://www.youtube.com/watch?v=_cl2rWZzGLY
0005名前は開発中のものです。2010/09/21(火) 17:37:25ID:pmlmAOqn
何とか立てれた。

これ使ってる人に質問、3Dモデルにアニメーションさせるとき、何で作って、どういう形式で使ってる?
0006名前は開発中のものです。2010/09/21(火) 23:25:18ID:wxC9OO63
>>5
2Dばかりで3Dは殆どやってないから分からないけど、
作るソフトはBlenderでどう?
0007名前は開発中のものです。2010/09/21(火) 23:28:54ID:wxC9OO63
ん?
>>2

>キー・マウス入力対応(パッド不可)
>XMLパーサー内臓

ジョイパッドは最近のVerだと対応してたはず
内臓ってw
000852010/09/22(水) 07:42:05ID:BJ6LqzHu
>>6-7
アドバイスありがとう。

blendファイルが直接読めるわけではないみたいだし、アニメーションさせようと思ったら対応形式にあわせて
それようにエクスポーター使わないとダメっぽいんだけど、スクリプトの動きに関してあんまりいい話聞かないんだよね。

前スレのテンプレそのままコピったら、そうなってしまった。スマン。
0009名前は開発中のものです。2010/09/22(水) 21:32:09ID:58BRJRbw
IrrlichtML
http://etwas.wolfish.org/Irrlicht/irrlichtml.html
0010名前は開発中のものです。2010/09/23(木) 00:03:38ID:FHfog5qU
Irrlicht/Blender Exporter v0.4
http://code.google.com/p/tubras/wiki/irrb

GoogleCodeにIrrlicht関連のプロジェクトって結構たくさんあるみたい
0011名前は開発中のものです。2010/09/23(木) 00:58:10ID:5V9YrRCI
武器持たせるのどうすればおk?
examplesに入っとらんぞ
0012名前は開発中のものです。2010/09/23(木) 10:43:02ID:BRVCqONw
xファイルでのアニメーションはMD2みたいにモーション名指定は無理なの?
現状SetFrameしかないのかな
しかもSetFrame使うと全部頂点書き出しさないと、xファイルがでかくなるorz
0013名前は開発中のものです。2010/09/23(木) 18:08:04ID:7XCQvY35
Irrlicht1.7.1を使っていて
なぜか桁の大きいdouble型変数の演算時に小数部が切り捨てられていたので、原因を探ってみたところ
どうやら
irr::createDeviceの第一引数のレンダリング環境を設定するところでDirectX(EDT_DIRECT3D8及びEDT_DIRECT3D9)を指定するとこの現象が起きるようでした。
createDeviceを使用しなかったり、DirectX以外のOpenGLやソフトウェアレンダラを指定するとこの現象は起きませんでした。
原因や解決法を教えていただきたいです。。
C++自体初心者なので全く関係の無いところで勘違いしてるのかもしれませんが…

なお以下のコードで現象を確認しました(test03が10000000.5になって欲しいのに10000000.0になる)
#include <irrlicht.h>
#include <windows.h>
#pragma comment(lib, "Irrlicht.lib")
using namespace irr;
using namespace core;
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
IrrlichtDevice *device =createDevice(video::EDT_DIRECT3D9, dimension2d<u32>(640, 480), 16, false, false, false, 0);
double test01=10000000;
double test02 = 0.5;
double test03=test01+test02;
device->drop();
return 0;
}
0014名前は開発中のものです。2010/09/23(木) 18:16:21ID:7XCQvY35
連レスすみません。
上の現象はDebugで発生しました。
Releaseでビルドすると問題ないようです。
0015名前は開発中のものです。2010/09/23(木) 18:35:03ID:KkOS4/SK
>>13
普通にDirect3Dデバイスを作ると、高速化のために内部で浮動小数点演算の精度が落とされる。

これを防ぐにはデバイス作成時にD3DCREATE_FPU_PRESERVEを指定すればいいんだけど、
irrlichtで出来るかはよく知らない。
ttp://msdn.microsoft.com/ja-jp/library/cc324349.aspx
0016名前は開発中のものです。2010/09/23(木) 18:47:30ID:KkOS4/SK
>>13
調べた。
irr::SIrrlichtCreationParameters::HighPrecisionFPU に true を設定して
rr::createDeviceEx を呼べばいい。
そうすればD3DCREATE_FPU_PRESERVEを使ってくれる。
0017名前は開発中のものです。2010/09/23(木) 19:04:56ID:7XCQvY35
>>15,16
素早い回答ありがとうございます。
早速試してみます!
0018名前は開発中のものです。2010/09/23(木) 19:13:27ID:7XCQvY35
お教えいただいた方法で見事問題が解決されました。
本当にありがとうございました!
0019名前は開発中のものです。2010/09/26(日) 22:21:21ID:NpVTFXds
みんな、公式のフォーラムは利用しているのかな
0020名前は開発中のものです。2010/09/26(日) 22:52:08ID:mKbHcRyn
>>19
検索して読む程度・・・。
0021名前は開発中のものです。2010/09/28(火) 00:30:21ID:KeAUf/L3
自分用に改造を加えたIrrlichtを
git svnで管理すると便利という事に最近まで気がつかなかった。
本家で変更があっても追いつくのが大分楽になった
0022名前は開発中のものです。2010/11/02(火) 15:02:56ID:WsOM2loF
あげ
0023名前は開発中のものです。2010/11/02(火) 19:09:40ID:OtarS7xq
>>12
これはxファイルとの相性が悪い。だからやめた
0024名前は開発中のものです。2010/11/02(火) 19:11:28ID:LcywyU8S
何故そこまでxファイルに拘る?
0025名前は開発中のものです。2010/11/02(火) 21:47:17ID:sNBxz+R4
>>23
モルダー、あなた憑かれてるのよ
0026名前は開発中のものです。2010/11/16(火) 12:44:53ID:SkgTLKqr
Irrlicht-1.7.2リリース記念火気庫ヽ( ´∀`)ノ ボッ
0027名前は開発中のものです。2010/11/17(水) 11:55:19ID:EboSdSt9
知らなかった
バグフィックスのみか、早速DLしてみよう
0028名前は開発中のものです。2010/11/18(木) 17:03:59ID:QrGmog6Y
戻り値がIAbc*のgetAbcって基本的に同じ値が返ってきてdropする必要はないってことだよね?
getTimerとか複製できなきゃタイマー機能としてはあまり役に立たないような
0029名前は開発中のものです。2010/11/18(木) 21:16:54ID:i9J8t7fP
>>28
つ 付属のドキュメント
メソッドごとにdropすべきか書いてある
drop忘れててもVisualStudioのメモリリーク検出機能使えば分かるけど

タイマー複製したいって何で?
0030名前は開発中のものです。2010/11/18(木) 21:35:45ID:QrGmog6Y
ごめん、役に立たないと言ったのは見当違いで
同時に複数計測したい場合に、個別にstart stopできた方がいいんじゃないかって思っただけ
0031名前は開発中のものです。2010/11/28(日) 18:25:08ID:cjZQH51M
このエンジン好きなんだが3dのアニメーションだけはどうしたらいいかわからん
まともにやりとりできるフォーマットがなさすぎる
0032名前は開発中のものです。2010/12/02(木) 23:45:27ID:2Y66a5ad
>>31
何のソフトでアニメーション作ってるん?
0033312010/12/03(金) 22:16:56ID:CFbCwP6T
いまはBlender2.49+Ogremeshエクスポーター
過去に試した組み合わせは(1年前〜現在。各エクスポート最新とは限らない)

 Irrlicht1.7.1
  Modtool6.01
   DirectX    export△ Irrlicht Load △ モデル・モーションとテクスチャUVがそれぞれ左右反転
   OgreMesh   export×(クラッシュ)
  Blender2.4.9
   DirectX    export△ Irrlicht Load × 読み込みエラー
   Ogremesh   export△ Irrlicht Load △ 頂点抜けが起きることがある。エクスポートが不安定

b3d(Blitz3dフォーマット)がいいよって意見もみたけどエクスポーターが見つけられず
fragMOTIONなどの別ツール経由は・・・ちょっと非現実的かな。手間的に考えて
Ogremeshエクスポーターのエラーに悩みつつIrrmeshの完成を待ちわびています

ネットではPMD+BVHで走らせてる方もいらっしゃるみたいだね
0034名前は開発中のものです。2010/12/04(土) 06:49:56ID:L1EpF+6B
>>33
ttp://irrlicht.sourceforge.net/phpBB2/viewtopic.php?p=222901#222901
b3dならここにあるみたいだよ。使ってみたら?
0035名前は開発中のものです。2010/12/30(木) 01:57:37ID:p/d2Ubz7
過疎ってるなあ
もっと認知度を上げられないものだろうか
0036名前は開発中のものです。2011/01/20(木) 22:15:35ID:D0Rz0wW5
IrrlichtにしろOrge3DにしろUnrealEngineにしろなぜか人がいないよね。
なぜなんだろう。そんなにゲームが作りたい人がいないのか。
ゲーム作ろうと思ったらここらのゲームエンジンを使わざるを得ないのに。
0037名前は開発中のものです。2011/01/20(木) 23:12:01ID:UmSRfbaM
そもそも3Dはマップ作りにしろ、カメラを含むシーンにしろ、モデルにしろ、アニメーションのモーションにしろ。
すべての敷居が2Dの比じゃないからな。

出来るやつも少ないし。まだまだ希少。
それらがすべて出来る前提のエンジンなんてなかなか流行らないだろーな。
0038名前は開発中のものです。2011/01/21(金) 00:01:22ID:EgqZzRrA
3Dをやっている人は探せばいるでしょう
Irrlichtのような3Dエンジンを使おう、とは思いつかないだけで
0039名前は開発中のものです。2011/01/21(金) 09:39:40ID:gTOOtlEB
例えば生のOpenGL使って作れるゲームなんてたかがしれてるよね。
どうしてるんだろうか
0040名前は開発中のものです。2011/01/21(金) 10:10:08ID:JKu/P7I3
個人でやるような分には、生でDirectXやOpenGLを使おうがラッパーライブラリを使おうが
できること(作れるもの)自体はあんまり変わらない気もするけども
生で使う場合はある程度は自前でラッパー作るようなもんだから、まあ最初から既存のラッパー使ったほうが楽ではあるが…
0041名前は開発中のものです。2011/01/21(金) 11:26:53ID:V2ZUOMJ7
オライリーあたりがライブラリの参考書を出してくれればいいんだが・・・
0042名前は開発中のものです。2011/01/21(金) 16:57:11ID:boLg1PDJ
3DグラフィックとC++って時点で両方習得するのに何年かかんのって話だからなw

登山みたいで楽しいんだが
登るのが大変すぎるだけに登って満足して終わりになっちゃう気もする
0043名前は開発中のものです。2011/01/21(金) 17:05:20ID:Bw4w1fZE
>>42
それわかるw
正直なところ敷居が高すぎる。
かと言ってUDKとかUnityもツクールみたいに気兼ねなく簡単にできる、
ってわけでもないし。
0044名前は開発中のものです。2011/01/23(日) 21:14:39ID:yohFUist
敷居が高いって元々はそういう意味じゃないぞ!
「相手に不義理などをしてしまい、行きにくい」というのが本来の意味。

2DだけのゲームでIrrlicht使っている人はいるだろうか 自分みたいに
0045名前は開発中のものです。2011/01/23(日) 21:21:02ID:YJMzrArs
2chで国語のお勉強とかどうでもいいことをw
0046名前は開発中のものです。2011/01/28(金) 12:44:52ID:h1hF4zTu
UDKやUNITYをさわりだけいじってみたけど、マップ作ったり、テクスチャ読み込んでマテリアル作ったりは簡単にできるんだがな。
JRPGみたいにNPC出して会話とかできて、攻撃は剣と弓で、とかゲームシステムの細かい部分になると自力でどうぞ、って事になってしまう。
自分でゲームエンジンを解析して、どこに作り込でいけばいいか理解しないと進めない。
そこからの難しさは一からプログラムで作っているのと大して変わらない。
0047名前は開発中のものです。2011/01/28(金) 13:04:49ID:PLty3v15
ここは何時から、自分のスキル不足を愚痴るスレになったんだっけか?
0048名前は開発中のものです。2011/02/06(日) 22:53:09ID:Wj/nG0G4
公式のニュースを見ると、Irrlichtの本が出たらしい
https://www.packtpub.com/irrlicht-1-7-1-realtime-3d-engine-beginners-guide/book
0049名前は開発中のものです。2011/02/07(月) 12:24:46ID:frFvnJXh
日本語じゃなきゃやだやだ
0050名前は開発中のものです。2011/02/07(月) 18:55:59ID:fLJzwj6q
翻訳しろ話はそれからだ
0051名前は開発中のものです。2011/03/07(月) 10:06:47.35ID:qh2ZqJk3
e-book版が21.59米ドル = 1776円
けっこう安いな
日本語版がでてないとはいえ勝手に訳してwikiにアップなんてしたら怒られるよね
日本語版発売に期待

立ち読み版みたいなのはないの?
0052名前は開発中のものです。2011/03/07(月) 10:52:14.54ID:wqbMyPz5
怒られるだけならまし。訴えられるレベル
0053名前は開発中のものです。2011/03/07(月) 12:59:48.00ID:CgCeq0X7
>日本語版がでてないとはいえ勝手に訳してwikiにアップ
この努力をなぜ本家HPの日本語化に向けないのか
0054名前は開発中のものです。2011/03/07(月) 23:34:03.44ID:vJg1TFC6
勝手に訳して出版社に持ち込んで交渉したらお金も入るよ。
0055名前は開発中のものです。2011/03/08(火) 02:08:27.79ID:y9E47S1J
しっかり許可取れな?
0056名前は開発中のものです。2011/03/22(火) 22:24:07.27ID:wIdT34ti
RPGは作れますかお?
0057名前は開発中のものです。2011/03/22(火) 22:28:04.69ID:eGhM8788
作れません。お帰りください
0058名前は開発中のものです。2011/04/11(月) 19:08:21.07ID:iyNkOBEH
そういや今Irrlichtで作っているのがSRPGだった
どこで作っているかは秘密だが
0059名前は開発中のものです。2011/04/12(火) 09:40:45.87ID:skLSxuNi
別に”秘密”とか書かなくても興味ないから
0060名前は開発中のものです。2011/04/13(水) 22:03:37.98ID:JrwSCAfj
はは、つれないなぁ
0061名前は開発中のものです。2011/04/15(金) 12:37:44.90ID:qw90WTA4
書き込むならオープンにする
秘密にしたいなら黙ってるかチラシの裏にでも書いておけ
ただの構ってちゃんだろ
0062名前は開発中のものです。2011/04/28(木) 14:03:19.58ID:rrHYWfWd
これから制作するソフト用のエンジンを探しているのですが、
Irrlichtは、マウスカーソルがある所のポリゴンを取得できますか?

CGツールみたいに、オブジェクト中の特定のポリゴンを選択とか
やりたいので
0063名前は開発中のものです。2011/04/28(木) 20:42:22.34ID:3aWJvzTR
>>62
もちろんできるよ。
公式のチュートリアル7で解説してるから見るといいよ
0064名前は開発中のものです。2011/04/29(金) 12:42:56.61ID:9o3Js+am
ありがとう!
0065名前は開発中のものです。2011/05/03(火) 00:52:49.82ID:aB2xnOqT
フォーラムに書けないチキンなのでここに書く。
フォーラムの方々に泣くほど感謝。
ハードウェアスキニングのコード
Hardware Skinning for Irrlicht 1.7
を改変してウェイトに対応させた。三晩悶絶した。
ウェイトに対応する代わりにNormalが使えなくなるけど
irrlicht側は一切変更不要。
ポイントは
mesh->setHardwareSkinning(true);
mesh->updateNormalsWhenAnimating(false);
の実行順序。

ドワーフ6*6(6*7?)
HD5850 windows 7 x64(exeはx86)
OpenGL [Light:off][HWS:off] 125fps
OpenGL [Light:off][HWS(Weight):on] 688fps
0066名前は開発中のものです。2011/05/05(木) 06:31:55.44ID:yjMgcbur
65続き
更にフォーラムのfmxさんの投稿を参考に
convertToTangentsして
Binormalをウェイト*3(4番目は1.0-(合計))に転用しNormalを生き残らせてみた。
まだやってないけどTangentに頂点カラーかマトリクスindexを持たせれば
頂点カラーも生き残らせることができるかも。
本当に本当にフォーラムは必見。
連投ごめん。終わり。
0067名前は開発中のものです。2011/07/07(木) 23:25:50.67ID:eWsfc5od
Irrlichtのフォーラムの色変わってた!!
0068名前は開発中のものです。2011/07/08(金) 00:27:34.67ID:pPCDjE0q
標準テンプレを差し替えただけかよ!
0069名前は開発中のものです。2011/07/24(日) 20:51:21.02ID:c5QyUL19
2Dゲー作る勉強を始めたんだけど、今までSDLをちょろっと触った程度の知識しかなかったから
画像を思った場所にポリゴンで表示するだけで一苦労だった
チュートリアルサイト見ててもその処理が何をしてて何故必要なのかが説明されてないことが多くて(常識だから?)
理解を得るのにかなり苦戦するぜ。という俺の日記
0070名前は開発中のものです。2011/07/25(月) 09:02:37.87ID:MgUklQO7
日記は他でやれ・・・と言いたいが久しぶりのポジティブなレス
応援してる がんばれ
0071名前は開発中のものです。2011/07/26(火) 10:21:30.82ID:ycUXwhyt
irrExtが全然使われていないのって公式からたどり着きにくいからなのか?
そもそもどんな物なのか、よく分からないと言っている人もいる
http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=43064
■ このスレッドは過去ログ倉庫に格納されています