Seite 5 von 9

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 12:59
von Malle
der mit Wirbel ist besser für meinen Geschmack in der Auflösung. Wie es allerdings auf 125x125 aussieht, müsste man testen, da sind "einfachere" Texturen vll. besser.

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 13:10
von zechelon
Ich render die jetzt mit etwas größerer Auflösung - wenn ich die dann runter skaliere habe ich quasi gratis-Antialising.
Und sollten wir die Bilder mal größer brauchen haben wir sie direkt...

Wenn mein Schleppi das nicht mehr packt muss der Rechner im Büro drann glauben. Ich sollte bei Gelegenheit eine Fernwartungssoftware draufpacken ;)

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 14:54
von zechelon
http://youtu.be/eJ9uZljB1JY

Ich persönlich finde die Textur kommt selbst beim Kleinen gut raus.
Das Video hat noch ein paar kleine Aussetzer - lag daran, dass ich während dem Rendern noch anderen Kram gemacht habe. Wens stört der rege sich halt auf ;)

Screenshot:
Animation_4.png
Animation_4.png (135.55 KiB) 11439 mal betrachtet

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 15:22
von Malle
der Gasriese sieht gut aus. Hab grad nochmal nachgesehen, also die Gasriesen haben 125x125, die anderen Planetenklassen haben 80x80, das verringert die Dateigröße nochmal um ein Stück. D.h. du kannst die anderen Klassen mit 160x160 laufen lassen und die Gasriesen mit 250x250 bzw. 256x256.

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 15:32
von zechelon
160 ist aber keine Potenz von 2.
Ich dachte die Texturgrößen sollen 2,8,16,32,64,128,256 px Kantenlänge sein *wunder*

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 15:42
von Malle
die Texturdatei nachher muss eine 2er Potenz haben, das stimmt, die Einzelbilder, die darin gekachelt sind, allerdings können freie Größen haben. Der Auffüll-Rest wird einfach mit leerer Transparenz respektive einer Äquivalenzfarbe bei jpg gefüllt. So hab ich TrommlBomml verstanden und auch extra nochmal nachgefragt. Du musst dann nur die Einzelbildergröße irgendwo im Dateinamen angeben, dass TrommlBomml weiß welche Größe er aus der Textur rausnehmen muss.

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 15:57
von zechelon
Das Problem bei einem 256er Gasriesen in Animation ist halt nur folgendes:

PNG: 51,60 MB
JPEG: 5,65 MB (gerade noch erträgliche Kompression)

AVI: 2,80 MB (Xvid- maximale Dateigröße)
AVI: 323 KB (Xvid- erträgliche Kompression)

(Xvid = Zitat Herstellerseite: "Open-source compression codec based on MPEG-4 ISO format")
http://www.xvid.org/Downloads.43.0.html#c179

Die Alternative ist eine doppelt so hohe Abspielgeschwindigkeit, die bei gleichbleibender Framerate die Pixelbreite der Animationstextur viertelt wenn der Planet gleich groß ist. Es läuft also auf schnellere Animationen oder kleinere Bilder oder AVI-Implementation heraus wenn wir die Dateigröße pro Planet (!) im Rahmen halten wollen.

Das Problem ist vermutlich, wenn wir Trommlbommel sagen "wir hätten gerne komprimierte Videodateien implementiert", ist die Antwort vermutlich "und ich hätte gerne ein Ponny" :P
Ich kann mir nur schwer vorstellen, dass das in zwei Minuten implementiert ist. Andererseits hätte das natürlich enorme Vorteile gegenüber allem was irgendwie animiert ins Spiel käme...

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 16:06
von Malle
dann nehmen wir die 125er bzw. 128er Animation für die Gasriesen.

das Abspielen eines xvid-Videos wär natürlich noch feiner, müssten TrommlBomml fragen ob das mit seiner Implementierung geht.

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 16:17
von zechelon
Hmmm, wenn ich das richtig sehe kann man XVid ohne extremen Stress über DirectX einbauen.
( Implementierungsbeispiel: http://www.codeproject.com/Articles/185 ... vie-Player )

Auf http://www.vbarchiv.net/tipps/tipp_624- ... ielen.html sieht es allerdings auch so aus als ob man AVIs mit zwei bis drei Codezeilen verdauen kann - und das ohne DirectX. Muss man halt schauen ob das mit Xvid ohne Probleme klappt.

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 17:07
von zechelon
OK - die Sache ist gebongt :)

Das folgende ist C#-Code - ich habe keine Ahnung in was genau ihr codet (ich gehe mal von c++ aus). Das ganze läd auch die brutal komprimierten AVIs bei mir in der Programmierumgebung brav und problemfrei:

