Kleines Ballerspiel mit der Irrlicht Engine und Irrklang als Einstieg
-
Erhard Henkes schrieb:
Dass der Code noch nicht vernünftig gekapselt und kompaktiert ist, ist klar. Davon, dass ich alles in Funktionen oder Member-Funktionen stecke, wird für mich momentan nichts besser.
Abgesehen davon dass man auch gleich ordentlich loslegen kann, bezweifele ich das, wie schon gesagt. /IMAO
Erhard Henkes schrieb:
Sounds aus dem Speicher: sag mal, ist das wirklich Ernst, dass man seine wav-Datei mit bin2h.exe in eine Array umwandelt und dann als solches aus dem Speicher abspielt.
Ich kenn mich mit Irr* leider nicht aus, sonst könnte ich dir da sicher besser weiterhelfen. Ein weiterer, kurzer Blick in die Doku verrät auch dass ich tatsächlich nicht
addSoundSourceFromMemorymeinte; mich hat lediglich der Beispielname des Sounds, der wie ein Dateiname aussah, verwirrt.Du könntest mal schauen welcher irrklang::E_STREAM_MODE verwendet wird, bzw. einfach mal testen ob
ESM_NO_STREAMING("Loads the whole audio data into the memory", woran ich eigentlich mit der MemorySource dachte) etwas bringt (zweiter Parameter vonaddSoundSourceFromFile). Den dritten,preload, auftruezu setzen wäre sicher auch nicht verkehrt, sollte sich aber nicht auf das Performanceproblem auswirken.Der generelle Tip aber war dich einfach mal genauer mit dem Aufbau der Lib auseinander zu setzen, und nicht wieder und wieder irgendwelche Ressourcen neu zu laden oder Systeme neu zu initialisieren.
-
Der generelle Tip aber war dich einfach mal genauer mit dem Aufbau der Lib auseinander zu setzen, und nicht wieder und wieder irgendwelche Ressourcen neu zu laden oder Systeme neu zu initialisieren.
Ja, da hast Du Recht. Bei Irrklang hatte ich das nicht getan, weil ich dachte, dass dies bei einer "kommerziellen" (nur frei für private Anwendungen) Software bereits optimiert ist.
Inzwischen weiß ich, dass das nicht viel bringt. Performancesteigerung liegt in der Grafik begraben.

-
Wie willst du bitte einen Shooter mit der Irrlicht Engine machen. Nicht weil die Irrlicht Engine das nicht könnte, aber du bräuchtest auf jeden Fall eine Physik Engine. Ausserdem, woher bekommst du die Bots. Die sind der Hauptteile so eines Projekts, und das ist viel,viel zu schwer. Deswegen würde ich das ganze übers Netzwerk machen.
@ Code:
Das ist nicht sonderlich objekt-orientiert, ich würde das auf mehrere Klassen aufteilen.
Wenn du nicht so auf OOP stehst, dann kannst du wenigstens nach den Regeln des strukturierten Programmierens auf mehre Dateien umbauen.Sonst finde ich deine Idee super! Endlich mal ein schönes Irrlicht Tutorial. (Zuckerbrot und Peitsche? Nein! Peitsche und Zuckerbrot :p )
Ach ja: Hier gibts ein gutes Netzwerk Interface, oder hat Irrlicht eins eingebaut?
http://enet.bespin.org/