トップページgamedev
509コメント160KB

シェーダープログラマが集うスレ

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/11/08 11:06ID:???

       ∧ ∧      / ̄ ̄ ̄ ̄ ̄ ̄ ̄
       (,,・∀・)    <  ゲームにもシェーダーの時代到来でち♪
       @_)      \_______


バーテックスシェーダーとかピクセルシェーダーとかを語りまくるスレ。
0376名前は開発中のものです。2008/06/28(土) 11:15:16ID:tosfZjpq
3Dソフトの制作なら、GLSL方面で需要があると思う。
03773732008/06/28(土) 15:32:53ID:Etm+Tm68
>>374
結局、FragmentLinker は無視した。
要求するハードのレベルが上がるが、Static Flow で十分な速度が出るね。
03783752008/06/28(土) 16:02:21ID:fY/TNmFQ
>>376
なるほど。
ありがとうございました!
0379名前は開発中のものです。2008/09/05(金) 11:10:20ID:opuLC8Al
0380名前は開発中のものです。2008/10/07(火) 10:01:09ID:bg3HdY5i
今更だがDirect3D10対応のFXComposer2.5出たんだな
しかしVistaはクラシック表示にしないと画面ががくがく言うんだが・・・
0381名前は開発中のものです。2008/10/07(火) 16:07:47ID:FXHkjiHp
>>380
スピーカー付きのモニタ?
0382名前は開発中のものです。2008/10/07(火) 16:16:19ID:bg3HdY5i
え?
0383名前は開発中のものです。2008/11/05(水) 12:06:16ID:xt6arfcs
ワロタ
0384名前は開発中のものです。2008/11/15(土) 23:31:52ID:ap9OL1do
RendermonkeyでテクスチャをTexturesaverで保存しようとすると
「this extension is not supported」って出て保存できないんですけど
これはまだ対応してないってことですか?
0385名前は開発中のものです。2008/12/07(日) 17:25:48ID:S/cnf1Kb
過疎るな
>>375
うちは、画像処理にDirectX+シェーダを利用している。
0386名前は開発中のものです。2008/12/21(日) 03:20:10ID:um8Jl1Wm
このスレできたの7年前かすげえな
0387名前は開発中のものです。2009/01/26(月) 06:50:15ID:T85wc80R
ちょっと素人の素朴な疑問なんだけど、
PS3とXBOX360のシェーダって、360の方が優れてる気がするけど、
DirectXが優れてるからって事?
0388名前は開発中のものです。2009/01/26(月) 08:08:15ID:qaaV08Zq
それ質問じゃないよ。

ttp://it.nikkei.co.jp/digital/news/index.aspx?n=MMITew000002052007
博識そうな人にコレと似たような事を言って貰いたいんでしょ?
0389名前は開発中のものです。2009/02/14(土) 23:02:57ID:Q2OHIbwY
これからプログラマブルシェーダ覚えようと思うのですが,
おぼえるシェーダ言語は意識して選んだ方が良いでしょうか?
言語間で違いが大きくあるか知りたいです

あと,他に覚えるにあたってお勧めの方法などあれば教えてください
0390名前は開発中のものです。2009/02/14(土) 23:39:29ID:hPf9zE7f
選ぶもなにもHLSL以外の選択肢は、ほぼ無いと思うが。
OpenGLで使いたいとかなら話は別だが。
0391名前は開発中のものです。2009/03/17(火) 19:07:24ID:/uOxlyYd
RenderMonkeyを使っていると、ひとつのモデルをマテリアルごとに分割して扱うことができないのですが、仕様でしょうか?

例えば3つのマテリアルになっているモデルがあるとします。
これら、それぞれのマテリアルにそれぞれのシェーダを書きたいのですが、どうしても分解して扱う方法が見当たらないのです
0392名前は開発中のものです。2009/03/18(水) 01:17:08ID:ORRRTbtu
>>390
別にCgとかでもよくね?
そこでなんか足りないと思ったらHLSLでもいいわけだし。
0393名前は開発中のものです。2009/03/27(金) 02:22:52ID:2N4K/AeA
>>389
WindowsならHLSL。
MacやLinuxならしらん。

