Aktuelle Zeit: 14.05.2024, 17:55

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 51 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4, 5  Nächste
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 18:53 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
Das Problem wäre dann aber wieder, dass wir sehr stark an eine Irrlicht version gebunden wären. Bei jedem neuen release von irrlicht müsste sich dann jemand hinsetzen und den erweitertete interface wieder mit dem neuen scenegraphen kombinieren.

Wenn wir dann nicht vor version 2.0 fertig werden (wovon ich mal ausgehe, denn ich denk mal version 2.0 kommt noch dieses jahr), dann haben wir ein richtiges problem, da wie ich gehört hab sich einiges im scenegraph mit 2.0 ändern wird.

Oder hattest du irgendwie daran gedacht das interface zu erweitern ohne den eigentlichen source anzufassen, also quasi ISceneNode ableiten und IGameSceneNode draus machen?

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 19:32 
Offline
Moderator
Benutzeravatar

Registriert: 11.03.2007, 20:25
Beiträge: 556
Wohnort: Frankfurt/Main
jup genau
also mein grundgedanke ist das wir abstrakte interfaces machen wie in irrlicht auch, und dann klassen die diese interfaces implementieren und eben von ISceneNode erben. dass der scenegraph geändert werden soll könnte für uns problematisch werden wenn wir auf funktionen des bestehenden systems zurückgreifen die geändert werden.. das würde dann aber jeden betreffen, wie das zb mit dem OnPreRender + OnPostRender war.. dann gibts ja aber refactoring.

beispiele:
IAttachable - alles was man irgendwo dranhängen kann
IWearable - alles was man tragen kann
IStorable - alles was in
IContainer - geht, zb inventar, kiste etc
IResource - holz, metall, etc .. evtl nochmal spezialisieren in Natural und Artificial wenn etwas aus mehreren NaturalResources zusammengefügt eine neue substanz gibt (zb tränke, munition etc)
IUsable - selbsterklärend
IWeapon
ITool
usw usf

_________________
yo. life's so bloody short.
Ihr dachtet Schulfernsehn sei die ultimative Folter? Falsch: Fahrstuhlmusik, extra leise.


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 19:46 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
die dann wiederum von IGameSceneNode abgeleitet werden, die von ISceneNode erbt.
Dadurch wär dann nur eine weiter klasse für die scenenodes nötigt, nämlich IGameNodeFactory.

Durch diese aufteilung wäre es dann auch einfacher zum beispiel neue waffen in das spiel einzufügen.
Man hält IWeapon dann einfach so weit abstrakt, dass es möglich wäre die attribute der waffe (z.b. schaden) aus einer datei zu laden. So müsste nicht für jede Waffe eine neue ableitung von IWeapon erstellt werden

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 19:48 
Offline
Moderator
Benutzeravatar

Registriert: 11.03.2007, 20:25
Beiträge: 556
Wohnort: Frankfurt/Main
genau :D wir verstehn uns

[edit]
ich les grad einen artikel über fsm's für die ki.. mir kam sponten die idee das über scripts zu lösen, so könnten wir das doch auch mit waffen zb machen: jedes entity kann ein oder mehrere scripts angehängt bekommen, die dann bei bestimmten events ausgeführt werden..

_________________
yo. life's so bloody short.
Ihr dachtet Schulfernsehn sei die ultimative Folter? Falsch: Fahrstuhlmusik, extra leise.


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 20:49 
Offline

Registriert: 12.04.2007, 11:47
Beiträge: 108
Schlechte idee!!!!
nicht von ISceneNode ableiten!!!
hab ich gemacht und bin böse auf die nase gefallen. das was ihr da anfasst ist die rendering pipline...warum heißt die wohl so???da wird gerendert nichts anderes!!!!!Überlegt mal ihr hättet eine scenenode die eine scenenode erstellt damit sie sich graphisch dartsellen kann...und wenn ihr dann noch extras wollt müsst ihr ne reference zu dem pointer wieder irgendwo speichern und nochmal durchlaufen lassen. es ist echt nicht schwer mal eben nen eigenes entity system zu schreiben! seht euch mein spiel spacefighters an. das nutzt ein interface system und ist im prinzip eine fertige spielengine die nur erweitert werden muss. würde sogar für euer spiel passen. seht euch den source code einfach mal an.


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 21:01 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
ich wollte mir mal spacefighters angucken, aber irgendwie funktioniert der link zum download nicht...

gibts noch eine möglichkeit den source zu laden als von gdlib.net ?

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 21:14 
Offline

Registriert: 12.04.2007, 11:47
Beiträge: 108
verdammt is die seite immer noch offline...hmmm
ok hier habs ichs mal eben hingepackt. normaler weise ist da meine website aber da ich auch gerade das andere spiel entwickel liegen da immoment nur binaries. hab mal eben spacefighters bin und source hingepackt.

http://daniel.game-host.org


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 21:21 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
Ok habs mir mal gezogen und werd mir das mal morgen angucken. thx

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17.04.2007, 22:32 
Offline
Moderator
Benutzeravatar

Registriert: 11.03.2007, 20:25
Beiträge: 556
Wohnort: Frankfurt/Main
argghh natürlich, der haken..
ich fand es halt nur irgendwie etwas unsinnig komplett zwei scenegraphs zu haben, einen für die spiellogik und einen fürs rendern... naja wenns nicht anders geht..
[edit]
@sudi
was ist denn schiefgelaufen?

_________________
yo. life's so bloody short.
Ihr dachtet Schulfernsehn sei die ultimative Folter? Falsch: Fahrstuhlmusik, extra leise.


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 18.04.2007, 01:09 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
Wahrscheinlich die performance und die wartbarkeit des codes

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 18.04.2007, 08:15 
Offline
Moderator
Benutzeravatar

Registriert: 11.03.2007, 20:25
Beiträge: 556
Wohnort: Frankfurt/Main
wartbarkeit ok, aber performance? ist doch theoretisch gleich, das mehr an code kommt ja trotzdem dazu.

_________________
yo. life's so bloody short.
Ihr dachtet Schulfernsehn sei die ultimative Folter? Falsch: Fahrstuhlmusik, extra leise.


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 18.04.2007, 09:13 
Offline

Registriert: 12.04.2007, 11:47
Beiträge: 108
überleg doch mal....du würdest code während des renderns ausführen der dort garnicht hingehört. das ist erst einmal schlechtes design, warum gibt es wohl klassen in c++. zweitens wie ich schon gesagt habe brauchst du eine reference des objects bestimmt noch einmal an anderer stelle für statistische werte oder sonst was. das würde heißen einmal der scenemanager hat einen pointer und an dieser anderen stelle liegt noch einer und du müsstest beide löschen wenn das entity zerstört wird....schon mal ein schöner punkt für einen fehler....außerdem wirst du an der anderen stelle auch öfters mal durch die entities laufen weil du ihnen bestimmte befehle zum ausführen geben möchtet z.B. das resultiert dann darin das du zweimal durch die entities läufst.einfacher wäre es da gleich nur an der anderen stelle zu speichern. ich könnte dir zeigen was ich meine wenn ich den source code für shootirr nicht gelöscht hätte....da hab ich mir nämlich auch gedacht auch ich nehm einfach iscenenode. und ich bin dann schnell an die grenzen gestoßen.

[edit:]
zu anfang sieht es nicht so aus als bräuchte man eine extra methode aber später wenn das ganze komplexer wird fällt es doch schon auf.


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 51 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4, 5  Nächste

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de