» cn.Tutorial Effects - Pixelshader Preparations
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

cn.Tutorial Effects - Pixelshader Preparations

English | Italian | Spanish | French | Japanese

The original english version of this page is newer and may contain information this translation does not have! Click here to view the english version.

TOC: Of Effects and Shaders
Next: Manipulating Colors


对于像素着色的案例我们都使用的是同一个基础的程序片,它由一个2x2的 Grid (EX9.Geometry)和一个连接在effect上的FileTexture (EX9.Texture)构成,renderers 节点的View Transform引脚缩放值设置为2,使得grid网格能够充满整个窗口:

替换程序片中的Template节点,按照EX9.Effect.Template 这个页面中的说明,我们通常是先复制一个新的Template节点。把这个重新复制的节点连接到程序片当中去,然后通过右键单击这个节点打开编码器。用下面的代码替换替换templates中已有的代码,因为这个代码十分简单,以至于我们不需要去考虑暂时我们不需要用到的顶点着色的部分。

//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();
    }
}

按下CTRL+S保存和编译这些代码。没有错误提示。如果有错误提示,那么你在确认一下你真的拷贝了所有的代码,你的代码视图里看到的内容和上面这张图上现实的是一样的。


Next: Manipulating Colors
TOC: Of Effects and Shaders

anonymous user login

Shoutbox

~20h ago

ravazquez: Just your regular hungarian folk dance shellsort: https://youtu.be/CmPA7zE8mx0

~2d ago

joreg: Reminder: This thursday in #berlin: free introductory workshop to the all new #vvvv gamma: https://nodeforum.org/announcements/series-of-free-2h-introduction-workshop-to-vvvv-gamma/ #visualprogramming

~4d ago

evvvvil: My refracted brutalism shader... Sucking sweet refracted milk off the tits of schlick fresneled reflections. https://www.shadertoy.com/view/wt33RN

~5d ago

io: @sinao build the cube in a 3d editor soft such as Blender and do the UV mapping there

~5d ago

sinao: one side

~5d ago

sinao: How to apply texture only on one of a cube?

~5d ago

tonfilm: Just updated the CraftLie rendering pack to latest: craftlie-dx11-drawing-for-vl

~10d ago

microdee: 2 seconds later: I asked before googling, but why do you need OS support for texture compression?