读书人

Cg profile 出错?解决方案

发布时间: 2012-03-13 11:21:12 作者: rapoo

Cg profile 出错?
我的显卡是Geforce MX/MX 400 非常老的一款,
然后用可以再正常机器上跑的Cg程序,

到上面提示Profile找不到,怎么办?

pContext = cgCreateContext();
//这句后pContext = 0x0000001
cgSetParameterSettingMode(pContext, CG_DEFERRED_PARAMETER_SETTING);

vBankProfile = cgGLGetLatestProfile(CG_GL_VERTEX);

cgGLSetOptimalOptions(vBankProfile);


vBankProgram = cgCreateProgramFromFile( pContext,
CG_SOURCE, vShader, vBankProfile, vMain, NULL );
//vBankProgram = NULL
if( NULL == vBankProgram )
{
CGerror Error = cgGetError();
std::string strError = cgGetErrorString( Error );
if( Error == CG_COMPILER_ERROR )
{
strError += " : ";
strError += cgGetLastListing(g_pContext);
}

::MessageBoxA( NULL, strError.c_str() , "Compile error in compile vertex shader", 0 );
::PostQuitMessage(0);
return FALSE;
}

[解决办法]
你可以用最简单的shader程序试一试

在shader里面什么都不要做,就是传参数,看你的电脑能不能运行

看你的显卡,应该是不支持有些shader

读书人网 >图形图像

热点推荐