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/
探検
【3Dエンジン】Irrlicht初心者質問スレその4
■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
2010/09/21(火) 17:32:25ID:pmlmAOqn2010/09/21(火) 23:25:18ID:wxC9OO63
2010/09/21(火) 23:28:54ID:wxC9OO63
85
2010/09/22(水) 07:42:05ID:BJ6LqzHu >>6-7
アドバイスありがとう。
blendファイルが直接読めるわけではないみたいだし、アニメーションさせようと思ったら対応形式にあわせて
それようにエクスポーター使わないとダメっぽいんだけど、スクリプトの動きに関してあんまりいい話聞かないんだよね。
前スレのテンプレそのままコピったら、そうなってしまった。スマン。
アドバイスありがとう。
blendファイルが直接読めるわけではないみたいだし、アニメーションさせようと思ったら対応形式にあわせて
それようにエクスポーター使わないとダメっぽいんだけど、スクリプトの動きに関してあんまりいい話聞かないんだよね。
前スレのテンプレそのままコピったら、そうなってしまった。スマン。
2010/09/22(水) 21:32:09ID:58BRJRbw
2010/09/23(木) 00:03:38ID:FHfog5qU
Irrlicht/Blender Exporter v0.4
http://code.google.com/p/tubras/wiki/irrb
GoogleCodeにIrrlicht関連のプロジェクトって結構たくさんあるみたい
http://code.google.com/p/tubras/wiki/irrb
GoogleCodeにIrrlicht関連のプロジェクトって結構たくさんあるみたい
2010/09/23(木) 00:58:10ID:5V9YrRCI
武器持たせるのどうすればおk?
examplesに入っとらんぞ
examplesに入っとらんぞ
2010/09/23(木) 10:43:02ID:BRVCqONw
xファイルでのアニメーションはMD2みたいにモーション名指定は無理なの?
現状SetFrameしかないのかな
しかもSetFrame使うと全部頂点書き出しさないと、xファイルがでかくなるorz
現状SetFrameしかないのかな
しかもSetFrame使うと全部頂点書き出しさないと、xファイルがでかくなるorz
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;
}
なぜか桁の大きい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;
}
2010/09/23(木) 18:16:21ID:7XCQvY35
連レスすみません。
上の現象はDebugで発生しました。
Releaseでビルドすると問題ないようです。
上の現象はDebugで発生しました。
Releaseでビルドすると問題ないようです。
2010/09/23(木) 18:35:03ID:KkOS4/SK
>>13
普通にDirect3Dデバイスを作ると、高速化のために内部で浮動小数点演算の精度が落とされる。
これを防ぐにはデバイス作成時にD3DCREATE_FPU_PRESERVEを指定すればいいんだけど、
irrlichtで出来るかはよく知らない。
ttp://msdn.microsoft.com/ja-jp/library/cc324349.aspx
普通にDirect3Dデバイスを作ると、高速化のために内部で浮動小数点演算の精度が落とされる。
これを防ぐにはデバイス作成時にD3DCREATE_FPU_PRESERVEを指定すればいいんだけど、
irrlichtで出来るかはよく知らない。
ttp://msdn.microsoft.com/ja-jp/library/cc324349.aspx
2010/09/23(木) 18:47:30ID:KkOS4/SK
>>13
調べた。
irr::SIrrlichtCreationParameters::HighPrecisionFPU に true を設定して
rr::createDeviceEx を呼べばいい。
そうすればD3DCREATE_FPU_PRESERVEを使ってくれる。
調べた。
irr::SIrrlichtCreationParameters::HighPrecisionFPU に true を設定して
rr::createDeviceEx を呼べばいい。
そうすればD3DCREATE_FPU_PRESERVEを使ってくれる。
2010/09/23(木) 19:04:56ID:7XCQvY35
2010/09/23(木) 19:13:27ID:7XCQvY35
お教えいただいた方法で見事問題が解決されました。
本当にありがとうございました!
本当にありがとうございました!
2010/09/26(日) 22:21:21ID:NpVTFXds
みんな、公式のフォーラムは利用しているのかな
2010/09/26(日) 22:52:08ID:mKbHcRyn
>>19
検索して読む程度・・・。
検索して読む程度・・・。
2010/09/28(火) 00:30:21ID:KeAUf/L3
自分用に改造を加えたIrrlichtを
git svnで管理すると便利という事に最近まで気がつかなかった。
本家で変更があっても追いつくのが大分楽になった
git svnで管理すると便利という事に最近まで気がつかなかった。
本家で変更があっても追いつくのが大分楽になった
22名前は開発中のものです。
2010/11/02(火) 15:02:56ID:WsOM2loF あげ
2010/11/02(火) 19:09:40ID:OtarS7xq
>>12
これはxファイルとの相性が悪い。だからやめた
これはxファイルとの相性が悪い。だからやめた
2010/11/02(火) 19:11:28ID:LcywyU8S
何故そこまでxファイルに拘る?
2010/11/02(火) 21:47:17ID:sNBxz+R4
>>23
モルダー、あなた憑かれてるのよ
モルダー、あなた憑かれてるのよ
26名前は開発中のものです。
2010/11/16(火) 12:44:53ID:SkgTLKqr Irrlicht-1.7.2リリース記念火気庫ヽ( ´∀`)ノ ボッ
2010/11/17(水) 11:55:19ID:EboSdSt9
知らなかった
バグフィックスのみか、早速DLしてみよう
バグフィックスのみか、早速DLしてみよう
2010/11/18(木) 17:03:59ID:QrGmog6Y
戻り値がIAbc*のgetAbcって基本的に同じ値が返ってきてdropする必要はないってことだよね?
getTimerとか複製できなきゃタイマー機能としてはあまり役に立たないような
getTimerとか複製できなきゃタイマー機能としてはあまり役に立たないような
2010/11/18(木) 21:16:54ID:i9J8t7fP
2010/11/18(木) 21:35:45ID:QrGmog6Y
ごめん、役に立たないと言ったのは見当違いで
同時に複数計測したい場合に、個別にstart stopできた方がいいんじゃないかって思っただけ
同時に複数計測したい場合に、個別にstart stopできた方がいいんじゃないかって思っただけ
2010/11/28(日) 18:25:08ID:cjZQH51M
このエンジン好きなんだが3dのアニメーションだけはどうしたらいいかわからん
まともにやりとりできるフォーマットがなさすぎる
まともにやりとりできるフォーマットがなさすぎる
2010/12/02(木) 23:45:27ID:2Y66a5ad
>>31
何のソフトでアニメーション作ってるん?
何のソフトでアニメーション作ってるん?
3331
2010/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で走らせてる方もいらっしゃるみたいだね
過去に試した組み合わせは(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で走らせてる方もいらっしゃるみたいだね
2010/12/04(土) 06:49:56ID:L1EpF+6B
35名前は開発中のものです。
2010/12/30(木) 01:57:37ID:p/d2Ubz7 過疎ってるなあ
もっと認知度を上げられないものだろうか
もっと認知度を上げられないものだろうか
2011/01/20(木) 22:15:35ID:D0Rz0wW5
IrrlichtにしろOrge3DにしろUnrealEngineにしろなぜか人がいないよね。
なぜなんだろう。そんなにゲームが作りたい人がいないのか。
ゲーム作ろうと思ったらここらのゲームエンジンを使わざるを得ないのに。
なぜなんだろう。そんなにゲームが作りたい人がいないのか。
ゲーム作ろうと思ったらここらのゲームエンジンを使わざるを得ないのに。
2011/01/20(木) 23:12:01ID:UmSRfbaM
そもそも3Dはマップ作りにしろ、カメラを含むシーンにしろ、モデルにしろ、アニメーションのモーションにしろ。
すべての敷居が2Dの比じゃないからな。
出来るやつも少ないし。まだまだ希少。
それらがすべて出来る前提のエンジンなんてなかなか流行らないだろーな。
すべての敷居が2Dの比じゃないからな。
出来るやつも少ないし。まだまだ希少。
それらがすべて出来る前提のエンジンなんてなかなか流行らないだろーな。
38名前は開発中のものです。
2011/01/21(金) 00:01:22ID:EgqZzRrA 3Dをやっている人は探せばいるでしょう
Irrlichtのような3Dエンジンを使おう、とは思いつかないだけで
Irrlichtのような3Dエンジンを使おう、とは思いつかないだけで
2011/01/21(金) 09:39:40ID:gTOOtlEB
例えば生のOpenGL使って作れるゲームなんてたかがしれてるよね。
どうしてるんだろうか
どうしてるんだろうか
2011/01/21(金) 10:10:08ID:JKu/P7I3
個人でやるような分には、生でDirectXやOpenGLを使おうがラッパーライブラリを使おうが
できること(作れるもの)自体はあんまり変わらない気もするけども
生で使う場合はある程度は自前でラッパー作るようなもんだから、まあ最初から既存のラッパー使ったほうが楽ではあるが…
できること(作れるもの)自体はあんまり変わらない気もするけども
生で使う場合はある程度は自前でラッパー作るようなもんだから、まあ最初から既存のラッパー使ったほうが楽ではあるが…
2011/01/21(金) 11:26:53ID:V2ZUOMJ7
オライリーあたりがライブラリの参考書を出してくれればいいんだが・・・
2011/01/21(金) 16:57:11ID:boLg1PDJ
3DグラフィックとC++って時点で両方習得するのに何年かかんのって話だからなw
登山みたいで楽しいんだが
登るのが大変すぎるだけに登って満足して終わりになっちゃう気もする
登山みたいで楽しいんだが
登るのが大変すぎるだけに登って満足して終わりになっちゃう気もする
2011/01/21(金) 17:05:20ID:Bw4w1fZE
44名前は開発中のものです。
2011/01/23(日) 21:14:39ID:yohFUist 敷居が高いって元々はそういう意味じゃないぞ!
「相手に不義理などをしてしまい、行きにくい」というのが本来の意味。
2DだけのゲームでIrrlicht使っている人はいるだろうか 自分みたいに
「相手に不義理などをしてしまい、行きにくい」というのが本来の意味。
2DだけのゲームでIrrlicht使っている人はいるだろうか 自分みたいに
2011/01/23(日) 21:21:02ID:YJMzrArs
2chで国語のお勉強とかどうでもいいことをw
2011/01/28(金) 12:44:52ID:h1hF4zTu
UDKやUNITYをさわりだけいじってみたけど、マップ作ったり、テクスチャ読み込んでマテリアル作ったりは簡単にできるんだがな。
JRPGみたいにNPC出して会話とかできて、攻撃は剣と弓で、とかゲームシステムの細かい部分になると自力でどうぞ、って事になってしまう。
自分でゲームエンジンを解析して、どこに作り込でいけばいいか理解しないと進めない。
そこからの難しさは一からプログラムで作っているのと大して変わらない。
JRPGみたいにNPC出して会話とかできて、攻撃は剣と弓で、とかゲームシステムの細かい部分になると自力でどうぞ、って事になってしまう。
自分でゲームエンジンを解析して、どこに作り込でいけばいいか理解しないと進めない。
そこからの難しさは一からプログラムで作っているのと大して変わらない。
2011/01/28(金) 13:04:49ID:PLty3v15
ここは何時から、自分のスキル不足を愚痴るスレになったんだっけか?
48名前は開発中のものです。
2011/02/06(日) 22:53:09ID:Wj/nG0G4 公式のニュースを見ると、Irrlichtの本が出たらしい
https://www.packtpub.com/irrlicht-1-7-1-realtime-3d-engine-beginners-guide/book
https://www.packtpub.com/irrlicht-1-7-1-realtime-3d-engine-beginners-guide/book
2011/02/07(月) 12:24:46ID:frFvnJXh
日本語じゃなきゃやだやだ
2011/02/07(月) 18:55:59ID:fLJzwj6q
翻訳しろ話はそれからだ
2011/03/07(月) 10:06:47.35ID:qh2ZqJk3
e-book版が21.59米ドル = 1776円
けっこう安いな
日本語版がでてないとはいえ勝手に訳してwikiにアップなんてしたら怒られるよね
日本語版発売に期待
立ち読み版みたいなのはないの?
けっこう安いな
日本語版がでてないとはいえ勝手に訳してwikiにアップなんてしたら怒られるよね
日本語版発売に期待
立ち読み版みたいなのはないの?
2011/03/07(月) 10:52:14.54ID:wqbMyPz5
怒られるだけならまし。訴えられるレベル
2011/03/07(月) 12:59:48.00ID:CgCeq0X7
>日本語版がでてないとはいえ勝手に訳してwikiにアップ
この努力をなぜ本家HPの日本語化に向けないのか
この努力をなぜ本家HPの日本語化に向けないのか
2011/03/07(月) 23:34:03.44ID:vJg1TFC6
勝手に訳して出版社に持ち込んで交渉したらお金も入るよ。
2011/03/08(火) 02:08:27.79ID:y9E47S1J
しっかり許可取れな?
2011/03/22(火) 22:24:07.27ID:wIdT34ti
RPGは作れますかお?
2011/03/22(火) 22:28:04.69ID:eGhM8788
作れません。お帰りください
58名前は開発中のものです。
2011/04/11(月) 19:08:21.07ID:iyNkOBEH そういや今Irrlichtで作っているのがSRPGだった
どこで作っているかは秘密だが
どこで作っているかは秘密だが
2011/04/12(火) 09:40:45.87ID:skLSxuNi
別に”秘密”とか書かなくても興味ないから
2011/04/13(水) 22:03:37.98ID:JrwSCAfj
はは、つれないなぁ
2011/04/15(金) 12:37:44.90ID:qw90WTA4
書き込むならオープンにする
秘密にしたいなら黙ってるかチラシの裏にでも書いておけ
ただの構ってちゃんだろ
秘密にしたいなら黙ってるかチラシの裏にでも書いておけ
ただの構ってちゃんだろ
2011/04/28(木) 14:03:19.58ID:rrHYWfWd
これから制作するソフト用のエンジンを探しているのですが、
Irrlichtは、マウスカーソルがある所のポリゴンを取得できますか?
CGツールみたいに、オブジェクト中の特定のポリゴンを選択とか
やりたいので
Irrlichtは、マウスカーソルがある所のポリゴンを取得できますか?
CGツールみたいに、オブジェクト中の特定のポリゴンを選択とか
やりたいので
2011/04/28(木) 20:42:22.34ID:3aWJvzTR
2011/04/29(金) 12:42:56.61ID:9o3Js+am
ありがとう!
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
フォーラムの方々に泣くほど感謝。
ハードウェアスキニングのコード
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
2011/05/05(木) 06:31:55.44ID:yjMgcbur
65続き
更にフォーラムのfmxさんの投稿を参考に
convertToTangentsして
Binormalをウェイト*3(4番目は1.0-(合計))に転用しNormalを生き残らせてみた。
まだやってないけどTangentに頂点カラーかマトリクスindexを持たせれば
頂点カラーも生き残らせることができるかも。
本当に本当にフォーラムは必見。
連投ごめん。終わり。
更にフォーラムのfmxさんの投稿を参考に
convertToTangentsして
Binormalをウェイト*3(4番目は1.0-(合計))に転用しNormalを生き残らせてみた。
まだやってないけどTangentに頂点カラーかマトリクスindexを持たせれば
頂点カラーも生き残らせることができるかも。
本当に本当にフォーラムは必見。
連投ごめん。終わり。
67名前は開発中のものです。
2011/07/07(木) 23:25:50.67ID:eWsfc5od Irrlichtのフォーラムの色変わってた!!
2011/07/08(金) 00:27:34.67ID:pPCDjE0q
標準テンプレを差し替えただけかよ!
2011/07/24(日) 20:51:21.02ID:c5QyUL19
2Dゲー作る勉強を始めたんだけど、今までSDLをちょろっと触った程度の知識しかなかったから
画像を思った場所にポリゴンで表示するだけで一苦労だった
チュートリアルサイト見ててもその処理が何をしてて何故必要なのかが説明されてないことが多くて(常識だから?)
理解を得るのにかなり苦戦するぜ。という俺の日記
画像を思った場所にポリゴンで表示するだけで一苦労だった
チュートリアルサイト見ててもその処理が何をしてて何故必要なのかが説明されてないことが多くて(常識だから?)
理解を得るのにかなり苦戦するぜ。という俺の日記
2011/07/25(月) 09:02:37.87ID:MgUklQO7
日記は他でやれ・・・と言いたいが久しぶりのポジティブなレス
応援してる がんばれ
応援してる がんばれ
71名前は開発中のものです。
2011/07/26(火) 10:21:30.82ID:ycUXwhyt irrExtが全然使われていないのって公式からたどり着きにくいからなのか?
そもそもどんな物なのか、よく分からないと言っている人もいる
http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=43064
そもそもどんな物なのか、よく分からないと言っている人もいる
http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=43064
2011/07/27(水) 23:36:11.28ID:bNPHEdBs
テクスチャの透過色(完全に透明)を設定した上で
実際に表示するときに全体的な透過率を設定できるようにしたいんですが全く手立てがつかめません
MaterialTypeの設定だけでは無理そうな感じだとは思うのですが、何か良い方法はありませんか
具体的には、黒を透過色とした画像ファイルをテクスチャに読み込んで
表示させるときに黒以外の部分の透過率を0〜100%で設定したいんです
実際に表示するときに全体的な透過率を設定できるようにしたいんですが全く手立てがつかめません
MaterialTypeの設定だけでは無理そうな感じだとは思うのですが、何か良い方法はありませんか
具体的には、黒を透過色とした画像ファイルをテクスチャに読み込んで
表示させるときに黒以外の部分の透過率を0〜100%で設定したいんです
7372
2011/07/28(木) 17:51:20.52ID:G6+n8kg0 texture->lock()でピクセルを調べて、カラーキーでなければアルファ値を設定することで実現可能な感じがしました
でも手元の環境で想定できるフォーマットはA8R8G8B8のみ・・・他も考えなきゃならないんだろうか
テクスチャ生成フラグにETCF_ALWAYS_32_BITを指定しても常にA8R8G8B8になる保障はないのかな
でも手元の環境で想定できるフォーマットはA8R8G8B8のみ・・・他も考えなきゃならないんだろうか
テクスチャ生成フラグにETCF_ALWAYS_32_BITを指定しても常にA8R8G8B8になる保障はないのかな
74名前は開発中のものです。
2011/07/28(木) 22:34:43.64ID:PCcpUSxP >>72-73
透過色を設定するというか、指定した色を投下したテクスチャを新たに作るメソッドなのだが
IVideoDriver::makeColorKeyTexture
http://irrlicht.sourceforge.net/docu/classirr_1_1video_1_1_i_video_driver.html#aed772902f4fe1185b44ce81b9b0b9add
・アルファテストを有効にしたままマテリアルカラー(または頂点カラー)のアルファを使う
・テクスチャのアルファとマテリアルカラー(または頂点カラー)のアルファを乗算する
マテリアルタイプがあれば良かったんだが、どうやら無さそうだな・・・
>>73で言うようにテクスチャを書き換えるか、シェーダーを使うしか無いかも
固定機能でテクスチャ書き換えずにやるにはIrrlicht本体のソースをいじるしかない
CD3D9Texture.cppを見てみた
テクスチャ生成フラグにvideo::ETCF_NO_ALPHA_CHANNELが指定されていると、
ETCF_ALWAYS_32BITでもR8G8B8になるよ
あと、生成に失敗すると16bitでリトライしているようだ。
テクスチャのカラーフォーマットが指定されたものになっているかは確認したほうがいいと思う。
透過色を設定するというか、指定した色を投下したテクスチャを新たに作るメソッドなのだが
IVideoDriver::makeColorKeyTexture
http://irrlicht.sourceforge.net/docu/classirr_1_1video_1_1_i_video_driver.html#aed772902f4fe1185b44ce81b9b0b9add
・アルファテストを有効にしたままマテリアルカラー(または頂点カラー)のアルファを使う
・テクスチャのアルファとマテリアルカラー(または頂点カラー)のアルファを乗算する
マテリアルタイプがあれば良かったんだが、どうやら無さそうだな・・・
>>73で言うようにテクスチャを書き換えるか、シェーダーを使うしか無いかも
固定機能でテクスチャ書き換えずにやるにはIrrlicht本体のソースをいじるしかない
CD3D9Texture.cppを見てみた
テクスチャ生成フラグにvideo::ETCF_NO_ALPHA_CHANNELが指定されていると、
ETCF_ALWAYS_32BITでもR8G8B8になるよ
あと、生成に失敗すると16bitでリトライしているようだ。
テクスチャのカラーフォーマットが指定されたものになっているかは確認したほうがいいと思う。
7572
2011/07/28(木) 23:31:32.54ID:G6+n8kg0 >>74
調べてくださってありがとうございます
その通りのマテリアルタイプがあれば万々歳でしたね
テクスチャ書き換えでは毎フレーム行うと相当な負荷がかかるようで工夫が要りそうでした
試しに同じ結果になる処理をDXライブラリにやらせたらCPU使用率3%以下で毎フレーム余裕orz
ソースいじる自信もないので保留か
調べてくださってありがとうございます
その通りのマテリアルタイプがあれば万々歳でしたね
テクスチャ書き換えでは毎フレーム行うと相当な負荷がかかるようで工夫が要りそうでした
試しに同じ結果になる処理をDXライブラリにやらせたらCPU使用率3%以下で毎フレーム余裕orz
ソースいじる自信もないので保留か
2011/07/28(木) 23:38:49.94ID:xiHpfsST
テクスチャいじるより、頂点カラーいじったら?
マテリアルタイプは EMT_ONETEXTURE_BLEND にして。
ブレンド/アルファソース情報をMaterialTypeParamに適切にpackする必要あるけど、
まあそこはCD3D9MaterialRender.hのTRANSPARENT_ALPHA_CHANNELを参考に、
SMaterial.h の enum なんかとにらめっこする感じで、あとはアルファソースを EAS_VERTEX_COLOR | EAS_DIFFUSE にすれば modulate してくれる。はず。
あ、最近のバージョンって、マテリアルで D3DRS_DIFFUSEMATERIALSOURCE 選択できんだっけ?
SMaterial.ColorMaterial かな。頂点カラーがダイナミックライトに反応しなくていいなら
これを NONE にして、SMaterial.DiffuseColorのaいじるだけでいいかも。
適当に説明端折ってるんで、ヘッダとかソースとか見つつで。
マテリアルタイプは EMT_ONETEXTURE_BLEND にして。
ブレンド/アルファソース情報をMaterialTypeParamに適切にpackする必要あるけど、
まあそこはCD3D9MaterialRender.hのTRANSPARENT_ALPHA_CHANNELを参考に、
SMaterial.h の enum なんかとにらめっこする感じで、あとはアルファソースを EAS_VERTEX_COLOR | EAS_DIFFUSE にすれば modulate してくれる。はず。
あ、最近のバージョンって、マテリアルで D3DRS_DIFFUSEMATERIALSOURCE 選択できんだっけ?
SMaterial.ColorMaterial かな。頂点カラーがダイナミックライトに反応しなくていいなら
これを NONE にして、SMaterial.DiffuseColorのaいじるだけでいいかも。
適当に説明端折ってるんで、ヘッダとかソースとか見つつで。
2011/07/28(木) 23:50:11.73ID:xiHpfsST
あ、 SMaterial.DiffuseColorのaいじるだけでいいかも っていうのは、
その前段に書いた ONETEXTURE_BLEND の対応をした上で、
頂点カラーをいじるんじゃなくて、マテリアルのDiffuseColorの設定だけで
いけるかも、っつーことね。
その前段に書いた ONETEXTURE_BLEND の対応をした上で、
頂点カラーをいじるんじゃなくて、マテリアルのDiffuseColorの設定だけで
いけるかも、っつーことね。
7872
2011/07/29(金) 12:52:00.50ID:YxVVrSXe >>76
仰るとおりにやってみたら上手くいきました
結果的には以下のようなコードで確認できました(テストではスプライトを意識したものです)
material.MaterialType = EMT_ONETEXTURE_BLEND;
material.MaterialTypeParam = pack_texureBlendFunc( // texureってなんぞ
EBF_SRC_ALPHA,
EBF_ONE_MINUS_SRC_ALPHA,
EMFN_MODULATE_1X,
EAS_TEXTURE | EAS_VERTEX_COLOR);
verts[0].Color.setAlpha(alpha);
verts[1].Color.setAlpha(alpha);
verts[2].Color.setAlpha(alpha);
verts[3].Color.setAlpha(alpha);
速度も損なわずに動作するようなので目的は達成できそうです、本当にありがとうございました
Diffuseを使う方法については思うようにいきませんでした。EAS_DIFFUSEも存在しないようです
仰るとおりにやってみたら上手くいきました
結果的には以下のようなコードで確認できました(テストではスプライトを意識したものです)
material.MaterialType = EMT_ONETEXTURE_BLEND;
material.MaterialTypeParam = pack_texureBlendFunc( // texureってなんぞ
EBF_SRC_ALPHA,
EBF_ONE_MINUS_SRC_ALPHA,
EMFN_MODULATE_1X,
EAS_TEXTURE | EAS_VERTEX_COLOR);
verts[0].Color.setAlpha(alpha);
verts[1].Color.setAlpha(alpha);
verts[2].Color.setAlpha(alpha);
verts[3].Color.setAlpha(alpha);
速度も損なわずに動作するようなので目的は達成できそうです、本当にありがとうございました
Diffuseを使う方法については思うようにいきませんでした。EAS_DIFFUSEも存在しないようです
2011/07/29(金) 14:32:35.72ID:CB0S1CvF
>>78
あ、EAS_DIFFUSE は記憶で書いた後直そうとして間違ったみたいw
EAS_TEXTURE | EAS_DIFFUSE って最初書いてて、ヘッダ確認したら
_DIFFUSE じゃなくて _VERTEX_COLOR だったので直そうとしたら、
間違って _TEXTURE のほう書き換えちゃったみたいw
マテリアルのDiffuseはダメだったかー。そのコードで、
material.ColorMaterial = ECM_NONE;
material.DiffuseColor.setAlpha(alpha);
みたいにすると、ドライバ見る限りはディフューズソースを
マテリアルディフューズにしてくれそうな感じだったんだけど(1.7.2)。
まあ、目的はこなせたようなので良かった。
あ、EAS_DIFFUSE は記憶で書いた後直そうとして間違ったみたいw
EAS_TEXTURE | EAS_DIFFUSE って最初書いてて、ヘッダ確認したら
_DIFFUSE じゃなくて _VERTEX_COLOR だったので直そうとしたら、
間違って _TEXTURE のほう書き換えちゃったみたいw
マテリアルのDiffuseはダメだったかー。そのコードで、
material.ColorMaterial = ECM_NONE;
material.DiffuseColor.setAlpha(alpha);
みたいにすると、ドライバ見る限りはディフューズソースを
マテリアルディフューズにしてくれそうな感じだったんだけど(1.7.2)。
まあ、目的はこなせたようなので良かった。
80名前は開発中のものです。
2011/07/29(金) 19:04:17.17ID:aD6FRI41 ONETEXTURE_BLENDがそんなに万能だったとは・・・
81名前は開発中のものです。
2011/07/30(土) 14:40:03.45ID:gdot1QHZ ドット絵のキャラに吹き出しでしゃべらしたいんだけど、吹き出しってどうやったらだせるでしょうか?
82名前は開発中のものです。
2011/07/31(日) 19:03:44.47ID:ysj+R9C4 え、そんな事聞いてどうすんの?
吹き出しを書いた画像を作って、それを描画した上に文字を出せとか
そういう答えが聞きたいのかい
吹き出しを書いた画像を作って、それを描画した上に文字を出せとか
そういう答えが聞きたいのかい
2011/08/03(水) 21:45:34.89ID:1OUEYNZw
目標は2Dゲーなんだけど、用意された機能でできることの見極め(というか模索)が大変でなかなか進まないなぁ
拡大縮小、反転、アルファブレンドまでならdraw2DImageで高速描画
回転や加算ブレンドが絡むと独自の何でもできるポリゴン描画、というとこまできた
ところで2Dとか自前のポリゴンってシーンマネージャーに触らずとも表示されるんだね
拡大縮小、反転、アルファブレンドまでならdraw2DImageで高速描画
回転や加算ブレンドが絡むと独自の何でもできるポリゴン描画、というとこまできた
ところで2Dとか自前のポリゴンってシーンマネージャーに触らずとも表示されるんだね
2011/08/21(日) 11:11:34.12ID:F+Difsej
addBillboardSceneNode等で追加されている子ノードを
順に取り出して扱うにはどうすればいいのですか?
順に取り出して扱うにはどうすればいいのですか?
85名前は開発中のものです。
2011/08/21(日) 11:29:24.84ID:F+Difsej あげときます
2011/08/21(日) 15:25:08.62ID:wn52FNTh
親子関係を持つのはISceneManagerではなくISceneNode派生
リファレンス読んでないのがばればれだし意味も無く上げんな
リファレンス読んでないのがばればれだし意味も無く上げんな
87名前は開発中のものです。
2011/08/21(日) 16:08:06.46ID:F+Difsej2011/08/21(日) 17:35:29.81ID:4N5xj2Ob
こんなことでなんで面倒な雰囲気になってるのかわからんが、
ISceneNode.h を読むなりリファレンスを読むなりすれば、
childrenを引っ張り出すメソッドがあると思うのでそれを使っておくれ。
parent=0 で追加した連中がよくわからんというなら、
ISceneManager に root node 取るメソッドがあるのでそれ使っておくれ。
CSceneManager の実装的な事を言えば、root = SceneManager のはずだが、
まあ API を使っておいた方が良いだろう。
ISceneNode.h を読むなりリファレンスを読むなりすれば、
childrenを引っ張り出すメソッドがあると思うのでそれを使っておくれ。
parent=0 で追加した連中がよくわからんというなら、
ISceneManager に root node 取るメソッドがあるのでそれ使っておくれ。
CSceneManager の実装的な事を言えば、root = SceneManager のはずだが、
まあ API を使っておいた方が良いだろう。
8984
2011/08/21(日) 18:15:59.25ID:DqBbORdq んなもんないわカス共
調子乗んなよ
調子乗んなよ
2011/09/17(土) 10:20:18.79ID:Nsy1iM/D
irrihitの本ないですか?
自分で触る前に概要だけ把握しておきたい
自分で触る前に概要だけ把握しておきたい
2011/09/17(土) 11:28:19.67ID:N8llzchq
2011/09/17(土) 12:15:29.10ID:ax69YZYg
Unityの本は日本語のものが3冊ぐらい出るのになあ。
93名前は開発中のものです。
2011/10/04(火) 23:17:42.58ID:0k2KN61D なんとはなしにあげ
2011/10/05(水) 00:00:41.38ID:49qjvTSF
2011/10/05(水) 00:14:08.12ID:5QbI06Hj
有志が空き時間に作るものと商業的にフルタイムで開発されているものを比べるのは無意味
2011/10/05(水) 22:04:50.65ID:9b+FJDSe
こんなの過去スレで紹介されていたよね
Irrlicht Engine ? View topic - "AlterEgo" First Adult game in the world using Irr
http://irrlicht.sourceforge.net/forum/viewtopic.php?f=6&t=34558
Irrlicht Engine ? View topic - "AlterEgo" First Adult game in the world using Irr
http://irrlicht.sourceforge.net/forum/viewtopic.php?f=6&t=34558
2011/10/06(木) 13:12:38.93ID:Ir67+dBU
で?
2011/10/07(金) 21:59:13.44ID:y1GWstBC
商用でも使う人は使っているって
2011/10/08(土) 12:35:14.23ID:sFk3CyHn
アクションとかやるんだったらUnityとかの方が楽に気はするけど、
ただ3Dで絵を出したいだけのRPGとかシミュレーションとかだと、
こっちの方がやっぱり楽そう。
フレームワークがかえって足かせになる、とUnityをろくに触ってもいない人が言ってみる。
ただ3Dで絵を出したいだけのRPGとかシミュレーションとかだと、
こっちの方がやっぱり楽そう。
フレームワークがかえって足かせになる、とUnityをろくに触ってもいない人が言ってみる。
100名前は開発中のものです。
2011/11/01(火) 23:32:36.33ID:MVAqFmIZ Unityとの勢いの差はなんなんだ
101名前は開発中のものです。
2011/11/02(水) 14:53:04.59ID:T5ViUgxd Unityは商業ゲームエンジン
IrrlichtはOSSのレンダリングエンジン
IrrlichtはOSSのレンダリングエンジン
102名前は開発中のものです。
2011/11/03(木) 00:49:38.76ID:juQARGZ9 OSSのほうがいいじゃん
103名前は開発中のものです。
2011/11/04(金) 11:24:52.53ID:Gf/7N90y Unityの方が簡単に立派なものが作れる
らしい
らしい
104名前は開発中のものです。
2011/11/05(土) 00:48:25.49ID:2vszTO2X 確かに簡単じゃないな。
DCCからのアセットワークフローも貧弱だし機能もやや古臭いし。
でもゲームは結局自由度が必要だからZlibは大きなメリットだと思うがなぁ。
DCCからのアセットワークフローも貧弱だし機能もやや古臭いし。
でもゲームは結局自由度が必要だからZlibは大きなメリットだと思うがなぁ。
105名前は開発中のものです。
2011/12/11(日) 12:15:52.07ID:ixtV7GeA 1.7.2と1.8 rev4011
EDT_DIRECT3D9でARGB8888テクスチャのlock unlock結果反映される?
EDT_OPENGLなら反映されるけどEDT_DIRECT3D9だとintel nvidia amd 全滅
EDT_DIRECT3D9でARGB8888テクスチャのlock unlock結果反映される?
EDT_OPENGLなら反映されるけどEDT_DIRECT3D9だとintel nvidia amd 全滅
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】習主席とトランプ大統領が電話会談 台湾問題について★3 [ニョキニョキ★]
- 人生初黒星の神童、那須川天心がリング上で土下座 [牛丼★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 中国人「『日本は危ないから行かないように』と言われたが、日本に来たらとても安全だった」 [お断り★]
- 石破前総理「どうすれば台湾有事にならないかを考えるべき」★2 [1ゲットロボ★]
- 【高市悲報】来年、習近平主席がアメリカに「国賓」として訪米。どうするんだよ高市・・・アメリカも敵に回すのか? [483862913]
- 【号外】習近平、米大統領のトランプと首脳会談を行う!日本のの武力による台湾脅しついて共有の追及をする意思統一でおこなう [339712612]
- 【高市悲報】トランプおやびん「偉大な指導者である習近平首席、米国は中国にとっての台湾問題の重要性を理解しています」 [115996789]
- 9歳の男児さん、人生ハードモードすぎておわる、母親の彼氏にバッドでボコボコに殴られておわる [329329848]
- 【高市朗報】高橋洋一「これあまり知られてないんですが、財政が悪化し続けば勝手に円高になります」🤔・・・😰??? [931948549]
- 【速報】足立ひき逃げ犯、精神病持ちだった [329271814]
