more merge conflicts

fixed more merge conflicts (afxZodiac and MaterialDefinition)
Updated cubemapdata to use refactor asset
added new part to image_asset macro to create a private asset if the file exists.

updated reflectionProbe errors to actual function name where the error occurs.
This commit is contained in:
marauder2k7 2025-03-24 21:50:04 +00:00
parent 0da0903599
commit b2fe48ab8d
6 changed files with 50 additions and 75 deletions

View file

@ -171,7 +171,7 @@ public:
void setTextureHDR(const bool pIsHDR);
inline bool getTextureHDR(void) const { return mIsHDRImage; };
inline GFXTexHandle& getTexture(void) { load(); generateTexture(); return mTextureHandle; }
inline GFXTexHandle& getTexture(void) { load(); generateTexture(); return mTextureHandle; }
GFXTexHandle getTexture(GFXTextureProfile* requestedProfile);
static StringTableEntry getImageTypeNameFromType(ImageTypes type);
@ -610,6 +610,12 @@ public:
{ \
imageAssetId = query.mAssetList[0]; \
} \
else if(Torque::FS::IsFile(_in)) \
{ \
ImageAsset* privateImage = new ImageAsset(); \
privateImage->setImageFile(_in); \
imageAssetId = AssetDatabase.addPrivateAsset(privateImage); \
} \
m##name##Asset = imageAssetId; \
} \
else \
@ -677,6 +683,12 @@ public:
{ \
imageAssetId = query.mAssetList[0]; \
} \
else if(Torque::FS::IsFile(_in)) \
{ \
ImageAsset* privateImage = new ImageAsset(); \
privateImage->setImageFile(_in); \
imageAssetId = AssetDatabase.addPrivateAsset(privateImage); \
} \
m##name##Asset[index] = imageAssetId; \
} \
else \

View file

@ -605,7 +605,7 @@ void ReflectionProbe::processBakedCubemap()
if (mIrridianceMap == nullptr || mIrridianceMap->mCubemap.isNull())
{
Con::errorf("ReflectionProbe::processDynamicCubemap() - Unable to load baked irradiance map at %s", getIrradianceMapPath().c_str());
Con::errorf("ReflectionProbe::processBakedCubemap() - Unable to load baked irradiance map at %s", getIrradianceMapPath().c_str());
return;
}
@ -618,7 +618,7 @@ void ReflectionProbe::processBakedCubemap()
if (mPrefilterMap == nullptr || mPrefilterMap->mCubemap.isNull())
{
Con::errorf("ReflectionProbe::processDynamicCubemap() - Unable to load baked prefilter map at %s", getPrefilterMapPath().c_str());
Con::errorf("ReflectionProbe::processBakedCubemap() - Unable to load baked prefilter map at %s", getPrefilterMapPath().c_str());
return;
}

View file

@ -324,22 +324,11 @@ bool afxZodiacData::preload(bool server, String &errorStr)
if (vert_range.x == 0.0f && vert_range.y == 0.0f)
vert_range.x = vert_range.y = radius_xy;
if (mTextureAssetId != StringTable->EmptyString())
if (mTextureAsset.notNull())
{
mTextureAsset = mTextureAssetId;
if (mTextureAsset.notNull())
{
if (getTexture() != StringTable->EmptyString() && mTextureName != StringTable->insert("texhandle"))
{
if (mTextureAsset.notNull())
{
mTextureAsset->getChangedSignal().notify(this, &afxZodiacData::onImageChanged);
}
mTexture.set(getTexture(), mTextureProfile, avar("%s() - mTextureObject (line %d)", __FUNCTION__, __LINE__));
}
}
getTexture();
}
return true;
}

View file

