コード例 #1
0
ファイル: Shader.cpp プロジェクト: joewan/fury3d
	bool Shader::Save(void* wrapper)
	{
		StartObject(wrapper);

		SaveKey(wrapper, "name");
		SaveValue(wrapper, m_Name);

		SaveKey(wrapper, "type");
		SaveValue(wrapper, EnumUtil::ShaderTypeToString(m_Type));

		std::vector<ShaderTexture> enums;
		EnumUtil::GetShaderTextures(m_TextureFlags, enums);

		SaveKey(wrapper, "textures");
		SaveArray(wrapper, enums.size(), [&](unsigned int index)
		{
			SaveValue(wrapper, EnumUtil::ShaderTextureToString(enums[index]));
		});

		SaveKey(wrapper, "path");
		SaveValue(wrapper, m_FilePath);

		EndObject(wrapper);

		return true;
	}
コード例 #2
0
ファイル: Texture.cpp プロジェクト: colinchen1984/fury3d
	bool Texture::Save(void* wrapper)
	{
		StartObject(wrapper);

		SaveKey(wrapper, "name");
		SaveValue(wrapper, m_Name);
		SaveKey(wrapper, "format");
		SaveValue(wrapper, EnumUtil::TextureFormatToString(m_Format));
		SaveKey(wrapper, "type");
		SaveValue(wrapper, EnumUtil::TextureTypeToString(m_Type));
		SaveKey(wrapper, "filter");
		SaveValue(wrapper, EnumUtil::FilterModeToString(m_FilterMode));
		SaveKey(wrapper, "wrap");
		SaveValue(wrapper, EnumUtil::WrapModeToString(m_WrapMode));
		SaveKey(wrapper, "width");
		SaveValue(wrapper, m_Width);
		SaveKey(wrapper, "height");
		SaveValue(wrapper, m_Height);
		SaveKey(wrapper, "borderColor");
		SaveValue(wrapper, m_BorderColor);
		SaveKey(wrapper, "mipmap");
		SaveValue(wrapper, m_Mipmap);

		EndObject(wrapper);

		return true;
	}
コード例 #3
0
ファイル: encode.cpp プロジェクト: trieck/source
BOOL BEEncoder::EncodeInt(LPINTEGER i)
{
    BeginInteger();
    WriteRawInt(*i);
    EndObject();
    return TRUE;
}
コード例 #4
0
ファイル: Light.cpp プロジェクト: sindney/fury3d
	void Light::Save(void* wrapper, bool object)
	{
		if (object)
			StartObject(wrapper);

		// save typeinfo
		SaveKey(wrapper, "type");
		SaveValue(wrapper, "Light");

		SaveKey(wrapper, "light_type");
		SaveValue(wrapper, EnumUtil::LightTypeToString(m_Type));
		SaveKey(wrapper, "color");
		SaveValue(wrapper, m_Color);
		SaveKey(wrapper, "intensity");
		SaveValue(wrapper, m_Intensity);
		SaveKey(wrapper, "inner_angle");
		SaveValue(wrapper, m_InnerAngle);
		SaveKey(wrapper, "outter_angle");
		SaveValue(wrapper, m_OutterAngle);
		SaveKey(wrapper, "falloff");
		SaveValue(wrapper, m_Falloff);
		SaveKey(wrapper, "radius");
		SaveValue(wrapper, m_Radius);
		SaveKey(wrapper, "cast_shadows");
		SaveValue(wrapper, m_CastShadows);

		if (object)
			EndObject(wrapper);
	}
コード例 #5
0
ファイル: Pass.cpp プロジェクト: bobbyzhu/fury3d
bool Pass::Save(void* wrapper)
{
    EnumUtil::Ptr enumUtil = EnumUtil::Instance();

    std::vector<std::string> strs;
    std::string emptyStr;

    StartObject(wrapper);

    SaveKey(wrapper, "name");
    SaveValue(wrapper, m_Name);

    SaveKey(wrapper, "camera");
    SaveValue(wrapper, m_CameraNode == nullptr ? "" : m_CameraNode->GetName());

    std::vector<Shader::Ptr> shaders;
    shaders.reserve(m_ShaderMap.size());
    for (auto pair : m_ShaderMap)
        shaders.push_back(pair.second);

    SaveKey(wrapper, "shaders");
    SaveArray(wrapper, m_ShaderMap.size(), [&](unsigned int index)
    {
        SaveValue(wrapper, shaders[index]->GetName());
    });

    SaveKey(wrapper, "input");
    SaveArray(wrapper, m_InputTextures.size(), [&](unsigned int index)
    {
        SaveValue(wrapper, m_InputTextures[index]->GetName());
    });

    SaveKey(wrapper, "output");
    SaveArray(wrapper, m_OutputTextures.size(), [&](unsigned int index)
    {
        SaveValue(wrapper, m_OutputTextures[index]->GetName());
    });

    SaveKey(wrapper, "index");
    SaveValue(wrapper, (int&)m_RenderIndex);

    SaveKey(wrapper, "blendMode");
    SaveValue(wrapper, enumUtil->BlendModeToString(m_BlendMode));

    SaveKey(wrapper, "compareMode");
    SaveValue(wrapper, enumUtil->CompareModeToString(m_CompareMode));

    SaveKey(wrapper, "cullMode");
    SaveValue(wrapper, enumUtil->CullModeToString(m_CullMode));

    SaveKey(wrapper, "drawMode");
    SaveValue(wrapper, enumUtil->DrawModeToString(m_DrawMode));

    EndObject(wrapper);

    return true;
}
コード例 #6
0
ファイル: serializer.cpp プロジェクト: JGunning/OpenAOL-TV
void Serializer::SerializeObject( const QObject *pObject, const QString &sName )
{
    m_hash.addData( sName.toUtf8() );

    BeginObject( sName, pObject );

    SerializeObjectProperties( pObject );

    EndObject( sName, pObject );
}
コード例 #7
0
ファイル: encode.cpp プロジェクト: trieck/source
BOOL BEEncoder::EncodeList(LPLIST l)
{
    BeginList();

    for (unsigned i = 0; i < l->size(); i++) {
        EncodeObject(l->Get(i));
    }

    EndObject();

    return TRUE;
}
コード例 #8
0
ファイル: encode.cpp プロジェクト: trieck/source
BOOL BEEncoder::EncodeDict(LPDICTIONARY d)
{
    BeginDictionary();					// begin dictionary

    DictIterator it = d->GetIterator();
    while (it.HasNext()) {
        Dictionary::ObjectEntry entry = it.GetNext();
        EncodeString(entry.first);
        EncodeObject(entry.second);
    }

    EndObject();

    return TRUE;
}
コード例 #9
0
ファイル: Shader.cpp プロジェクト: bobbyzhu/fury3d
	bool Shader::Save(void* wrapper)
	{
		EnumUtil::Ptr enumUtil = EnumUtil::Instance();

		StartObject(wrapper);

		SaveKey(wrapper, "name");
		SaveValue(wrapper, m_Name);

		SaveKey(wrapper, "type");
		SaveValue(wrapper, enumUtil->ShaderTypeToString(m_Type));

		SaveKey(wrapper, "path");
		SaveValue(wrapper, m_FilePath);

		EndObject(wrapper);

		return true;
	}