@ -84,112 +84,121 @@ void IGPUProgram::buildInfo(CSource *source)
if ( features . DriverFlags & CGPUProgramFeatures : : ModelView )
{
m_Indices . ModelView = getUniformIndex ( " nlM odelView" ) ;
m_Indices . ModelView = getUniformIndex ( " m odelView" ) ;
if ( m_Indices . ModelView = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelView' in gpu program '%s', ModelView disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelView' in gpu program '%s', ModelView disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelView ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ModelViewInverse )
{
m_Indices . ModelViewInverse = getUniformIndex ( " nlM odelViewInverse" ) ;
m_Indices . ModelViewInverse = getUniformIndex ( " m odelViewInverse" ) ;
if ( m_Indices . ModelViewInverse = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelViewInverse' in gpu program '%s', ModelViewInverse disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelViewInverse' in gpu program '%s', ModelViewInverse disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelViewInverse ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ModelViewTranspose )
{
m_Indices . ModelViewTranspose = getUniformIndex ( " nlM odelViewTranspose" ) ;
m_Indices . ModelViewTranspose = getUniformIndex ( " m odelViewTranspose" ) ;
if ( m_Indices . ModelViewTranspose = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelViewTranspose' in gpu program '%s', ModelViewTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelViewTranspose' in gpu program '%s', ModelViewTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelViewTranspose ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ModelViewInverseTranspose )
{
m_Indices . ModelViewInverseTranspose = getUniformIndex ( " nlM odelViewInverseTranspose" ) ;
m_Indices . ModelViewInverseTranspose = getUniformIndex ( " m odelViewInverseTranspose" ) ;
if ( m_Indices . ModelViewInverseTranspose = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelViewInverseTranspose' in gpu program '%s', ModelViewInverseTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelViewInverseTranspose' in gpu program '%s', ModelViewInverseTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelViewInverseTranspose ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : Projection )
{
m_Indices . Projection = getUniformIndex ( " nlP rojection" ) ;
m_Indices . Projection = getUniformIndex ( " p rojection" ) ;
if ( m_Indices . Projection = = ~ 0 )
{
nlwarning ( " Missing ' nlP rojection' in gpu program '%s', Projection disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' p rojection' in gpu program '%s', Projection disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : Projection ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ProjectionInverse )
{
m_Indices . ProjectionInverse = getUniformIndex ( " nlP rojectionInverse" ) ;
m_Indices . ProjectionInverse = getUniformIndex ( " p rojectionInverse" ) ;
if ( m_Indices . ProjectionInverse = = ~ 0 )
{
nlwarning ( " Missing ' nlP rojectionInverse' in gpu program '%s', ProjectionInverse disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' p rojectionInverse' in gpu program '%s', ProjectionInverse disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ProjectionInverse ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ProjectionTranspose )
{
m_Indices . ProjectionTranspose = getUniformIndex ( " nlP rojectionTranspose" ) ;
m_Indices . ProjectionTranspose = getUniformIndex ( " p rojectionTranspose" ) ;
if ( m_Indices . ProjectionTranspose = = ~ 0 )
{
nlwarning ( " Missing ' nlP rojectionTranspose' in gpu program '%s', ProjectionTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' p rojectionTranspose' in gpu program '%s', ProjectionTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ProjectionTranspose ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ProjectionInverseTranspose )
{
m_Indices . ProjectionInverseTranspose = getUniformIndex ( " nlP rojectionInverseTranspose" ) ;
m_Indices . ProjectionInverseTranspose = getUniformIndex ( " p rojectionInverseTranspose" ) ;
if ( m_Indices . ProjectionInverseTranspose = = ~ 0 )
{
nlwarning ( " Missing ' nlP rojectionInverseTranspose' in gpu program '%s', ProjectionInverseTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' p rojectionInverseTranspose' in gpu program '%s', ProjectionInverseTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ProjectionInverseTranspose ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ModelViewProjection )
{
m_Indices . ModelViewProjection = getUniformIndex ( " nlM odelViewProjection" ) ;
m_Indices . ModelViewProjection = getUniformIndex ( " m odelViewProjection" ) ;
if ( m_Indices . ModelViewProjection = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelViewProjection' in gpu program '%s', ModelViewProjection disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelViewProjection' in gpu program '%s', ModelViewProjection disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelViewProjection ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ModelViewProjectionInverse )
{
m_Indices . ModelViewProjectionInverse = getUniformIndex ( " nlM odelViewProjectionInverse" ) ;
m_Indices . ModelViewProjectionInverse = getUniformIndex ( " m odelViewProjectionInverse" ) ;
if ( m_Indices . ModelViewProjectionInverse = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelViewProjectionInverse' in gpu program '%s', ModelViewProjectionInverse disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelViewProjectionInverse' in gpu program '%s', ModelViewProjectionInverse disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelViewProjectionInverse ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ModelViewProjectionTranspose )
{
m_Indices . ModelViewProjectionTranspose = getUniformIndex ( " nlM odelViewProjectionTranspose" ) ;
m_Indices . ModelViewProjectionTranspose = getUniformIndex ( " m odelViewProjectionTranspose" ) ;
if ( m_Indices . ModelViewProjectionTranspose = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelViewProjectionTranspose' in gpu program '%s', ModelViewProjectionTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelViewProjectionTranspose' in gpu program '%s', ModelViewProjectionTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelViewProjectionTranspose ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : ModelViewProjectionInverseTranspose )
{
m_Indices . ModelViewProjectionInverseTranspose = getUniformIndex ( " nlM odelViewProjectionInverseTranspose" ) ;
m_Indices . ModelViewProjectionInverseTranspose = getUniformIndex ( " m odelViewProjectionInverseTranspose" ) ;
if ( m_Indices . ModelViewProjectionInverseTranspose = = ~ 0 )
{
nlwarning ( " Missing ' nlM odelViewProjectionInverseTranspose' in gpu program '%s', ModelViewProjectionInverseTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
nlwarning ( " Missing ' m odelViewProjectionInverseTranspose' in gpu program '%s', ModelViewProjectionInverseTranspose disabled" , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : ModelViewProjectionInverseTranspose ;
}
}
if ( features . DriverFlags & CGPUProgramFeatures : : Fog )
{
m_Indices . Fog = getUniformIndex ( " fog " ) ;
if ( m_Indices . Fog = = ~ 0 )
{
nlwarning ( " Missing 'fog' in gpu program '%s', Fog disabled " , source - > DisplayName . c_str ( ) ) ;
features . DriverFlags & = ~ CGPUProgramFeatures : : Fog ;
}
}
//
// Rough example, modify as necessary.