123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #pragma once
- #include "Betriebssystem.h"
- namespace Framework
- {
- class Zeichnung3DArray; // Zeichnung3D.h
- class Zeichnung3D; // Zeichnung.h
- class Render3D; // Render3D.h
- class Welt3D
- {
- private:
- Zeichnung3D **members;
- Zeichnung3D **membersAlpha;
- bool *used;
- float *distSq;
- Zeichnung3D **alphaVS;
- int arraySize;
- int arraySizeAlpha;
- int ref;
- public:
- // Konstructor
- __declspec( dllexport ) Welt3D();
- // Destruktor
- __declspec( dllexport ) ~Welt3D();
- // Fügt der Welt ein Objekt hinzu
- // obj: Das Objekt, was hinzugefügt werden soll
- __declspec( dllexport ) void addZeichnung( Zeichnung3D *obj );
- // Entfernt ein Objekt aus der Welt
- // obj: Das Objekt, das entwernt werden soll
- __declspec( dllexport ) void removeZeichnung( Zeichnung3D *obj );
- // Verarbeitet die vergangene Zeit
- // tickval: Die zeit in sekunden, die seit dem letzten Aufruf der Funktion vergangen ist
- // return: true, wenn sich das Objekt verändert hat, false sonnst.
- __declspec( dllexport ) virtual bool tick( double tickval );
- // Zeichnet einen ausschnitt der Welt
- // zRObj: Enthällt alle Werkzeuge, die zum Zeichnen verwendet werden
- __declspec( dllexport ) void render( Render3D *zRObj );
- // Erhöht den Reference Counting Zähler.
- // return: this.
- __declspec( dllexport ) Welt3D *getThis();
- // Verringert den Reference Counting Zähler. Wenn der Zähler 0 erreicht, wird das Zeichnung automatisch gelöscht.
- // return: 0.
- __declspec( dllexport ) Welt3D *release();
- };
- }
|