Seite 6 von 7

Re: Entwurf

Verfasst: Freitag 25. Juli 2008, 13:03
von TrommlBomml
problem gelöst, es rendert. muss das nun noch ein bissle umbauen, einiges noch ziemlich reingefrickelt aus testgründen, dann muss animation noch per shader laufen, dann stell ich alles wieder hoch.

ja es ist performanter, ich habs jetz nicht gebenchmarked, aber musst dir nur folgendes vorstellen:

bisher wurden direkt die vertices verändert bei jedem rendern. d. h. bei jedem frame wird der vertexbuffer gesperrt, die graka macht nen fullstop und muss warten, bis die cpu die vertices veränder hat und kann dann erst weiterlaufen. das kostest ordentlcih, vor allem wenn man viele sprites rendert.

mit dem system bleiben die vertices immer gleich, eine transformationsmatrix kümmert sich um alles. diese wird im shader verwendet zum transformierrn, selbst das animieren passiert im shader (das lässt sich dort sogar timen). d. h. das sperren fällt weg und somit der fullstopp der graka.

Re: Entwurf

Verfasst: Freitag 25. Juli 2008, 14:21
von Sir Pustekuchen
Ja dann sollte es um ein vielfaches schneller laufen. Umso besser die Graka, umso besser die Animation. Obwohl ich denke, dass hier auch eine alte Graka mit SM2.0 die paar Animationen flüssig dargestellt bekommt. Ist natürlich super, wenn die CPU bei der Darstellung viel weniger zu tun bekommt. Aber die war bei BotE während des Spielens eh kaum ausgelastet.

Re: Entwurf

Verfasst: Donnerstag 31. Juli 2008, 11:56
von TrommlBomml
soweit ist die engine jetz mit folgenden komponenten fertig:

core (GraphicDevice, ResourceManager)
Viewporting
Sprites, AnimSprites, Font
PlanetMesh

zurzeit hab ich komischerweise en release-problem. bei debug sieht man alles schick bei release nix. wenn das behoben ist, lade ich das neue sdk hoch für freies esperimentieren. auch werde ich die tuts gegf. aktualisiern (es hat sich nahezu nix geändert) und erweitert (für planetmesh).

habt noch geduld bitte ;)

Re: Entwurf

Verfasst: Donnerstag 31. Juli 2008, 12:05
von Malle
Klasse! Ich weiß nicht ob du bereits die FreeOrion-OpenGL-Implementierung für die rotierenden Planeten dort in deren Sidepanel kennst: http://freeorion.svn.sourceforge.net/vi ... iew=markup (Zeilen 200-400 etwa). Im Grunde dürfte unsere Implementierung dann so ähnlich ablaufen vom code her nehm ich mal an?

Re: Entwurf

Verfasst: Donnerstag 31. Juli 2008, 13:00
von TrommlBomml
joaa...im ganz groben. aber der planet hat zurzeit nur eine texturschicht, keine athmosphäre. das zu adden ist aber kein akt. warte auf das tut, da siehste dann wies geht^^. die Klasse aus freeorion ist ein wenig weiter gefasst und soweit ich das überblicken konnte anders im system eingekapselt.

wegen demn debug geht und release geht nicht häng ich immer noch. es ist alles richtig eingestellt trotzdem rendert der nix mehr, grml.

Re: TrumEngine: Entwurf

Verfasst: Freitag 1. August 2008, 20:25
von Malle
hab der Engine mal ein Acronym verpasst: TrommlBomml's Rendering und Multimedia Engine (TRUM Engine, trum soll wortspielmäßig auf drum hinweisen, also ne Schlagzeugerengine ;)).

Re: TrumEngine: Entwurf

Verfasst: Samstag 2. August 2008, 09:19
von TrommlBomml
LOL, gefällt mir :D

ich überarbeite nochmal alle tuts und lage schonmal das sdk hoch, auch wenns release nicht geht. ich hab das projekt nochma neu gebaut mit vs, diesmal als dll, das ändert am problem nichts. das einzige was ich anders gemacht hab als sonst wenn ich was gebastelt hab sind die asserts, wobei das eigl unsinnig wäre, wenn das das problem ist, aber not macht erfinderisch. deswegen nehme ich die erstmaö raus und wenn dass das problem ist wirds ne stinknormale engien die fehler per rückgabewert gibt.

ps: ich konnte die Anforderungen auf SM 1.1 runtersetzen.

pps: woher weisst du das ich schlagzeug spiele? irgendwo gefunden, hab ich mal erzählt oder haste dir so erschlossen?

Re: TrumEngine: Entwurf

Verfasst: Sonntag 3. August 2008, 13:10
von TrommlBomml
so, hab das neue sdk hochgeladen. debug geht alles (Sprite/AnimSprite/Font/CPlanetView...naja aber halt nur debug, es ist mir ein absolutes rätsel, irh könnt ja auch mal probieren.

Re: TrumEngine: Entwurf

Verfasst: Sonntag 3. August 2008, 13:26
von Malle
pps: woher weisst du das ich schlagzeug spiele?
ich habs aus deinem Profil "erschlossen" ;).

Re: TrumEngine: Entwurf

Verfasst: Sonntag 3. August 2008, 15:59
von TrommlBomml
hmpf wer lesen kann ist klar im vorteil *hust* :D

Re: TrumEngine: Entwurf

Verfasst: Montag 4. August 2008, 15:30
von Sir Pustekuchen
So, habe mir die Engine nun mal runtergeladen. Ich werde die morgen testen. Läuft ne BotE Release Version, wenn ich auch dort die Debug Version der Engine nutze? Ich meine, ich kompiliere BotE als Release und nutze dort trotzdem deine Debug Dateien? Weil BotE im Debug ist beim Rundenwechsel arg langsam (ca. 5 Sekunden schon in der ersten Runde).

Re: TrumEngine: Entwurf

Verfasst: Montag 4. August 2008, 15:36
von TrommlBomml
öhm da bin ich jetzt überfragt. im allgemeinen ist das keine gute idee, aber probieren schadet nüscht.

Re: TrumEngine: Entwurf

Verfasst: Dienstag 12. August 2008, 18:50
von TrommlBomml
entwarnung: endlich geht release wieder, es lag am DirectX SDK. mit dem neeusten geht es. wenn das neue oben ist, meld ich mich!

Re: TrumEngine: Entwurf

Verfasst: Mittwoch 13. August 2008, 18:42
von Sir Pustekuchen
Na das ist doch mal ne gute Nachricht :-)

Re: TrumEngine: Entwurf

Verfasst: Donnerstag 14. August 2008, 19:49
von TrommlBomml
so, ist oben. das müsste jetz problemlos release gehen, ist multibyte kompiliert, sowohl debug als auch release.