Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

ProAmateur

Alter Hase

  • »ProAmateur« ist der Autor dieses Themas

Beiträge: 434

Wohnort: Bei Simmern, Koblenz

Beruf: Schüler

  • Private Nachricht senden

1

07.04.2012, 12:15

Ogre

Hi

ich bins wieder :P

ich knüpfe an dieses Thema von mir an, wollte es aber nochmal unter einem neues Thema eröffnen,
da ich noch ein paar generelle Fragen zu ogre hab und anderes es so besser finden, als in dem anderen Thema.

Also, dass das Tutorial auf Englisch ist, ist wirklich gar nit so schlimm!
Man versteht eig alles und ansonsten hat man ja noch seinen besten Freund Google :P

Zu den Fragen:

1.Die modelldatein .mesh ist ja eine eigene von Ogre.
Um Modelle zu erstellen, die ich in Ogre laden kann, muss ich dafür in Blender oder 3ds max einen .mesh ex-/importer hinzufügen oder geht das auch anders
oder kann man bei Ogre auch andere Dateitypen laden, spez. in der createEntity()-Funktion?

2. Ich hab das tutorial zwar noch nicht ganz durch, aber was hat es für einen Vorteil, wenn man allem möglichen immer einen Namen geben muss, den es dann auch nicht zwei mal geben darf?

3. Ogre ist nur eine grafik-Engine. Heißt das, man muss noch eine andere Engine benutzen, um Songs abzuspielen, bzw. kann man da auch die Funktionen von DirektX benutzen?
Welche anderen Engines bieten sich denn noch dazu an (Sound-Engines)?

