Hallo,
ich habe folgendes Problem:
Ich muss für die Schule eine Art Demo machen die die Irrlicht Engine mit der Physik Engine ODE verbindet.
Nun ist nicht die konkrete Realisierung das Problem sondern die Vorgaben die mein Lehrer mir dabei macht.
Angenommen ich möchte einen Ball(kann auch ein Haus etc. sein) in die Demo einbauen dann würde ich schreiben
Code:
class Ball:
{
void doSomethingCool();
void addToScene()
private:
ISceneManager *man;
IAnimatedMeshSceneNode *ballNode;
}
Ich würde also einen Pointer auf den SceneManager und alles was ich brauche in die Klasse reinmachen und dann damit arbeiten. Außerdem würde die Klasse eventuell noch teile der Physikdaten(für ODE) wie den Radius etc beinhalten. So ähnlich wurde es auch in dem Spiel Boltzplatz gemacht das auf der Irr Homepage gefeatured wird.
Mein Lehrer möchte aber nun, dass ich zuerst mal von ISceneManager erbe um eigene Methoden wie addBall() oder addWasWeissIch() hinzuzufügen. Weiterhin hat er sich für komplexere Objekte vorgestellt das diese von IAnimatedMeshSceneNode oder ISceneNode erben und dann Methoden wie doSomethingCool(); bekommen.
Nun ist meine Frage was für die erste und was für die zweite Lösung spricht. Ich sehe irgendwie keinen Sinn in der Tatsache das man von ISceneManager respektive ISceneNode erben soll um obige funktion zu realisieren. Außerdem glaube ich nicht dass das beim Entwurf von Irrlicht so gedacht war das man von SceneManager erbt um solche Methoden wie oben hinzuzufügen.
Danke für eure Hilfe
seth0012