覚えるには実際に自分で書いてみるのが一番だよ。
教材には今ぎれさんの本をお薦めする。
03943752009/04/10(金) 01:02:32ID:6sqPilb8
>>385
ありがとうございました!
0395名前は開発中のものです。2009/04/26(日) 20:30:38ID:VIWAMU8v
NVIDIA以外のHLSLコンパイラってあります?
NVIDIAのはエラーで起動できない
0396名前は開発中のものです。2009/04/26(日) 21:17:23ID:nXh94hPn
今ぎれさんの本って何?
0397名前は開発中のものです。2009/04/26(日) 21:36:35ID:zA4RMNdD
http://www.amazon.co.jp/dp/4839912475
0398名前は開発中のものです。2009/04/26(日) 22:17:35ID:uLkWrvqM
>>395
DirectX SDKに付属してます
0399名前は開発中のものです。2009/06/03(水) 15:48:48ID:2zPe6Zzl
>>395
FX composer2.5はDX10用
2.0でも使ってみれ
0400名前は開発中のものです。2009/06/03(水) 18:42:40ID:q4f+EAIt
>>399
10じゃなくても2.5使えるだろ。

XPでつかえてるし。
0401名前は開発中のものです。2009/06/07(日) 15:37:19ID:tyrikY/5
2つのfxファイルで同じ目的で使用している変数があるのですが、
こういう場合は、D3DXCreateEffectPoolというインターフェースを使うと
変数を共有できるようになるみたいなので、試してみたのですがうまくいきません。
(片方のシェーダでしか変数が適用されていない状態です)
どこがまずいのか指摘していただけると助かります。

//ヘッダーファイル側
LPD3DXEFFECTPOOL pPool;//D3DXCreateEffectPoolというインターフェース

//ソースコード(初期化)
D3DXCreateEffectPool(&pPool);//D3DXCreateEffectPoolというインターフェース

D3DXCreateEffectFromFile( pDevice
,"effectA.fx" //エフェクトファイルA
,NULL, NULL, 0
,pPool //パラメーターのプール
,pEffectA //エフェクトA
,NULL)))

D3DXCreateEffectFromFile( pDevice
,"effectB.fx" //エフェクトファイルB
,NULL, NULL, 0
,pPool //パラメーターのプール
,pEffectB //エフェクトB
,NULL)))

Handle_matWVP = pEffectA->GetParameterByName(NULL,"matWVP");//名前からハンドルを取得する


//ソースコード(描画)
pEffect->SetMatrix(Handle_matWVP,&matWVP );//変数に行列をセットする
0402名前は開発中のものです。2009/06/07(日) 15:39:12ID:tyrikY/5
上の続き

//fxファイルA
shared float4x4 matWVP;

//fxファイルB
shared float4x4 matWVP;
0403名前は開発中のものです。2009/06/11(木) 23:25:47ID:fivqDc+3
その方法で間違ってないと思う。
駄目な理由は、別な面を探した方がいい。
0404名前は開発中のものです。2009/07/24(金) 11:46:07ID:Crb0CIfT
いくら何でもこのスレ過疎りすぎじゃね?
日本にシェーダープログラマーはいないのか
0405名前は開発中のものです。2009/07/24(金) 17:01:14ID:MpGTDJVk
あえて語るようなネタなんてあるか?
基礎的な事はShaderXとGPU gemsみりゃいいだけだろう。
0406名前は開発中のものです。2009/07/29(水) 21:21:58ID:3ki9XIb0
当方デザイナです。
今、プログラマブルシェダーを勉強中です。

RENDER MONKEYで編集したFXファイルを
MAYAに読み込ませようとしているのですが

RENDER MONKEYで吐き出したFXファイルが
うまく表示できません。

