// ---------------------------------------------------
    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

    }
Esempio n. 2
0
	//-------------------------------
	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 );
	}
Esempio n. 3
0
	// ----------------------------------------
	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
	}
Esempio n. 4
0
    //---------------------------------------------------------------
    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();
    }