Du bist nicht angemeldet.

#1 17.04.2003 20:22

DanielW
Mitglied
Registriert: 14.04.2003
Beiträge: 40

Erste C++ Test-techdemo

Hallo Ronny

und die anderen,

ich hab eine erste Test techdemo in C++ fertig. Funktion hat sie kaum. Sie soll wirklich nur die grundsätzliche Funktion von Clanlib, die Geschwindigkeit  und die 100%tige Portabilität demonstrieren.


-->Linktitel:
-->Linktitel:
-->Linktitel: http://m-find.de/tvgigant_c++_techdemo_1_win32.rar (Links sind aus rechtlichen Gründen nicht klickbar)
-->Link: 'http://m-find.de/tvgigant_c++_techdemo_1_win32.rar'
(Links sind aus rechtlichen Gründen nicht klickbar)
-->Link: 'http://m-find.de/tvgigant_c++_techdemo_1_win32.rar'
(Links sind aus rechtlichen Gründen nicht klickbar)
-->Link: 'http://m-find.de/tvgigant_c++_techdemo_1_win32.rar'


Das ist eine fertig compilierte Version für win32. Ne Linux Version kann auch bereitstellen liegt hier auf meinem Rechner.

Das Teil läuft allerdings nur dann wirklich schnell (ca. 1500 Frames pro Sekunde bei mir) wenn man ne 3D-Karte hat die OpenGL unterstützt. Man muss aber beim Programmieren Null-Ahnung von OpenGL haben, ist alles völlig transparent in die ClanLibs versteckt. Alle halbwegs neuen Grafikkarten sollten keine Probleme machen.

(achja um den wirklichen Speed zu sehen unter erweiterten Einstellungen den VSync für OpenGL abstellen in den Display-Einstellungen von Windows, sonst bekommt ihr nicht mehr FPS als eure Bildschirmwiederholrate ist).

Momentan sind alle Bilder lose dabei. ClanLib unterstützt auch das Packen dieser in eine gezippte .dat file. Am Code muss dafür garnichts geändert werden. :-) Leider ist in der aktuellen Clanlib Version ein kleiner Bug der die Nutzung dieses Features momentan nicht möglich macht. Aber man arbeitet dran.

Sagt mir wie schnell und ob das Teil bei euch läuft. Wichtig ist welches OS, welche CPU und welche Grafikkarte.

Ich: Windows XP, Geforce 4 TI 42000, Athlon XP 1800, 1500 fps, keine probleme

Offline

#2 17.04.2003 20:24

DanielW
Mitglied
Registriert: 14.04.2003
Beiträge: 40

Re: Erste C++ Test-techdemo

achja:

der Programmcode in C++ ist dank Clanlib 100% gleich unter Linux und unter Windows.

Ich hab nicht eine Zeile verändert. :-)

Leider ist momentan bei mir aus irgendwelchen Gründen die Windows-Version ca. doppelt so schnell (1500 frames pro sekunde windows, 750 frames pro sekunde linux).

Daniel

Offline

#3 18.04.2003 03:27

Ritschl
Mitglied
Ort: Chemnitz
Registriert: 03.01.2002
Beiträge: 709
Webseite

Re: Erste C++ Test-techdemo

Hallo Daniel,

hey ich find das klasse das hier wieder leben ins projekt kommt...super.... rolleyes
ich hab grad mal getestet....also nachdem ich alles ausgestellt hatte bei meiner Grafikkarte
stieg die Framerate von 60 auf 702 frame p. Sekunde.....

das merkwürdige war aber, die Framerate blieb nicht stabil....sie fiel langsam und immer langsamer ab (bei 650 hat ich dann keine lust mehr gehabt zu warten) aber wenn ich ganz unten links in die ecke gescrollt hatte, dann ging die framerate schlagartig hoch und wurde viel höher, als die ausgangsframerate.... :duspinnst:

sobald ich aber aus der linken unteren ecke wegscrollte, ging die framerate wieder runter...merkwürdig....

naja und ich konnte nur so bis in den 12. Stock scollen, höher ging irgendwie nicht.....

mach weiter so.....mich hat schon wieder das TV Gigant Fieber erfasst  :smoke:

ich geh erstmal pennen, cya Ritschl

Offline

#4 18.04.2003 11:13

Ronny
Administrator
Ort: Chemnitz
Registriert: 08.11.2001
Beiträge: 11.704
Webseite

Re: Erste C++ Test-techdemo

ok immerhin was...

auf meinem athlon 1700 mit Riva TNT 2 M64 ging die FPS von 49 auf konstante 38 zurück ... Verbesserungswürdig ...

Die richtigen Probs kommen ja eh erst wenn du den Fahrstuhl einbaust *fg*

schalte die Framerate lieber konstant  oder mach nen max. ... bringt nix wenn man 700 frames hat... bekommt das Auge nicht mit ;D


bye Ron


sigimg2.php?id=1

Offline

#5 18.04.2003 15:06