マニアルには
ViewProjection を WorldViewProjection に変更して使うと
あるのですが、
これはどういうことなのでしょうか?
0407名前は開発中のものです。2009/07/30(木) 02:09:07ID:ADyNrhfb
RENDER MONKEYは使ったことないけど、吐き出されたFXファイルにViewProjectionってのが多分どこかにあるから、それをWorldViewProjectionに書き換えればいいってことだと思うよ
0408名前は開発中のものです。2010/02/22(月) 18:00:24ID:z44rOPDc
>>88
すみません、具体的に教えてください。
シェーダークラスはメッシュデータを受け取ってレンダリングするということですか?
0409名前は開発中のものです。2010/02/23(火) 11:48:11ID:ZkwIDJ3W
8年越しのレスキタ━━━━━━(゚∀゚)━━━━━━!!!!
0410名前は開発中のものです。2010/02/23(火) 12:05:30ID:JdqULkeY
>>88はご存命だろうか
0411名前は開発中のものです。2010/04/16(金) 19:26:08ID:g8v0JgCY
シェーダプログラマのみんな!
もっと元気出していこうぜ!
0412名前は開発中のものです。2010/04/23(金) 11:42:48ID:qjgTE3r5
WiiウェアでBIT.TRIPってゲームがあるんだけど、
リアルタイムでアンビエントオクルージョンをやっているように見えるんだよ。
ttp://bittripgame.com/
でもWiiの性能でそんなことできるんだろうか。
本当にアンビエントオクルージョンか自分にはちょっと判断できないので誰か確かめてください。
0413名前は開発中のものです。2010/04/23(金) 15:55:28ID:C2z/wQ0V
そう思う部分の動画でも貼ってくれないと
「そんなもん知るか」
としか答えようがない。
0414名前は開発中のものです。2010/04/23(金) 16:07:48ID:uxgMIkX/
BIT.TRIP RUNNER(未発売)
ttp://bittripgame.com/bittrip-runner.html
うねうね動いてる灰色のデカイ敵

BIT.TRIP CORE
ttp://bittripgame.com/bittrip-core.html
背景オブジェクト
0415名前は開発中のものです。2010/04/23(金) 17:02:02ID:C2z/wQ0V
正直、その動画を見ても、リアルタイムで処理してそうなとこは
どこのことなのか分からない。

COREの方は背景で動いている部分がほとんどないし、RUNNERの方は
穴から出てくるイモムシみたいなやつのことだと思うが、陰影が変化してる
ようには見えない。
0416名前は開発中のものです。2010/04/23(金) 17:13:11ID:uxgMIkX/
形状の谷間(キューブとキューブの繋ぎ目)にぼやっと陰影がかかっているよね?
そのことを言っているんだけど。
繋ぎ目だけじゃなくて、灰色の芋虫がはい出てきた穴の縁部分も、芋虫のポリゴンの影響を受けて
うっすら陰影のグラデがかかっている。
0417名前は開発中のものです。2010/04/23(金) 18:52:41ID:lUZXjqCs
そんぐらいIntel Pentiumプロセッサ上での
ソフトウェアレンダリングでもできる。
0418名前は開発中のものです。2010/04/23(金) 19:03:08ID:uxgMIkX/
具体的にどういうアルゴリズムで?
0419名前は開発中のものです。2010/04/23(金) 19:07:19ID:lUZXjqCs
1. いろいろキャッシュしまくる。
2. マルチテクスチャ。
>繋ぎ目だけじゃなくて、灰色の芋虫がはい出てきた穴の縁部分も、芋虫のポリゴンの影響を受けて
よくある影描画アルゴリズムだろう。
0420名前は開発中のものです。2010/04/23(金) 19:19:13ID:uxgMIkX/
キャッシュって例えば何を? そのキャッシュを何に利用するの?
あなたが言っている影描画アルゴリズムというのはシャドウマッピングのこと?
でもあれは光源と反対方向にオブジェクトのシルエットがくっきり映るものであって、
私が言っていることとは毛色が違う。
0421名前は開発中のものです。2010/04/23(金) 19:56:00ID:4PZyJpGQ
こういう返事がくると黙りこむあたり、何もわかってないんだろ
何でも「よくある」と書きたくてしかたない
0422名前は開発中のものです。2010/04/23(金) 20:25:08ID:C2z/wQ0V
>>416
キューブの陰影は、最初から頂点カラーがそういう色になっているだけじゃないの?
穴の縁の部分は動画ではよく分からんが。

