Generate the pixel shader ins too.

--HG--
branch : gsoc2013-dfighter
hg/feature/gsoc2013-dfighter
dfighter1985 11 years ago
parent 46363f1909
commit 0dcb470a19

@ -104,23 +104,72 @@ namespace NL3D
ss << i;
ss << " ) ";
ss << "in vec4 ";
ss << attribNames[ i ];
ss << "v" << attribNames[ i ];
ss << ";";
ss << std::endl;
}
}
ss << std::endl;
for( int i = 1; i < CVertexBuffer::NumValue; i++ )
{
if( hasFlag( vbFormat, vertexFlags[ i ] ) )
{
ss << "smooth out vec4 ";
ss << attribNames[ i ] << ";" << std::endl;
}
}
ss << std::endl;
ss << "void main( void )" << std::endl;
ss << "{" << std::endl;
ss << "gl_Position = mvp * " << attribNames[ 0 ] << ";" << std::endl;
ss << "gl_Position = mvpMatrix * " << "v" << attribNames[ 0 ] << ";" << std::endl;
for( int i = 1; i < CVertexBuffer::NumValue; i++ )
{
if( hasFlag( vbFormat, vertexFlags[ i ] ) )
{
ss << attribNames[ i ];
ss << " = ";
ss << "v" << attribNames[ i ] << ";" << std::endl;
}
}
ss << "}" << std::endl;
vs.append( ss.str() );
vs.assign( ss.str() );
}
void CGLSLShaderGenerator::generatePS( std::string &ps )
{
std::stringstream ss;
ss << "#version 330" << std::endl;
ss << std::endl;
ss << "out vec4 fragColor;" << std::endl;
for( int i = 1; i < CVertexBuffer::NumValue; i++ )
{
if( hasFlag( vbFormat, vertexFlags[ i ] ) )
{
ss << "smooth in vec4 ";
ss << attribNames[ i ] << ";" << std::endl;
}
}
ss << std::endl;
ss << "void main( void )" << std::endl;
ss << "{" << std::endl;
ss << "fragColor = ";
//////////////////// obviously this is just temporary /////////
ss << "vec4( 1.0, 0.0, 0.0, 1.0 );" << std::endl;
/////////////////////////////////////////////////////
ss << "}" << std::endl;
ps.assign( ss.str() );
}
}

Loading…
Cancel
Save