本文整理汇总了C++中BitmapTex::GetTheUVGen方法的典型用法代码示例。如果您正苦于以下问题:C++ BitmapTex::GetTheUVGen方法的具体用法?C++ BitmapTex::GetTheUVGen怎么用?C++ BitmapTex::GetTheUVGen使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BitmapTex
的用法示例。
在下文中一共展示了BitmapTex::GetTheUVGen方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createTexture
//------------------------------
BitmapTex* MaterialCreator::createTexture( const COLLADAFW::EffectCommon& effectCommon, const COLLADAFW::Texture& texture )
{
BitmapTex* bitmapTexture = NewDefaultBitmapTex();
COLLADAFW::SamplerID samplerId = texture.getSamplerId();
const COLLADAFW::Sampler* sampler = effectCommon.getSamplerPointerArray()[ samplerId ];
const COLLADAFW::UniqueId& imageUniqueId = sampler->getSourceImage();
const COLLADAFW::Image* image = getFWImageByUniqueId( imageUniqueId );
if ( !image )
return 0;
COLLADABU::URI imageUri( getFileInfo().absoluteFileUri, image->getImageURI().getURIString() );
COLLADABU::NativeString imageFileName( imageUri.toNativePath().c_str(), COLLADABU::NativeString::ENCODING_UTF8 );
bitmapTexture->SetMapName(const_cast<char*>(imageFileName.c_str()));
bitmapTexture->LoadMapFiles(0);
UVGen* uvGen = bitmapTexture->GetTheUVGen();
StdUVGen* stdUVGen = (StdUVGen*)uvGen;
// reset all flags
//stdUVGen->SetFlag(U_WRAP|V_WRAP, 1);
//stdUVGen->SetFlag(U_MIRROR|V_MIRROR, 0);
int tiling = 0;
if ( sampler->getWrapS() == COLLADAFW::Sampler::WRAP_MODE_WRAP )
{
tiling += 1<<0;
}
else if ( sampler->getWrapS() == COLLADAFW::Sampler::WRAP_MODE_MIRROR )
{
tiling += 1<<2;
}
if ( sampler->getWrapT() == COLLADAFW::Sampler::WRAP_MODE_WRAP )
{
tiling += 1<<1;
}
else if ( sampler->getWrapT() == COLLADAFW::Sampler::WRAP_MODE_MIRROR )
{
tiling += 1<<3;
}
stdUVGen->SetTextureTiling(tiling);
return bitmapTexture;
}
示例2: CreateTexture
Texmap* NifImporter::CreateTexture(const string& filename)
{
if (filename.empty())
return NULL;
BitmapManager *bmpMgr = TheManager;
if (bmpMgr->CanImport(filename.c_str())){
BitmapTex *bmpTex = NewDefaultBitmapTex();
string name = filename;
if (name.empty()) {
TCHAR buffer[MAX_PATH];
_tcscpy(buffer, PathFindFileName(filename.c_str()));
PathRemoveExtension(buffer);
name = buffer;
}
bmpTex->SetName(name.c_str());
bmpTex->SetMapName(const_cast<TCHAR*>(FindImage(filename).c_str()));
bmpTex->SetAlphaAsMono(TRUE);
bmpTex->SetAlphaSource(ALPHA_DEFAULT);
bmpTex->SetFilterType(FILTER_PYR);
if (showTextures) {
bmpTex->SetMtlFlag(MTL_TEX_DISPLAY_ENABLED, TRUE);
bmpTex->ActivateTexDisplay(TRUE);
bmpTex->NotifyDependents(FOREVER, PART_ALL, REFMSG_CHANGE);
}
if (UVGen *uvGen = bmpTex->GetTheUVGen()){
uvGen->SetTextureTiling(0);
}
return bmpTex;
}
return NULL;
}