@ -41,13 +41,6 @@ IMPLEMENT_CONOBJECT( CubemapData );
CubemapData::CubemapData()
{
mCubemap = NULL;
for (U32 i = 0; i < 6; i++)
{
INIT_IMAGEASSET_ARRAY(CubeMapFace, GFXStaticTextureSRGBProfile, i);
}
INIT_ASSET(CubeMap);
}
CubemapData::~CubemapData()
@ -77,17 +70,7 @@ ConsoleDocClass( CubemapData,
void CubemapData::initPersistFields()
{
docsURL;
addProtectedField( "cubeFace", TypeStringFilename, Offset(mCubeMapFaceName, CubemapData), _setCubeMapFaceData, defaultProtectedGetFn, 6,
"@brief The 6 cubemap face textures for a static cubemap.\n\n"
"They are in the following order:\n"
" - cubeFace[0] is -X\n"
" - cubeFace[1] is +X\n"
" - cubeFace[2] is -Z\n"
" - cubeFace[3] is +Z\n"
" - cubeFace[4] is -Y\n"
" - cubeFace[5] is +Y\n", AbstractClassRep::FIELD_HideInInspectors );
INITPERSISTFIELD_IMAGEASSET_ARRAY(CubeMapFace, 6, CubemapData, "@brief The 6 cubemap face textures for a static cubemap.\n\n"
INITPERSISTFIELD_IMAGEASSET_ARRAY_REFACTOR(CubeMapFace, 6, CubemapData, "@brief The 6 cubemap face textures for a static cubemap.\n\n"
"They are in the following order:\n"
" - cubeFace[0] is -X\n"
" - cubeFace[1] is +X\n"
@ -96,7 +79,7 @@ void CubemapData::initPersistFields()
" - cubeFace[4] is -Y\n"
" - cubeFace[5] is +Y\n");
INITPERSISTFIELD_IMAGEASSET(CubeMap, CubemapData, "@brief Cubemap dds Image Asset.\n\n");
INITPERSISTFIELD_IMAGEASSET_REFACTOR(CubeMap, CubemapData, "@brief Cubemap dds Image Asset.\n\n");
}
bool CubemapData::onAdd()
@ -116,19 +99,26 @@ void CubemapData::createMap()
{
bool initSuccess = true;
//check mCubeMapFile first
if (getCubeMap() != StringTable->EmptyString())
if (mCubeMapAsset.notNull())
{
mCubemap = TEXMGR->createCubemap(getCubeMap());
mCubemap = TEXMGR->createCubemap(mCubeMapAsset->getImageFile());
return;
}
else
{
for (U32 i = 0; i < 6; i++)
{
if (!_setCubeMapFace(getCubeMapFace(i), i))
if (mCubeMapFaceAsset[i].notNull())
{
Con::errorf("CubemapData::createMap - Failed to load texture '%s'", getCubeMapFace(i));
initSuccess = false;
if (!getCubeMapFace(i))
{
Con::errorf("CubemapData::createMap - Failed to load texture '%s'", getCubeMapFace(i));
initSuccess = false;
}
else
{
mCubeMapFaceTex[i] = getCubeMapFace(i);
}
}
}
}
@ -136,9 +126,10 @@ void CubemapData::createMap()
if( initSuccess )
{
mCubemap = GFX->createCubemap();
if (!mCubeMapFace || mCubeMapFace->isNull())
if (mCubeMapFaceAsset->isNull())
return;
mCubemap->initStatic(mCubeMapFace);
mCubemap->initStatic(mCubeMapFaceTex);
}
}
}
@ -150,18 +141,22 @@ void CubemapData::updateFaces()
for( U32 i=0; i<6; i++ )
{
//check mCubeMapFile first
if (getCubeMap() != StringTable->EmptyString())
if (mCubeMapAsset.notNull())
{
mCubemap = TEXMGR->createCubemap(getCubeMap());
mCubemap = TEXMGR->createCubemap(mCubeMapAsset->getImageFile());
return;
}
else
{
if (!_setCubeMapFace(getCubeMapFace(i), i))
if (!getCubeMapFace(i))
{
Con::errorf("CubemapData::createMap - Failed to load texture '%s'", getCubeMapFace(i));
initSuccess = false;
}
else
{
mCubeMapFaceTex[i] = getCubeMapFace(i);
}
}
}
@ -170,13 +165,13 @@ void CubemapData::updateFaces()
mCubemap = NULL;
mCubemap = GFX->createCubemap();
mCubemap->initStatic( mCubeMapFace );
mCubemap->initStatic(mCubeMapFaceTex);
}
}
void CubemapData::setCubemapFile(FileName newCubemapFile)
{
mCubeMapName = newCubemapFile;
_setCubeMap(newCubemapFile);
}
void CubemapData::setCubeFaceFile(U32 index, FileName newFaceFile)
@ -184,7 +179,7 @@ void CubemapData::setCubeFaceFile(U32 index, FileName newFaceFile)
if (index >= 6)
return;
mCubeMapFaceName[index] = newFaceFile;
_setCubeMapFace(newFaceFile, index);
}
void CubemapData::setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture)
@ -192,7 +187,7 @@ void CubemapData::setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture)
if (index >= 6)
return;
mCubeMapFace[index] = newFaceTexture;
mCubeMapFaceTex[index] = newFaceTexture;
}
DefineEngineMethod( CubemapData, updateFaces, void, (),,

View file

@ -70,20 +70,16 @@ public:
void setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture);
GFXTexHandle* getCubeFaceTexture(U32 faceIdx) { return &mCubeMapFace[faceIdx]; }
GFXTexHandle* getCubeFaceTexture(U32 faceIdx) { return &mCubeMapFaceTex[faceIdx]; }
protected:
DECLARE_IMAGEASSET(CubemapData, CubeMap, onCubemapChanged, GFXStaticTextureSRGBProfile);
DECLARE_ASSET_SETGET(CubemapData, CubeMap);
DECLARE_IMAGEASSET_REFACTOR(CubemapData, CubeMap, GFXStaticTextureSRGBProfile);
DECLARE_IMAGEASSET_ARRAY(CubemapData, CubeMapFace, 6, onCubeMapFaceChanged);
DECLARE_IMAGEASSET_ARRAY_SETGET(CubemapData, CubeMapFace);
DECLARE_IMAGEASSET_ARRAY_REFACTOR(CubemapData, CubeMapFace, GFXStaticTextureSRGBProfile, 6);
void onCubeMapFaceChanged() {}
GFXTexHandle mCubeMapFaceTex[6];
GFXTexHandle mDepthBuff;
GFXTextureTargetRef mRenderTarget;
void onCubemapChanged() {}
};
#endif // CUBEMAPDATA