DanielW
Mitglied
Registriert: 14.04.2003
Beiträge: 40

Re: Erste C++ Test-techdemo

Ritschl:

Das mit den instabilen Frameraten ist durch 2 Dinge bedingt:

zum einen sind sie momentan noch Wahnsinnig hoch, weil das "Spiel" fast nichts macht außer die Grafiken zu blitten, was die Berechnung ungenauer macht. Zum anderen geht ein teil der Rechenzeit für die Berechnung der fps drauf.

Außerdem ändert sich die Framerate wenn du das hochhaus hoch und runter scrollst weil wenn du es ganz noch oben schiebst (so das du das untere ende sehen kannst), weniger geblittet werden muss, wenn das Clipping bei dir nicht korrekt funktioniert.

Aber die 600-700 fps bei dir sind normal und ok, wahrscheinlich hast du eine langsamere Grafikkarte als ich oder? (speed hängt fast hauptsächlich von grafikkarte ab, im moment, weil sonst fast nichts zu tun).

Und das du nur bis in den 12 Stock kommst ist normal. Der Screen ist halt nicht mehr Pixel hoch. Das Hochhaus wird immer um die y-Achse der Maus verschoben. Ist nur zum test. Im normalen Spiel scrollt man so ja garnicht.


Ronny:

ok, deine geschwindigkeit ist mehr als schlecht. 30 fps sind absolut unnormal für deine Hardware.

2 Fragen: Ist Vsync an oder aus? Und installiere mal die neuesten Nvidia-Treiber du brauchst Hardware OpenGL unterstützung.

Mit VSync für OpenGL auf AN solltest du dann auf etwa exakt die Bildwiederholrate kommen ohne VSync schätze ich mal auf so 500-700 fps.

Mir ist bewußt das ich programmtechnisch noch nichts schwieriges eingebaut hab, es ging hier wirklich nur um die funktion unter Windows und Linux und die Geschwindigkeit. Bekomme schon angst wenn ich an den Fahrstuhl denke und and alles was dazugehört.

Konst schalten oder nen Max kommt da nicht rein, Ronny. Es gibt ja normalerweise zum einen den Vsync den ich hier nur zum testen der Geschwindigkeit im System ausgeschaltet hab und zum anderen wird alles an die Geschwindigkeit angepaßt mit der das Bild aufgebaut wird.

So machen es professionelle Spiele auch: z.B. läuft quake immer im Spiel gleich schnell egal ob ich nun 120 frames oder 30 frames pro sekunde habe. Natürlich sind 120 frames nutzlos sieht sowiso niemand aber wohin sonst mit der rechenzeit in ne nutzlose for warte; next schleife?

Offline

#6 18.04.2003 17:15

Ronny
Administrator
Ort: Chemnitz
Registriert: 08.11.2001
Beiträge: 11.704
Webseite

Re: Erste C++ Test-techdemo

naja schon klar... so laeuft das spiel aber "hungrig" ... es frisst also die leistung für hintergrundtools (bekannte p2p programme oder firewall und co).


vsync an oder aus ist dennoch egal, da mein monitor bei 100herz ist - und die FPS nicht annähernd den wert erreichen...

alte GraKas sollten auf alle faelle unterstuetzt werden, ich will kein 2D-spiel raushauen, was als mindestanforderung nen PC benötigt der juenger als 2 Jahre ist... (sprich nen 500 Mhz Pentium sollte schon genuegen).

ich glaube die TNT2 unterstuetzt OpenGL, aber nicht v1.2 oder v1.1 ...


bye Ron


sigimg2.php?id=1

Offline

#7 18.04.2003 19:45

DanielW
Mitglied
Registriert: 14.04.2003
Beiträge: 40

Re: Erste C++ Test-techdemo

OK, man sollte bei 70 Frames oder was schluss machen und sollten diese nicht erreicht werden, das Spiel daran anpassen.

Die Sache mit den OpenGL-Karten die benötitigt werden:

die clanlib 0.7.2 ist die Entwicklungsversion die komplett neu geschrieben ist und wenn OpenGL Hardware basiert da ist, extrem schnell ist. Leider unterstützt diese im gegensatz zur Zeit eben nur OpenGL.

Auch alte PCs gehen ohne Hardware OpenGL dann aber nur per Software-Rendering. Aber Clanlib 0.7.x wird bald auch wieder Directx, Directfb und X11 unterstützt als Grafikziele.

Programmiert werden muss aber alles gleich, und da unter Linux und Windows und halbwegs aktuellen PCs (so ab Riva TNT Graka) die Clanlib mit OpenGL extrem schnell rennt, sehe ich da kein Problem.

Interessant wären aber wirklich mal die Werte von nem Pentium 200 ohne 3D-Karte. (Software OpenGL muss installiert sein).

DanielW

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Bist Du ein Mensch oder ein Roboter ?

Verifizierung, dass diese Aktion durch eine reale Person vorgenommen wird und nicht von einem Programm.