Browse Source

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.
marauder2k7 6 months ago
parent
commit
b2fe48ab8d

+ 13 - 1
Engine/source/T3D/assets/ImageAsset.h

@@ -171,7 +171,7 @@ public:
    void                    setTextureHDR(const bool pIsHDR);
    void                    setTextureHDR(const bool pIsHDR);
    inline bool             getTextureHDR(void) const { return mIsHDRImage; };
    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);
    GFXTexHandle            getTexture(GFXTextureProfile* requestedProfile);
 
 
    static StringTableEntry getImageTypeNameFromType(ImageTypes type);
    static StringTableEntry getImageTypeNameFromType(ImageTypes type);
@@ -610,6 +610,12 @@ public:
          {                                                                                                                                                                    \
          {                                                                                                                                                                    \
             imageAssetId = query.mAssetList[0];                                                                                                                               \
             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;                                                                                                                                       \
          m##name##Asset = imageAssetId;                                                                                                                                       \
       }                                                                                                                                                                       \
       }                                                                                                                                                                       \
       else                                                                                                                                                                    \
       else                                                                                                                                                                    \
@@ -677,6 +683,12 @@ public:
          {                                                                                                                                                                    \
          {                                                                                                                                                                    \
             imageAssetId = query.mAssetList[0];                                                                                                                               \
             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;                                                                                                                                \
          m##name##Asset[index] = imageAssetId;                                                                                                                                \
       }                                                                                                                                                                       \
       }                                                                                                                                                                       \
       else                                                                                                                                                                    \
       else                                                                                                                                                                    \

+ 2 - 2
Engine/source/T3D/lighting/reflectionProbe.cpp

@@ -605,7 +605,7 @@ void ReflectionProbe::processBakedCubemap()
 
 
    if (mIrridianceMap == nullptr || mIrridianceMap->mCubemap.isNull())
    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;
       return;
    }
    }
 
 
@@ -618,7 +618,7 @@ void ReflectionProbe::processBakedCubemap()
 
 
    if (mPrefilterMap == nullptr || mPrefilterMap->mCubemap.isNull())
    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;
       return;
    }
    }
 
 

+ 3 - 14
Engine/source/afx/ce/afxZodiac.cpp

@@ -324,22 +324,11 @@ bool afxZodiacData::preload(bool server, String &errorStr)
   if (vert_range.x == 0.0f && vert_range.y == 0.0f)
   if (vert_range.x == 0.0f && vert_range.y == 0.0f)
     vert_range.x = vert_range.y = radius_xy;
     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;
   return true;
 }
 }
 
 

+ 28 - 33
Engine/source/gfx/sim/cubemapData.cpp

@@ -41,13 +41,6 @@ IMPLEMENT_CONOBJECT( CubemapData );
 CubemapData::CubemapData()
 CubemapData::CubemapData()
 {
 {
    mCubemap = NULL;
    mCubemap = NULL;
-
-   for (U32 i = 0; i < 6; i++)
-   {
-      INIT_IMAGEASSET_ARRAY(CubeMapFace, GFXStaticTextureSRGBProfile, i);
-   }
-
-   INIT_ASSET(CubeMap);
 }
 }
 
 
 CubemapData::~CubemapData()
 CubemapData::~CubemapData()
@@ -77,17 +70,7 @@ ConsoleDocClass( CubemapData,
 void CubemapData::initPersistFields()
 void CubemapData::initPersistFields()
 {
 {
    docsURL;
    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"
       "They are in the following order:\n"
       "  - cubeFace[0] is -X\n"
       "  - cubeFace[0] is -X\n"
       "  - cubeFace[1] is +X\n"
       "  - cubeFace[1] is +X\n"
@@ -96,7 +79,7 @@ void CubemapData::initPersistFields()
       "  - cubeFace[4] is -Y\n"
       "  - cubeFace[4] is -Y\n"
       "  - cubeFace[5] 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()
 bool CubemapData::onAdd()
@@ -116,19 +99,26 @@ void CubemapData::createMap()
    {
    {
        bool initSuccess = true;
        bool initSuccess = true;
        //check mCubeMapFile first
        //check mCubeMapFile first
-       if (getCubeMap() != StringTable->EmptyString())
+       if (mCubeMapAsset.notNull())
        {
        {
-          mCubemap = TEXMGR->createCubemap(getCubeMap());
+          mCubemap = TEXMGR->createCubemap(mCubeMapAsset->getImageFile());
           return;
           return;
        }
        }
        else
        else
        {
        {
           for (U32 i = 0; i < 6; i++)
           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 )
        if( initSuccess )
        {
        {
            mCubemap = GFX->createCubemap();
            mCubemap = GFX->createCubemap();
-           if (!mCubeMapFace || mCubeMapFace->isNull())
+           if (mCubeMapFaceAsset->isNull())
               return;
               return;
-           mCubemap->initStatic(mCubeMapFace);
+
+           mCubemap->initStatic(mCubeMapFaceTex);
        }
        }
    }
    }
 }
 }
@@ -150,18 +141,22 @@ void CubemapData::updateFaces()
 	for( U32 i=0; i<6; i++ )
 	for( U32 i=0; i<6; i++ )
    {
    {
       //check mCubeMapFile first
       //check mCubeMapFile first
-      if (getCubeMap() != StringTable->EmptyString())
+      if (mCubeMapAsset.notNull())
       {
       {
-         mCubemap = TEXMGR->createCubemap(getCubeMap());
+         mCubemap = TEXMGR->createCubemap(mCubeMapAsset->getImageFile());
          return;
          return;
       }
       }
       else
       else
       {
       {
-         if (!_setCubeMapFace(getCubeMapFace(i), i))
+         if (!getCubeMapFace(i))
          {
          {
             Con::errorf("CubemapData::createMap - Failed to load texture '%s'", getCubeMapFace(i));
             Con::errorf("CubemapData::createMap - Failed to load texture '%s'", getCubeMapFace(i));
             initSuccess = false;
             initSuccess = false;
          }
          }
+         else
+         {
+            mCubeMapFaceTex[i] = getCubeMapFace(i);
+         }
       }
       }
    }
    }
 
 
@@ -170,13 +165,13 @@ void CubemapData::updateFaces()
 		mCubemap = NULL;
 		mCubemap = NULL;
 		mCubemap = GFX->createCubemap();
 		mCubemap = GFX->createCubemap();
 
 
-		mCubemap->initStatic( mCubeMapFace );
+		mCubemap->initStatic(mCubeMapFaceTex);
 	}
 	}
 }
 }
 
 
 void CubemapData::setCubemapFile(FileName newCubemapFile)
 void CubemapData::setCubemapFile(FileName newCubemapFile)
 {
 {
-   mCubeMapName = newCubemapFile;
+   _setCubeMap(newCubemapFile);
 }
 }
 
 
 void CubemapData::setCubeFaceFile(U32 index, FileName newFaceFile)
 void CubemapData::setCubeFaceFile(U32 index, FileName newFaceFile)
