diff --git a/indra/llprimitive/llgltfmaterial.cpp b/indra/llprimitive/llgltfmaterial.cpp
index 9743bad7a7e73a301b26ee3356611f834047a5e2..f771337c926a88a4102487cf5d982dfc7e5314e9 100644
--- a/indra/llprimitive/llgltfmaterial.cpp
+++ b/indra/llprimitive/llgltfmaterial.cpp
@@ -241,8 +241,14 @@ void LLGLTFMaterial::writeToModel(tinygltf::Model& model, S32 mat_index) const
     material_out.alphaCutoff = mAlphaCutoff;
 
     mBaseColor.write(material_out.pbrMetallicRoughness.baseColorFactor);
+
     material_out.emissiveFactor.resize(3); // 0 size by default
-    mEmissiveColor.write(material_out.emissiveFactor);
+
+    if (mEmissiveColor != LLGLTFMaterial::getDefaultEmissiveColor())
+    {
+        material_out.emissiveFactor.resize(3);
+        mEmissiveColor.write(material_out.emissiveFactor);
+    }
 
     material_out.pbrMetallicRoughness.metallicFactor = mMetallicFactor;
     material_out.pbrMetallicRoughness.roughnessFactor = mRoughnessFactor;
@@ -439,65 +445,6 @@ F32 LLGLTFMaterial::getDefaultTextureRotation()
     return 0.f;
 }
 
-void LLGLTFMaterial::writeOverridesToModel(tinygltf::Model& model, S32 mat_index, LLGLTFMaterial const* base_material) const
-{
-    if (model.materials.size() < mat_index + 1)
-    {
-        model.materials.resize(mat_index + 1);
-    }
-
-    tinygltf::Material& material_out = model.materials[mat_index];
-
-    // TODO - fix handling of resetting to null/default values
-
-    constexpr bool is_override = true;
-
-    // set base color texture
-    writeToTexture(model, material_out.pbrMetallicRoughness.baseColorTexture, GLTF_TEXTURE_INFO_BASE_COLOR, mBaseColorId, is_override, base_material->mBaseColorId);
-    // set normal texture
-    writeToTexture(model, material_out.normalTexture, GLTF_TEXTURE_INFO_NORMAL, mNormalId, is_override, base_material->mNormalId);
-    // set metallic-roughness texture
-    writeToTexture(model, material_out.pbrMetallicRoughness.metallicRoughnessTexture, GLTF_TEXTURE_INFO_METALLIC_ROUGHNESS, mMetallicRoughnessId, is_override, base_material->mMetallicRoughnessId);
-    // set emissive texture
-    writeToTexture(model, material_out.emissiveTexture, GLTF_TEXTURE_INFO_EMISSIVE, mEmissiveId, is_override, base_material->mEmissiveId);
-
-    if (mAlphaMode != base_material->mAlphaMode)
-    {
-        material_out.alphaMode = getAlphaMode();
-    }
-
-    if (mAlphaCutoff != base_material->mAlphaCutoff)
-    {
-        material_out.alphaCutoff = mAlphaCutoff;
-    }
-
-    if (mBaseColor != base_material->mBaseColor)
-    {
-        mBaseColor.write(material_out.pbrMetallicRoughness.baseColorFactor);
-    }
-
-    if (mEmissiveColor != base_material->mEmissiveColor)
-    {
-        material_out.emissiveFactor.resize(3); // 0 size by default
-        mEmissiveColor.write(material_out.emissiveFactor);
-    }
-
-    if (mMetallicFactor != base_material->mMetallicFactor)
-    {
-        material_out.pbrMetallicRoughness.metallicFactor = mMetallicFactor;
-    }
-
-    if (mRoughnessFactor != base_material->mRoughnessFactor)
-    {
-        material_out.pbrMetallicRoughness.roughnessFactor = mRoughnessFactor;
-    }
-
-    if (mDoubleSided != base_material->mDoubleSided)
-    {
-        material_out.doubleSided = mDoubleSided;
-    }
-}
-
 void LLGLTFMaterial::applyOverride(const LLGLTFMaterial& override_mat)
 {
     // TODO: potentially reimplement this with a more general purpose JSON merge
diff --git a/indra/llprimitive/llgltfmaterial.h b/indra/llprimitive/llgltfmaterial.h
index b0afb11bb5e29de446f0d2f7696973db58cb5ca4..d94ce6e281802fcd64218f4d6d5ad3910d90192d 100644
--- a/indra/llprimitive/llgltfmaterial.h
+++ b/indra/llprimitive/llgltfmaterial.h
@@ -185,9 +185,6 @@ class LLGLTFMaterial : public LLRefCount
     // write to given tinygltf::Model
     void writeToModel(tinygltf::Model& model, S32 mat_index) const;
 
-    // calculate the fields in this material that differ from a base material and write them out to a given tinygltf::Model
-    void writeOverridesToModel(tinygltf::Model& model, S32 mat_index, LLGLTFMaterial const* base_material) const;
-
     void applyOverride(const LLGLTFMaterial& override_mat);
 
 private: