1 :
Dr.D :
2006/05/21(日) 00:24:28 ID:HuR5iTxT こんにちは。 ゲームプログラミングはそこそこできるけど、 3Dプログラミングはからっきしです。 サーフェイス?「サーフィン…とは別物だよな、きっと」 行列?「並ぶのは嫌いさ」 Xファイル?「そう言えば最終シーズン見てないなぁ」 そんなレベルの俺ですが、コツコツ作ります。 ではスタート!
2 :
Dr.D :2006/05/21(日) 00:31:49 ID:HuR5iTxT
さて、何から手を付けるべきか…。 とりあえず環境としてはWinXP+VC++6なんだけど、 やはりDirectX弄る必要が出てくると思う。 いきなり直書きはつらい気がするのでライブラリを使って 少しでも楽しようかな、と思います。はい。 ちょいと調べてみたところLunaというライブラリが良さ気な感じがする…。 実際どうなんでせう?誰かオススメの3D用ライブラリご存知でないですか?? 3Dプログラミングそのものの勉強も必要だよね。 ジュンク堂でちょろっとソレ系の本立ち読みしてみたけど イマイチ良く分からなかった。 基本を体系的に解説してくれるような本が良いのだけど、 本の中で作ろうとしているプログラムに必要な命令や概念だけを 掻い摘んで紹介してる、そんな本ばかりのような気がした。 良いサイトが無いか探してるところだけど今のところ収穫なし。 サンプルがDX8とか古かったりするんだよな〜… む、長文になってしまった。
3 :
Dr.D :2006/05/21(日) 00:34:15 ID:HuR5iTxT
Lunaの最新版をDLしてみたが、確かに良さ気。 しかし、言われてるようにドキュメントが…。 サンプルを解析しながら慣れてくしかないんかな…。
4 :
Dr.D :2006/05/21(日) 00:39:16 ID:HuR5iTxT
つうかそもそもどうやって3Dデータを作ればいいんだ? という疑問がなくもない。 M社のドキュメント読んでるとXファイルがゴニョゴニョと 説明が書いてるけど、イマイチよく分からん…。 とにかく、Xファイルを作れば良いんではないか、 と思ってはいるけど、じゃあどのソフトで作るんだ?ってこと。 フリーで使いやすいのってあるのかな? それとも思い切って買うべきか…。 Shadeだっけ?あれって3Dのモデリングのソフトだよね? あれでXファイルとやらは作れるのだろうか…。 実はさっき公式行ってみたけど、どうも分からない。
5 :
Dr.D :2006/05/21(日) 00:41:55 ID:HuR5iTxT
シリーズ機能比較表のところに「DirectX出力」ってのがあって、 それがそうじゃないのか? と勝手に思ってるんだけどどうなんだろ。 …ってこれってProfessionalしか対応してないじゃん! きゅ、99800円?? 買えね…。
6 :
Dr.D :2006/05/21(日) 01:18:47 ID:HuR5iTxT
VectorにXファイル対応を謳ったXモデラーとかいうのがあったので 落として使ってみたが…超不安定。これは使えないな…。
独り語りをダラダラ続けるためにスレ建てたの? そもそも「初心者」ってネット初心者って事?
メタセコはやめとけ Shade、六角大王5、LightWaveなどxファイル出力できるソフトはたくさんある
10 :
Dr.D :2006/05/21(日) 10:21:57 ID:HuR5iTxT
>>8 公式見てみたけどイイ感じですねー。
まだ使ってませぬが。
>>9 何で駄目なんですか?使いづらいとか?
Shadeはビックでデモやってるのを見て「いいなー」と思った記憶が…高いけど。
そう言えばLightWaveも聞いたことあるなぁ。
六角大王はフリー版をちょっと使ってみたけどそんなに使いよくなかったような…。
正直どう違うのか分からんって感じです。
結局慣れ?そんなこともない?
メタセコは個人製作ソフトなんでバグが多い よって市販ソフト使うほうが能率がいいよ 六角大王も市販のやつは悪くないと思う
12 :
Dr.D :2006/05/21(日) 11:21:36 ID:HuR5iTxT
>>11 あ、なるほど。そういうことですか。
今フリー版メタセコ試してましたけど、使い込んでないのでそこまで分かりませんでした。
やはり市販品かぁ〜。
六角大王ってどこかに左右対称のデータしか作れないとか書いてあったような気がするんですけど
有料版はそういうことないんですか?
ところでメタセコで簡単なモデルを作って、
Lunaのサンプルと入れ替える形で表示させてみたけど…。
貼ったはずのテクスチャがない…真っ白。
なんでだろ?
最初Xファイルとはただの頂点データだけのファイルかと思ったけど、
サンプルで最初に読んでたファイル(置き換える前ね)はちゃんとテクスチャ貼られてたからなぁ。
MAXとかXSIなんかをもっていても、ベースのモデリングはメタセコというパターンはけっこう多い。 UVやアニメーションはメタセコだけだとかなり辛いので、必用なものを併用する。 これは駄目だとか決めつけずに、長所を使い分けていくことが重要。
lunaは2005expressでやろうとしたら開発環境さえ作れなかった…orz 今はhsp3でちょっとやっている。
15 :
Dr.D :2006/05/21(日) 16:29:40 ID:HuR5iTxT
>>13 MAX?XSI?聞いたことない…
でも確かにメタセコは人気あるっぽいですね。
バグは怖いけど、ベースはメタセコで行こうかと思います。
つーかUVってまだよく分かってないorz
>>14 なんかLunaって古いSDKじゃないと駄目ぽい(Oct2004)
らしいんだけど、それ入れても駄目ですか?
うちはVC6なので、それに加えてExtras入れたら一応解決されましたよん。
(何故かサンプルの一部はコンパイル通らない||実行してもすぐ落ちるけど…)
16 :
14 :2006/05/21(日) 16:48:07 ID:Z8yFXRns
>>15 自分でわかる分はやったけどダメだった。
古いSDKとかplatformSDKとか入れて設定してみたけど、成功例も聞かないし、
その後もできるかわからないし。
他にもEasy3Dなんてのもあるよ。こっちは試してないけど。
17 :
Dr.D :2006/05/21(日) 17:24:08 ID:HuR5iTxT
2005じゃ使えないのかな? 他に動いてる人いないならそうなのかも。 Easy3D簡単そうで良いですねー。 最初sigファイルってメタセコから吐けないじゃん! って思ったけどエクスポーターがあるんですね。 ちょっと試してみます。
18 :
名前は開発中のものです。 :2006/05/21(日) 21:45:02 ID:ijyNbICl
ゲーム用ならメタセコで十分
ってか、初心者が3Dに手を出すのは無謀すぎ。
>>1 コツコツ勉強する気があるなら、このあたりの本を1ページ目から読んでけ。
「ゲームプログラミングのための3Dグラフィクス数学」
「DirectX9 シェーダプログラミング」
特に前者の本はうちの会社で評判いいし持ってる人多いよ
Lunaみたいなライブラリを使うと、3Dのオブジェクトを表示することはできても、
3Dについて理解できたとはとても言えない状態になると思う。
入門ならばそういうアプローチもあると思うんだが、回り道になるんじゃないかな。
個人的にはDirect3Dのチュートリアル程度で十分事は足りると思う。
22 :
名前は開発中のものです。 :2006/05/21(日) 23:32:53 ID:M/NrJyMW
23 :
Dr.D :2006/05/22(月) 00:33:39 ID:F9eEcJ2u
>>20 さっき本屋うろついてたらそれらしい解説本発見しました<MAX・XSI
メタセコの解説本読んでても他のソフトとの連携について触れてあったりして
確かにどれか一つを選ぶのではなく、使い分けるのが重要そうですね・・
>>21 あー両方ともさっき本屋に置いてましたね。
丁度前者気になったんですよ。これ読んどくべきかなーって。
>Lunaみたいなライブラリを使うと…
確かにそれは思うんですよねー。
2DプログラミングではDXライブラリやら使ってたけど
なんかもどかしかったりして直に弄りたいと思ったことも多々あるし…。
とりあえずDirect3Dのチュートリアルでも読んでみるかー。
中学算数レベルの3D初心者が応援にやってまいりました
連立方程式が解ければ無問題。
クォータニオンが出来れば全く問題なし。
クォータニオンでどうやって当たり判定するのかと毎週100時間問い詰めたい。
>サーフェイス 発音注意
分かっててもサーフェイスと発音してしまう 早いうちに是正しとかないとクセになるな…
えーっと。日曜グラマー?
31 :
名前は開発中のものです。 :2006/05/25(木) 02:28:45 ID:ER7EfL5Y
3Dの箱庭的空間を歩いてみたいのだけど、サイズをどうしていいか わからない。とにかく超巨大な物体としてマップを作ればいいはず? サンプルで作ったマップで、カメラを動かしてみるとあっちゅうまに マップの外へ出てしまう。 環境はDELPHI+QuadrupleD+メタセコイアフリー版 メタセコでX形式で保存するとき拡大比率?が設定できて、一応それで 巨大になるっぽいけど、なんかおかしい 2倍なら問題なく、3倍、4倍に するとポリゴンがチラついたりする
33 :
名前は開発中のものです。 :2006/05/25(木) 12:38:22 ID:gGM/xKcD
H3Tファイルをiアプリ用のD4Dファイルに変換するのが得意な人とかいますか?
お舞ら、日本語で書いてください
35 :
Dr.D :2006/05/26(金) 03:10:49 ID:1nxkG9ce
現在DirectXの勉強中デス
まだライブラリ使うかSDKで組むか決めてないけど…
できれば6月中にはモデルを表示して動かすとこまでは持っていきたいな
>>32 ・信長の野望もどき
・テトリスもどき
・ぷよぷよもどき
・倉庫版もどき
・ボンバーマンもどき
・Wizardryもどき
・ドラクエもどき
・その他ミニゲーム
…ほとんど非オリジナルだなぁ〜
つーかDirectXのサンプルプログラム動かないんですけどぉ〜(´Д`;)
36 :
名前は開発中のものです。 :2006/05/26(金) 03:52:22 ID:RSd9MgwG
最初に何かを映し出すまでが大変。ライトの設定によっては画面真っ暗 だったり・・・ ライトの細かい設定までちゃんと理解しないとけない
今日初めて3Dプログラミングに挑戦してみた(ってもDXライブラリのポリゴン描画だけど) なんつーか、大学受験を思い出したよ。数学数学数学で。 けど、空間内にオブジェクト作って、カメラを自由移動・回転できるようになったら なんだか無性に感動した。
>>35 ひえー、いっぱい作ってますね
ここで公開できるのとかあります?
39 :
名前は開発中のものです。 :2006/05/27(土) 16:38:13 ID:tj5M5VBN
ポリゴンの衝突判定とか面倒臭そう
40 :
名前は開発中のものです。 :2006/05/27(土) 16:40:15 ID:tj5M5VBN
カメラの移動って意外と難しい。 何かオブジェクトを作ってそれを追いかけるようにしないと。 カメラがカメラ自体を追うようにすると真上や真下を向いたりする。
カメラワーク完成。クォータニオンの計算とかめんどくさかった・・・。
外積って便利なのね。昔の人はエロい。いや、偉い。
>>40 俺の場合だけど、カメラアングルはカメラ方向軸を示す単位ベクトルと、
回転合わせるy軸を示す単位ベクトルを取ってやってる。
処理は、ワールド座標のz軸をカメラのz軸に重ねるように回転移動して、
次に処理後のy軸をカメラのy軸に重ねるように回転移動。
ベクトル長の処理を気をつけないと、逆三角関数の定義域エラーとか起こるけど・・・
何かをカメラに追いかけさせればLookAtですぐそっちにZ軸を向けられる よね
俺も早く3D作りたいよ 現在win APIの勉強中・・・まだまだだね
>>43 まずは2Dゲームに挑戦してからの方が良いような気もする。
Win上の初めてのゲーム製作で、 解説書のサンプルプログラムを拡張して3Dやった俺は異端なのか?w 流石に2本目はいろいろ調べながらやってるが(面白いし)。 ポリゴンの表示とビューの設定は、 ライトの設定さえちゃんとしておけばなんとかなるだろ。 あ と は 3D の 観 念 が し っ か り 頭 に あ れ ば 無 問 題。 2Dに寄り道したがる理由がわからん。 言語&ライブラリの使い方として特に難易度が下がるとも思えんし。
DirectX9 SDKって400MBもあるんだが、、、こんなに必要なんだろうか サンプルソースでいいのがあれば助かるけど 解説書のおすすめはどれ? 本格的に取り組むのは初めてだけど無茶苦茶難しいというのが正直な感想。 必死にググってもわかりやすく解説したサイトがない。
DirectXのラッパーはいろいろありすぎてどれがいいかわからない。
>>46 正直、SDKのドキュメントとサンプルで充分
50 :
名前は開発中のものです。 :2006/05/31(水) 19:15:25 ID:IW2LJymj
このスレは珍しく期待できそうだな
sage
初心者たくさんいるはずなのにこのスレの活気のなさってひどい それぐらい3Dは敷居が高くて挫折しやすいものなんだな
>>52 「空気読めない1が立てたクソスレ」なんていくつでもあるからな。
わざわざ相手するほどのこともあるまい。
関連リンクすら張らない、まとめサイトすら作らない。
つまりスレを立てた時点で
>>1 に能力とやる気がなかったということ。
周りが悪いわけではなく、
>>1 が腐っているだけ。
55 :
名前は開発中のものです。 :2006/06/01(木) 21:45:59 ID:LGjRKK4x
能力がないから1は勉強してるんだろう。 腐ってないだろ。 第一、Part2とかでもないのに関連リンクとか
いや、建てた週と翌週だけで逃げた
>>1 は、腐臭漂う極上の腐り具合だ。
ゲームプログラミングはそこそこできるけど、 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 これ本当かね。
>>35 に今まで作ったゲーム群が。
これがホントならデキる人かと。
逃げてないよ。また来るでしょ。
「もどき」ばかりだからな〜 ベーマガ投稿作品級ばっかりなんじゃないのか?
ベーマガが見下される時代か
ベーマガのクオリティは知りませんが、
>>35 のを作れたらけっこうがんばってる人かと。
>>1 の戦闘力を知るためにも、ぜひうpしてほしい。
62 :
名前は開発中のものです。 :2006/06/02(金) 19:02:40 ID:cRnXOq57
> ・テトリスもどき >・ぷよぷよもどき 元々、ぷよぷよはテトリスもどき
63 :
Dr.D :2006/06/02(金) 20:12:17 ID:xfQtE3DH
何かすごい言われようデスなぁ・・^^; 確かにしばらく顔出してなかったのは申し訳ないです。 でも3Dは勉強中でまだアップできる状況じゃないので勘弁してください m(_ _)m ちょっとタスクシステム試してみたいので ぷよぷよあたりをCで書き直してみます。 (これは数年前の作でVBで作った) できたらうpするので2〜3日待ってて下さい。
いたのねw ドラクエかwizの方を見たいかな がんばってくださいなっと
アマに3Dゲームは無理でしょ
尼さんとか海女さんを馬鹿にするな!!
アマにも技術力に大きな差があり、3Dと言っても内容は千差万別。 それを一括りに無理というのは、浅慮も甚だしい。
数学の知識が必要になるのが敷居が高い
プログラマーがいないと話にならないよな 立体キャラクターはつくれるけど 3Dプログラムを覚えようとは思わない 一人で全部抱えるなんて嫌だ
物理シミュレーションとかがややこしい
市販されているゲームの多数がシミュレーションどころか、 モデリングソフト側で定義済みのモーションデータを再生しているだけだが、 どんなゲームを作るつもりなんだ?
数学なんて高校レベルの知識があれば、 それを派生させてくだけだから問題ないだろ。
高校レベルの知識が無い人はどうしますか
ネットの数学サイトで勉強する ……事実そうしようとしてる俺ガイル
高校数学の教科書を丸暗記しているとか、常に100点マンテンとかでなくても、 高校時代の記憶を辿りながら、復習するレベルでいいんじゃないか? ただ3D関係のデバッグは、 デバッガの示す値から問題点を洗い出さなければならない。 ここでツマヅキやすいんじゃないかな。。。
60フレームで物体の動きを1フレームごとに決めなくちゃいけない 重力や慣性や摩擦や衝突や、計算しなくちゃいけないことが山積み 高校生レベルじゃなくて大学生レベルになってくるんじゃないの ゲーム開発のための物理シミュレーション入門 って本を読んでたら 眠くなってきた
そんなにリアルを求めるゲーム作ってるのか? >76 >重力や慣性や摩擦や衝突や、計算しなくちゃいけないことが山積み >高校生レベルじゃなくて大学生レベルになってくるんじゃないの それ、全部 高校ですよ。
大多数のゲームがまともな速度で動くように それらしく見えるようにして余計な計算を省いて作っているのに、 なんでこう馬鹿みたいな勘違いをする奴がいるんだろう? 以前にもマリオのジャンプが物理計算に基づいていると勘違いしているアホがいたが。
マリオのジャンプはたぶん足し算引き算しかしてないだろね
>>78 行列とか微分とか外積とか内積とか
もうお前らそれどこの異世界言語?って感じですが
2DならXYの足し算引き算だけで済むのに
>>80 2Dでもシューティングとかだとバッチリ数学使います。
平面回転の行列(or複素数)は絶対として、弾幕の軌道計算で関数を微分したりも。
あと三角関数/逆三角関数とか。
平面回転じゃなくて、平面上の点の回転てことで。
つまり真面目に誰か小学校算数レベルの俺を助けれと言う話だ(゚∀゚)
マリオのジャンプは放物線でしょ、数学テクニックが使われているはずだ
学校の数学の授業なんてまともに聞いてる人いるのかな 全部聞き流してた、眠たかった
>>83 高校時代とか「こんなもん勉強して将来何の役に(ry」とか思ってたのが
大人になってえらいことになってしまった、と。
家庭教師でも付けて勉強したら?
>>84 物理でしょ。まあどっちでもあんまり変わらんけど。
高校物理を勉強して、各種運動で加速度がどうかかるかってのは知っておいた方が良さそうだ。
いや、正直その辺はわざわざ数学/物理勉強し直さなくても調べれば分かると思うんだが。
>>1 をスルーしつつ、
良スレになりつつある件について
ところで3Dってどのあたりでつまづく?
@ウィンドーが出せない。
A描画関係の初期化ができない。
Bポリゴンが表示できない。
Cポリゴンが思った方向に動かない。
D移動のための物理計算が上手くできない。
EAIが位置関係を正しく認識しない。
F思うようなMAPを用意できない。
G思うようなポリゴンモデルを用意できない。
Hひと通り動くのだが、ゲームとしてツマラナイ。
I3Dなんて楽勝だが根気が続かないwww
サンプルソースから拡張していくのが普通だろうけど、いいサンプルが ないってのを痛感する。DirectXのサンプルはシューティングゲーム ばっかりでそれ以外がまったくない!
3Dなんて楽勝だが思うようなポリゴンモデルを用意できないのでツマラナイ
酔って仕事がススマナイ
テクスチャの楽な貼り方を知らない(´・ω・`)
マップあたりでつまづく。 キャラとの衝突判定ってどうやんの・・・・
腰あたりから下に向かってレイ飛ばして 衝突Y座標に足の裏が来るようにすればええ。
知識的な面で克服できそうなハードルもあるけど、 表示データそのものについてはPGの守備範囲外だし、 絵師に頼むわけにもいかないしちょっとシンドイね。 ゲームとしてベストなポリゴン数&テクスチャー解像度で、 モーション付きのデータを用意してくれる神って、 どこかにいるのかしらんw
98 :
名前は開発中のものです。 :2006/06/07(水) 21:54:51 ID:HiMFR2tt
マップのスケールをどう決めていいか分からん。orz
俺はメートル単位。
俺はフェムトオーダー
>>96 あなたはその神を探す気はないのかな?
やっぱり全部一人で抱えると悲惨だよね
僕が神になる
新世界の神きたー
僕は珍世界の神になる
僕が紙になる
逆三角関数をおしえてください
108 :
名前は開発中のものです。 :2006/06/18(日) 07:26:17 ID:MoG2FV9R
正直このレベルの数学,物理が難しいとか話にならないから. 死ねばいいのに.
J3Dなんて楽勝だがコリジョン(当たり判定)をどの手法でやれば資源を軽く出来るか分らないwww
>>107 逆三角関数とは、三角関数の逆数のことです。
例えば、sinθ=aとしたとき、この式をθについて表すと次のようになります。
θ=sin-1a または θ=arcsin(a)
このような値を満足するθは無限に存在するため、通常は、次の範囲にあるものを代表的なもの(主値といいます)として考えます。
-π/2 ≦ sin-1a ≦ π/2、0 ≦ cos-1a ≦ π、-π/2 ≦ tan-1a ≦ π/2
メソッドなら
double asin(double x) Arcsin(x)、double acos(double x) Arccos(x)、double atan(double x) Arctan(x)
double atan2(double y, double x) Arctan(y/x) 〃
三角関数の計算//pi / 180.0; /* 度 → ラジアン */ 180.0 / pi;/* ラジアン → 度 */
x = sin(deg_r)、y = cos(deg_r)、z = tan(deg_r)
printf("30度の正弦は %f\n", x)、printf("30度の余弦は %f\n", y)、printf("30度の正接は %f\n", z);
逆三角関数の計算
ax = asin(x) * 180.0 / pi;
ay = acos(y) * 180.0 / pi;
az = atan(z) * 180.0 / pi;
printf("正弦が %f になる角度は %f 度\n", x, ax);
printf("余弦が %f になる角度は %f 度\n", y, ay);
printf("正接が %f になる角度は %f 度\n", z, az);
aw = atan2(1.0, -1.0) * 180.0 / pi;
printf("x成分が−1,y成分が1になる角度は %f 度\n", aw);
(出力)
30度の正弦は 0.500000
30度の余弦は 0.866025
30度の正接は 0.577350
正弦が 0.500000 になる角度は 30.000000 度
余弦が 0.866025 になる角度は 30.000000 度
正接が 0.577350 になる角度は 30.000000 度
x成分が−1,y成分が1になる角度は 135.000000 度
「、」のところは改行してください詰め込みましたので 逆三角関数は一例としては角度比較を行うときに使います。 ホーミング性能が良い弾をあえて追尾角度変更の角度制限をして 微妙に当たりにくい弾を作ったり敵を自機を追尾する者と考えたときも使えます 主に aw = atan2(1.0, -1.0) * 180.0 / pi; を使うと良いでしょう 但し、角度比較は単なる内積で事足りるときもあるので気をつけてください
>>110 の追加
deg_r= 30.0 * 180.0 / pi
つまり
deg_r= 角度 * 180.0 / pi
>>112 の修正
deg_r= 30.0 * pi /180.0
つまり
deg_r= 角度 * pi /180.0
>107 逆三角関数。 三角関数にアークってつけろ、あとは、自分で調べろ。
何この呪文の羅列 三角関数とかマジわかんね
>>115 sin(30)=1/2,cos(30)=(√3)/2は理解できるか?
分かんないんじゃないくて、分かる気が無いんだと思うよ
>116 まだ、学校で習ってないと思うから 言っても無駄。しかもルートも知らないと思うよ。 今、学ぶのは大変だと思うから、 実際使えればいいって感じで使い方だけ覚えるのが良し。
>実際使えればいいって感じで使い方だけ覚えるのが良し。 ・・・そんなの無理だろ・・ 英語で言えばアルファベットの読み方知らないのと同じだ 使えさえ出来ないと思う。 sin,cosってそういうもんだろ・・ 引数、戻り値の意味を知らずしてプログラムはできない 概念とかじゃなく物理的に
>>116 わからん
>>118 小学校から引きこもってるから習ってはいないな
と言う訳で勉強してくるよ
俺頭いいからすぐ覚えてくるお!!!!11
それはたのもしい
…あれだな、煽られないと逆に寂しいな でも嘘は書いてないからキリキリ勉強せんとな さすがに一次方程式で止まってるからキッツイわ
>>122 分かんないところココに乗せてミソ
大抵のことはココの連中でも教えてくれるはず
少なくとも俺はそうだ
プログラマーで大事なのは恥を忍んで分んないところを聞くことだ
「自分で考えろ」って言う奴は大抵自身も知らなかったり、
ちゃんと要点をまとめて覚えてない売る覚え連中だから
教えてくれなくなるのは会社勤めて3年経ったりするベテランになったりと
年取ってくる時期だから
早めに若いときは恥かいたほうが良い
>>114 まんまじゃねーか
調べろ調べろってうぜぇ
調べてわからないから聞いてんだよ
>>124 君が逆三角関数を知らないために苦しんでいるというのならその事情を話しなさい
当面必要無いようなら無理に知る必要もない
「ぱそこん教えてください」みたいな抽象的な疑問には応えようもない
「DirectX逆引き大全500の極意」って本を買って、 一週間くらい前からDirect3D勉強し始めてるんですけど、 当たり判定のところでつまづきました・・・ //////////////////////////////////////////// 与えられた3点をもとに、三角形の2辺を導く ↓ この2辺の外積を計算すれば、平面の法線ベクトルが得られる ↓ 法線ベクトルの成分は平面方程式の各係数に対応しているので 平面方程式ax+by+cz+d=0のa,b,cが得られる /////////////////////////////////////////// 理解がおいつかないorz 外積や内積は確かに高校のときに習ったような気がするんですが、 ちゃんと聞いとけばよかった・・・ Direct3Dというよりも3Dのしくみがわかってない・・・みなさん勉強してますねorz
三角形と線分の交点?
3D初心者は一番簡単な「球」で当たり判定してればいいよ。 それで適当なシューティングでも作ってればいいさ。 最初は小難しいことやらないで、自分に分かる範囲から 少しずつ勉強していかないと、すぐに挫折するぞ。
球wwww
当たり判定の取り方、2Dは矩形、3Dは球が基本だとよく聞くね
>3D初心者は一番簡単な「球」で当たり判定してればいいよ。 >それで適当なシューティングでも作ってればいいさ。 知ったかぶりも大概にシル キャラなら球かも知れんが ステージの壁とか球でやる必要ないだろ・・ むしろFPS食って遅くなる しかも球は三次方程式なんだよ 一次方程式で苦戦している子に無理させるな 結局、レイを使う方法(面と垂線の交点)も学ばんといけません それにな、まずは点でキャラ作って当たり判定だろ・・それができて アニメーションさせたりする頃に「キャラの肩が壁に食い込む・・」で球なんだよ 順番にした方が良い、でないとデバックできないプログラマーになるよ
面(三角形のポリゴン)とキャラクターの位置を表す点から その点は面の垂線(法線ベクトル)かどうか判断させる 答えが真なら今度はどれぐらい離れているか その値は面が張られている重心からの法線ベクトルの値を 正の方向とみなして正か負か見る それらが分れば当たっているか? 当たっていないか? 突き抜けているか?分る
>>131 なんか勘違いしてない?
球って楕円じゃなくて、距離だけで判定する真ん丸の球。
それに面との当たり判定を、球でやれと言ってるわけじゃないよ。
3Dを勉強始めて一週間、3Dの仕組みも分かんないのに
当たり判定なんかで躓いてるなら、もっと基本的なことから
やってった方がいいんじゃないのか? って言いたいだけ。
自分の場合はこんな感じ。 @線分のパラメータtを決定(三角形の式と線分の式からtを決定する式を求めておく) Atの範囲をチェック Btから交点を求める C交点から三角形のパラメータu,vを求める Du,vの範囲チェック あくまで線分(or半直線)と三角形との判定だけど。
>球って楕円じゃなくて、距離だけで判定する真ん丸の球。 そんじゃそれの式書いてミソ 結局XYZで三次方程式になるよ 一次方程式うんぬんなのにその式を導けるだろうか ・・・・ もしかしてCASE文やif文で処理させようと考えてる・・まさかね・・
>>132 興味深い判定方法ですが、
御披露ついでに凹状の角での判定方法をご教授ください。
下図ABDでの判定は問題なさそうですが、
A ┃B
─┗━
C │D
Cからの垂線はいずれの面にも乗らないように思えます。
>>135 こんな感じにすれば、三次方程式にならないと思います。
// x0,y0,z0 : 点0の座標
// x1,y1,z1 : 点1の座標
// size_2 : サイズの二乗
dx = x1-x0;
dy = y1-y0;
dz = z1-z0;
if(dx*dx + dy*dy + dz*dz <= size_2)
{
// 当たり
}
else
{
// はずれ
}
>>135 球はどうみても多変数二次方程式。
3Dで簡単に判定できるものの順に
Sphere>AABB>OBB>N-DOP>ConvexHull
そもそもAABBと面の衝突判定なんかめんどくさいんだよ。
面が全部xyz軸に平行であるわけもないんだぞ(ついでに言えば2Dだってそうだが)
if( (x^2 + y^2 + z^2) <= r^2 )
>ID:3eo7HEKQ イ`_
ID:3eo7HEKQは釣りだと思ったんだが・・・
>>140 氏のIDに仮面ライダーがいるw
AABBってAxis-Aligned Bounding Boxes Treeですよね
A ┃B
─┗━
C │D
って厚さが0の壁だとできませんね
まぁ厚さゼロの壁ってあえて作らなくても
よほど速度を必要としない限り壁を2重にすれば良いことですが
A ‖B
=#=
C ‖D
>面が全部xyz軸に平行であるわけもないんだぞ(ついでに言えば2Dだってそうだが) xが正か負か yが正か負か zが正か負か の組み合わせで法線ベクトルの内容から 8パターンメソッド作れば曲面だろうとできますね @x>0、y>0、z>0 Ax<0、y>0、z>0 Bx>0、y<0、z>0 Cx<0、y<0、z>0 Dx>0、y>0、z<0 Ex<0、y>0、z<0 Fx>0、y<0、z<0 Gx<0、y<0、z<0 ちなみにxyz三成分のどれかが0ベクトルの場合は 8パターンのどれかが併用できます。 三成分とも0ならって・・・壁じゃないですし
重力がかかってる場合は xが正か負か zが正か負か と天上か床(坂)か の組み合わせで法線ベクトルから 4パターン+天上、床で作れば曲面でもできることになります @x>0、z>0 Ax<0、z<0 Bx>0、z<0 Cx<0、z>0 ちなみにxz三成分のどれかが0ベクトルの場合は併用 坂になる場合はy成分分移動して上げてやれば良いですし
3eo7HEKQ=x5ZOe6BSなん?
146 :
名前は開発中のものです。 :2006/06/20(火) 21:52:27 ID:q3QYoQKK
>>126 struct VECTOR
{
float x;
float y;
float z;
};
void VectorAdd( VECTOR *vec, const VECTOR *vec1, const VECTOR *vec2);//ベクトル和
void VectorSub( VECTOR *vec, const VECTOR *vec1, const VECTOR *vec2);//ベクトル差
void CrossVector( VECTOR *vec, const VECTOR *vec1, const VECTOR *vec2);//外積
float DotVector( const VECTOR *a, const VECTOR *b);//aとbの内積を返す
147 :
名前は開発中のものです。 :2006/06/20(火) 21:54:00 ID:q3QYoQKK
>>146 int CheckTriangleCross( VECTOR begin, VECTOR end, VECTOR* pos, VECTOR *v)
{
// 平面の方程式より n(法線ベクトル)、d を求める
VECTOR n, p1, p2;
VectorSub( &p1, &v[1], &v[0]);
VectorSub( &p2, &v[2], &v[0]);
CrossVector( &n, &p1, &p2);
float d = -1 * (n.x * v[0].x + n.y * v[0].y + n.z * v[0].z);
// 直線の方程式より a、p を求める
// p = a*t + b
VECTOR a;
VectorSub( &a, &end, &begin);
// tを求めることで、交点を求める
float top = -(begin.x*n.x + begin.y*n.y + begin.z*n.z + d);
float bottom = DotVector( &n, &a);
// 平行判定
if ( bottom == 0.0f) return false;
// tは直線のパラメータ
float t = top / bottom;
148 :
名前は開発中のものです。 :2006/06/20(火) 21:54:59 ID:q3QYoQKK
>>147 // 面と線の交点を求める
VectorMultiply( &a, &a, t);
VectorAdd( pos, &a, &begin);
// 0 = < t = < 1 以外の場合、交差していないので抜ける
if ( t < 0.0f || t > 1.0f) return false;
// 三角形内外判定
for ( int i = 0; i < 3; i++)
{
// 外積を利用して内外判定
VECTOR pn, p1, p2;
VectorSub( &p1, &v[((i+1)==3) ? 0: i+1], &v[i]);
VectorSub( &p2, pos, &v[i]);
CrossVector( &pn, &p1, &p2);
// 法線の方向判定用
pn.x = pn.x * n.x;
pn.y = pn.y * n.y;
pn.z = pn.z * n.z;
// すべての場合の法線が同一方向ならば、p は三角ポリゴン内に存在する
if ( (pn.x < -0.001) || (pn.y < -0.001) || (pn.z < -0.001)) return false;
}
// ここまで来たら交点有り
return TRUE;
}
>>148 // 法線の方向判定用
pn.x = pn.x * n.x;
pn.y = pn.y * n.y;
pn.z = pn.z * n.z;
// すべての場合の法線が同一方向ならば、p は三角ポリゴン内に存在する
if ( (pn.x < -0.001) || (pn.y < -0.001) || (pn.z < -0.001)) return false;
上の部分って↓みたいにならん?
if ( DotVector( &pn, &n ) < 0.0f ) return false;
150 :
名前は開発中のものです。 :2006/06/20(火) 22:49:13 ID:q3QYoQKK
>150 見てもらいたいからってそんなにあげんでいいよ。 ここ過疎だし固定客しか見てない。
検索した方が早い
ここは、なかなかセクシーなスレですねっ!!! 上段はさておき自分の場合、 Sを始点、Eを終点、tをパラメータとする線分の式 P = S(1-t)+Et…@ P0,P1,P2を頂点、u,vをパラメータとする三角形の式 P = P0u+P1v+P2(1-u-v)…A 交点は@とAのPが一致する座標となるから S(1-t)+Et = P0u+P1v+P2(1-u-v)…B ここでパラメータt,u,vのうち、 線分の式により交点の座標が定まるよう、まずはtを求める。 BのS,E,P0,P1,P2はそれぞれx,y,zの次元を持つから、 Sx(1-t)+Ext = P0xu+P1xv+P2x(1-u-v) Sy(1-t)+Eyt = P0yu+P1yv+P2y(1-u-v) Sz(1-t)+Ezt = P0zu+P1zv+P2z(1-u-v) この連立方程式からtをを定める式を導き出してる。 計算コストで言うと、明示的な掛算の回数が少なくなるけど。 ポリゴンの範囲チェックでパラメータを求める分、 割り算の回数が多い。。。まぁ、よく判らないんで放置w
>3eo7HEKQ=x5ZOe6BSなん? 一応、違うと言っときます。
なんでトリ付けてるの? どっか活動中?
> 一応、違うと言っときます。 それは残念。 ID:3eo7HEKQ氏の処理はどの程度うまく動くか判断できなかったのですが、 ID:3eo7HEKQ氏=ID:x5ZOe6BS氏ならうまく動く事確実なので、 そこらへんの細かいお話を伺えると思ったのですが。。。。
157 :
126 :2006/06/21(水) 09:40:41 ID:XQIjdcmw
>>146 さん
直線のパラメータtなどはちょっと勉強不足で、理解できなかったので、
線分と平面の当たり判定は、
/////////////////////////////////
線分 : P1(x1,y1,z1)、P2(x2,y2,z2)
平面 : 平面上の点P0(x0, y0, z0)
平面の法線ベクトル : N=(nx, ny, nz)
線分の端点P1(or P2)が平面の表にある場合は、
P0からP1(or P2)へ向かうベクトルと法線ベクトルとのなす角度が常に鋭角になるので
「((P1-P0)・N) * ((P2-P0)・N) <= 0ならば線分は平面と衝突を起こしている」
/////////////////////////////////
という方法を使わせてもらいました。
(あるサイトで紹介されていた方法なのですが、自分でも理解できたのでこれを使わせてもらいました。)
たくさん書いてもらってすみませんでしたorz
ふむふむ。、
>>146 じゃないが、
>>157 の方法だと確かに平面と線分なら問題はなさそうだ。。
ただ平面というのは無限に広がる面なので、
自分の場合はちょっと使いどころが無いのが残念w
保守
160 :
名前は開発中のものです。 :2006/06/30(金) 09:42:14 ID:JQhm0Yve
>>43 現在win APIの勉強中・・・(・∀・)人(・∀・)ナカーマ!!
いたら教えて。
なんていう本、またはソースで勉強してるの?
ちなみに漏れは、windowsゲームプログラミング(本)。
亀レススマソ。
161 :
43 :2006/06/30(金) 18:43:04 ID:Fh8kUW/J
俺と同じ本だ・・・ 今は諦めてDXライブラリでゲーム作ってるよ・・・なさけねぇ いつかまたwinAPIに触れようと思っている
しかしDXライブラリって簡単かねぇ。 他人のソース読むのがめんどくさいから自分で書くほうが楽でいいわw
マジレスすると超簡単
WinAPIやDirectXを直接叩くより数倍楽。 板ポリにテクスチャ貼って描画するだけでもえらい面倒だよ。
165 :
名前は開発中のものです。 :2006/07/01(土) 15:26:03 ID:p53ONq7r
>>161 いいんだ。ぜんぜん気を落とすことなんてないんだ。
実は漏れも1年くらい前、途中でマンドクセ('A`)なって
一回投げたことがあるから。
だから今回はそん時のリベンジマッチってことになる。
幸先悪い話聞いたな…(´・ω・`)…なんて思わないから
ガンガッテイコウ!!(`・ω・´)
中高の数学には今になって感謝してる。 人生どこで中高の勉強が役に立つかわからんね。
>人生どこで中高の勉強が役に立つかわからんね。 いや、ここで役に立つのはわかる。
168 :
165 :2006/07/02(日) 18:13:42 ID:qyshWDdK
ふぁ。 ようやくウィンドウ作ってそん中に図形描けるようになったぜ!(`・ω・´) PolyPolyline で。 四角形とかの単純な図形を。 ・・・(´-`;).。o0(…急がば回れ…千里の道もはじめの一歩…マックノウッチ…マックノウッチ…)
つ[回転椅子]
つ [まどかひろし]
保守?
173 :
名前は開発中のものです。 :2006/08/16(水) 10:16:36 ID:rq/Dm8hs
174 :
161 :2006/08/22(火) 18:19:49 ID:3gvfnaQX
3Dをやるためについに!C言語からHSPに以降しました・・・なさけねぇ Easy3Dを使えば簡単に3Dゲームが作れるんだね
内心、俺はどこまで落ちていくんだ?うへへへへ とか喜んでいたりして
次はツクールかな
177 :
名前は開発中のものです。 :2006/08/23(水) 22:34:04 ID:piSWrXf+
>>176 俺はそこまでは落ちないよw
絶対にHSPで3Dのゲーム作るから応援してよ
ガンガレ
>>178 ありがちょん
>>179 レベルあがってんじゃんw
モデリングって大変だね・・・みんな何のソフト使ってるの?
ちなみにおれはRiosだけど
定番のMetasequoiaとか 最近はBlenderに手を出してる 機能は豊富だが日本語資料が少なくて辛いぜ
>>181 メタセコは慣れてないなぁ
おれもBlender触った事あるよ・・・資料がなくて諦めたw
>>183 スゲーなぁ
暇があったら見てみよおっと
作りたいゲームが決まりました・・・車で悪い人たち倒すゲームです。カーマゲドンみたいにね♪
185 :
名前は開発中のものです。 :2006/08/25(金) 09:30:46 ID:lMXmC7J1
>車で悪い人たち倒すゲームです 悪い人たちって、まさかただの通行人なんじゃ・・・・
186 :
名前は開発中のものです。 :2006/08/25(金) 23:35:33 ID:fE3sKsfU
>>185 いえいえ、そんな残酷なものは作りませんよ。
今日はちゃっちい重力を追加してみたいと思います
> 車で悪い人たち倒すゲーム 悪人の後ろから忍び寄り… 悪人が歩くタイミングに合わせて直径2〜3センチの車(輪)を転がして… 悪人を転ばすゲームを想像した。
188 :
名前は開発中のものです。 :2006/08/26(土) 00:16:20 ID:Xe1T2ygq
>>187 そう読み取る事もできるねw
自動車で悪い人たちを轢いてやっつけるゲームです
これでいいよね?
最近の若者は発想が怖いなあと思った俺はもう歳か
190 :
名前は開発中のものです。 :2006/08/27(日) 02:57:11 ID:T4cgU/7K
>>189 できない事ができるのがゲームなんだよ!
出血とかはしないようにするよ。
きょうは自動車の動きを車っぽく調整・・・ねみぃ疲れた
ホントに怖いのは 犯罪を犯す奴も、批評する奴も仮想と現実の区別が付かない人間
その発想は無かった。 ゲーム・漫画のせいとは必ずしも限らないとは常々思っているが。 ちょっと心理学関係でググってみる・・・。
体系的に調べたわけじゃないけど分かってきたことを。 詳しいやついたら突っ込み求む。 現実・仮想との区別がつかなくなるというのは どうも受動的なものではなくて、 能動的なもの、若しくは何らかの結果みたい。 例えばアイデンティティ・同一性の崩壊といったストレス要因や その他認知症など精神病によって引き起こされる等。 で、現実を見つめるのは嫌だから その代替として存在するのがバーチャルな世界。 または自殺など。アルコールに依存するのもこの類かも。 ゲームはそういった受け皿の一つになってしまってるようだ。 だから別に何時の時代でも存在しうるものだよなぁ。
むしろ「空想と現実の区別をつける」ことが当たり前になりすぎている。 自分の行動から予想される未来に現実味を感じることができなくなり、 すぐバレる嘘をついたり稚拙な犯罪を継続的に繰り返すことをやめられない。
3行に纏めたのは評価するが意味不明
というか、人間が本質的に持っている空間に対する同質性と ヒトの心情がもつ独特の疎外感とが空間論理の形成において 大きな親密性を齎してると思うよ。 人間の創造性から成り立つ模擬空間の執着点が結局の所は ヒト自身のの思考に還元されてるわけだし。
恥ずかしくないのか?
200 :
名前は開発中のものです。 :2006/08/29(火) 10:55:23 ID:zR1U2plI
>人間が本質的に持っている空間に対する同質性と これは何を意味しているのか。 常識感ぐらいの意味か? >ヒトの心情がもつ独特の疎外感とが この疎外感はなんらかの異常によってもたらされ ものか。 ヒトには昔からあるもの? > 人間の創造性から成り立つ模擬空間の執着点が結局の所は >ヒト自身のの思考に還元されてるわけだし。 この場合、 「ヒト自身のの思考に還元されること」について どう考えているかが書かれていないと 言っていることが判らないが・・・
スレ違いを通り越して、板違いになってるな。 VIPで好きなだけやれば?
そうやってなんでもVIP押しつけて(ry
xsiからエクスポートしたボーンアニメーションファイルを読み込みモデルをアニメーションさせるプログラムを組んでいるのですが、 xsiファイルのsrtとbaseposeの関係が分かる方いますか? いましたら、教えて頂きたいのですが…。
昔のBASICなどのCG本で、ワイヤーフレームから始めたら? あとQBASICとかで、ソースが公開されているのも海外サイトにはある。 チープなできになるなら、いっそのことワイヤーフレームのほうが面白いと思う。
昔ワイヤーフレームが持てはやされたのは、 ハードウェアの描画能力が貧弱だからであって、 今現在ワイヤーフレームをやったからと言って、 ポリゴンに比べて特に楽をできるわけじゃない。
それでもワイヤーフレームなら ワイヤーフレームならやってくれる!
骨だけのMMO作ったりとか 皮は脳内変換or有料
今のハード環境でワイヤーフレームを簡単に描くって結構難しいよな… シェーダを駆使すれば意外とできるような気がせんでもないけど。
3Dゲームのコードを組めても3Dモデルが作れない俺は負け組
>>210 豆腐でいいじゃん
後で誰かにやってもらえば
オレが作ってやるよ。 豆腐ポリゴン
豆腐なら俺も負けねぇぜ
俺なんか三角錐型の豆腐つくれるぜ
じゃあ豆腐で萌えキャラつくったる!
んじゃ、俺豆腐に味噌つけてやるぜ
じゃあ更に豆腐に手足つけてやる。 これでどんなゲームにでも使える。 3DアクションRPG、3Dシューティング、3D格ゲー、3Dエロゲー… __ ヽ|・∀・|ノ ホァッ!! |__| | |
羊羹はおよびじゃないぜ
220 :
名前は開発中のものです。 :2006/09/08(金) 02:48:42 ID:TZNoDZC2
キャラクターを複雑な地形の上を移動できるようにしたいと思い キャラクターは点で、地形はメッシュで衝突判定をとることにしました 今はD3DXIntersectで真上(0,1,0)の方向にレイを飛ばし レイと衝突するポリゴンがあればその衝突位置までキャラクターを移動させ 衝突が無ければキャラクターを落下させています。 この方法だとどれだけ急激な斜面でも、XZ平面上での移動速度は変わらないため 凄い勢いで斜面をかけのぼりますし、斜面が90度以上の傾斜だとメッシュを突き抜けてしまいます また、ジャンプして天井に激突みたいな事をしてもポリゴンを突き抜けます (というかジャンプした瞬間に天井の上に移動してしまう) なんかうまい方法ないでしょうか?ググっても上記の方法しか見つけられませんでした
基本は2Dと変わらない希ガス
キャラの移動に方向ベクトル、速度ベクトル、重力ベクトルを 設定して自前で内積判断する。
自前もD3DXIntersectもやることは同じ。 220はただテンパってるだけ。冷静に考えれば分かるはず。
つか、この辺が3Dゲームプログラミングの面白いところだよな。 仕事で締め切りに追われてるんで無ければ、じっくり楽しむがよい。 とりあえずジャンプ中はレイを飛ばす方向を上下反転すればいいんじゃねーの? あと、接触した場合そのポリゴンの法線をどうにかしてゲットして、急すぎるなら 上れないようにすればいいんじゃね?
垂直になっているみたいな急激な段差がある所は進めない方にした方がよくね 移動後と移動前のy座標の差がある一定以上なら過去の座標に戻しておけばOK
226 :
名前は開発中のものです。 :2006/09/13(水) 20:56:48 ID:XgUJHN5F
ようしがんばるぞ
やっぱりムリだった…
1日もたってないぞw
じゃあやっぱりがんばります うおー!
231 :
名前は開発中のものです。 :2006/11/03(金) 10:18:18 ID:xDG1kc8l
HSPでつくった3Dゲームマダー
>>231 オレが頑張って作ってみたいと思います。
HSP+E3Dでやってみますね
初心者なので勉強しながら・・・
メタセコか六角大王も必須ですよ
234 :
232 :2006/11/04(土) 20:20:35 ID:TEpsugcv
今、主人公のモデリングでメタセコを使ってます。 難しいです・・
えろゲーだけどうpしようか? 残業中のイケメン新入社員と巨乳のお局OLの話。 尻とか触っていくうちに最初は拒絶してるんだけど 最後は恐怖で逃げ出し、それをオフィス内で追い回すってゲーム 女が男を追い掛け回すんだけどな
ソース付きでお願い
3Dアクションアドベンチャーを作ろうと思うんだけど どんなのがいい?
ここなにスレ?
239 :
名前は開発中のものです。 :2007/12/10(月) 15:56:11 ID:1itaeTZx
240 :
名前は開発中のものです。 :2007/12/12(水) 13:24:30 ID:0MUxA3bf
245 :
名前は開発中のものです。 :2007/12/14(金) 13:08:02 ID:F2P1kEGT
適当な立体図形の x , y , z 座標を教えてください。 X = [0,0,1,1,0,0,0,1,1,0,0,0,1,1,1,1]; Y = [1,0,0,1,1,1,0,0,1,1,0,0,0,0,1,1]; W = [1,1,1,1,1,0,0,0,0,0,0,1,1,0,0,1]; ↑たとえば、立方体の例
もう少し詳しく説明してもらえますか? 説明できたなら答えが出るんだろうけど
248 :
名前は開発中のものです。 :2007/12/16(日) 18:39:17 ID:DCVz7I8r
Cg 2.0 Released
http://news.developer.nvidia.com/2007/12/cg-20-has-been.html (機械翻訳)
GeForce8拡張子のための新しいOpenGLプロフィール(gp4vp、gp4gp、およびgp4fp)
これらは幾何学シェーダ、ユニフォームのための「縛-可能」一定のバッファ、織地アレイ、ファーストクラスの整数サポート、およびその他を含む新しいDirectX10クラスの特徴を露出します。
アップルの新しい「ヒョウ」のために、Mac OS X10.5のリリースを支持します。
HLSLへのCgを十字で翻訳する新しいDirectX9プロフィール(hlslvとhlslf)
Cg Standard図書館と標準のCgFX州を含むドキュメンテーション最新版
幾何学シェーダで織地宇宙バンプマッピングセットアップを示す新しい例(幾何学シェーダを通る影のボリューム発生)が一定のバッファ、およびその他を「縛-可能」します。
改良されたコンパイラコード生成
ランタイム性能改良
Cg1.5との互換性
NVIDIA Scene Graph
http://developer.nvidia.com/object/nvsg_home.html ヌビディア場面グラフ
ヌビディアScene Graphソフトウェア開発キット(NVSG SDK)は、場面のグラフベースのアプリケーションを作成するための
オブジェクト指向プログラミングライブラリです。
ほとんどのScene GraphsがOpenGLの固定機能パイプラインの国家管理の周りで設計されました、シェーダが後考えとし
て加えられている状態で。 他方では、NVSGはゼロから、シェーダの周りで設計されました。 NVSGはCgFXを利用します
--シェーダがアプリケーションの間で容易に共有されるのを許容するメタファイル形式。 ViewerVRアプリケーションは、
CgFX効果をモデルとドラッグ・アンド・ドロップして、シェーダでそれをレンダリングするのがどれくらい簡単であるかを示します。
NVSGは開発者が速くて高信頼のGPU中心のグラフィックスアプリケーションを作成するために容易に合併して、
広げることができる包括的なセットのクラスを提供します。 NVSGはVehicle Styling、Volume Rendering、
Broadcast Graphics、およびOpenGL拡張子とGPUリソースのシェーダ駆動のデザインと有効な使用による
フィス/シムスタイルアプリケーションのための理想的なプラットホームです。 また、SDKは、どう有効に
NVSGの特徴を使用するかを示すために完全なソースコードがある多数のチュートリアルを含んでいます。
253 :
名前は開発中のものです。 :2008/01/13(日) 12:45:54 ID:h7uwvpbW
なんか懐かしい感じ。 なんで境界線があるの?
255 :
名前は開発中のものです。 :2008/01/22(火) 05:36:19 ID:NBFa+vA3
すごい こういうマップって先にメタセコイアで作ってもいいんですよね?
マップの作り方は色々ある、メタセコでもかまわない。 事前にテストしてから始めた方が良い。 限界値を見極める為に
>>253 豆腐の大冒険作れるようになるまでどれくらいかかりました?
>>257 これは50行ほどなんで、30分くらいで作ってます。
ツールを使い始めてから半年かな(6ヶ月)、片手間だったから
専念すればもっと速かったかも
最初の頃に訳もわからず試行錯誤の頃が辛かったのか楽しかったのか
概要が見えてくると実に楽しい。
面倒な部分はライブラリにほとんど入ってるから
メインルーチンだけ書けば出来てしまう。
で?
260 :
257 :2008/02/02(土) 16:12:58 ID:roNZN+Y2
>>258 ありがとうございます。
自分も最近3Dに興味持ち始めて、プログラムとか組むとしたら
どれくらいかかるもんなのかなと思って聞きました。
ちょっとした箱庭歩き回れるくらいのプログラム作れるようになるのは
やっぱ3年くらいはかかるのかなー。
上に書いてあるように半年あれば形になる、一年もあれば出来上がる。 やらなければ いつまでたっても出来ない。
>>258 DarkBASICをお使いになってるんですね
定番?のEasy3Dなどを使ってるのかと思ってました
他の環境(?)と比べてどういう感じなのか感想などをお聞きしたいです
やはり情報が不足しているのが壁なのでしょうか?
簡単なのはBASICだから、ゲームの為のBASICを探した 全部調べてDarkBASICが一番簡単で一番使いやすかった。 DarkBASICの情報はすごく多い。 やってみれば解ることだけど
265 :
264 :2008/03/12(水) 23:46:29 ID:5yq0IvjD
リプレイできるようにしました。 キー入力だけ入れるだけですけどね・・・ 当たり判定は良く分からないorz
頑張っているねぇ でもなんか過疎ってるね・・・ここ
267 :
名前は開発中のものです。 :2008/03/13(木) 07:14:28 ID:tvtgasAL
晒しあげ
>>261 良い事を言った気がする
やると思って3日後に飽きてる自分なんか完成した事がない
269 :
264 :2008/03/15(土) 00:03:47 ID:rcPnqTFt
晒しあげかw 恥晒しついでに誘導弾てどうすればいいでしょ?いい方法が思いつかないです。 自分の向きベクトル × (敵の位置のベクトル - 自分の位置のベクトル)の外積で垂直なベクトル出して クォータニオンで垂直なベクトルを回転軸にして一定の角度を回転させて それから回転行列出して自分の向きベクトルを更新する。 最後に自分の向きベクトルの方向に移動させる。 というのを繰り返せばいいのかな?
操作法が… こういうジャンルならFPSっぽいのにしたほうがいいんんじゃないかな。 誘導弾についてはフライトシムでもなければ、そのやり方でいいんじゃないかな。
271 :
264 :2008/03/15(土) 09:32:34 ID:hT5HoexC
操作法はFPSかあ、試しにやってみますね。 誘導弾はこれでもいいですか、3Dだとなんか混乱する・・・え?クォータニオン?行列?なにそれ?な感じなので。
272 :
264 :2008/03/15(土) 12:32:23 ID:hT5HoexC
基本的にreadme付ければいいと思うがw とりあえず初見である程度操作できたよ。 視点の関係で自機の影になって自分の弾が見難いが… ここらへんはどんなゲームにするかによるのかな。 あとなぜか遅い。そんなに重そうな処理には見えないのだが。。 ちなみに当方AMD3000+&GeForce6600GT
274 :
264 :2008/03/15(土) 19:56:49 ID:08Lg19Om
あー重いのはFPSの下のTIMEの数字が多ければ、 シャドウボリュームにシェーダーを使ってないのが原因かも? でも6600GTでも重いのか、うちのRADEON9600なら分かるが・・・ 他には、画面が固まるときはtime2の右に表示されてる 数字が多ければ、当たり判定が原因です。 といってもマップとの当たり判定以外は球でしかしてないから、 重い処理ではないのですが原因不明。
> TIMEの数字が多ければ どの程度の数字なら大きいのかわからんがw70台
276 :
264 :2008/03/15(土) 20:18:45 ID:08Lg19Om
え、多すぎるwwこっちでは10〜16ぐらい ↓で合ってますか? FPS:xx TIME:ここの数字 MOVE:xx TIME:xx
C2D 8400 + ゲフォ8800でTime40〜50くらいだったよ。 起動させたらマウスポインタでてこないし、タスクマネジャで消そうと思ってもそれでもポインタないしであせったw Alt+F4で消せたけどさ
そっか、俺が(ウィンドウスタイルで)FPSスタイルオーダーしたから悪かったのかなorz
あ、Escで普通に消せたwごめんw
281 :
264 :2008/03/15(土) 23:07:47 ID:08Lg19Om
うわ、これは画面カクカクだろうなあ。 6600GTでこれはありえない、DirectXの初期化ミスだと思います・・・。
282 :
264 :2008/03/15(土) 23:15:21 ID:08Lg19Om
>>278 >>279 ゴメソ、マウスポインタはずっと隠してますw
ウインドウが非アクティブのときにはマウスポインタ出す処理入れます。
8800GTSでFPS200前後、TIME45-65だな なんかもたつく
284 :
264 :2008/03/16(日) 01:11:47 ID:Zd/XJ8yY
>>283 ありがとう、うーん原因不明だ・・・こっちのしょぼい環境だとそんな重くないのになあ
あまり躓くようなら、快適に動く他人が現れるまで待って傾向を炙り出すか、 無視して作りこんでいって、ひょんな事で治るのを神頼みするのが吉w
や、現時点で神頼みなんてしてもしょうがないだろ プロファイラの使い方を覚えて、どこが重いか原因をきっちり把握すべし 恐らくPIX for Windowsが入ってるだろうからまずはそれを使ってみるとか それでも駄目なら神頼みしましょ
287 :
264 :2008/03/17(月) 01:46:47 ID:Gb45ohWq
PIX for Windowsの存在初めて知りましたorz SDKがOctober2004だからVersion古いけど、便利な予感。 影のとこも重いなあSetRenderState呼びまくりな上に頂点バッファロック後か前かで時間かかってる。 シェーダーとか使ったほうがいいのかな。
重い描画系処理を省略するオプションを付ければ、ある意味誤魔化せるぞ!
289 :
264 :2008/03/17(月) 23:32:04 ID:fIJH+I4V
ふむふむ、影なし、影あり、影あり(シェーダー)でオプションを付けようかな。 影の処理直すのに時間かかりそうだし、とりあえずそうしてみます。
290 :
264 :2008/03/18(火) 01:22:28 ID:/oraqvBK
劇的に軽くなってるw
shadow=1のままでも60fpsキープ、TIMEは平均6くらい。
>>272 のときは俺のマシンだとTIME120でガックガクだったんだが。
>>290 がんばれ。参考までに、2年前のノートPCで影無しなら40〜50fps出る。
293 :
264 :2008/03/19(水) 01:00:21 ID:QfRrmjh1
>>291 おおw軽くなってるようでよかったです。
こんなに効果があるとは思わなかった、シェーダー使わなくてもいけそうかな。
>>292 ノートPCだと影無しでも60fpsいかないですか、表示しているポリゴン数は
多くないと思うんだけど、ちゃんとオクトツリー作ってないからかも。
294 :
283 :2008/03/20(木) 02:14:23 ID:o9dvFJah
>>290 FPS60、TIME0-1に改善された。
295 :
264 :2008/03/24(月) 23:46:26 ID:aYkUZv90
>>294 ども、8800GTSだと余裕っぽいですね。
ありがとうです。
ああ、ACFAしてて全然プログラムしてないわ・・・
296 :
264 :2008/08/13(水) 12:09:44 ID:vAEoDzYR
297 :
264 :2008/08/15(金) 15:21:08 ID:XgYQW+bv
微妙に進化しているのに好感をもてる
300 :
264 :2008/08/16(土) 13:06:10 ID:tp5lWjsg
>>298 少しずつですが、一通り動くところまではやりたいなと思います。
>>299 単純に相手との距離で移動方向を変えてます。
障害物よけたりとかはできないです。
301 :
264 :2008/08/18(月) 21:11:12 ID:/zPmGGEX
今までモーションはテキストエディタで書いてましたが、Xファイル吐けるフリーのソフト使うことにします。 なんでこんな訳の分からんことしてたんだか(´・ω・`)
303 :
264 :2008/08/24(日) 23:52:15 ID:TT8brOES
マップをすり抜けるバグとか修正したぐらいであまり進まず。
>>302 無知って怖いです><
304 :
264 :2008/11/24(月) 23:15:35 ID:vjsotAKh
何このキモガンダム
306 :
264 :2008/11/25(火) 23:11:03 ID:Ty/WwkWb
きもいですか、自分でもそう思いますW何も分からないのでテキトーにやってます。とりあえず3Dで動くプログラムの勉強したいので。
8ヶ月でこれでは才能が無い事は確定的に明らかだから、 今の内に止めておかないと貴重な時間を浪費した事を後で必ず後悔するよ。
308 :
264 :2008/11/28(金) 00:10:06 ID:chx847ao
趣味グラマーだから気にしてないよ。 気が向いたときに作るだけ。 目障りならもうここには書き込まないことにするよ。
いや、生温かく見守りたいので気にせずこれからも書き込んでくれ
310 :
名前は開発中のものです。 :2008/11/30(日) 19:12:01 ID:8f2td/sM
>>304 なんかゲームオーバー画面の動きが笑えるんだが
ロボットなのにスタスタ歩いてるのが最高に面白い
これってアニメーション付きメッシュなの?
313 :
264 :2008/12/02(火) 22:29:57 ID:RIQxB1Es
>>309 また何ヶ月か後になるかも知れないけど気長にやるわ。
>>310 >>311 わざとそうしているのではないのだけど、まあいっか。
>>312 アニメーション付きメッシュをRokDeBoneで作ってる。
RokDeBoneってモデルはメタセコでつくるの?
315 :
264 :2008/12/03(水) 18:35:05 ID:L+jw1o3T
メタセコでつくってる。六角大王でもできるみたい。
RokDeBoneで1ファイル複数アニメのxファイルってつくれるの?
317 :
264 :2008/12/04(木) 00:06:20 ID:YKu9g5Yq
ちょっとやってみれば分かると思うんだけど、 xファイルに複数のAnimationSetを出力できる。
>>316316 完全別モーションならできます。
ただし、下半身歩き、上半身剣を振るor弓を射るのようなモーションのブレンドの
Xファイルははけないかも。
RDB上だと可能。
モーションのブレンド、分岐の話ね。
メタセコってxファイルが読み込めないんだね メタセコでtiny.xみたいな1枚のパーツマッピングしたテクスチャってつくれるの?
普通の3Dソフトなら可能。 UVマップのことでしょ?
人体モデルとかつくったら、それの展開図とか出力できるんですかね? 展開図を見てグラフィックソフトでテクスチャを書いていけるような
できるよ。 ただし展開機能は現段階では使い勝手が悪いのでプラグイン使ったり自力で調整しないと大変。
>>324 そうなんだ。
とりあえずややこしいなら最初はテクスチャなしでやってみるわ
RokDeBoneで間違ってつくったボーンを削除できないんだが・・・・
いや、オレはC++で普通に動かしたいから・・・・ RDB2でモーションはつくれたけど、複数のアニメセットにはどうやったらできるの? ひとつのタイムラインに複数のアニメパターンを入れるだけ? プログラム側で時間を指定してアニメを切り替えるだけ?
それでもいいんでない? モーション -> 新規空モーション作成で複数モーション作って、xファイルに吐けば 複数のアニメセットもできるけど。
>>328 あおう。ホントだ。ありがとうございます。
このソフトほんとにUserInterfaceとマニュアルがヒドくてわかりにくい・・・・
メタセコとかでモデルつくる場合、モデルサイズの基準みたいのってある? DirectXゲームでモデル配置する場合のキャラサイズやらマップサイズの目安や相場みたいな
俺はそれぞれの環境の単位での「1.0」を1cmとして作業してる。 後のことはプログラマに任せる
1cmって・・・・・・ cmって必要なんでしょうか。 ならばたとえばサルゲッチュみたいなフィールド歩き回るキャラとかなら 高さは何cmなんです?
333 :
264 :2008/12/08(月) 20:53:09 ID:FP495m1U
>>333 あんたプログラムの技術は素人異常に上がってきているが
センスが素人以下なのが残念だw
335 :
264 :2008/12/08(月) 21:18:11 ID:FP495m1U
>>334 うん、今までまともなゲームは一本も作れてないw(完成させたのもなし)
あぁーゲームデザインどうすればいいんだorz
3dモデルってできるだけ原型サイズで読み込んだ方が動かすとき負担がないんじゃなかったっけ?最初にサイズ設定して読めるの?
>>336 ワールド行列に係数いれるだけだから、そんな負担ないとおもうぜ
実際に使う比率が決まったらそのサイズでデータ吐き出せばいいじゃん
339 :
264 :2008/12/15(月) 00:39:44 ID:wdY5bcE9
340 :
名前は開発中のものです。 :2008/12/15(月) 01:06:18 ID:EbC+FZqG
アニメ付きXファイルって、 何もしてないで立ってる状態(アニメじゃない状態)と、 キーを押してある動作をする場合と、 どう切り替えたらいいの?
ん?モーションの再生はできてるの? 何もしてないモーションとある動作をするモーションを用意すればいいんでない?
モーションはできてるのですが、 実際プログラムする場合、何もしてない状態のときは、何もしてないモーションを用意して、それを再生するってこと? つまり、いつも何かのモーションを再生させる必要があるってことですか?
それでできる。 何もしてないモーションを用意したくないんだったら、 再生しているモーションのウェイトを0にするとか。
なるほど。アニメ無しXファイルだと、だたメッシュを描画するだけだったんで、 何もしないときは、そっちのモードがあるのかと思ってました。 ありがとうございます。
まぁライブラリ何を使ってるか知らないけど、 不可を極力抑えたいなら単純メッシュ表示もありかな。
347 :
名前は開発中のものです。 :2009/03/25(水) 16:44:55 ID:pfpspq1b
さて、E3D++ を評価しましょうか
348 :
名前は開発中のものです。 :2009/04/06(月) 12:54:03 ID:LYLapE4H
キャラモデルとモーション入れ替えのみの3Dフィールドない?
保守ッ
350 :
名前は開発中のものです。 :2009/07/08(水) 11:34:29 ID:gjVfEoVw
保守
351 :
名前は開発中のものです。 :2009/07/18(土) 09:30:05 ID:twT0Tal0
戦場のバルキュリアみたいなゲームが作りたいのですが、どうすればいいですか? まじめに考えているのでまじめに教えてください。 やる気はあります。
まず2Dで作る
本当にやる気のある奴はこんな所で質問なんかしない
本当にやる気があるなら、まずはやりたいことが書いてある本を読め、 最低10冊は読め、例題を全部やれ、隅から隅まで読め、穴の開くほど読め。 出来たら、もうすでに作るためには何が必要か理解している。
知ったかの夏 日本の夏
356 :
名前は開発中のものです。 :2009/07/19(日) 01:55:12 ID:FgzbIFWR
> みたいなゲームが作りたいのですが、どうすればいいですか?
まぁあれだ。
プロが何十年も掛かって作り上げたものと同じ物は難しい。
素人なら、素人らしく小さいものから始めなさい。
とても小さくても、初めての完成品までに1年くらいはかかる。
(インベーダーゲーム、テトリスのような
それでも努力すれば完成するから、がんばりなさい。
スレの趣旨である3Dゲームの本質はもっと難しい。
であるが、最近は良い3Dライブラリがあるから、
ライブラリを使えば3Dも2Dと同じに扱う事も可能である、
諦めなくてよい。
始める為に必要なこと(3D)
2Dでゲームが作れること。
3Dの基礎と用語を知っていること。(メタセコイアのようなモデラーを扱えればよい)
数学も必要だから学ぶ事。
始める最初の場所として、素人向きに書かれた本を紹介しておく
14歳からはじめる C言語 わくわくゲームプログラミング教室
http://www.rutles.net/books/217.html
fpsクリエーターとかps2のrpgツクールなんかの 3d対応のツールを使うことからはじめて見ては? ツールが使えるならプログラムするのも楽になるし
>351 まずは自分のスキルと年齢くらいは書いたほうがいいんじゃね?
念のため保守
夏いっぱい頑張ったけど、 オブジェクト作るだけで終わってしまったぜ……
ライブラリ作るだけで力尽きたぜ
もう十月か…… 頭の妄想にゲーム製作が追いつかんぜ
○。・。○。・。○。・。○。・。○。・。○。・。○。・。○。・。○ このレスをみたあなたは・・・3日から7日に ラッキーなことが起きるでしょう。片思いの人と両思いになったり 成績や順位が上ったりetc...でもこのレスをコピペして別々のスレに 5個貼り付けてください。貼り付けなかったら今あなたが1番起きて ほしくないことが起きてしまうでしょう。 コピペするかしないかはあなた次第... ○。・。○。・。○。・。○。・。○。・。○。・。○。・。○。・。○
ついに年越してもうた。 ゲーム完成は遥か彼方で何年たっても完成する気がしない……。 それでも今更手をひくわけにもいかず、 いつか日の目をみることを願いつつ今日も制作を続ける。 このスレを見ている人、どれだけ残っているんだろうか?
書き込みがあれば見に来るが製作はしてないな 俺には無理っぽい
俺も無理っぽい
バカ高い参考書籍20冊以上買った挙句挫折した
俺も俺も
どこまで頑張ったのか? どこで挫折したのか? そこの所を教えて欲しい。
370 :
351 :2010/01/19(火) 20:34:55 ID:lSzuBnWp
とりあえず会社辞めました>< これから3Dゲーム作ります。マジです。
なんの仕事してたのかは知らんが 早まりすぎだと思うぞ
一人じゃ無理だろ 三人くらいはいる
行動力があるのはいいことだ! と無責任に言ってみる。
DXの基本はだいたい理解できたと思ったら数学という新たな壁が現れた
俺も3Dゲーム制作始めました 絵、モデリング、C言語と同時進行でやっていくのが一番効率いいと思った 全てが結構楽しいです
久しぶりの書き込みか……。 まぁ、楽しく作れるのなら良い事だ。 そのモチベを維持してがんばりたまへ。
377 :
375 :2011/05/18(水) 11:10:07.19 ID:KW4C10SM
>>376 ほんまや
一年ぶりの書き込みだったのかww
もちろん超長期戦覚悟で行きます
378 :
375 :2011/05/19(木) 21:12:56.23 ID:GJkHHWK5
なんかやることがどんどん増えていくw 数学と物理も勉強していかないと・・・ 数学はある程度は知識あるけど、物理は初学だから多少時間かかるだろうな
379 :
376 :2011/05/20(金) 03:14:46.05 ID:RKyNEVfT
頭ではポンポン思い浮かぶけど、 そこに辿り着くまでは無数の単純作業の繰り返し……。 ゲーム作りってそんなもんだ。 数学は三角関数あたりが使えるなら十分。 ベクトルも出来れば尚良し。 物理に関しては重力と摩擦さえ押さえておけば大丈夫。 何ゲー作るのか知らんけど。
確かに高度な分野までは要求されないかも知れませんが、 それでも実現させたい事象を数式に置き換えるのは複雑すぎると思いましたw 数学の文章題がいかに簡単か解りました 実に単純に出来ていると。 今2Dの四方にキャラを動かす所を勉強中なのですが解説は全然想いつかないような式を組んでますしw
381 :
375 :2011/05/26(木) 11:24:13.52 ID:xoaAoDEY
やっと構造体、ポインタを何となく理解してきました クラスは解説読みましたがまだ使い方がよく解りません 他人が作った自作ゲームを見てると楽しいですよね ニコニコで色んな人のゲームを見られ、 その人のゲームの仕組みなどの解説を読むと勉強になります CとDXライブラリで行くつもりですが、 HSPとeasy3Dでも結構すごいのを作ってる方が沢山いますね
しかし過疎ってますねw 私が書き込むまで一年間レスが無かったんですから相当です 誰か他に3Dゲームの初心者がいれば情報の交換や進展具合を報告しあえるのに、 現状、私の日記帳みたいになってますし・・・ プログラム勉強し始めてから10日が経ちましたが、本当に少しずつですが、進展しているのを実感できます 第一目標は”僕のなつやすみ”のような田舎を体験するゲームを作ることですね システムより3Dマップを自由に歩き回ることを第一の目標としたいです
図書館でCの入門書を借りてきました 返却期限が2週間なのでそれまでに大体マスターしたいですね DirectX9のガイドブックも借りようと思ったのですが、今の自分には早すぎる感じでしたね それとアクションゲームアルゴリズムマニアックスという本を購入しました 6月中に2Dの作品を一つ作ったらもう3Dに移行しようと思います
できた?
まだ全然ですね;; キャラの移動、ジャンプ、マップとの当たり判定あたりまで無理やり進みましたが、 それぞれを40パーセントくらい理解しただけで、うまく頭で整理できていません 移動、ジャンプを考慮したうえでの当たり判定って難しいですね。組み合わされると難易度がかなり上がります それからサンプルプログラムを見てもまだ一部理解できていない文法的な記述もあります・・・ 私はまだCの参考書をニ、三冊読んだだけですので、C++の仕様なのかも知れないです ネットだけでは纏まった情報を得られないのでアクションゲーを一から順を追って説明している参考書でも買う予定です それと今思ったんですが、サンプルプログラムを読みまくれば経験値稼げそうなので連休はそれに徹しようと思います
作れそうにないな
387 :
名前は開発中のものです。 :2013/10/13(日) 23:22:00.93 ID:ErfX8knQ
dfbn
389 :
名前は開発中のものです。 :2014/12/17(水) 14:05:20.61 ID:lTz5nMg/
3Dデータ用意するのが大変すぎるわ
逆に言うと、3Dモデラーとして売り込みたい人がフリー素材を提供すればいいんだろうな。 タダは嫌かも知れんけど、1体くらいなら広告費のうちでしょ。
まだ作り始めてないみたいなんで自作3dcgレンダラ投下
http://www1.axfc.net/u/3387806 テクスチャマッピングは未実装
ちなみにソフトウェアレンダラです
readmeの80万ポリゴン/秒はc2d e8400(OC 3.6G)上です
衝突判定はポリゴン描画をちょっといじれば多分できる
兄さん、リンク先がエロ広告のあるDLページで、ファイルもZIPってんじゃ もしかしたらウイルスかも…と思って誰もDLしないよ。
心配無用じゃ、 C言語のソースコードが入っておる だけじゃ。