Scott is correct about the determining of the SW pipeline. To add to
that, if knowing whether you are running on SW is sufficient, you can
assume (for now as well as the foreseeable future) that 3D is supported
only when running on a HW pipeline. So checking for
Platform.isSupported(ConditionalFeature.SCENE3D) is a good indication
that you are running on the SW pipeline (or on a device that lacks NPOT
texture support although the intersection of cards that support Prism
but not NPOT is vanishingly small on desktop platforms).
I think the suggestion about starting out assuming that animation will
be OK and then backing off is a good one, if it is practical for your
application.
-- Kevin
Scott Palmer wrote:
I believe it is possible, though not through public API, to determine
if you are using the software pipeline or not. If that isn't enough,
how about just adapt at runtime by starting out with the more
demanding animations and falling back automatically if the framerate
doesn't meet your minimum requirement. Then at least you will be
drawing to the screen meaningful info and the user may never notice.
You could even hide the measurement in an animated splashscreen or
something like that.
Scott
On Thu, Jul 31, 2014 at 7:25 PM, Kevin Rushforth
<kevin.rushfo...@oracle.com <mailto:kevin.rushfo...@oracle.com>> wrote:
Yeah, that would be a bit of a problem. Without doing something
like that, though, it would just be an approximation, since the
performance of animation depends on the complexity of the
geometry, the performance of the GPU, the performance of the CPU,
etc.
-- Kevin
Mike Hearn wrote:
Would it be feasible for you to do some measurements /
calibration
on the system and make the determination based on measured
speed?
That seems more to the point anyway.
I don't know how to do that without actually drawing to the
screen, which I don't want to do.