まず、基本的なこととして、動かない物体の影やら陰影なんてものは
リアルタイムで計算する必要がない。
どんなにリアルな陰影がついていようと、事前計算できるもの。

同様に、インタラクティブ性がなくて決まった動きしかしない物体も
リアルタイムで計算する必要がない。
アニメーションに頂点カラーやテクスチャの変化も含まれるだけ。
0423名前は開発中のものです。2010/04/23(金) 21:01:00ID:uxgMIkX/
遮蔽度の高そうな頂点の頂点カラーを暗くしたのをデータとして保持しているだけってこと?
0424名前は開発中のものです。2010/04/23(金) 21:03:13ID:uxgMIkX/
×遮蔽度
◯閉塞度
0425名前は開発中のものです。2010/04/23(金) 23:15:03ID:Vv9wpow9
PSSMの本家サイトのサンプルコードのモデルの頂点にはアンビエントオクルージョン項が含まれてて、
簡単なライティングでちゃんとAO感が出てたよ。
0426名前は開発中のものです。2010/04/23(金) 23:56:09ID:ZXmesx5K
最近の子はリッチな環境で難しく考えることに慣れすぎてる感はある。
少ないリソースの中で如何によく見せるかって技術はおっさんの方が長けてるよな。
0427名前は開発中のものです。2010/04/24(土) 00:39:59ID:d/r4hXs0
あるあるw
0428名前は開発中のものです。2010/04/24(土) 15:13:06ID:Xmby99Pm
そしたら,あんたらは”最近の子”にそのうち超えられちゃうねww
0429名前は開発中のものです。2010/04/24(土) 21:26:05ID:F4QObDhr
そりゃそうだろ。
そういう業界だし。
0430名前は開発中のものです。2010/04/24(土) 21:28:29ID:hqMcDvhk
せっかく過疎って静かだったのに
0431名前は開発中のものです。2010/04/25(日) 14:05:07ID:9JIqTsJC
最近NWは触ってないから出来るかはうろ覚えだけど、
負の色の(黒い色)のポイントライトを遮蔽する部分に置けば似たことできるんじゃないかね
0432名前は開発中のものです。2010/04/25(日) 20:14:02ID:XR0+MMHI
低解像度のZテクスチャを作って、上下左右のピクセルのほうが手前だったら1加算とかで
それっぽくならんかなあ。
0433名前は開発中のものです。2010/04/26(月) 04:31:41ID:ogOB0A3l
>>432
そういうアイデアの延長線がSSAOだな
0434名前は開発中のものです。2010/04/26(月) 09:15:05ID:OdPbzt9V
まあWiiじゃそんな芸当はできないんだけどな
0435名前は開発中のものです。2010/04/26(月) 10:08:06ID:VZ4/K9Ds
前から思ってるけどAOは一次レイが当たった地点から
180度の超広角度のカメラで半球レンダリングすれば遮蔽率がハードウェアで求まるよな。
全ピクセル一度に並列に計算すればあっという間だろう。
このアイディアを好きに使っていい。
0436名前は開発中のものです。2010/04/26(月) 10:15:14ID:m73wbbUc
それただのSSAOだから
0437名前は開発中のものです。2010/04/26(月) 11:33:10ID:CA7fzfSf
>>433
というか、WiiでSSAOっぽいことをするとして>>432の方法で近似できんかな、と。
ピクセルの比較ができりゃいいんだからPS2でも実装できるか。
まあ、荒すぎて実用に耐えない気もするが。
0438名前は開発中のものです。2010/04/26(月) 13:42:31ID:YZYpPhAg
Light propagation volumesを実装したいと思ってるんだが
理論を詳しく説明できる日本人はいないものか・・・
原文を読んでも俺の英語力では理解できないぜ

