// --------------------------------------------------- void LightProbe::add () const { mSW->openElement ( COLLADAMaya::CSW_ELEMENT_LIGHT_PROBE ); mSW->appendAttribute ( CSWC::CSW_ATTRIBUTE_ID, getLightProbeId() ); if ( !getLightProbeName().empty() ) mSW->appendAttribute ( CSWC::CSW_ATTRIBUTE_NAME, getLightProbeName() ); //mSW->openElement ( CSWC::CSW_ELEMENT_TECHNIQUE_COMMON ); //mSW->closeElement(); // COLLADASW_ELEMENT_TECHNIQUE_COMMON addExtraTechniques ( mSW ); mSW->closeElement(); // COLLADASW_ELEMENT_LIGHT_PROBE }
//------------------------------- void Sampler::addCommon ( StreamWriter* sw ) const { if ( mWrap_s != Sampler::WRAP_MODE_WRAP && mWrap_s != Sampler::WRAP_MODE_UNSPECIFIED ) sw->appendTextElement ( CSWC::CSW_ELEMENT_WRAP_S, getWrapModeString ( mWrap_s ) ); if ( mWrap_t != Sampler::WRAP_MODE_WRAP && mWrap_t != Sampler::WRAP_MODE_UNSPECIFIED ) sw->appendTextElement ( CSWC::CSW_ELEMENT_WRAP_T, getWrapModeString ( mWrap_t ) ); if ( mWrap_p != Sampler::WRAP_MODE_WRAP && mWrap_p != Sampler::WRAP_MODE_UNSPECIFIED ) sw->appendTextElement ( CSWC::CSW_ELEMENT_WRAP_P, getWrapModeString ( mWrap_p ) ); if ( mMinFilter != Sampler::SAMPLER_FILTER_NONE ) sw->appendTextElement ( CSWC::CSW_ELEMENT_MINFILTER, getSamplerFilterString ( mMinFilter ) ); if ( mMagFilter != Sampler::SAMPLER_FILTER_NONE ) sw->appendTextElement ( CSWC::CSW_ELEMENT_MAGFILTER, getSamplerFilterString ( mMagFilter ) ); if ( mMipFilter != Sampler::SAMPLER_FILTER_NONE ) sw->appendTextElement ( CSWC::CSW_ELEMENT_MIPFILTER, getSamplerFilterString ( mMipFilter ) ); if ( mUseBorderColor ) { sw->openElement ( CSWC::CSW_ELEMENT_BORDER_COLOR ); sw->appendValues ( mBorderColor.getRed(), mBorderColor.getGreen(), mBorderColor.getBlue(), mBorderColor.getAlpha() ); sw->closeElement (); } bool writeMipMapLevel = false; if ( mMipmapMaxlevel != 0 && ( mSamplerType == SAMPLER_TYPE_1D || mSamplerType == SAMPLER_TYPE_DEPTH ) ) writeMipMapLevel = true; if ( mMipmapMaxlevel != 255 && ( mSamplerType != SAMPLER_TYPE_1D || mSamplerType != SAMPLER_TYPE_DEPTH || mSamplerType != SAMPLER_TYPE_UNSPECIFIED ) ) writeMipMapLevel = true; if ( writeMipMapLevel ) { sw->openElement ( CSWC::CSW_ELEMENT_MIPMAP_MAXLEVEL ); sw->appendValues ( mMipmapMaxlevel ); sw->closeElement (); } if ( mMipmapBias != 0.0f ) { sw->openElement ( CSWC::CSW_ELEMENT_MIPMAP_BIAS ); sw->appendValues ( mMipmapBias ); sw->closeElement (); } addExtraTechniques ( sw ); }
// ---------------------------------------- void Sampler::addSurface ( StreamWriter* sw ) const { sw->openElement ( CSWC::CSW_ELEMENT_SURFACE ); sw->appendAttribute( CSWC::CSW_ATTRIBUTE_TYPE, getSurfaceTypeString ( mSamplerType ) ); sw->openElement( CSWC::CSW_ELEMENT_INIT_FROM ); if ( !mImageId.empty() ) sw->appendValues( mImageId ); sw->closeElement(); //CSW_ELEMENT_INIT_FROM addExtraTechniques ( sw ); sw->closeElement(); // COLLADASW_ELEMENT_SURFACE }
//--------------------------------------------------------------- void Image::add ( StreamWriter* sw ) const { sw->openElement ( CSWC::CSW_ELEMENT_IMAGE ); if ( !mId.empty() ) sw->appendAttribute ( CSWC::CSW_ATTRIBUTE_ID, mId ); if ( !mNameNC.empty() ) sw->appendAttribute ( CSWC::CSW_ATTRIBUTE_NAME, mNameNC ); if ( sw->getCOLLADAVersion() == StreamWriter::COLLADA_1_4_1 ) { if ( !mData.empty() ) sw->appendTextElement ( CSWC::CSW_ELEMENT_DATA, mData ); else sw->appendURIElement( CSWC::CSW_ELEMENT_INIT_FROM, mFileURI ); } else if ( sw->getCOLLADAVersion() == StreamWriter::COLLADA_1_5_0 ) { // sw->openElement ( CSWC::CSW_ELEMENT_CREATE_2D); if ( !mFormat.empty() ) { sw->appendTextElement ( CSWC::CSW_ELEMENT_FORMAT, mFormat); } sw->openElement ( CSWC::CSW_ELEMENT_INIT_FROM); sw->appendURIElement( CSWC::CSW_ELEMENT_REF, mFileURI ); sw->closeElement(); // CSW_ELEMENT_INIT_FROM // sw->closeElement(); // CSW_ELEMENT_CREATE_2D } else { COLLADABU_ASSERT(false); } addExtraTechniques ( sw ); sw->closeElement(); }