【C++】 DirectX初心者質問スレ Part33 【C】at TECH
【C++】 DirectX初心者質問スレ Part33 【C】 - 暇つぶし2ch185:デフォルトの名無しさん
10/12/30 04:53:03
ライトはワールドのポジションで、法線もワールドに変換してあります。

186:デフォルトの名無しさん
10/12/30 05:26:56
>>183
なんで情報の出し惜しみをするんだろう?
頂点シェーダ部分全部書けよ


一般的なポイントライトだと

float3 vL = ライトのポジション.xyz - 頂点のポジション.xyz;// 光源ベクトル
float lenL = length(vL);// 光源ベクトルの長さ(光源への距離)

// 光の強さ(距離の二乗で減衰させて適当な係数を掛けて調節)
float Light_vol = 100 * dot( 法線, normalize(vL) / (lenL*lenL) ;

Col = Col * ライトの色 * max(0, Light_vol);

187:デフォルトの名無しさん
10/12/31 01:55:49
傾斜に対してキャラクターをクォータニオンで垂直に回転させるソースをくれ

188:デフォルトの名無しさん
10/12/31 04:02:09
うわーやっとうまく行った!
>>186ヒントさんくす!!

189:デフォルトの名無しさん
10/12/31 08:26:48
>>187
クォータニオンなんか使わないで傾斜にそった姿勢行列(傾斜行列)に対して

ワールド→ローカル(傾斜行列)→ローカル(傾斜行列)で垂直に回転→ワールド

でベクトル取得すればいいんじゃね?
後はクォたんでかけるもかけないも好きにしろと思う

190:デフォルトの名無しさん
10/12/31 16:20:07
画面から外れるものは描画されずにGPUが節約されるということですが、
メッシュがカメラから外れる場合は描画ループに入れずに飛ばしてもパワー節約にはなりませんか?
たとえば、マトリックスとかライティング計算とかが省かれて軽くなるとか。

191:デフォルトの名無しさん
10/12/31 16:26:48
そりゃもちろん描画しない分だけパワー節約になる

192:デフォルトの名無しさん
10/12/31 16:33:00
じゃあオブジェクトを大量に作る場合、カメラの近くに来たものだけレンダーしたほうがいいのか

193:デフォルトの名無しさん
10/12/31 17:05:12
まぁ、そんなのは常識の範囲内でさらに一歩進んだ先
描画する描画しない閾値付近で
オブジェクトがパッと消えたり現れたり
或いはLODレベルが切り替わってしまうのをどうにかしようっていうことの方問題になりやすいんだが

194:デフォルトの名無しさん
10/12/31 18:10:56
レンダーターゲットをテクスチャサーフェイスにしようと思っています。
大きすぎるテクスチャだと古いGPUでは対応していないということはありますか?
1024^2でやろうと思っていますが、5年くらい前のPCだともっとサイズを小さくしたほうがいいですか?

195:デフォルトの名無しさん
10/12/31 18:21:01
5年前くらいなら最低でも2048x2048はあるはず

テクスチャの最大サイズはデバイスのCapsから取得できるので
想定値より小さかったらそれに合わせるとかにしとけば良いんじゃ

196:デフォルトの名無しさん
11/01/01 04:17:12
ポリゴンにテクスチャを着けたビルボードを、画面にピッタリ張り付いたようにしたいのですが、どんなマトリックスの設定にすれば良いですか?

197:デフォルトの名無しさん
11/01/01 04:32:38
>画面にピッタリ張り付いたように

もうちょっとゆとり成分を抜いてくれ

198:デフォルトの名無しさん
11/01/01 08:33:13
体力ゲージとかを作りたいって事だろ。・・・たぶん。

199:デフォルトの名無しさん
11/01/01 11:34:23
タイトル画面とかで1枚絵をべたって貼りたいということだと俺は思った

200:デフォルトの名無しさん
11/01/01 11:36:09
そんなのに、ビルボードのポリゴン使わんでもいいやん

201:デフォルトの名無しさん
11/01/01 11:36:09
3D空間で屈折マップをやりたいんですが
毎フレーム、テクスチャはどうやって用意したらよいでしょうか?

202:デフォルトの名無しさん
11/01/01 11:37:57
>>196
これか
D3DXMatrixOrthoLH

203:デフォルトの名無しさん
11/01/01 12:22:03
単純に正面を向いたビルボードを表示したいだけかもよ?

204:デフォルトの名無しさん
11/01/01 14:46:29
>>203
なるほど
だったら
D3DXMATRIX mat = camMat;(ビュー行列ではない)
mat._41 = pos.x;mat._42 = pos.y;mat._43 = pos.z;
的なコードだな

205:デフォルトの名無しさん
11/01/01 16:38:16
>>196 みたいな問いでも、このスレの住人は本能的に数学的な解釈して回答してくれる
ゆとりを生み出すのは、お前らの優しさのせい
このイケメンどもめ。 そして謹賀新年、明けましておめでとうございます


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch