本文整理汇总了C++中GpuProgramParametersSharedPtr::copyConstantsFrom方法的典型用法代码示例。如果您正苦于以下问题:C++ GpuProgramParametersSharedPtr::copyConstantsFrom方法的具体用法?C++ GpuProgramParametersSharedPtr::copyConstantsFrom怎么用?C++ GpuProgramParametersSharedPtr::copyConstantsFrom使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GpuProgramParametersSharedPtr
的用法示例。
在下文中一共展示了GpuProgramParametersSharedPtr::copyConstantsFrom方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createParameters
//-----------------------------------------------------------------------------
GpuProgramParametersSharedPtr GpuProgram::createParameters(void)
{
// Default implementation simply returns standard parameters.
GpuProgramParametersSharedPtr ret =
GpuProgramManager::getSingleton().createParameters();
// optionally load manually supplied named constants
if (!mManualNamedConstantsFile.empty() && !mLoadedManualNamedConstants)
{
try
{
GpuNamedConstants namedConstants;
DataStreamPtr stream =
ResourceGroupManager::getSingleton().openResource(
mManualNamedConstantsFile, mGroup, true, this);
namedConstants.load(stream);
setManualNamedConstants(namedConstants);
}
catch(const Exception& e)
{
LogManager::getSingleton().stream() <<
"Unable to load manual named constants for GpuProgram " << mName <<
": " << e.getDescription();
}
mLoadedManualNamedConstants = true;
}
// set up named parameters, if any
if (!mConstantDefs.isNull() && !mConstantDefs->map.empty())
{
ret->_setNamedConstants(mConstantDefs);
}
// link shared logical / physical map for low-level use
ret->_setLogicalIndexes(mFloatLogicalToPhysical, mDoubleLogicalToPhysical,
mIntLogicalToPhysical, mUIntLogicalToPhysical,
mBoolLogicalToPhysical);
// Copy in default parameters if present
if (!mDefaultParams.isNull())
ret->copyConstantsFrom(*(mDefaultParams.get()));
return ret;
}
示例2: createParameters
//---------------------------------------------------------------------------
GpuProgramParametersSharedPtr HighLevelGpuProgram::createParameters(void)
{
// Lock mutex before allowing this since this is a top-level method
// called outside of the load()
OGRE_LOCK_AUTO_MUTEX;
// Make sure param defs are loaded
GpuProgramParametersSharedPtr params = GpuProgramManager::getSingleton().createParameters();
// Only populate named parameters if we can support this program
if (this->isSupported())
{
loadHighLevel();
// Errors during load may have prevented compile
if (this->isSupported())
{
populateParameterNames(params);
}
}
// Copy in default parameters if present
if (!mDefaultParams.isNull())
params->copyConstantsFrom(*(mDefaultParams.get()));
return params;
}