Die Engine verwendet als unterliegende Technologie folgende freie Produkte:
- OpenGL 3.3 Core Profile
- SFML
- FreeImage Library
- boost
- GLew
- irrXML
- libsigc++
- AngelScript
Ich bin mir sicher, dass mein Code nicht perfekt ist, aber er macht was ich will
![Smile :)](./images/smilies/icon_smile.gif)
Ab hier nur weiterlesen, wenn euch das Konzept interessiert und Ihr eventuell selber programmiert. Es wird ein wenig technisch.
Technisch orientiert habe ich mich an den ganzen frei verfügbaren Engines wie Ogre oder Irrlicht. Ich versuche OOP durchzusetzen, bin aber nicht bereit dafür usability zu opfern. Sprich, ich zwänge nicht alles zwanghaft in extra Klassen und mach das ganze unnötig kompliziert.
Als Beispiel das erstellen eines Fensters und das Laden einer Resourcen-Datei:
Code: Alles auswählen
class MyApplication
{
public:
MyApplication()
: m_controller(NLSystemController::getInstance())
{
}
void run()
{
m_controller.createLog("NightLight.log", LL_ERROR, new NLTextWriter());
m_controller.setVendorName("Scorched Productions");
m_controller.setAppName("MyApp");
m_controller.createUserDataDir();
m_controller.createWindow(NLWindowSettings(1024,768, false, 32, 2));
NLResourceManager& resMgr = m_controller.getResourceManager();
resMgr.loadFile("data/resources.xml");
m_controller.getWindow().enterLoop();
}
private:
NLSystemController& m_controller;
};
Wer helfen möchte, oder wer einen Bug im Code findet, der sei dazu angehalten mir Patcheszu senden an scorcher24 at gmail dot com.
Das Repository läuft auf SVN-Basis und jeder kann sich eine Kopie des Codes ziehen. Bitte auch das Wiki beachten.
Beantworte gerne Fragen und bin für Anregungen dankbar.
rya.