@@ -184,7 +179,7 @@ void CubemapData::setCubeFaceFile(U32 index, FileName newFaceFile)
    if (index >= 6)
    if (index >= 6)
       return;
       return;
 
 
-   mCubeMapFaceName[index] = newFaceFile;
+   _setCubeMapFace(newFaceFile, index);
 }
 }
 
 
 void CubemapData::setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture)
 void CubemapData::setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture)
@@ -192,7 +187,7 @@ void CubemapData::setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture)
    if (index >= 6)
    if (index >= 6)
       return;
       return;
 
 
-   mCubeMapFace[index] = newFaceTexture;
+   mCubeMapFaceTex[index] = newFaceTexture;
 }
 }
 
 
 DefineEngineMethod( CubemapData, updateFaces, void, (),,
 DefineEngineMethod( CubemapData, updateFaces, void, (),,

+ 4 - 8
Engine/source/gfx/sim/cubemapData.h

@@ -70,20 +70,16 @@ public:
 
 
    void setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture);
    void setCubeFaceTexture(U32 index, GFXTexHandle newFaceTexture);
 
 
-   GFXTexHandle* getCubeFaceTexture(U32 faceIdx) { return &mCubeMapFace[faceIdx]; }
+   GFXTexHandle* getCubeFaceTexture(U32 faceIdx) { return &mCubeMapFaceTex[faceIdx]; }
 
 
 protected:
 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;
    GFXTexHandle mDepthBuff;
    GFXTextureTargetRef mRenderTarget;
    GFXTextureTargetRef mRenderTarget;
-
-   void onCubemapChanged() {}
 };
 };
 
 
 #endif // CUBEMAPDATA
 #endif // CUBEMAPDATA

+ 0 - 17
Engine/source/materials/materialDefinition.cpp

@@ -232,11 +232,6 @@ FRangeValidator glowMulRange(0.0f, 20.0f);
 FRangeValidator parallaxScaleRange(0.0f, 4.0f);
 FRangeValidator parallaxScaleRange(0.0f, 4.0f);
 FRangeValidator scrollSpeedRange(0.0f, 10.0f);
 FRangeValidator scrollSpeedRange(0.0f, 10.0f);
 FRangeValidator waveFreqRange(0.0f, 10.0f);
 FRangeValidator waveFreqRange(0.0f, 10.0f);
-void Material::onImageAssetChanged()
-{
-   flush();
-   reload();
-}
 
 
 void Material::initPersistFields()
 void Material::initPersistFields()
 {
 {
@@ -495,18 +490,6 @@ void Material::initPersistFields()
   // They point at the new 'map' fields, but reads always return
   // They point at the new 'map' fields, but reads always return
   // an empty string and writes only apply if the value is not empty.
   // 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),
    addProtectedField("colorMultiply", TypeColorF, Offset(mDiffuse, Material),
       defaultProtectedSetNotEmptyFn, emptyStringProtectedGetFn, MAX_STAGES,
       defaultProtectedSetNotEmptyFn, emptyStringProtectedGetFn, MAX_STAGES,
       "For backwards compatibility.\n@see diffuseColor\n", AbstractClassRep::FIELD_HideInInspectors);
       "For backwards compatibility.\n@see diffuseColor\n", AbstractClassRep::FIELD_HideInInspectors);