TrumEngine: Entwurf

In diesen Bereich gehören alle Themen, die bei der Entwicklung etwas mit Grafik und Design zu tun haben
Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: Entwurf

Beitrag von TrommlBomml » Freitag 25. Juli 2008, 13:03

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.
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
Sir Pustekuchen
Administrator
Administrator
Beiträge: 4182
Registriert: Dienstag 10. Januar 2006, 16:46
Kontaktdaten:

Re: Entwurf

Beitrag von Sir Pustekuchen » Freitag 25. Juli 2008, 14:21

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.

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: Entwurf

Beitrag von TrommlBomml » Donnerstag 31. Juli 2008, 11:56

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 ;)
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
Malle
Großadmiral
Großadmiral
Beiträge: 6948
Registriert: Montag 13. November 2006, 15:16

Re: Entwurf

Beitrag von Malle » Donnerstag 31. Juli 2008, 12:05

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?

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: Entwurf

Beitrag von TrommlBomml » Donnerstag 31. Juli 2008, 13:00

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.
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
Malle
Großadmiral
Großadmiral
Beiträge: 6948
Registriert: Montag 13. November 2006, 15:16

Re: TrumEngine: Entwurf

Beitrag von Malle » Freitag 1. August 2008, 20:25

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 ;)).

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: TrumEngine: Entwurf

Beitrag von TrommlBomml » Samstag 2. August 2008, 09:19

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?
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: TrumEngine: Entwurf

Beitrag von TrommlBomml » Sonntag 3. August 2008, 13:10

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.
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
Malle
Großadmiral
Großadmiral
Beiträge: 6948
Registriert: Montag 13. November 2006, 15:16

Re: TrumEngine: Entwurf

Beitrag von Malle » Sonntag 3. August 2008, 13:26

pps: woher weisst du das ich schlagzeug spiele?
ich habs aus deinem Profil "erschlossen" ;).

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: TrumEngine: Entwurf

Beitrag von TrommlBomml » Sonntag 3. August 2008, 15:59

hmpf wer lesen kann ist klar im vorteil *hust* :D
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
Sir Pustekuchen
Administrator
Administrator
Beiträge: 4182
Registriert: Dienstag 10. Januar 2006, 16:46
Kontaktdaten:

Re: TrumEngine: Entwurf

Beitrag von Sir Pustekuchen » Montag 4. August 2008, 15:30

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).

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: TrumEngine: Entwurf

Beitrag von TrommlBomml » Montag 4. August 2008, 15:36

öhm da bin ich jetzt überfragt. im allgemeinen ist das keine gute idee, aber probieren schadet nüscht.
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: TrumEngine: Entwurf

Beitrag von TrommlBomml » Dienstag 12. August 2008, 18:50

entwarnung: endlich geht release wieder, es lag am DirectX SDK. mit dem neeusten geht es. wenn das neue oben ist, meld ich mich!
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Benutzeravatar
Sir Pustekuchen
Administrator
Administrator
Beiträge: 4182
Registriert: Dienstag 10. Januar 2006, 16:46
Kontaktdaten:

Re: TrumEngine: Entwurf

Beitrag von Sir Pustekuchen » Mittwoch 13. August 2008, 18:42

Na das ist doch mal ne gute Nachricht :-)

Benutzeravatar
TrommlBomml
Supporting Programmer
Supporting Programmer
Beiträge: 45
Registriert: Montag 2. Juni 2008, 19:58
Wohnort: nahe berlin

Re: TrumEngine: Entwurf

Beitrag von TrommlBomml » Donnerstag 14. August 2008, 19:49

so, ist oben. das müsste jetz problemlos release gehen, ist multibyte kompiliert, sowohl debug als auch release.
"Man kann zu laut Musik hören, aber nicht zu laut Metal!"

"Religionskriege sind Konflikte zwischen erwachsenen Menschen, die sich darum streiten, wer den cooleren, imaginären Freund hat."

Antworten

Zurück zu „Grafik und Design“