RSMからの光源を3Dテクスチャにポイントレンダリングして
SHに変換して伝搬させるとかそんな感じだろうか?

日本にはシェーダーの最先端をゆくスレッドって無いのか
0439名前は開発中のものです。2010/04/26(月) 18:44:51ID:q9PPgRR+
難しいことしてるんだね・・・
日曜プログラマには遠い世界だ・・・
最先端を行くシェーダプログラマさん、応援してます!
0440名前は開発中のものです。2010/04/26(月) 23:50:14ID:OdPbzt9V
>>438
そんな感じ。
RSMからVirtual Point Lightsの基準になる点を選ぶ。
あとは、法線方向に半球に広がるSH係数を3Dテクスチャに書き込む。
それを6方向(±XYZ)に広げていくだけ。
使うときは3Dテクスチャをサンプリングするだけだから負荷も低い。

6方向だけだとイビツな形に広がっちゃうけど、LPVをカスケードすると緩和できる。
そのままだとオブジェクトを突き抜けて光が広がっちゃうんで、遮蔽するようなSH係数を書き込んでおいたり
SH Gradientを使って緩和したりするんだけど、そこまでやらんでもそれなりには綺麗になるよ。

大げさに書いてあるけど、実装自体はそんなに難しくないんでやってみる価値はあるかと。
0441名前は開発中のものです。2010/04/27(火) 23:13:00ID:dIei8hJx
固定機能って英語でなんて言うの?
0442名前は開発中のものです。2010/04/27(火) 23:14:37ID:or6B45UJ
Fixedなんちゃら?
0443名前は開発中のものです。2010/04/27(火) 23:40:11ID:6UsTVwUx
Fixed Fuction Shader
Fixed Pipeline
0444名前は開発中のものです。2010/04/28(水) 00:13:07ID:o4K4QM/E
そのままなんだ,どもども
0445名前は開発中のものです。2010/04/30(金) 10:03:28ID:JBQK921o
シェーダプログラムをVCみたくプロジェクト管理できるようになるのはいつごろになるんでしょうか
0446名前は開発中のものです。2010/04/30(金) 14:51:15ID:PJyGEE1y
w
0447名前は開発中のものです。2010/04/30(金) 23:11:36ID:Ll80FyeF
RenderMonkeyで十分だけど
最新のはもっと使いやすいのかな
0448名前は開発中のものです。2010/04/30(金) 23:54:38ID:NulfKJ1a
FxComposerは機能が多すぎて好きになれないなぁ
RenderMonkeyがシェーダモデル4.0に対応してくれれば最高なんだけど…
0449名前は開発中のものです。2010/05/01(土) 00:13:59ID:Tc5IDNAz
シェーダーコードを記述していていつも思うんだが、
OpenGLでもDirect3Dでも、setShader("shader-code-filename", ...若干のパラメータ);
ですぐ適用されるような関数ってどこかにないものだろうか。
0450名前は開発中のものです。2010/05/02(日) 12:47:48ID:qwH1pwxC
単なるテクスチャとディフュースマップって別ものですか?
0451名前は開発中のものです。2010/05/02(日) 14:10:24ID:4jveGEXL
テクスチャの使い方の1つがディフューズマップだろ
0452名前は開発中のものです。2010/05/02(日) 15:36:55ID:qwH1pwxC
えっと..そうですね
0453名前は開発中のものです。2010/05/06(木) 07:36:08ID:zkphwCfb
>>435
その方法は焼付けでしかまだ使われてないな
重い方のSSAOですらそれを簡略化したやつに留まってる
0454名前は開発中のものです。2010/05/06(木) 08:18:32ID:VYQ7ECsG
>>453
今のGPUはカメラが1つなのが問題だと思う。
640x480個ぐらいの視点を一度にレンダリングできれば、
プリミティブは1回だけレンダリングパイプラインに送ればいい。
現状AOが一番視覚的な効果が大きいので
GPUメーカーはここを何とかすべきだと思うのでござる
0455名前は開発中のものです。2010/05/06(木) 08:38:50ID:a6N34ubG
つまりレイトレに移行しろってことね
0456名前は開発中のものです。2010/05/06(木) 10:40:00ID:OlmSacGP
それで「リアルタイム」レンダリング出来るなら別にいいけどな・・・。
リアルタイムじゃなくていいなら現行のGPUとDirectX11で出来るわ。
0457名前は開発中のものです。2010/05/07(金) 00:25:22ID:xoQQFLxq
ComputeShaderで標準化されたおかげで
GPU Kd-Treeが結構現実的な選択肢になってきたしなぁ。
ゲームでも影と反射計算だけレイトレで、ってのはそんなに遠くない未来にできそう。
0458名前は開発中のものです。2010/05/07(金) 01:52:19ID:o17sITaf
ハイブリッドレンダリング・・・か・・・
0459名前は開発中のものです。2010/05/07(金) 16:16:33ID:z6L6ZJ31
まあ現行の技術もインチキ満載だし
0460名前は開発中のものです。2010/05/07(金) 20:35:02ID:o17sITaf
インチキで飯食ってる人は廃業かねぇ・・・
0461名前は開発中のものです。2010/05/07(金) 23:28:45ID:mLAx+DEY
携帯機が絶好調のご時勢にシェーダーバリバリ使ったグラフィックスな方が時代の流れには逆らってるだろ。
どうせ現実や写真には勝てないんだからただリアルになりゃいってもんじゃない。
パラメーターもアホほど増えるしコストもアホほど増えてるし。

