本文整理汇总了C++中CShader::setRenderType方法的典型用法代码示例。如果您正苦于以下问题:C++ CShader::setRenderType方法的具体用法?C++ CShader::setRenderType怎么用?C++ CShader::setRenderType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CShader
的用法示例。
在下文中一共展示了CShader::setRenderType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: DirectoryList
// 深度优先递归遍历目录中所有的文件
BOOL DirectoryList(LPCSTR Path, int nRenderType)
{
WIN32_FIND_DATA FindData;
HANDLE hError;
int FileCount = 0;
char FilePathName[LEN];
// 构造路径
char FullPathName[LEN];
strcpy(FilePathName, Path);
strcat(FilePathName, "\\*.*");
hError = FindFirstFile(FilePathName, &FindData);
if (hError == INVALID_HANDLE_VALUE)
{
return 0;
}
while(::FindNextFile(hError, &FindData))
{
// 过虑.和..
if (strcmp(FindData.cFileName, ".") == 0
|| strcmp(FindData.cFileName, "..") == 0 )
{
continue;
}
// 构造完整路径
wsprintf(FullPathName, "%s\\%s", Path,FindData.cFileName);
FileCount++;
// 输出本级的文件
//printf("\n%d %s ", FileCount, FullPathName);
char szName[255];
strcpy(szName,FindData.cFileName);
int nLen = strlen(szName);
if (nLen>3 && strcmp(szName+nLen-3,".fx")==0)
{
szName[nLen-3]=0;
CShader* pShader = CRenderSystem::getSingleton().registerShader(szName,FullPathName);
if (pShader)
{
pShader->setRenderType(nRenderType);
}
}
// if (FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
// {
// printf("<Dir>");
// DirectoryList(FullPathName);
// }
}
return 0;
}