![]() |
AW: the Power of
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
|
AW: the Power of
Zitat:
Danke für die Info. Zitat:
66 FPS ist das Maximum bei mir. Der Timer selbst ist auf 5ms ausgelegt denke nicht das bei 0 mehr FPS angezeigt werden. gruss |
AW: the Power of
Zitat:
Wenn das mit der Ausgabe gekoppelt ist, wird es ausgebremst, da mehr eh nicht nöötig ist. Und Timer ... kommt drauf an welche. Denn einige Timer haben eine Minimal-Auflösung. (z.B. TTimer und GetTickCount haben einen internen Takt von etwa 16ms) |
AW: the Power of (Tests verschiedener Render Funktionen)
Zitat:
Selbst mit der Berechnung der FPS über timeGetTime (MMSystem) komme ich nicht drüber weil mit meinem Timer wie du schon sagst bei 16ms schluss ist. Werde dann wohl direkt mit TimeSetEvent also einen Timer auf Threadbasis arbeiten müssen wenn ich höhere Frames anzeigen will. Werde das mit meinem erweiterten sample abändern. gruss |
AW: the Power of (Tests verschiedener Render Funktionen)
Hat leider etwas länger gedauert.
Ich musste erst eine neue Funktion für meine Library schreiben die es mir ermöglich direkt im Speicher die Bitmap Objekte zu resizen ohne Umweg über speichern und Konsorte. Neuer Upload im ersten Beitrag. Es werden 200 Animierte Sprites zur gleichen zeit gerendert. Wenn man die Qualität testen will muss in den jeweiligen Funktionen der Radio Button das IsWindowVisible kommentiert werden damit man zugriff auf die einzelnen Funktionen bekommt. gruss |
AW: the Power of (Tests verschiedener Render Funktionen)
Ich verwende jetzt den MMTimer..
Wenn ich jetzt den Timer auf 1ms stelle dann habe ich folgende Resultate. TransBlt = 410 FPS aber 25% CPU AlphaBlend = 358 FPS auch 25% CPU Composited = 86 FPS 25% CPU Nur! Was für einen sinn macht das die Anwendung mit vollem Speed laufen zu lassen wenn dadurch die CPU anschließend mit 25% ausgelastet wird? Gut ich sehe die Frames die real gerendert werden wenn man mal davon absieht das beim 60HZ Monitor eh nur max 66 FPS dargestellt werden können. Ist schon fragwürdig das ganze. gruss |
AW: the Power of (Tests verschiedener Render Funktionen)
Zitat:
|
AW: the Power of (Tests verschiedener Render Funktionen)
Zitat:
Da ist nix mit reinbasteln in welcher Form auch immer. OpenGL\DirectX kein Problem.. aber das verwende ich nun mal nicht ;) Man kann die Frames noch etwas genauer analysieren\setzen über ![]() Zitat:
Auch hier GDI\GDI+ werden niemals über die GPU Rendern das ist etwas für OpenGL\DirectX. gruss |
AW: the Power of (Tests verschiedener Render Funktionen)
Ich dachte das Du das vorher mit dem Timer so abgeglichen hattest das bei um die 60 FPS ein lock stattfindet und nun ists unlocked auf 1ms ?
Hab mal eine Frage was bei Dir passiert wenn Du folgendes machst: Programm starten, auf [Animate] klicken, auf [Start] klicken. Staunen. Das erinnert mich an den Duracell-Hasen, nur das der Pinguin hier auf Speed ist ^_^ |
AW: the Power of (Tests verschiedener Render Funktionen)
Zitat:
Zitat:
Was soll das bringen ich will die vollen möglichen Frames anzeigen und nicht irgendetwas blocken. Und wie gesagt vergiss es mit VSync und anderer diverser Hilfsmittel ist alles zu ungenau und in dem fall bringt es nichts. EDIT: Der unterschied wie @himitsu schon sagte ist das der Taktgeber beim TTimer\SetTimer nun mal auf 16ms festgelegt ist mehr bekommst du nicht auch dann nicht wenn du diesen auf 0 setzt das hat aber nichts mit eigenständigen blocken oder (lock) zu tun.. es ist vorgegeben. Der MMTimer unterliegt dieser Beschränkung nicht deshalb kann man hier die Maximale FPS herauskitzeln wenn man den Timer auf 1 setzt. Aber wie schon gesagt das hat nix mit setzen einer Sperrung\Beschränkung zu tun. Mit setzen des VSync Signal lege ich nur fest das die FPS anzeige so ausgegeben wird wie der Monitor diese wiedergeben kann. Das geht aber mit GDI und GDI+ nicht das sagte ich aber schon. Zitat:
gruss |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz