[error C2079] Prolème avec CBuffer de Yes::Engine
Bonjour,
Je suis actuellement entrain de faire un moteur 3D en suivant le tuto Sur le moteur 3d Yes::Engine. J'ai réussi à bien avancer mais je rencontre un problème lorsque je veux définir la classe C_Model.
Voici la classe C_Model :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#include <Configs/Fwd.h>
#include <ResourcesManager/C_IResource.h>
#include <Core/C_IBuffer.h>
#include <Core/C_IDeclaration.h>
#include <Utilities/C_SmartPtr.h>
#include <Maths/C_Vector2.h>
#include <Maths/C_Vector3.h>
namespace SilverEngine{
class SILVERENGINE_API C_Model : public C_IResource{
public :
struct TVertex
{
vector3f Position; ///< Position
vector3f Normal; ///< Vecteur normal
unsigned long Color; ///< Normale
};
typedef unsigned short TIndex;
C_Model(const TVertex* Vertices, unsigned long VerticesCount, const TIndex* Indices, unsigned long IndicesCount);
void Render() const;
protected :
CDeclarationPtr m_Declaration;
C_Buffer<TVertex> m_VertexBuffer; ///< error C2079: 'SilverEngine::C_Model::m_VertexBuffer' utilise une class de 'SilverEngine::C_Buffer<TVertex>' non défini
C_Buffer<TIndex> m_IndexBuffer; ///< error C2079: 'SilverEngine::C_Model::m_IndexBuffer' utilise une class de 'SilverEngine::C_Buffer<TIndex>' non défini
};
typedef C_SmartPtr<C_Model, C_ResourceCOM> TModelPtr;
} // namespace SilverEngine |
La classe est similaire au tuto pour le moment car je compte définir une class C_Mesh etc... Mais je n'arrive pas à faire fonctionner C_Buffer<TVertex> et C_Buffer<TIndex>. Alors que Tvertex est définie plus haut.
En cherchant sur internet je suis tomber sur plusieur remarque indiquant qu'il fallait déclarer à l'avance mais même en mettant ceci en haut du fichier :
Code:
1 2
|
template <class> class C_Buffer; |
Je n'arrive pas à comprendre cette erreur. Serait-il possible que cela vienne d'une configuration du projet?
Si quelqu'un pouvais m'aider je le remercie d'avance.