本文整理汇总了C++中PixelShader::SetPrograms方法的典型用法代码示例。如果您正苦于以下问题:C++ PixelShader::SetPrograms方法的具体用法?C++ PixelShader::SetPrograms怎么用?C++ PixelShader::SetPrograms使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PixelShader
的用法示例。
在下文中一共展示了PixelShader::SetPrograms方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PixelShader
//----------------------------------------------------------------------------
void ImageProcessing2::CreateDrawMaterial (Material*& material,
MaterialInstance*& instance)
{
// sampler2D StateSampler = sampler_state
// {
// MinFilter = Nearest;
// MagFilter = Nearest;
// WrapS = Clamp;
// WrapT = Clamp;
// };
// void p_ScreenShader2
// (
// in float2 vertexTCoord : TEXCOORD0,
// out float4 pixelColor : COLOR
// )
// {
// pixelColor = tex2D(StateSampler, vertexTCoord);
// }
PixelShader* pshader = new0 PixelShader("PX2.DrawImage2",
1, 1, 0, 1, false);
pshader->SetInput(0, "vertexTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetSampler(0, "StateSampler", Shader::ST_2D);
pshader->SetTextureUnits(msDrawPTextureUnits);
pshader->SetPrograms(msDrawPPrograms);
CreateMaterial(pshader, material, instance);
}
示例2: PixelShader
//----------------------------------------------------------------------------
void Smoke2D::CreateAdjustVelocityEffect (VisualEffect*& effect,
VisualEffectInstance*& instance)
{
PixelShader* pshader = new0 PixelShader("Wm5.AdjustVelocity2",
1, 1, 1, 2, false);
pshader->SetInput(0, "vertexTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetConstant(0, "SpaceParam", 1);
pshader->SetSampler(0, "StateSampler", Shader::ST_2D);
pshader->SetSampler(1, "PoissonSampler", Shader::ST_2D);
pshader->SetBaseRegisters(msAdjustVelocityPRegisters);
pshader->SetTextureUnits(msAdjustVelocityPTextureUnits);
pshader->SetPrograms(msAdjustVelocityPPrograms);
mIP->CreateEffect(pshader, effect, instance);
ShaderFloat* spaceParamConstant = new0 ShaderFloat(1);
float* spaceParam = spaceParamConstant->GetData();
spaceParam[0] = mDx;
spaceParam[1] = mDy;
spaceParam[2] = mHalfDivDx;
spaceParam[3] = mHalfDivDy;
instance->SetPixelConstant(0, "SpaceParam", spaceParamConstant);
instance->SetPixelTexture(0, "StateSampler",
mIP->GetTarget(1)->GetColorTexture(0));
instance->SetPixelTexture(0, "PoissonSampler",
mIP->GetTarget(0)->GetColorTexture(0));
}
示例3: VertexShader
//----------------------------------------------------------------------------
DefaultEffect::DefaultEffect ()
{
VertexShader* vshader = new0 VertexShader("Wm5.Default",
1, 1, 1, 0, false);
vshader->SetInput(0, "modelPosition", Shader::VT_FLOAT3,
Shader::VS_POSITION);
vshader->SetOutput(0, "clipPosition",
Shader::VT_FLOAT, Shader::VS_POSITION);
vshader->SetConstant(0, "PVWMatrix", 4);
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
PixelShader* pshader = new0 PixelShader("Wm5.Default",
1, 1, 0, 0, false);
pshader->SetInput(0, "vertexTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetPrograms(msPPrograms);
VisualPass* pass = new0 VisualPass();
pass->SetVertexShader(vshader);
pass->SetPixelShader(pshader);
pass->SetAlphaState(new0 AlphaState());
pass->SetCullState(new0 CullState());
pass->SetDepthState(new0 DepthState());
pass->SetOffsetState(new0 OffsetState());
pass->SetStencilState(new0 StencilState());
pass->SetWireState(new0 WireState());
VisualTechnique* technique = new0 VisualTechnique();
technique->InsertPass(pass);
InsertTechnique(technique);
}
示例4: VertexShader
//----------------------------------------------------------------------------
JunglerMaterial::JunglerMaterial ()
{
VertexShader* vshader = new0 VertexShader("PX2.JunglerMaterial",
3, 3, 8, 0, false);
vshader->SetInput(0, "modelPosition", Shader::VT_FLOAT3,
Shader::VS_POSITION);
vshader->SetInput(1, "modelNormal", Shader::VT_FLOAT3,
Shader::VS_NORMAL);
vshader->SetInput(2, "modelTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetOutput(0, "clipPosition", Shader::VT_FLOAT4,
Shader::VS_POSITION);
vshader->SetOutput(1, "vertexTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetOutput(2, "vertexTCoord1", Shader::VT_FLOAT4,
Shader::VS_TEXCOORD1);
vshader->SetConstant(0, "gPVWMatrix", 4);
vshader->SetConstant(1, "gShineEmissive", 1);
vshader->SetConstant(2, "gShineAmbient", 1);
vshader->SetConstant(3, "gShineDiffuse", 1);
vshader->SetConstant(4, "gLightColour", 1);
vshader->SetConstant(5, "gLightAttenuation", 1);
vshader->SetConstant(6, "gLightModelDirection", 1);
vshader->SetConstant(7, "gUser", 1);
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
PixelShader* pshader = new0 PixelShader("PX2.JunglerMaterial",
2, 1, 0, 1, false);
pshader->SetInput(0, "vertexTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetInput(1, "vertexTCoord1", Shader::VT_FLOAT4,
Shader::VS_TEXCOORD1);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetSampler(0, "gDiffuseSampler", Shader::ST_2D);
pshader->SetFilter(0, Shader::SF_LINEAR);
pshader->SetCoordinate(0, 0, Shader::SC_REPEAT);
pshader->SetCoordinate(0, 1, Shader::SC_REPEAT);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
MaterialPass* pass = new0 MaterialPass();
pass->SetVertexShader(vshader);
pass->SetPixelShader(pshader);
pass->SetAlphaProperty(new0 AlphaProperty());
pass->SetCullProperty(new0 CullProperty());
pass->SetDepthProperty(new0 DepthProperty());
pass->SetOffsetProperty(new0 OffsetProperty());
pass->SetStencilProperty(new0 StencilProperty());
pass->SetWireProperty(new0 WireProperty());
MaterialTechnique* technique = new0 MaterialTechnique();
technique->InsertPass(pass);
InsertTechnique(technique);
}
示例5: VertexShader
//----------------------------------------------------------------------------
LightSptPerPixEffect::LightSptPerPixEffect ()
{
VertexShader* vshader = new0 VertexShader("Wm5.LightSptPerPix",
2, 3, 1, 0, false);
vshader->SetInput(0, "modelPosition", Shader::VT_FLOAT3,
Shader::VS_POSITION);
vshader->SetInput(1, "modelNormal", Shader::VT_FLOAT3,
Shader::VS_TEXCOORD1);
vshader->SetOutput(0, "clipPosition", Shader::VT_FLOAT4,
Shader::VS_POSITION);
vshader->SetOutput(1, "vertexPosition", Shader::VT_FLOAT3,
Shader::VS_TEXCOORD0);
vshader->SetOutput(2, "vertexNormal", Shader::VT_FLOAT3,
Shader::VS_TEXCOORD1);
vshader->SetConstant(0, "PVWMatrix", 4);
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
PixelShader* pshader = new0 PixelShader("Wm5.LightSptPerPix",
2, 1, 13, 0, false);
pshader->SetInput(0, "vertexPosition", Shader::VT_FLOAT3,
Shader::VS_TEXCOORD0);
pshader->SetInput(1, "vertexNormal", Shader::VT_FLOAT3,
Shader::VS_TEXCOORD1);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetConstant(0, "WMatrix", 4);
pshader->SetConstant(1, "CameraModelPosition", 1);
pshader->SetConstant(2, "MaterialEmissive", 1);
pshader->SetConstant(3, "MaterialAmbient", 1);
pshader->SetConstant(4, "MaterialDiffuse", 1);
pshader->SetConstant(5, "MaterialSpecular", 1);
pshader->SetConstant(6, "LightModelPosition", 1);
pshader->SetConstant(7, "LightModelDirection", 1);
pshader->SetConstant(8, "LightAmbient", 1);
pshader->SetConstant(9, "LightDiffuse", 1);
pshader->SetConstant(10, "LightSpecular", 1);
pshader->SetConstant(11, "LightSpotCutoff", 1);
pshader->SetConstant(12, "LightAttenuation", 1);
pshader->SetBaseRegisters(msPRegisters);
pshader->SetPrograms(msPPrograms);
VisualPass* pass = new0 VisualPass();
pass->SetVertexShader(vshader);
pass->SetPixelShader(pshader);
pass->SetAlphaState(new0 AlphaState());
pass->SetCullState(new0 CullState());
pass->SetDepthState(new0 DepthState());
pass->SetOffsetState(new0 OffsetState());
pass->SetStencilState(new0 StencilState());
pass->SetWireState(new0 WireState());
VisualTechnique* technique = new0 VisualTechnique();
technique->InsertPass(pass);
InsertTechnique(technique);
}
示例6: PostLink
//----------------------------------------------------------------------------
void LightAmbEffect::PostLink ()
{
VisualEffect::PostLink();
VisualPass* pass = mTechniques[0]->GetPass(0);
VertexShader* vshader = pass->GetVertexShader();
PixelShader* pshader = pass->GetPixelShader();
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
pshader->SetPrograms(msPPrograms);
}
示例7:
//----------------------------------------------------------------------------
void Texture2ColorBlendEffect::PostLink ()
{
VisualEffect::PostLink();
VisualPass* pass = mTechniques[0]->GetPass(0);
VertexShader* vshader = pass->GetVertexShader();
PixelShader* pshader = pass->GetPixelShader();
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
}
示例8: PostLink
//----------------------------------------------------------------------------
void JunglerMaterial::PostLink ()
{
Material::PostLink();
MaterialPass* pass = mTechniques[0]->GetPass(0);
VertexShader* vshader = pass->GetVertexShader();
PixelShader* pshader = pass->GetPixelShader();
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
}
示例9: VertexShader
//----------------------------------------------------------------------------
VertexColor4TextureEffect::VertexColor4TextureEffect (
Shader::SamplerFilter filter, Shader::SamplerCoordinate coordinate0,
Shader::SamplerCoordinate coordinate1)
{
VertexShader* vshader = new0 VertexShader("Wm5.VertexColorTexture",
3, 3, 1, 0, false);
vshader->SetInput(0, "modelPosition", Shader::VT_FLOAT3,
Shader::VS_POSITION);
vshader->SetInput(1, "modelTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetInput(2, "modelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
vshader->SetOutput(0, "clipPosition", Shader::VT_FLOAT4,
Shader::VS_POSITION);
vshader->SetOutput(1, "vertexTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetOutput(2, "vertexColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
vshader->SetConstant(0, "PVWMatrix", 4);
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
PixelShader* pshader = new0 PixelShader("Wm5.VertexColorTexture",
2, 1, 0, 1, false);
pshader->SetInput(0, "vertexColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetInput(1, "vertexTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetSampler(0, "BaseSampler", Shader::ST_2D);
pshader->SetFilter(0, filter);
pshader->SetCoordinate(0, 0, coordinate0);
pshader->SetCoordinate(0, 1, coordinate1);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
VisualPass* pass = new0 VisualPass();
pass->SetVertexShader(vshader);
pass->SetPixelShader(pshader);
pass->SetAlphaState(new0 AlphaState());
pass->SetCullState(new0 CullState());
pass->SetDepthState(new0 DepthState());
pass->SetOffsetState(new0 OffsetState());
pass->SetStencilState(new0 StencilState());
pass->SetWireState(new0 WireState());
VisualTechnique* technique = new0 VisualTechnique();
technique->InsertPass(pass);
InsertTechnique(technique);
}
示例10: VertexShader
//----------------------------------------------------------------------------
UIMaterial::UIMaterial ()
{
VertexShader* vshader = new0 VertexShader("PX2.UI",
3, 3, 1, 0, false);
vshader->SetInput(0, "modelPosition", Shader::VT_FLOAT3,
Shader::VS_POSITION);
vshader->SetInput(1, "modelColor0", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
vshader->SetInput(2, "modelTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetOutput(0, "clipPosition", Shader::VT_FLOAT4,
Shader::VS_POSITION);
vshader->SetOutput(1, "vertexColor0", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
vshader->SetOutput(2, "vertexTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetConstant(0, "gPVWMatrix", 4);
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
PixelShader* pshader = new0 PixelShader("PX2.UI",
2, 1, 0, 1, false);
pshader->SetInput(0, "vertexColor0", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetInput(1, "vertexTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetSampler(0, "gDiffuseSampler", Shader::ST_2D);
pshader->SetFilter(0, Shader::SF_NEAREST);
pshader->SetCoordinate(0, 0, Shader::SC_CLAMP_EDGE);
pshader->SetCoordinate(0, 1, Shader::SC_CLAMP_EDGE);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
MaterialPass* pass = new0 MaterialPass();
pass->SetVertexShader(vshader);
pass->SetPixelShader(pshader);
pass->SetAlphaProperty(new0 AlphaProperty());
pass->SetCullProperty(new0 CullProperty());
pass->SetDepthProperty(new0 DepthProperty());
pass->SetOffsetProperty(new0 OffsetProperty());
pass->SetStencilProperty(new0 StencilProperty());
pass->SetWireProperty(new0 WireProperty());
pass->GetAlphaProperty()->BlendEnabled = true;
MaterialTechnique* technique = new0 MaterialTechnique();
technique->InsertPass(pass);
InsertTechnique(technique);
}
示例11: PostLink
//----------------------------------------------------------------------------
void StandardESMaterial_AlphaTest::PostLink ()
{
Material::PostLink();
MaterialPass* pass = mTechniques[0]->GetPass(0);
VertexShader* vshader = pass->GetVertexShader();
PixelShader* pshader = pass->GetPixelShader();
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
vshader->SetShaderKey(SKT_STANNDES_ALPHATEST);
pshader->SetShaderKey(SKT_STANNDES_ALPHATEST);
}
示例12: PixelShader
//----------------------------------------------------------------------------
PixelShader* GpuGaussianBlur2::CreateBlurPixelShader ()
{
PixelShader* pshader = new0 PixelShader("Wm5.GaussianBlur2",
1, 1, 2, 1, false);
pshader->SetInput(0, "vertexTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetConstant(0, "Delta", 1);
pshader->SetConstant(1, "Weight", 1);
pshader->SetSampler(0, "StateSampler", Shader::ST_2D);
pshader->SetBaseRegisters(msPRegisters);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
return pshader;
}
示例13: VertexShader
//----------------------------------------------------------------------------
Texture2DMaterial::Texture2DMaterial (Shader::SamplerFilter filter,
Shader::SamplerCoordinate coordinate0,
Shader::SamplerCoordinate coordinate1)
{
VertexShader* vshader = new0 VertexShader("PX2.Texture2D",
2, 2, 1, 0, false);
vshader->SetInput(0, "modelPosition", Shader::VT_FLOAT3,
Shader::VS_POSITION);
vshader->SetInput(1, "modelTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetOutput(0, "clipPosition", Shader::VT_FLOAT4,
Shader::VS_POSITION);
vshader->SetOutput(1, "vertexTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
vshader->SetConstant(0, "gPVWMatrix", 4);
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
PixelShader* pshader = new0 PixelShader("PX2.Texture2D",
1, 1, 0, 1, false);
pshader->SetInput(0, "vertexTCoord0", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetSampler(0, "gDiffuseSampler", Shader::ST_2D);
pshader->SetFilter(0, filter);
pshader->SetCoordinate(0, 0, coordinate0);
pshader->SetCoordinate(0, 1, coordinate1);
pshader->SetTextureUnits(msPTextureUnits);
pshader->SetPrograms(msPPrograms);
MaterialPass* pass = new0 MaterialPass();
pass->SetVertexShader(vshader);
pass->SetPixelShader(pshader);
pass->SetAlphaProperty(new0 AlphaProperty());
pass->SetCullProperty(new0 CullProperty());
pass->SetDepthProperty(new0 DepthProperty());
pass->SetOffsetProperty(new0 OffsetProperty());
pass->SetStencilProperty(new0 StencilProperty());
pass->SetWireProperty(new0 WireProperty());
MaterialTechnique* technique = new0 MaterialTechnique();
technique->InsertPass(pass);
InsertTechnique(technique);
}
示例14: VertexShader
//----------------------------------------------------------------------------
LightAmbEffect::LightAmbEffect ()
{
VertexShader* vshader = new0 VertexShader("Wm5.LightAmb",
1, 2, 5, 0, false);
vshader->SetInput(0, "modelPosition", Shader::VT_FLOAT3,
Shader::VS_POSITION);
vshader->SetOutput(0, "clipPosition", Shader::VT_FLOAT4,
Shader::VS_POSITION);
vshader->SetOutput(1, "vertexColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
vshader->SetConstant(0, "PVWMatrix", 4);
vshader->SetConstant(1, "MaterialEmissive", 1);
vshader->SetConstant(2, "MaterialAmbient", 1);
vshader->SetConstant(3, "LightAmbient", 1);
vshader->SetConstant(4, "LightAttenuation", 1);
vshader->SetBaseRegisters(msVRegisters);
vshader->SetPrograms(msVPrograms);
PixelShader* pshader = new0 PixelShader("Wm5.LightAmb",
1, 1, 0, 0, false);
pshader->SetInput(0, "vertexColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetPrograms(msPPrograms);
VisualPass* pass = new0 VisualPass();
pass->SetVertexShader(vshader);
pass->SetPixelShader(pshader);
pass->SetAlphaState(new0 AlphaState());
pass->SetCullState(new0 CullState());
pass->SetDepthState(new0 DepthState());
pass->SetOffsetState(new0 OffsetState());
pass->SetStencilState(new0 StencilState());
pass->SetWireState(new0 WireState());
VisualTechnique* technique = new0 VisualTechnique();
technique->InsertPass(pass);
InsertTechnique(technique);
}
示例15: one
//----------------------------------------------------------------------------
void ImageProcessing2::CreateBoundaryDirichletMaterial (Material*& material,
MaterialInstance*& instance)
{
// sampler2D MaskSampler = sampler_state
// {
// MinFilter = Nearest;
// MagFilter = Nearest;
// WrapS = Clamp;
// WrapT = Clamp;
// };
// sampler2D StateSampler = sampler_state
// {
// MinFilter = Nearest;
// MagFilter = Nearest;
// WrapS = Clamp;
// WrapT = Clamp;
// };
// void p_BoundaryDirichlet
// (
// in float2 vertexTCoord : TEXCOORD0,
// out float4 pixelColor : COLOR
// )
// {
// float4 mask = tex2D(MaskSampler, vertexTCoord);
// float4 state = tex2D(StateSampler, vertexTCoord);
// pixelColor = mask*state;
// }
PixelShader* pshader = new0 PixelShader("PX2.BoundaryDirichlet2",
1, 1, 0, 2, false);
pshader->SetInput(0, "vertexTCoord", Shader::VT_FLOAT2,
Shader::VS_TEXCOORD0);
pshader->SetOutput(0, "pixelColor", Shader::VT_FLOAT4,
Shader::VS_COLOR0);
pshader->SetSampler(0, "MaskSampler", Shader::ST_2D);
pshader->SetSampler(1, "StateSampler", Shader::ST_2D);
pshader->SetTextureUnits(msDirichletPTextureUnits);
pshader->SetPrograms(msDirichletPPrograms);
CreateMaterial(pshader, material, instance);
// 创建mask纹理
Texture2D* maskTexture = new0 Texture2D(Texture::TF_A32B32G32R32F,
mBound0, mBound1, 1);
Float4* mask = (Float4*)maskTexture->GetData(0);
Float4 one(1.0f, 1.0f, 1.0f, 1.0f);
Float4 zero(0.0f, 0.0f, 0.0f, 0.0f);
int x, y;
// 内部
for (y = 1; y < mBound1M1; ++y)
{
for (x = 1; x < mBound0M1; ++x)
{
mask[Index(x,y)] = one;
}
}
// 边
for (x = 1; x < mBound0M1; ++x)
{
mask[Index(x,0)] = zero;
mask[Index(x,mBound1M1)] = zero;
}
for (y = 1; y < mBound1M1; ++y)
{
mask[Index(0,y)] = zero;
mask[Index(mBound0M1,y)] = zero;
}
// 角
mask[Index(0,0)] = zero;
mask[Index(mBound0M1,0)] = zero;
mask[Index(0,mBound1M1)] = zero;
mask[Index(mBound0M1,mBound1M1)] = zero;
instance->SetPixelTexture(0, "MaskSampler", maskTexture);
}