0462名前は開発中のものです。2010/05/07(金) 23:57:22ID:o17sITaf
なんか、そんな感じになってきたねぇ・・・
これからのリアルタイム3Dグラフィックスはどうなっていくやら・・・
0463名前は開発中のものです。2010/05/08(土) 01:04:02ID:+hCQKb13
そもそもゲームが飽きられてるという根本的な問題
0464名前は開発中のものです。2010/05/08(土) 03:21:58ID:/t+6ZQ8p
iPhoneでもGLSLは使えるんじゃないのけ?
0465名前は開発中のものです。2010/05/08(土) 03:34:47ID:XtadjUgU
今はDirectXのパイプラインがどんどん増えて複雑化する一方だが、
いずれリセットされてソフトウェアレンダ時代に回帰(=GPGPU)するだろうと予想してるゲーム開発者もいるみたいね。
NVのFermiやIntelのLarrabeeは明確にそれを指向しているし。
でも、マイクロポリゴンもボクセルもリアルタイムレイトレも思いの外遠いなあ・・・。

遠いといえばユーザーインターフェースもだな。
2010年ともなれば、脳神経に無線介入して視覚や聴覚等の身体感覚をダイレクトに乗っ取って情報を流し込んだり
脳波で全ての操作が可能になってキーボードやマウスが不要になったり、
もう少しそれを進めて脳とコンピューターを(プロトコルを介して)接続して思考を拡張したり出来る様になると思っていたのに、
メガネかけて立体視が最先端、70、80年代と本質的には変わりなしとは幻滅もいいとこだよ。
百歩譲っても、空中に結像する立体ディスプレイ位は絶対にあると思ってた。
0466名前は開発中のものです。2010/05/08(土) 04:18:00ID:d4R1Ls+Z
胸が熱くなるねぇ・・・

でも、ソフトウェアレンダリングは一部の優秀な人間しか構築できないだろうから、
今のDirectXみたいな広がりは見られなくなるだろうね・・・
0467名前は開発中のものです。2010/05/08(土) 10:32:37ID:fA2uIeet
ソフトウェアレンダラーの時代になったときに
いったいどれだけの人間が残れるんだろうな・・・
0468名前は開発中のものです。2010/05/08(土) 11:10:49ID:+hCQKb13
おまいら今からpbrt読んどけってこった
0469名前は開発中のものです。2010/05/08(土) 12:34:25ID:ulmgTB5n
>>465
nia
ttp://akiba-pc.watch.impress.co.jp/hotline/20080830/sp_ocznia.html