Code: Alles auswählen

[DllImport("winmm.dll")] private static extern int mciSendString(string cmd, StringBuilder ret, int retLen, IntPtr hwnd);

.
.
.
.

string cmd;
cmd = "open " + "\"d:\\tmp2.avi\"" + " type avivideo" + " alias myAVI";

// öffnen
mciSendString(cmd, null, 0, IntPtr.Zero);

// Zielhandle setzen
mciSendString("window myAVI handle " + (this.Handle).ToString(), null, 0, this.Handle);

// abspielen mit loop
mciSendString("play myAVI from 0 repeat", null, 0, IntPtr.Zero);
Ich gehe davon aus, dass dafür der Xvid-Codec installiert sein sollte, aber das stellt jetzt nicht wirklich mehr ein Problem da. Den gibts notfalls auf http://www.netzwelt.de/download/3384-xvid-codec.html als Freeware...

Bitte mit Tromml abklären - dann gibts die nächsten "Bauteile" nur noch als kleine, hübsche, 700k AVI-Päckchen :)

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 18:02
von Malle
hab ihm eine pn geschrieben. Er ist ja jetzt hier im Forum, d.h. du kannst ihn auch direkt kontaktieren, wenn demnächst irgendwelche Dinge anfallen, die per pn geklärt werden sollten.

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 18:22
von zechelon
Ah, ok - dachte der Account hier im forum sei inaktiv und du würdest ihm mailen.
Wie gesagt - ich halte, sollte der Code übernehmbar sein, AVIs für die beste Möglichkeit. Der Codeschnipsel rendert ein Video automatisch in ein hWnd-gehandeltet Fenster.

Das kann ein Button, ein Fenster oder whatever sein - von daher bin ich ziemlich optimistisch, dass das integrierbar ist.
Ich kenne den BotE-Code nicht, aber ich gehe schwer davon aus, dass ihr auch hWnds für die Buttons im Interface nutzt.
Würde mich wundern wenn das nicht kompatibel oder in irgend einer Form einbaubar ist :-)

Ein weiterer (großer) Vorteil ist dann auch, dass die Animationen sehr langsam und sauber werden können. Wenn man zwei bis drei MB pro Planet "verschwendet" sollte das ganze schon nahezu perfekt aussehen :P

Re: Zechelons 3D-Grafiken

Verfasst: Montag 31. März 2014, 19:50
von zechelon
@Rainer - besser so? :twisted:
Swamp.png
Swamp.png (628.75 KiB) 11416 mal betrachtet
( http://youtu.be/nvV00YnKiuk )

Re: Zechelons 3D-Grafiken

Verfasst: Dienstag 1. April 2014, 15:15
von trommlbomml2
Ja, das könnte unter Umständen funktionieren. Problem ist bei Videos, dass gewisse Codecs vorinstalliert sein müssen. Bei AVI weiß man das sowieso nicht wirklich, weil das ein Containerformat ist. Videos funktionieren auch etwas anders als normal gerenderte Sprites oder 3D-Modelle.

Wenn ihr mich persönlich fragt, würde ich davon abraten, Vidos irgendwo abzuspielen, außer es sind Intros oder Zwischensequenzen. Es hängt einfach zu viel OS-internes davon ab (Codecs, Filter etc.). Vielleicht solltet ihr da aber auch jemanden Fragen, der wirklich Ahnung davon hat.

Aber prinzipiell ja funktioniert das auch in C++, da gibt es auch die Funktion mciSendString.

Aber zu eurer Frage: Ja, prinzipiell geht das. Ob dafür SFML notwendig ist, weiß ich nicht.

Re: Zechelons 3D-Grafiken

Verfasst: Dienstag 1. April 2014, 15:35
von zechelon
Das mit den Codecs stimmt - allerdings konnte ich die Videos bei mir problemlos auf meinem ansonsten relativ frisch aufgesetzten (Win7) Rechner starten. Da Xvid open source freeware ist sehe ich da nicht so massive Probleme. Notfalls legt man es einfach bei.

Ich habe mal zwei AVIs hochgeladen mit denen rumprobiert werden kann:
http://ubuntuone.com/7MpdCmQWxA1hhdM8hxdKzB (groß)
http://ubuntuone.com/6TU0J6rKyOGwfuMmf8x0lc (klein)

Wäre schön wenn sich jemand die Mühe machen würde das mal anzutesten.
Wenn das gewährleistet ist werde ich einen größeren Satz Planeten in meiner Freizeit modellieren - was Schönes für ein paar andere Ingameanimationen würde da mit Sicherheit auch noch "abfallen" :-)