4. (kommt bestimmt noch)
und da ist sie auch schon:P
Wie in [diesem Tutorial gezeigt, hab ich auch vorkompilierte header benutzt.
Ich will keine Diskusion anfachen, ob das sinnvoll ist oder man es lieber sein lassen sollte, aber wenn ich das beispielprogramm im Debug kompiliere, kommt diese Fehlermeldung:

Zitat

c:\program files (x86)\microsoft visual studio 10.0\vc\include\vector(212): error C3859: Virtueller Speicherbereich für PCH wurde überschritten; kompilieren Sie erneut mit einer Befehlszeilenoption von '-Zm117' oder größer
1>c:\program files (x86)\microsoft visual studio 10.0\vc\include\vector(212): fatal error C1076: Compilerlimit: Interne Heapgrenze erreicht; Verwenden Sie /Zm, um eine höhere Grenze anzugeben
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


Für mich sieht das so aus, als ob ein speicherbereich überschritten würde..nur welcher und wieso?

EDIT: ok hab es mir wieder selbst beantwortet, man muss einfach das machen, was im fehler steht und schon funktioniert es.
Ehrlich gesagt würe mich jetzt doch interessieren, was ihr zu vorkompilierten header sagt...?


Danke!

ProAmateur
"Die Neugier steht immer an erster Stelle eines Problems, das gelöst werden will."
Galileo Galilei
________________________________________________________________________

"Dumme Fragen gibt es nicht, dumm ist nur, wer nicht fragt.“

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »ProAmateur« (07.04.2012, 12:26)


David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

07.04.2012, 12:44

1. Für 3ds max kann ich OgreMax empfehlen, das klappt ganz gut. Soweit ich weiß, kann Ogre wirklich nur sein eigenes .mesh-Format lesen, du brauchst also in jedem Fall einen Exporter/Converter.

2. Stört mich auch ein wenig, aber es soll wohl dafür sorgen, dass du ein Objekt immer mit seinem Namen ansprechen kannst und keins "verloren geht".

3. Jo, Ogre kann keinen Sound abspielen und was du benutzt, bleibt dir überlassen. Ich glaube, es gibt aber einige "Erweiterungen" für Ogre, mit denen man Sounds direkt in den Szenengraphen einbauen kann. Ähnlich wie es auch Physik-Erweiterungen gibt. Das einzige was Ogre neben Grafik noch kann ist Input (Tastatur, Maus, Joystick) über OIS.

4. Vorkompilierte Header sind super, wenn man sie richtig benutzt, da sie die Dauer eines Kompiliervorganges erheblich reduzieren können. Bei kleinen Projekten merkt man das noch nicht so, aber wenn du mal ein größeres Projekt mit hunderten Quellcodedateien hast, wovon viele wiederum große Header einbinden, dann wirst du dich über dieses Feature freuen!

ProAmateur

Alter Hase

  • »ProAmateur« ist der Autor dieses Themas

Beiträge: 434

Wohnort: Bei Simmern, Koblenz

Beruf: Schüler

  • Private Nachricht senden

3

07.04.2012, 13:14

zu 4. ich weiß nicht genau, aber es fühlt sich irgendwie so an als würde er bei jedem kompilieren, die deader vorkompilieren, denn ich merke so gar keinen unterschied...
weißt du, wie ich erkennt, dass er das nur einmal macht und nicht bei jedem mal?

EDIT: aso. hat das einen besonderen Grund, wieso im dem tutorial immer in leere Funktionsheader void geschrieben wird?
Oder is das einfach nur zum verdeutlichen, dass diese leer sind?
"Die Neugier steht immer an erster Stelle eines Problems, das gelöst werden will."
Galileo Galilei
________________________________________________________________________

"Dumme Fragen gibt es nicht, dumm ist nur, wer nicht fragt.“

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

07.04.2012, 13:48

Der vorkompilierte Header wird nur dann neu generiert, wenn sich dort etwas geändert hat.
Das heißt: wenn du neue Header-Dateien in der PCH.h eingebunden hast oder wenn du einen der dort verlinkten Header geändert hast.

Du solltest dort keine eigenen Header einbauen, sondern das ist eher für Third-Party Libraries wie Ogre, fmod, ... und auch STL gedacht.

"void Funktion(void)" kann man schreiben und bedeutet dasselbe wie "void Funktion()", finde ich aber Quatsch.

ProAmateur

Alter Hase

  • »ProAmateur« ist der Autor dieses Themas

Beiträge: 434

Wohnort: Bei Simmern, Koblenz

Beruf: Schüler

  • Private Nachricht senden

5

07.04.2012, 13:55

ja ok , danke, dann hab ich alles richtig verstanden :P
"Die Neugier steht immer an erster Stelle eines Problems, das gelöst werden will."
Galileo Galilei
________________________________________________________________________

"Dumme Fragen gibt es nicht, dumm ist nur, wer nicht fragt.“

6

07.04.2012, 15:44

Zitat von »ProAmateur«

hat das einen besonderen Grund, wieso im dem tutorial immer in leere Funktionsheader void geschrieben wird?

Das ist nur für C relevant. In C bedeutet eine leere Parameterliste bei einem Prototypen, dass keine Informationen über die Anzahl oder den Typ der Parameter bekannt sind. Eine auf diese Weise deklarierte Funktion nimmt beliebige Argumente entgegen. Ein void-Parameter legt hingegen eindeutig fest, dass die Funktion keine Argumente akzeptiert.

Ist ggf. auch für die Kompatibilität zwischen C und C++ von Belang, wenn beispielsweise die Headerdatei für beide Sprachen gleichzeitig verfügbar sein soll.

ProAmateur

Alter Hase

  • »ProAmateur« ist der Autor dieses Themas

Beiträge: 434

Wohnort: Bei Simmern, Koblenz

Beruf: Schüler

  • Private Nachricht senden

7

07.04.2012, 18:07

hi

Ich bin jetzt beim 3. Basic tutorial dran und wenn ich das bis zum ersten Teil kopilieren will, kommt das ^^:

Zitat

1>------ Erstellen gestartet: Projekt: Test, Konfiguration: Debug Win32 ------
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __thiscall Ogre::TerrainGroup::getResourceGroup(void)const " (__imp_?getResourceGroup@TerrainGroup@Ogre@@QBEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)" in Funktion ""private: void __thiscall TutorialApplication::defineTerrain(long,long)" (?defineTerrain@TutorialApplication@@AAEXJJ@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall Ogre::TerrainGroup::generateFilename(long,long)const " (__imp_?generateFilename@TerrainGroup@Ogre@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@JJ@Z)" in Funktion ""private: void __thiscall TutorialApplication::defineTerrain(long,long)" (?defineTerrain@TutorialApplication@@AAEXJJ@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainLayerBlendMap::update(void)" (__imp_?update@TerrainLayerBlendMap@Ogre@@QAEXXZ)" in Funktion ""private: void __thiscall TutorialApplication::initBlendMaps(class Ogre::Terrain *)" (?initBlendMaps@TutorialApplication@@AAEXPAVTerrain@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainLayerBlendMap::dirty(void)" (__imp_?dirty@TerrainLayerBlendMap@Ogre@@QAEXXZ)" in Funktion ""private: void __thiscall TutorialApplication::initBlendMaps(class Ogre::Terrain *)" (?initBlendMaps@TutorialApplication@@AAEXPAVTerrain@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: float __thiscall Ogre::Terrain::getHeightAtTerrainPosition(float,float)" (__imp_?getHeightAtTerrainPosition@Terrain@Ogre@@QAEMMM@Z)" in Funktion ""private: void __thiscall TutorialApplication::initBlendMaps(class Ogre::Terrain *)" (?initBlendMaps@TutorialApplication@@AAEXPAVTerrain@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainLayerBlendMap::convertImageToTerrainSpace(unsigned int,unsigned int,float *,float *)" (__imp_?convertImageToTerrainSpace@TerrainLayerBlendMap@Ogre@@QAEXIIPAM0@Z)" in Funktion ""private: void __thiscall TutorialApplication::initBlendMaps(class Ogre::Terrain *)" (?initBlendMaps@TutorialApplication@@AAEXPAVTerrain@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: unsigned short __thiscall Ogre::Terrain::getLayerBlendMapSize(void)const " (__imp_?getLayerBlendMapSize@Terrain@Ogre@@QBEGXZ)" in Funktion ""private: void __thiscall TutorialApplication::initBlendMaps(class Ogre::Terrain *)" (?initBlendMaps@TutorialApplication@@AAEXPAVTerrain@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: float * __thiscall Ogre::TerrainLayerBlendMap::getBlendPointer(void)" (__imp_?getBlendPointer@TerrainLayerBlendMap@Ogre@@QAEPAMXZ)" in Funktion ""private: void __thiscall TutorialApplication::initBlendMaps(class Ogre::Terrain *)" (?initBlendMaps@TutorialApplication@@AAEXPAVTerrain@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class Ogre::TerrainLayerBlendMap * __thiscall Ogre::Terrain::getLayerBlendMap(unsigned char)" (__imp_?getLayerBlendMap@Terrain@Ogre@@QAEPAVTerrainLayerBlendMap@2@E@Z)" in Funktion ""private: void __thiscall TutorialApplication::initBlendMaps(class Ogre::Terrain *)" (?initBlendMaps@TutorialApplication@@AAEXPAVTerrain@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapDiffuse(class Ogre::ColourValue const &)" (__imp_?setCompositeMapDiffuse@TerrainGlobalOptions@Ogre@@QAEXABVColourValue@2@@Z)" in Funktion ""private: void __thiscall TutorialApplication::configureTerrainDefaults(class Ogre::Light *)" (?configureTerrainDefaults@TutorialApplication@@AAEXPAVLight@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapAmbient(class Ogre::ColourValue const &)" (__imp_?setCompositeMapAmbient@TerrainGlobalOptions@Ogre@@QAEXABVColourValue@2@@Z)" in Funktion ""private: void __thiscall TutorialApplication::configureTerrainDefaults(class Ogre::Light *)" (?configureTerrainDefaults@TutorialApplication@@AAEXPAVLight@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setLightMapDirection(class Ogre::Vector3 const &)" (__imp_?setLightMapDirection@TerrainGlobalOptions@Ogre@@QAEXABVVector3@2@@Z)" in Funktion ""private: void __thiscall TutorialApplication::configureTerrainDefaults(class Ogre::Light *)" (?configureTerrainDefaults@TutorialApplication@@AAEXPAVLight@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setCompositeMapDistance(float)" (__imp_?setCompositeMapDistance@TerrainGlobalOptions@Ogre@@QAEXM@Z)" in Funktion ""private: void __thiscall TutorialApplication::configureTerrainDefaults(class Ogre::Light *)" (?configureTerrainDefaults@TutorialApplication@@AAEXPAVLight@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainGlobalOptions::setMaxPixelError(float)" (__imp_?setMaxPixelError@TerrainGlobalOptions@Ogre@@QAEXM@Z)" in Funktion ""private: void __thiscall TutorialApplication::configureTerrainDefaults(class Ogre::Light *)" (?configureTerrainDefaults@TutorialApplication@@AAEXPAVLight@Ogre@@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainGroup::freeTemporaryResources(void)" (__imp_?freeTemporaryResources@TerrainGroup@Ogre@@QAEXXZ)" in Funktion ""protected: virtual void __thiscall TutorialApplication::createScene(void)" (?createScene@TutorialApplication@@MAEXXZ)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: class Ogre::MapIterator<class std::map<unsigned int,struct Ogre::TerrainGroup::TerrainSlot *,struct std::less<unsigned int>,class Ogre::STLAllocator<struct std::pair<unsigned int const ,struct Ogre::TerrainGroup::TerrainSlot *>,class Ogre::CategorisedAllocPolicy<0> > > > __thiscall Ogre::TerrainGroup::getTerrainIterator(void)" (__imp_?getTerrainIterator@TerrainGroup@Ogre@@QAE?AV?$MapIterator@V?$map@IPAUTerrainSlot@TerrainGroup@Ogre@@U?$less@I@std@@V?$STLAllocator@U?$pair@$$CBIPAUTerrainSlot@TerrainGroup@Ogre@@@std@@V?$CategorisedAllocPolicy@$0A@@Ogre@@@3@@std@@@2@XZ)" in Funktion ""protected: virtual void __thiscall TutorialApplication::createScene(void)" (?createScene@TutorialApplication@@MAEXXZ)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall Ogre::TerrainGroup::setFilenameConvention(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (__imp_?setFilenameConvention@TerrainGroup@Ogre@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z)" in Funktion ""protected: virtual void __thiscall TutorialApplication::createScene(void)" (?createScene@TutorialApplication@@MAEXXZ)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall Ogre::TerrainGroup::TerrainGroup(class Ogre::SceneManager *,enum Ogre::Terrain::Alignment,unsigned short,float)" (__imp_??0TerrainGroup@Ogre@@QAE@PAVSceneManager@1@W4Alignment@Terrain@1@GM@Z)" in Funktion ""protected: virtual void __thiscall TutorialApplication::createScene(void)" (?createScene@TutorialApplication@@MAEXXZ)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall Ogre::TerrainGlobalOptions::TerrainGlobalOptions(void)" (__imp_??0TerrainGlobalOptions@Ogre@@QAE@XZ)" in Funktion ""protected: virtual void __thiscall TutorialApplication::createScene(void)" (?createScene@TutorialApplication@@MAEXXZ)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual bool __thiscall Ogre::TerrainGroup::canHandleRequest(class Ogre::WorkQueue::Request const *,class Ogre::WorkQueue const *)" (?canHandleRequest@TerrainGroup@Ogre@@UAE_NPBVRequest@WorkQueue@2@PBV42@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual struct Ogre::WorkQueue::Response * __thiscall Ogre::TerrainGroup::handleRequest(class Ogre::WorkQueue::Request const *,class Ogre::WorkQueue const *)" (?handleRequest@TerrainGroup@Ogre@@UAEPAUResponse@WorkQueue@2@PBVRequest@42@PBV42@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual struct Ogre::Terrain::ImportData & __thiscall Ogre::TerrainGroup::getDefaultImportSettings(void)" (?getDefaultImportSettings@TerrainGroup@Ogre@@UAEAAUImportData@Terrain@2@XZ)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::setOrigin(class Ogre::Vector3 const &)" (?setOrigin@TerrainGroup@Ogre@@UAEXABVVector3@2@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual class Ogre::Vector3 const & __thiscall Ogre::TerrainGroup::getOrigin(void)const " (?getOrigin@TerrainGroup@Ogre@@UBEABVVector3@2@XZ)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual enum Ogre::Terrain::Alignment __thiscall Ogre::TerrainGroup::getAlignment(void)const " (?getAlignment@TerrainGroup@Ogre@@UBE?AW4Alignment@Terrain@2@XZ)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual float __thiscall Ogre::TerrainGroup::getTerrainWorldSize(void)const " (?getTerrainWorldSize@TerrainGroup@Ogre@@UBEMXZ)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual class Ogre::SceneManager * __thiscall Ogre::TerrainGroup::getSceneManager(void)const " (?getSceneManager@TerrainGroup@Ogre@@UBEPAVSceneManager@2@XZ)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?defineTerrain@TerrainGroup@Ogre@@UAEXJJABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,float const *,class std::vector<struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > > const *)" (?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBMPBV?$vector@ULayerInstance@Terrain@Ogre@@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@@std@@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,class Ogre::Image const *,class std::vector<struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > > const *)" (?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBVImage@2@PBV?$vector@ULayerInstance@Terrain@Ogre@@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@@std@@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,struct Ogre::Terrain::ImportData const *)" (?defineTerrain@TerrainGroup@Ogre@@UAEXJJPBUImportData@Terrain@2@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long,float)" (?defineTerrain@TerrainGroup@Ogre@@UAEXJJM@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::defineTerrain(long,long)" (?defineTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::loadAllTerrains(bool)" (?loadAllTerrains@TerrainGroup@Ogre@@UAEX_N@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::loadTerrain(long,long,bool)" (?loadTerrain@TerrainGroup@Ogre@@UAEXJJ_N@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::unloadTerrain(long,long)" (?unloadTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::removeTerrain(long,long)" (?removeTerrain@TerrainGroup@Ogre@@UAEXJJ@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual struct Ogre::TerrainGroup::TerrainSlotDefinition * __thiscall Ogre::TerrainGroup::getTerrainDefinition(long,long)const " (?getTerrainDefinition@TerrainGroup@Ogre@@UBEPAUTerrainSlotDefinition@12@JJ@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual class Ogre::Terrain * __thiscall Ogre::TerrainGroup::getTerrain(long,long)const " (?getTerrain@TerrainGroup@Ogre@@UBEPAVTerrain@2@JJ@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual bool __thiscall Ogre::TerrainGroup::canHandleResponse(struct Ogre::WorkQueue::Response const *,class Ogre::WorkQueue const *)" (?canHandleResponse@TerrainGroup@Ogre@@UAE_NPBUResponse@WorkQueue@2@PBV42@@Z)".
1>TutorialApplication.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: virtual void __thiscall Ogre::TerrainGroup::handleResponse(struct Ogre::WorkQueue::Response const *,class Ogre::WorkQueue const *)" (?handleResponse@TerrainGroup@Ogre@@UAEXPBUResponse@WorkQueue@2@PBV42@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall Ogre::TerrainGroup::~TerrainGroup(void)" (__imp_??1TerrainGroup@Ogre@@UAE@XZ)" in Funktion ""public: virtual void * __thiscall Ogre::TerrainGroup::`scalar deleting destructor'(unsigned int)" (??_GTerrainGroup@Ogre@@UAEPAXI@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall Ogre::Terrain::LayerInstance::~LayerInstance(void)" (__imp_??1LayerInstance@Terrain@Ogre@@QAE@XZ)" in Funktion ""void __cdecl std::_Uninit_def_fill_n<struct Ogre::Terrain::LayerInstance *,unsigned int,struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> >,struct Ogre::Terrain::LayerInstance>(struct Ogre::Terrain::LayerInstance *,unsigned int,struct Ogre::Terrain::LayerInstance const *,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > &,struct Ogre::Terrain::LayerInstance *,struct std::_Nonscalar_ptr_iterator_tag)" (??$_Uninit_def_fill_n@PAULayerInstance@Terrain@Ogre@@IU123@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@U123@@std@@YAXPAULayerInstance@Terrain@Ogre@@IPBU123@AAV?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@0U_Nonscalar_ptr_iterator_tag@0@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall Ogre::Terrain::LayerInstance::LayerInstance(void)" (__imp_??0LayerInstance@Terrain@Ogre@@QAE@XZ)" in Funktion ""void __cdecl std::_Uninit_def_fill_n<struct Ogre::Terrain::LayerInstance *,unsigned int,struct Ogre::Terrain::LayerInstance,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> >,struct Ogre::Terrain::LayerInstance>(struct Ogre::Terrain::LayerInstance *,unsigned int,struct Ogre::Terrain::LayerInstance const *,class Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> > &,struct Ogre::Terrain::LayerInstance *,struct std::_Nonscalar_ptr_iterator_tag)" (??$_Uninit_def_fill_n@PAULayerInstance@Terrain@Ogre@@IU123@V?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@U123@@std@@YAXPAULayerInstance@Terrain@Ogre@@IPBU123@AAV?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@3@0U_Nonscalar_ptr_iterator_tag@0@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall Ogre::TerrainGlobalOptions::~TerrainGlobalOptions(void)" (__imp_??1TerrainGlobalOptions@Ogre@@UAE@XZ)" in Funktion ""public: virtual void * __thiscall Ogre::TerrainGlobalOptions::`scalar deleting destructor'(unsigned int)" (??_GTerrainGlobalOptions@Ogre@@UAEPAXI@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: struct Ogre::Terrain::LayerInstance & __thiscall Ogre::Terrain::LayerInstance::operator=(struct Ogre::Terrain::LayerInstance const &)" (__imp_??4LayerInstance@Terrain@Ogre@@QAEAAU012@ABU012@@Z)" in Funktion ""struct Ogre::Terrain::LayerInstance * __cdecl std::_Move<struct Ogre::Terrain::LayerInstance *,struct Ogre::Terrain::LayerInstance *>(struct Ogre::Terrain::LayerInstance *,struct Ogre::Terrain::LayerInstance *,struct Ogre::Terrain::LayerInstance *,struct std::_Nonscalar_ptr_iterator_tag)" (??$_Move@PAULayerInstance@Terrain@Ogre@@PAU123@@std@@YAPAULayerInstance@Terrain@Ogre@@PAU123@00U_Nonscalar_ptr_iterator_tag@0@@Z)".
1>TutorialApplication.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall Ogre::Terrain::LayerInstance::LayerInstance(struct Ogre::Terrain::LayerInstance const &)" (__imp_??0LayerInstance@Terrain@Ogre@@QAE@ABU012@@Z)" in Funktion ""public: void __thiscall Ogre::STLAllocator<struct Ogre::Terrain::LayerInstance,class Ogre::CategorisedAllocPolicy<0> >::construct(struct Ogre::Terrain::LayerInstance *,struct Ogre::Terrain::LayerInstance const &)" (?construct@?$STLAllocator@ULayerInstance@Terrain@Ogre@@V?$CategorisedAllocPolicy@$0A@@3@@Ogre@@QAEXPAULayerInstance@Terrain@2@ABU342@@Z)".
1>C:\Users\Mathias Heiles\documents\visual studio 2010\Projects\Test\Debug\Test.exe : fatal error LNK1120: 47 nicht aufgelöste externe Verweise.
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


bei meiner Suche nach einer lösung bin ich auf ein thema hier im forum gestoßen, worin jemand das selbe problem hatte, da ist abe auch keine Lösung gefunden worden^^

Steht ja dass es ein linker fehler is...
Die einzige Änderung die ich hab sind zwei die zwei neuen header, aber hab da auch keine Ahnung woran das leigen könnte...
"Die Neugier steht immer an erster Stelle eines Problems, das gelöst werden will."
Galileo Galilei
________________________________________________________________________

"Dumme Fragen gibt es nicht, dumm ist nur, wer nicht fragt.“

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

8

07.04.2012, 18:11

Da fehlt wohl eine Library-Datei.

ProAmateur

Alter Hase

  • »ProAmateur« ist der Autor dieses Themas

Beiträge: 434

Wohnort: Bei Simmern, Koblenz

Beruf: Schüler

  • Private Nachricht senden

9

07.04.2012, 21:04

Ok das hört sich plausibel an, jetzt is nur die Frage welche und Wieso, da ich die Installation genau so gemacht hab, wie da gesagt und im tutorial auch nix Dai gestanden hat, dass man noch eine hinzufügen muss...
"Die Neugier steht immer an erster Stelle eines Problems, das gelöst werden will."
Galileo Galilei
________________________________________________________________________

"Dumme Fragen gibt es nicht, dumm ist nur, wer nicht fragt.“

10

07.04.2012, 23:43

Spontan würd ich sagen, dass du das

Zitat

To be able to compile that code, you need to link to the Ogre Terrain component.
Add 'OgreTerrain.lib' for release and 'OgreTerrain_d.lib' for debug to your project library input on Windows.
To do this, right click on BasicTutorial3 project in the solution window. Go to properties, then a configuration manager will appear, select the configuration from the top left drop down, then in Configuration properties -> Linker -> input, add the file references outlined above.
vergessen hast.

Werbeanzeige