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

1

06.08.2006, 19:33

tbVector3 Klasse und TRIBASE_API

Ich bin grade am Anfang des Buches wo man die Klasse tbVector3 implementiert. Wenn cih wie im buch beschrieben, die TRIBASE_API bei der klassendefinition eintrage:

C-/C++-Quelltext

1
class TRIBASE_API tbVector3


dann hagelt es nur so Fehler. scheinbar kann der compilier mit dem TRIBASE_API nichts anfangen, lass ich es weg, krieg ich meine klasse fehlerfrei kompiliert.

Woran kann das liegen? Beim Linker hab ich folgenden .libs gelinkt

[qoute]TriBaseD.lib d3d9.lib d3dx9d.lib dinput8.lib dsound.lib strmiids.lib strmbased.lib dxerr9.lib dxguid.lib winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib[/qoute]

Jemand einen idee was falsch sein könnte?

Firefly

Alter Hase

Beiträge: 484

Wohnort: Irgendwoundnirgendwo

  • Private Nachricht senden

2

06.08.2006, 19:35

Fehlermeldungen?

Firefly

Alter Hase

Beiträge: 484

Wohnort: Irgendwoundnirgendwo

  • Private Nachricht senden

3

06.08.2006, 19:36

Eigentlich muss man nichts implementieren. Die Vector-Klassen und alles andere sind ja schon in der Tribase implementiert. Das ganze soll auch nur zeigen wie man so etwas zum Beispiel in einer eigenen 3D-Engine implementieren kann.

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

4

06.08.2006, 19:46

Das TRIBASE_API ist für den export aus der DLL, benutzt du auch ein DLL projekt? Sonst lass es weg, so ist es definiert:

C-/C++-Quelltext

1
2
3
4
5
#ifdef TRIBASE_EXPORTS
#define TRIBASE_API __declspec(dllexport)
#else
#define TRIBASE_API __declspec(dllimport)
#endif
Was es alles gibt, das ich nich brauche - Aristoteles

5

06.08.2006, 20:19

Zitat


Eigentlich muss man nichts implementieren. Die Vector-Klassen und alles andere sind ja schon in der Tribase implementiert. Das ganze soll auch nur zeigen wie man so etwas zum Beispiel in einer eigenen 3D-Engine implementieren kann.


das buch also eher dazu gedacht den code nur zu lesen und das prinzip zu vermitteln? jediglich die übungen am ende der einheiten sollen mir die möglichkeit geben selber mal tätig zu werden?!

dann hab ich das wohl etwas falsch verstanden......danke.

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

6

06.08.2006, 20:25

du kannst ruhig selbst ein bischen implementieren das übt auch gut
Was es alles gibt, das ich nich brauche - Aristoteles

Sheddex

unregistriert

7

06.08.2006, 21:41

Du kannst natürlich auch eine eigene Engine anfangen und das gelernte einbauen. Aber wenn du das tust: Bereite dich auf deutlich langsameres Vorrankommen im Buch vor, allderdings lernt man dabei auch mehr... Ich jedefalls mach das so.

8

06.08.2006, 22:45

Zitat von »"DarkHunter"«

Du kannst natürlich auch eine eigene Engine anfangen und das gelernte einbauen. Aber wenn du das tust: Bereite dich auf deutlich langsameres Vorrankommen im Buch vor, allderdings lernt man dabei auch mehr... Ich jedefalls mach das so.


Da fehlt es mir wohl etwas an Kenntnissen. Ich wüsste so direkt nicht, an welcher Stelle der Engine ich das code-schnipsel positionieren müsste das CW_Kovok oben gepostet hat.

Oder gibts da was kurzes zum lesen, wie man ein DLL-Projekt einrichtet etc. da hab ich so eigentlich noch keine richtigen Infos zu. Komme eigentlich relativ frisch von der Welt der Konsolenanwendungen und hab mich mit den möglichkeiten und funktionen von visual studio noch nie so richtig beschäftigt.

Sheddex

unregistriert

9

06.08.2006, 23:23

Meine "Engine" war am Anfang eine Normale Anwendung in der ich ebe immer mehr Funktionen und Klasse nangelegt hab. So kann man dann diese auch gleich in der Main testen. Igendwann hab ich dann einfach die WinMain durch eine DllMain ersetzt...

Aber mach ruhig das Buch durch wie es alle anderen auch tun ;)

Werbeanzeige