DirectX総合スレ (Part5)
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2006/09/08(金) 23:56:42ID:0F5D1JWX他の言語使ってる奴はいますぐ消えろ
0427名前は開発中のものです。
2006/09/24(日) 19:37:48ID:D7IayF5Tこの記事の後半が参考になると思う
0428名前は開発中のものです。
2006/09/24(日) 19:40:17ID:WXa9HNUr0429名前は開発中のものです。
2006/09/24(日) 20:24:48ID:lOmzOYmw角度で制限って言っても・・・それなりに複雑になりませんか。
背中に背負ったコーン(を半分に切った奴)の中しかボーンが動けないようにするとか?
いい方法があるのなら教えて欲しいのですが・・・。
カプセル同士で髪が体にめり込まないようにする方法をチラっと考えていたんですが、
一方の端を固定したカプセル(頭から延びる髪の一つ目のボーン)と、動かないカプセル
(体に仕込んだカプセル)が接触した場合、髪の方のカプセルをどっち方向にどれだけ
回せば(押し返し処理)良いのかって言うのを求めるのはなかなか難しいですねぇ・・・
0430名前は開発中のものです。
2006/09/24(日) 20:30:44ID:EjtbSy3J0431名前は開発中のものです。
2006/09/24(日) 20:38:13ID:WXa9HNUrもちろんソレは完成してるって前提で話をしてたつもりだが・・まさか?!
0432名前は開発中のものです。
2006/09/24(日) 20:53:54ID:jk8oFInI0433名前は開発中のものです。
2006/09/24(日) 22:15:12ID:lOmzOYmw髪の動きが決め打ちなのが気になったので。
というか、逆にこういうのって先に検討するモノでは無いんですかね・・・
0434名前は開発中のものです。
2006/09/24(日) 22:28:25ID:EjtbSy3J俺はオマケ部分は完成してから作りこむようにしてる。
仕事の場合は最初から仕様に存在する事ももちろんあるが、
趣味でやるときはまず一通り動くものが出来てから考えてる。
とりあえずねじれを考えないのであれば基本的には重力の方向に移動だろう、
途中なんらかの対象にぶつかったときには衝突面の法線をみて、
移動ベクトルと法線の内積の結果と摩擦を考慮して移動させりゃいーんでないかね。
0435名前は開発中のものです。
2006/09/24(日) 23:28:32ID:n7XSrkEJ0436名前は開発中のものです。
2006/09/25(月) 00:06:39ID:NrvaX8S3とりあえず服を着て育毛剤を塗れ
0437名前は開発中のものです。
2006/09/25(月) 01:06:19ID:NHljW9VBデザイナにアニメーション作ってもらう。
スカートにもボーン入れる。
ちょっとした風でなびくようなのも基本的にはアニメーションをいくつか使ってランダムで再生、
大きく方向が決まるところだけはプログラムで方向だけ決めてやればいい。
基本的にデザイナにアニメーションをつけてもらうようにしたほうがそれっぽく(リアルではない)みえるようになると思う。
0438名前は開発中のものです。
2006/09/25(月) 03:07:33ID:nEbV4eUB0439名前は開発中のものです。
2006/09/25(月) 23:26:42ID:QYE7zOPA今流行りのImage Based Lightingみたいな志向ですね
まぁそんなもんなんでしょうね
0440名前は開発中のものです。
2006/09/26(火) 00:26:53ID:t5GR+RIUデザイナーにモーションつけてもらうのは、どちらかというと古典的ですよね?
0441名前は開発中のものです。
2006/09/26(火) 00:44:58ID:rsRPRd4nPlayStation時代からの超古典的な方法です。
0442名前は開発中のものです。
2006/09/26(火) 01:12:46ID:F/nKPMBk変形するメッシュの面単位で当たり判定っていうのは、自分の能力と学力を超えてます。ごめんなさい。
ttp://www.watch.impress.co.jp/game/docs/20060911/vp2.htm
なんだかコレが現実的な手段のように思えてきました・・・
重力の影響を受けるカプセル同士をバネで繋いで、体のカプセルにめり込んだらペナルティ法で押し返す。
というのでどうでしょう。コレが作れたらもっと髪のボーン増やしたくなる・・・服もこれで・・・
0443名前は開発中のものです。
2006/09/26(火) 01:22:40ID:t5GR+RIU好きな方法でやればいいじゃん。
VP2のやつは実際に製品になってるし安心してマネできるだろうよ。
間違ってもモゾモゾと動き続けるような実装にはしないように注意しなね。
0444名前は開発中のものです。
2006/09/26(火) 01:35:48ID:F/nKPMBkまあ適当にバネの力を減衰させれば良いんですよね・・・
0445名前は開発中のものです。
2006/09/26(火) 01:46:11ID:rsRPRd4n0446名前は開発中のものです。
2006/09/26(火) 02:04:14ID:Kf2gYv6b技術畑での流行なんてヨーヨーみたいなもんです たぶん
0447名前は開発中のものです。
2006/09/26(火) 02:08:15ID:t5GR+RIU好意的に読んでみたが、それでも意味が分からなかった('c_`;)
流行ってのは、どうでもいいのもあれば、本当に良くて流行ってるのもある。
そこは自分でちゃんと見極めないと損をするよ。
0448名前は開発中のものです。
2006/09/26(火) 09:59:06ID:WPbuQpBx0449名前は開発中のものです。
2006/09/26(火) 10:51:27ID:RUAaJjPGなめてるんdねすか?
0450名前は開発中のものです。
2006/09/26(火) 16:05:04ID:t5GR+RIUまあそう嘆くな。俺のうぃnXPでも使えナインdあ。
0451名前は開発中のものです。
2006/09/26(火) 19:47:51ID:CLCy2jAZヨーヨーとかミニ四駆って忘れた頃に流行りだすでしょ
0452名前は開発中のものです。
2006/09/26(火) 20:35:05ID:8Apje/tA延々と新規のネタを考え続けながら食っていけるわけねーでし
0453名前は開発中のものです。
2006/09/26(火) 20:57:47ID:st98Ykji0454名前は開発中のものです。
2006/09/27(水) 00:43:41ID:oPt0tdFd今シェーダープログラムを勉強しています。
本を読みながら幾つかサンプルを見てみたのですが・・・
プログラマブル頂点シェーダーって、頂点に対するライティングも自分で実装しないといけないんですよね。
今まで見たサンプルは全部ライトの位置や色を定数で設定しておいて、シェーダー内でトランスフォームする時に
色も計算、みたいな事をやっているのですが・・・
これだと、固定機能パイプラインの時に使えていた、オブジェクトのマテリアルやライトの細かいプロパティが全部
無視されますよね・・・
SetMaterialやSetLightで出来ていた事を自作の頂点シェーダーで実現するのって、物凄く難しいんでしょうか?
スポットライトやポイントライト、それらが複数あった場合等、どうすればいいのかさっぱり判らないのですが・・・
vs1.1で、デフォルトのシェーダーと同じ動きをするサンプルって無いでしょうか。
0455名前は開発中のものです。
2006/09/27(水) 00:48:47ID:JG2xorwT普通にDirectXのサンプルをコピーすればOKじゃん。
とかなんでそういう頭がないんだろか?
0456名前は開発中のものです。
2006/09/27(水) 01:03:18ID:oPt0tdFdどのサンプルがそれに該当するんでしょうか。
LightingVSはvs2.0ですし、他の奴はちゃんとライティングをしてないようなのですが・・・
あ、ちなみに環境はDX9.0です。
出来ればアセンブラで書かれたやつが欲しいです。
0457名前は開発中のものです。
2006/09/27(水) 01:28:16ID:JG2xorwTBasicHLSLがいいんじゃない?
とりあえずこれを書き写してみるだけでどんなことやってるかわかるよ。
ちょっと足りないけど、何をやればいいかすぐにわかるよ。
まずはシェーダを読んで何やってるかわからないのがまずいと思うんだ。
一度わかればこっちのもの。
0458名前は開発中のものです。
2006/09/27(水) 01:31:11ID:kQKFU2wr0459名前は開発中のものです。
2006/09/27(水) 01:36:14ID:0+9eDEBaDX10では廃止されるのになぜアセンブラのコードを求めるのか。
別に悪くはないけど気になった。
アセンブラで書いたからって別に処理速度が速くなったりはしないぞ。
0460名前は開発中のものです。
2006/09/27(水) 01:39:14ID:JG2xorwTめんどくせーよな。
何枚もにたようなもんつくらなにゃならんしポカミスバグ増えるし。
HLSLがいいよね。
0461名前は開発中のものです。
2006/09/27(水) 01:51:27ID:oPt0tdFdありがとうございます、BasicHLSLですか・・・まずはHLSLの勉強からですかね・・・
それにしても 覚えなくちゃいけないことは次から次へとやってきますね・・・
>>459
VS1.1に拘るのは、GeForce3あたりも動作対象にしたかったからで、アセンブラが良いと思ったのは
ネットで拾ったサンプル(アセンブラで書かれてる)に、ちゃんとしたライティングをくっつけたい
と思ったからです
0462名前は開発中のものです。
2006/09/27(水) 02:10:24ID:8Db4Us8Mサンプルも見ない人がアセンブラのシェーダなんか覚えられる訳ない。
誰もハッキリくちには出さないけど、結局はそういうことだ。
HLSLはだいぶ楽にできるし一応アセンブラもできるから
これから勉強するならHLSLが妥当。もちろんVS1.1でも問題ない。
0463名前は開発中のものです。
2006/09/27(水) 04:48:56ID:xvP1WVFa0464名前は開発中のものです。
2006/09/27(水) 09:08:48ID:0+9eDEBaつーかさ流れ的にはVS1.1のアセンブラ>HLSLって時代は流れてるんだから
VS1.1でアセンブラ使って作るってんなら素直にDx8のSDK使いなさいよ。
GeForce3で対応してるからとか一件いろいろなハードウェアをターゲットに
考えて作っています的な思考のやつ結構多いけど、そもそもGeForce3は何年前の
ビデオカードだと思ってるのか。すでに売ってないから入手するのも至難だろ。
世代的にも4世代も前のものだし。
どの程度のゲームを作るのかしらないが3Dがきっちりとしたもの作るなら
面倒な縛りもないDx9世代のグラフィックカード対応でいいだろ。
VS/PS2.0対応のグラボなんて2年前のノートPCにすら積んであるし、
対応ってだけなら1万円札1枚で買える程度のグラボだぞ。
あとDx8は定数レジスタが致命的に少ないから、
ポイントライトが入れられても3つ、その場合ボーン処理が出来ない、
つまり固定機能に比べても汎用面以外圧倒的に劣るって考えたほうがいいよ。
0465名前は開発中のものです。
2006/09/27(水) 09:22:22ID:fX43VNtG0466名前は開発中のものです。
2006/09/27(水) 09:39:55ID:xvP1WVFa0467名前は開発中のものです。
2006/09/27(水) 12:25:42ID:oPt0tdFdいや、その通りかもしれませんねえ
1.1しか動かないボードは切っても良いかもしれませんな
0468名前は開発中のものです。
2006/09/27(水) 13:01:36ID:8Db4Us8Mいやいや俺がまだVS1.1の環境なんで簡単に切られては困る(;´д`)
でも、アセンブラじゃなくてHLSLにはしたほうがいいよ。
0469名前は開発中のものです。
2006/09/27(水) 13:15:14ID:9N9aAOOuリファレンスが充実してきたら大丈夫なのかもしれないが
0470名前は開発中のものです。
2006/09/27(水) 13:46:59ID:8Db4Us8Mシェーダのバージョンが低いほどコンパイルが完全じゃないことがあるね。
0471名前は開発中のものです。
2006/09/27(水) 21:15:09ID:kQKFU2wrCg言語なんてのもあるくらいだしHLSLでいい。
0472名前は開発中のものです。
2006/09/27(水) 23:56:47ID:0+9eDEBa簡単に読める程度にしか命令数がそもそもないだろ。
これがPS2のVUとかなら死ねるが。
0473名前は開発中のものです。
2006/09/28(木) 01:09:42ID:Qut+4z4Rここはサンプルも見れないような初心者が集うところです。
少しは理解してあげてください。マニュアルなんか見ません。
いや、それは嫌味だとしても 初心者にはHLSLだって怪しいのに
VSアセンブラは無理でしょ。変にそそのかさないでください。
0474名前は開発中のものです。
2006/09/28(木) 01:40:40ID:EmxvHeW00475名前は開発中のものです。
2006/09/28(木) 02:20:44ID:43BrdYybとか言われるんだけど、DXUtil.hって昔のヘッダか何か?
0476名前は開発中のものです。
2006/09/28(木) 02:26:06ID:pbZl2D+nそもそも何をビルドしようとしたの?そこらのWebに落ちてるサンプル?
0477名前は開発中のものです。
2006/09/28(木) 02:38:12ID:43BrdYyb0478名前は開発中のものです。
2006/09/28(木) 02:50:11ID:43BrdYybこいつだったわ
0479名前は開発中のものです。
2006/09/28(木) 04:13:38ID:Ks4kfiVt0480名前は開発中のものです。
2006/09/28(木) 12:31:29ID:r3bgliNM複数箇所の回答から一番有用なものを吟味するなんて今や当たり前なのに。
頭が堅くなって時代についていけなくなったんだろうね。
0481名前は開発中のものです。
2006/09/28(木) 12:59:07ID:E+G8+8X8マルチポストするやつは、どこか一カ所にしか返事をかないとか
返事も結果も書かないやつが多いから。
マルチポストであっても、その故を明記していれば俺は許す。
0482名前は開発中のものです。
2006/09/28(木) 13:09:22ID:YQu14luC0483名前は開発中のものです。
2006/09/28(木) 18:42:47ID:nERzszfM確かにマルチポスト推奨はイマドキと言えるかも知れないw
0484名前は開発中のものです。
2006/09/28(木) 19:03:49ID:7exZtWv40485名前は開発中のものです。
2006/09/28(木) 20:08:12ID:4xoDGQZbしかし、2ch内でマルチポストしても、似たようなスレは
見てる人も同じだから意味ないよな。
0486名前は開発中のものです。
2006/09/28(木) 20:21:31ID:oMbAyOJr結局は答えてもらえない確率を高くするだけ。
0487名前は開発中のものです。
2006/09/28(木) 20:31:19ID:7exZtWv40488名前は開発中のものです。
2006/09/28(木) 22:39:14ID:Nlv1qsey0489名前は開発中のものです。
2006/09/28(木) 22:44:09ID:MNRQMggg昔はみるところ決まってた(BBX、BIO100、2ちゃん)から貼る必要が無かっただけで
今は俺、2ちゃんしかみてないからここはここの意見でいいんじゃない?
結局さ、難しい・マイナーな問題って本にも載らないし
載ってたとしてもわからない奴にはその情報がどこに載ってるかわからないし、
技術の伝承は掲示板でしかできないしで色んなところでログ残していくのが一番だと思うよ。
よくでる質問だからっていって話題にしないとしないままどこ探しても見つけられなくなっちゃうじゃん。
0490名前は開発中のものです。
2006/09/28(木) 22:48:56ID:baBONFMD嫌がられてもやるというのなら、好きにすればいいだろう。
0491名前は開発中のものです。
2006/09/28(木) 23:33:48ID:Dk3RCCMg半透明ウィンドウがあるとプログラムがスローダウンしちゃうんだけどなんかうまい方法ない?
0492名前は開発中のものです。
2006/09/28(木) 23:37:43ID:cM5JOSMPマシン買い替え
0493名前は開発中のものです。
2006/09/28(木) 23:41:24ID:anfWJ5Tf「もう一方で回答が出たなら、こっちで答えなくてもいいよな?」って拗ねてんのか?
まぁ今更言ったところで、マルチポストを許さない土壌ができあがってしまっているんだけど。
ちなみに俺はマルチポストしたことないしするつもりもないよ。いろんなところで口をすっぱくして「マルチポストはいけません」って言われてたから。
自分もレスしておいてなんだけど、ゲームプログラマってこういう煽りで流され話が脱線しやすいよね。議論好きだからですか?
0494名前は開発中のものです。
2006/09/28(木) 23:58:14ID:Dk3RCCMgパワーは全然有り余ってる。60fps出てるのが3fpsとかになっちゃう。
DXUT使ってるサンプルは平気なんでソースを見てるんだが、ちょっと挫折気味。
そういえば大航海オンラインも同じ症状出てたかも。
0495名前は開発中のものです。
2006/09/29(金) 00:00:35ID:oMbAyOJr0496名前は開発中のものです。
2006/09/29(金) 00:01:58ID:N5SjyFNE0497名前は開発中のものです。
2006/09/29(金) 00:06:19ID:ueQhqgX3スペック書かずにこう書く奴に限って(ry
0498名前は開発中のものです。
2006/09/29(金) 00:10:47ID:paU00bjAたぶん電源ユニットが500W以上。
0499名前は開発中のものです。
2006/09/29(金) 00:15:11ID:+I5I2Dah0500名前は開発中のものです。
2006/09/29(金) 00:19:34ID:3ckC2oiRやってるのは800x600の画面クリアとfps表示の文字列数個のみだよ。
ちなみに、500Wの電源は持ってないし界王拳も使えない。
>496
なんで別スレッドにするんだ?
0501名前は開発中のものです。
2006/09/29(金) 00:24:29ID:gYSr6WhV0502名前は開発中のものです。
2006/09/29(金) 00:27:16ID:N5SjyFNE昔からの定番みたいなもんなんだよ。
DXUTのサンプルがそうならないってほうが意外だった。
0503名前は開発中のものです。
2006/09/29(金) 00:30:27ID:3ckC2oiRバッファのフォーマットのせいでコピーが発生してるような気がするけど、正直わからん。
>501
すまん、一応配布予定なのでAero限定は無理だ。
0504名前は開発中のものです。
2006/09/29(金) 22:25:53ID:N5SjyFNE0505名前は開発中のものです。
2006/09/29(金) 22:55:00ID:+W9NI1Pp0506名前は開発中のものです。
2006/09/29(金) 23:00:27ID:bQHZkLAr0507名前は開発中のものです。
2006/09/29(金) 23:22:29ID:+I2r6/3e0508名前は開発中のものです。
2006/09/30(土) 00:19:21ID:DBE05lgj0509名前は開発中のものです。
2006/09/30(土) 00:34:44ID:sEeiZqED0510名前は開発中のものです。
2006/09/30(土) 06:08:14ID:5xvehRtzどうもMikotoでの変形結果と同じにならない
調べたらMikotoのボーン変形は、関節部を潰さないようにかなり特殊な計算をしているみたいっすね
これってどうやってるのかな。シェーダーじゃ無理っすかね
0511名前は開発中のものです。
2006/09/30(土) 08:48:50ID:QdcbVNXKクオータニオンの補間がおかしいし、その他問題が沢山あるので使い物にならない。
0512510
2006/09/30(土) 10:27:47ID:5xvehRtzレスどうもっす
申し訳ないっすが、姿勢行列の補間は関係なさそうっす。シェーダーなんで頂点補間の部分は当然自前です
スキニングなんて誰がやっても同じ計算(ボーンごとに変形した頂点座標を、ウェイト値に基づいて再調整)に
なるわけっすが、どうやら他の算出方法もあるらしい。それをお尋ねしたい次第っす
それとも、あまり有名じゃないんすかね。検索しても全く出てこないっすし・・・
Mikotoオリジナルっぽい気がしてきましたわ。一体どうやってるんすかね
0513名前は開発中のものです。
2006/09/30(土) 11:13:00ID:f6Ng8zSYちゃんとやるならそれなりに面倒なコトになるだろうけど、
線形補間でもちゃんと見えるようにデータを作るほうがいいと思う。
0514名前は開発中のものです。
2006/09/30(土) 12:41:48ID:LWd9FNUhこのへんはCG屋さんに聞いてみるのも良いんじゃない?
0515名前は開発中のものです。
2006/09/30(土) 12:58:03ID:ZLzDkOO3間接部の回転角度の補間はクォータニオンで扱って初めてやれる処理なんで
行列の方(つまりxファイル形式)に落とし込んじゃうともう事実上不可能だと思う
実際にはミクロマンのひざ間接みたいな二つの骨の間を埋める小さい骨を何個かつくってる
…はず
0516名前は開発中のものです。
2006/09/30(土) 17:01:55ID:1o8uqwbg以前、mikotoの掲示板で「bdefアンカーによる影響ってどういう計算式?」
っていう質問があって、それに対してゆーり氏が
『秘密です。
っていうのは嘘ですが、
詳しく説明するのもアレなので、ヒントを。
2個以上のアンカーに影響される頂点に対して、
その頂点と互いのアンカーの面との距離で影響力を決定しています。
アンカーの面は最低でも6つありますが、
どの面との距離をとればいいかは想像つきますね?』
って答えてた。
結局、正確な計算式は不明。
0517名前は開発中のものです。
2006/09/30(土) 17:21:25ID:ZLzDkOO3すごくいいことを聞いた
横からd
0518510
2006/09/30(土) 18:15:01ID:5xvehRtz線形補間を詰めた方がイイって事っすね。ゲームですし、線形補間の方が速そうっすしね
ただあの綺麗な曲げは捨てがたく・・・
>>516
引用感謝っす。補間方法では無さそうっすが、ウェイトを決める方法っすね
>>515
なるほど、検索結果と合わせて何となく分かってきたっす
ボーンの回転中心を、頂点が結果的に円を動くような位置へと補間していけばいいんすね
おかげでなんとか出来そうです。皆さんレスありがとうございました
0519名前は開発中のものです。
2006/09/30(土) 19:34:59ID:3Lp8oI6E確かにMatrixの線形補間の方がはやいけど、Quaternionで補間しても
誤差程度しか差は出ないよ。
肘、ひざ、肩とか必要な箇所だけ頂点の補間法変えればよし。
0520名前は開発中のものです。
2006/09/30(土) 21:05:20ID:f6Ng8zSYシェーダーでやるってことを考えるなら色々と最適化を考えても場所ごとに分岐はやめたほうがいい気がする。
ツール系は全部CPUで計算しちまっても問題ないがリアルタイムなゲームだと色々面倒だぞ。
0521名前は開発中のものです。
2006/09/30(土) 21:44:59ID:3Lp8oI6E「やってダメだった」じゃなくて「気がする」って事は
試してないって事でOK?
0522名前は開発中のものです。
2006/10/01(日) 01:15:18ID:ogT2TFR+クォータニオンをマトリクスへ落とすだけでほとんど命令数を使い切っちゃう感じで駄目ですた
なにか最適化する方法があるのかもしれないんだけど頭が悪いのでわかりません
そんなわけなんで骨と骨の間にそれらを半々の割合で球面線形補間した骨をあらかじめ
用意しておいて使うことにしたんだけど、そうすると今度はシェーダーへ渡すマトリクスの
数が2倍近く増えるんでレジスタ数の限界を考えてモデルの方で使えるの骨の数に
かなりきわどい制限がでてきてしまう始末
0523名前は開発中のものです。
2006/10/01(日) 01:24:03ID:oVrgML5A2度も線形補間のコードをシェーダで通すくらいなら
CPUでやったほうがよくね?
ぶっちゃけ簡単だし
0524名前は開発中のものです。
2006/10/01(日) 01:49:58ID:ogT2TFR+最初から用意しておいたほうが速くなる場合もあるね
そういうどーしょもない話がDirectX10だと解消されてくるわけだ
0525名前は開発中のものです。
2006/10/01(日) 01:52:50ID:oVrgML5Aシャドウバッファとかやるときはどうすんだ?
0526名前は開発中のものです。
2006/10/01(日) 03:27:09ID:JJz6bZ2w■ このスレッドは過去ログ倉庫に格納されています