網膜ディスプレイ
ttp://www.itmedia.co.jp/news/articles/0911/06/news015.html
ttp://www.itmedia.co.jp/news/articles/0809/04/news076.html

眼鏡の要らない3次元映像技術の研究開発
ttp://www.itmedia.co.jp/news/articles/1004/28/news041.html
ttp://japan.internet.com/column/webtech/20100507/8.html

求めているものと違うのは重々承知だがw
niaはネタの域。網膜ディスプレイは今750万円だっけな。ゆくゆくは3D化も視野に入れているそうだ。

ゲームの3D映像化は、たぶんハードの方でやるだろうから、我々のやる事は変わらなそうだね。
この辺は楽ですなぁ。
0470名前は開発中のものです。2010/05/09(日) 08:14:30ID:zbXbbgYt
>>440
レスthx
大分理解が進んだ気がするけど、実装方法がいまいちわからず
いくつか質問させてください

>RSMからVirtual Point Lightsの基準になる点を選ぶ。
fluxマップの各テクセル全てが二次光源になるということ?

>あとは、法線方向に半球に広がるSH係数を3Dテクスチャに書き込む。
このSH係数はどうやって求めるんだろう?任意の位置のfluxマップの近傍からどうにかするんだろうか?謎
あと3DテクスチャへのレンダリングってたしかDX10以降じゃないとできないよね?

>それを6方向(±XYZ)に広げていくだけ。
これもCPU側で全グリッドをぶんまわして処理するんかな?

>カスケード
>遮蔽するようなSH係数を書き込む
>SH Gradient
この辺に至ってはさっぱりイメージもつかない・・・

概要はなんとなくわかったけど実装となると・・・・
サンプル(擬似コード)を書いてくれると非常にありがたいのだけども
0471名前は開発中のものです。2010/05/09(日) 14:07:31ID:OSyt/H/l
>>470
> fluxマップの各テクセル全てが二次光源になるということ?
意味的にはそう。
けど実際には重点的サンプリングで個数を減らす。
シェーダコードがCryEngine3 のLPVの資料に書いてあるから見てみるといいかも。

> このSH係数はどうやって求めるんだろう?
VPLはそれぞれ点光源なんで、法線方向に半球状に分布したSH係数を作ればいい。色はRSMから引っ張ってくる。
で、この係数はZonalHarmonicsていうSHの特殊な形態+SHRotationで求めることができるんで、シェーダでも計算可。
ZH+SHRotationの詳細は、PyramidのCEDEC2006講演の資料を見るといいかも。

> あと3DテクスチャへのレンダリングってたしかDX10以降じゃないとできないよね?
DX9だとテクスチャ1枚に展開して自前でバイリニアサンプリングを実装するのが一番楽かも。
CPUを混ぜて描画先のサーフェスを引っ張ってくるのも有りだけど、重そうだな…。

> これもCPU側で全グリッドをぶんまわして処理するんかな?
シェーダで。
各イテレーションごとに、前後左右上下6方向の色から自身(現在見ているテクセル)の次の色を求める。
それを数回繰り返して拡散(=プロパゲーション)させる

> サンプル(擬似コード)を書いてくれると非常にありがたいのだけども
Crytek の資料に Injection と Propagation の疑似コードはあった希ガス。
0472名前は開発中のものです。2010/05/09(日) 14:24:45ID:NFK2xJXR
日本語でおk
0473名前は開発中のものです。2010/05/09(日) 23:55:29ID:JidFUs/v
パーティクル系の話題は無いですか?
0474名前は開発中のものです。2010/05/10(月) 00:34:35ID:4ZkZHoJB
ビルボード沢山並べとけ
0475名前は開発中のものです。2010/05/10(月) 07:43:59ID:+q2/1pH3
>>471
うおおありがとう!あなたが神か
がんばってみる
■ このスレッドは過去ログ倉庫に格納されています