Commit 7800295e authored by chili's avatar chili
Browse files

colored triangle

parent 27bd983e
......@@ -100,21 +100,23 @@ void Graphics::ClearBuffer( float red,float green,float blue ) noexcept
void Graphics::DrawTestTriangle()
{
namespace wrl = Microsoft::WRL;
HRESULT hr;
struct Vertex
{
float x;
float y;
float r;
float g;
float b;
};
// create vertex buffer (1 2d triangle at center of screen)
const Vertex vertices[] =
{
{ 0.0f,0.5f },
{ 0.5f,-0.5f },
{ -0.5f,-0.5f },
{ 0.0f,0.5f,1.0f,0.0f,0.0f },
{ 0.5f,-0.5f,0.0f,1.0f,0.0f },
{ -0.5f,-0.5f,0.0f,0.0f,1.0f },
};
wrl::ComPtr<ID3D11Buffer> pVertexBuffer;
D3D11_BUFFER_DESC bd = {};
......@@ -158,6 +160,7 @@ void Graphics::DrawTestTriangle()
const D3D11_INPUT_ELEMENT_DESC ied[] =
{
{ "Position",0,DXGI_FORMAT_R32G32_FLOAT,0,0,D3D11_INPUT_PER_VERTEX_DATA,0 },
{ "Color",0,DXGI_FORMAT_R32G32B32_FLOAT,0,8u,D3D11_INPUT_PER_VERTEX_DATA,0 },
};
GFX_THROW_INFO( pDevice->CreateInputLayout(
ied,(UINT)std::size( ied ),
......
float4 main() : SV_Target
float4 main( float3 color : Color ) : SV_Target
{
return float4(1.0f,1.0f,1.0f,1.0f);
return float4( color,1.0f );
}
\ No newline at end of file
float4 main( float2 pos : Position ) : SV_Position
struct VSOut
{
return float4(pos.x,pos.y,0.0f,1.0f);
float3 color : Color;
float4 pos : SV_Position;
};
VSOut main( float2 pos : Position,float3 color : Color )
{
VSOut vso;
vso.pos = float4(pos.x,pos.y,0.0f,1.0f);
vso.color = color;
return vso;
}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment