AmiCraft Nova

Alles rund um Spiele für Amiga OS4

Moderator: OS4Welt-Team

geit
Beiträge: 116
Registriert: 21. April 2010 11:15

Re: AmiCraft Nova

Beitrag von geit »

whose hat geschrieben:Zur Instabilität: ich habe das auch öfter beobachtet, meist sind es die SDL-Spiele-Ports, bei denen das passiert. Sofern die ständig 100% CPU-Last ziehen. Bei M.A.C.E. z.B. treten die Instabilitäten nicht auf, obwohl es auf dem SAM440ep auch 100% Last erzeugt.
Ja, SDL Spiele laufen meistens, sofern nicht angepaßt, in einer einfachen Schleife.
Benutzeravatar
Hetzer
Beiträge: 520
Registriert: 2. Oktober 2009 12:00
Kontaktdaten:

Re: AmiCraft Nova

Beitrag von Hetzer »

Es gibt eine neue Version von Amicraftnova mit der Versionsnummer 1.0.3 im Os4-Depot und auch bzgl. dem OpenGL ES 2 scheint die Entwicklung von Daniel nicht still zu stehen.

http://www.os4depot.net/?function=showf ... ftnova.lha


Vom A1k.org-Forum >Apex<

OpenGL ES 2 (v1.6) for W3D Nova:
This new version gets you some noticable performance gain (and the latest Nova 1.32 by itself gives another ~ 8% boost) and two special debug versions of the library.
- significant performance boost by exploiting Nova's DBOLock-don't-need-read feature. This speeds up the boing-ball-test by about 8.5% on my machine.
With that above-mentioned Nova performance improvement the boing-ball-test is now running at ~31 fps instead of ~25 fps in FullHD.
Not too shabby
- Small optimizations, removed some now dead code.
On wednesday Allan Ullmann notified me that the author of AmicraftNova told him that OGLES2 and / or Nova would apparently leak memory.
As a result I spent about two days to add lots of optional diagnostic features to the wrapper.
- if I build the lib using the flag DIAGNOSTICS then it'll contain code that tracks and records all OGL object creation / deletion as well as the libs internal RAM allocations.
On context destruction it will spit out nice statistics about everything on the console. You can easily see if you forgot to release OGL resources for example (the lib cleans those up for you though).
- if I build the lib with the flag AUTOSHUTDOWN=X, then it will essentially turn off all functions that could possible be candidates for internal RAM or resource leaks after X seconds. So the application in question will run normally for X seconds so that it can initialize, load levels, whatever and then the screen will go blank.
The app still runs and thinks that everything is just as before, but in reality the wrapper will only do uncritical things internally, things that don't require Nova-resource allocations etc.
So, if the app still leaks RAM then it's the app's code itself that's buggy, not the lib.
The internal OGL structures for VBOs or so will still be created / deleted, because the previous DIAGNOSTICS stuff will catch any leaks of that kind. This allows the lib to behave pretty normal to the client application.
Tests with AmicraftNova revealed that it leaks as before, therefore I'll close the leak-case for now.
Note however that this test does NOT prove that OGLES2 or Nova DONT leak AS WELL. However so far there's no indication that they do leak.
But it proves that AmicraftNova leaks by itself.
The lib itself has a perfectly balanced alloc / free statistic at the end, as well as a perfectly balanced OGL resource pool - everything that got allocated has been released properly (in case of AmicraftNova the stats tell me that the game doesn't delete one texture by itself, but no worries: the lib cleans that up automatically, of course ).
@Betatester: it may take some more hours until my FTP is running again (no DSL the last ten days or so due to house moving, but it should be working in short time, the DSL-guy just enabled it )
Cheers,
Daniel
Aktuell ohne Amiga
Antworten