View file

@ -232,11 +232,6 @@ FRangeValidator glowMulRange(0.0f, 20.0f);
FRangeValidator parallaxScaleRange(0.0f, 4.0f);
FRangeValidator scrollSpeedRange(0.0f, 10.0f);
FRangeValidator waveFreqRange(0.0f, 10.0f);
void Material::onImageAssetChanged()
{
flush();
reload();
}
void Material::initPersistFields()
{
@ -495,18 +490,6 @@ void Material::initPersistFields()
// They point at the new 'map' fields, but reads always return
// an empty string and writes only apply if the value is not empty.
//
addProtectedField("baseTex", TypeImageFilename, Offset(mDiffuseMapName, Material),
defaultProtectedSetNotEmptyFn, emptyStringProtectedGetFn, MAX_STAGES,
"For backwards compatibility.\n@see diffuseMap\n", AbstractClassRep::FIELD_HideInInspectors);
addProtectedField("detailTex", TypeImageFilename, Offset(mDetailMapName, Material),
defaultProtectedSetNotEmptyFn, emptyStringProtectedGetFn, MAX_STAGES,
"For backwards compatibility.\n@see detailMap\n", AbstractClassRep::FIELD_HideInInspectors);
addProtectedField("overlayTex", TypeImageFilename, Offset(mOverlayMapName, Material),
defaultProtectedSetNotEmptyFn, emptyStringProtectedGetFn, MAX_STAGES,
"For backwards compatibility.\n@see overlayMap\n", AbstractClassRep::FIELD_HideInInspectors);
addProtectedField("bumpTex", TypeImageFilename, Offset(mNormalMapName, Material),
defaultProtectedSetNotEmptyFn, emptyStringProtectedGetFn, MAX_STAGES,
"For backwards compatibility.\n@see normalMap\n", AbstractClassRep::FIELD_HideInInspectors);
addProtectedField("colorMultiply", TypeColorF, Offset(mDiffuse, Material),
defaultProtectedSetNotEmptyFn, emptyStringProtectedGetFn, MAX_STAGES,
"For backwards compatibility.\n@see diffuseColor\n", AbstractClassRep::FIELD_HideInInspectors);