2015年1月3日土曜日

vvvvでシェーダー入門①

あけましておめでとうございます!

昨年は色々な方に読んでもらえて本当に光栄でした。
今年もちょくちょくブログ書いていくので、
是非ともご覧ください。



今回はやっと正月の休み(1日ですが←)もらえたので、
せっかくなのでブログ書こうかと思いまして。

シェーダーとか今までやったことなかったので、
基礎だけでも勉強しようと思います。

vvvvの公式ページ翻訳しながらゆるゆるやります。

公式ページのシェーダーについてのチュートリアルページ



PixelShadingVertexShadingっていうのがあるらしい。

順番通り、PixelShadingからやってきます。


1.Tutolial Effect - PixelShader Prepalation

Pixel Shaderを書くための準備。


今回はTemplate(EX.9 Effect)を使いましょう。
Template EX.9 Effect をコントロールを押して、
クローンをつくっていいところに名前をつけて保存。
















つくったノードを右クリックでプログラムを開けるので、
とりあえず、公式ページのコードをコピペ。

以下コピペです。
//texture
texture Tex <string uiname="Texture";>;
sampler Samp = sampler_state    //sampler for doing the texture-lookup
{
    Texture   = (Tex);          //apply a texture to the sampler
    MipFilter = LINEAR;         //sampler states
    MinFilter = LINEAR;
    MagFilter = LINEAR;
};
 
//the data structure: "vertexshader to pixelshader"
//used as output data with the VS function
//and as input data with the PS function
struct vs2ps
{
    float4 Pos  : POSITION;
    float2 TexCd : TEXCOORD0;
};
 
float4 PS(vs2ps In): COLOR
{
    return 1;
}
 
technique TSimpleShader
{
    pass P0
    {
        VertexShader = null;
        PixelShader  = compile ps_2_0 PS();
    }
}
コピペ終了。



あとは、パッチを組むのですが、今回は公式ページどおりではなく、
カメラの方が扱うのが楽な気がしたので、勝手にカメラでためしてますw
cameraはよく使う、camera[transform sofrimage] (3d... です。
いっつも camera 3dでノード出してます!

View、ProjectionをそれぞれRendererの同様の名前に接続し、
操作は、
control + P:遠近
control + O:回転
で、なんとなくでうごかせるはずですw






準備完了。


Junky_Inc

0 件のコメント:

コメントを投稿