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 : S�lectionner tout - Visualiser dans une fen�tre � part
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 : S�lectionner tout - Visualiser dans une fen�tre � part
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.