[PR]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
プログラミング、3DCGとその他いろいろについて
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
| 型名 | 説明 |
| bool | 真偽を表します。trueかfalseです。 |
| int | 32bitの符号付き整数です。 |
| half | 16bitの浮動小数点数です。 |
| float | 32bitの浮動小数点数です。 |
| double | 64bitの浮動小数点数です。 |
using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; class MyGame : Game { GraphicsDeviceManager graphics; Effect effect; VertexPositionColor[] vertices = { new VertexPositionColor(new Vector3(0, 1, 0), Color.White), new VertexPositionColor(new Vector3(1, 0, 0), Color.Blue), new VertexPositionColor(new Vector3(-1, 0, 0), Color.Red) }; public MyGame() { graphics = new GraphicsDeviceManager(this); } protected override void LoadContent() { effect = Content.Load<Effect>("Content/MyEffect"); } protected override void Draw(GameTime gameTime) { GraphicsDevice.Clear(Color.CornflowerBlue); foreach (var pass in effect.CurrentTechnique.Passes) { pass.Apply(); GraphicsDevice.DrawUserPrimitives<VertexPositionColor> ( PrimitiveType.TriangleList, vertices, 0, vertices.Length / 3 ); } } }
struct VertexPositionColor
{
float4 Position : POSITION;
float4 Color : COLOR;
};
VertexPositionColor MyVertexShader(VertexPositionColor input)
{
return input;
}
float4 MyPixelShader(float4 color : COLOR) : COLOR
{
color.r = 0;
return color;
}
technique MyTechnique
{
pass MyPass
{
VertexShader = compile vs_2_0 MyVertexShader();
PixelShader = compile ps_2_0 MyPixelShader();
}
}
struct VertexPositionColor
{
float4 Position : POSITION;
float4 Color : COLOR;
};
VertexPositionColor MyVertexShader(VertexPositionColor input)
{
return input;
}
float4 MyPixelShader(float4 color : COLOR) : COLOR
{
color.rb = 0;
return color;
}
technique MyTechnique
{
pass MyPass
{
VertexShader = compile vs_2_0 MyVertexShader();
PixelShader = compile ps_2_0 MyPixelShader();
}
}
struct VertexPositionColor
{
float4 Position : POSITION;
float4 Color : COLOR;
};
VertexPositionColor MyVertexShader(VertexPositionColor input)
{
return input;
}
float4 MyPixelShader(float4 color : COLOR) : COLOR
{
color.rb = color.br;
return color;
}
technique MyTechnique
{
pass MyPass
{
VertexShader = compile vs_2_0 MyVertexShader();
PixelShader = compile ps_2_0 MyPixelShader();
}
}
struct VertexPositionColor
{
float4 Position : POSITION;
float4 Color : COLOR;
};
VertexPositionColor MyVertexShader(VertexPositionColor input)
{
return input;
}
float4 MyPixelShader(float4 color : COLOR) : COLOR
{
return 1 - color;
}
technique MyTechnique
{
pass MyPass
{
VertexShader = compile vs_2_0 MyVertexShader();
PixelShader = compile ps_2_0 MyPixelShader();
}
}
struct VertexPositionColor
{
float4 Position : POSITION;
float4 Color : COLOR;
};
VertexPositionColor MyVertexShader(VertexPositionColor input)
{
return input;
}
float4 MyPixelShader(float4 color : COLOR) : COLOR
{
float4 lightColor = float4(1, 0, 0.5f, 1);
return lightColor * color;
}
technique MyTechnique
{
pass MyPass
{
VertexShader = compile vs_2_0 MyVertexShader();
PixelShader = compile ps_2_0 MyPixelShader();
}
}