moved files around
This commit is contained in:
61
Extras/FCollada/FCDocument/FCDMaterialInstance.h
Normal file
61
Extras/FCollada/FCDocument/FCDMaterialInstance.h
Normal file
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
Copyright (C) 2005-2006 Feeling Software Inc.
|
||||
MIT License: http://www.opensource.org/licenses/mit-license.php
|
||||
*/
|
||||
/*
|
||||
Based on the FS Import classes:
|
||||
Copyright (C) 2005-2006 Feeling Software Inc
|
||||
Copyright (C) 2005-2006 Autodesk Media Entertainment
|
||||
MIT License: http://www.opensource.org/licenses/mit-license.php
|
||||
*/
|
||||
|
||||
#ifndef _FCD_MATERIAL_BIND_H_
|
||||
#define _FCD_MATERIAL_BIND_H_
|
||||
|
||||
#include "FCDocument/FCDEntityInstance.h"
|
||||
|
||||
class FCDocument;
|
||||
class FCDGeometryInstance;
|
||||
|
||||
class FCOLLADA_EXPORT FCDMaterialInstanceBind
|
||||
{
|
||||
public:
|
||||
string semantic;
|
||||
string target;
|
||||
};
|
||||
|
||||
typedef vector<FCDMaterialInstanceBind> FCDMaterialInstanceBindList;
|
||||
|
||||
class FCOLLADA_EXPORT FCDMaterialInstance : public FCDEntityInstance
|
||||
{
|
||||
private:
|
||||
FCDGeometryInstance* parent;
|
||||
fstring semantic;
|
||||
FCDMaterial* material;
|
||||
FCDMaterialInstanceBindList bindings;
|
||||
|
||||
public:
|
||||
FCDMaterialInstance(FCDocument* document, FCDGeometryInstance* parent);
|
||||
virtual ~FCDMaterialInstance();
|
||||
|
||||
// Accessors
|
||||
virtual Type GetType() const { return MATERIAL; }
|
||||
const fstring& GetSemantic() const { return semantic; }
|
||||
FCDMaterial* GetMaterial() { return material; }
|
||||
const FCDMaterial* GetMaterial() const { return material; }
|
||||
FCDMaterialInstanceBindList& GetBindings() { return bindings; }
|
||||
const FCDMaterialInstanceBindList& GetBindings() const { return bindings; }
|
||||
|
||||
// Create a flattened version of the instantiated material: this is the
|
||||
// prefered way to generate viewer materials from a COLLADA document
|
||||
FCDMaterial* FlattenMaterial();
|
||||
|
||||
// Read in the materal instantiation from the COLLADA document
|
||||
virtual FUStatus LoadFromXML(xmlNode* instanceNode);
|
||||
FUStatus LoadFromId(const string& materialId); // COLLADA 1.3 backward compatibility
|
||||
|
||||
// Write out the instantiation information to the xml node tree
|
||||
xmlNode* WriteToXML(xmlNode* parentNode) const;
|
||||
};
|
||||
|
||||
#endif // _FCD_MATERIAL_BIND_H_
|
||||
Reference in New Issue
Block a user