Still no love for linux?
Neato!It will now use either OpenGL or QPainter, depending on what is available.
The smart thing is that I can do everything with QPainter and Qt will translate it to OpenGL calls.
Okay, have you looked into Boost::Threads by any chance? Qt also offers threading support too, which could be useful for dual core optimizations.One issue in Qt is the timing. Even though I create a 60Hz timer, I only achieve about 40fps. But with idle time processing (timer interval 0) I get over 1000fps, so it should be possible to build something on top of that.
We'll also have to look into the Threading possibilities of our emulator.
I think its time we have a IRC meeting on this issue as it will ultimately effect all platforms we target. Plus, Nach might have some valuable input into this issue.I know Qt offers threads, but the question is, what exactly could be run as a seperate thread, as the data flow in VBA doesn't offer many possibilities.
In the MFC build it's like the following:
Emulate frame -> output frame (video/audio) -> Emulate frame...
The steps depend on each other. One way of optimizing would be to start emulating while the outputting the last frame.
Pixel filtering could also be thread-optimized by splitting an image into several areas and do filtering on them independently. Of course there has to be some overhead since you would see the borders in the image.