I not quite confirm it.
I added a maximum delta display, after allowing 10 seconds for the FPS to get up to initial speed.
Results on five Android devices (after 10 second warmup and 10+ seconds delta check):
Amazon Kindle Fire HD 7" OS 4.0.3 - max delta < 1.5
Nexus 7 OS 4.2.2 - max delta < 1.8
Philips GoGear Connect 3.2 OS 2.3.3 - max delta < 2.4
Samsung Galaxy S III OS 4.1.1 - max delta > 8.5 < 9.0
Toshiba Thrive 7" OS 4.0.4 - max delta < 3.9
After being left to run for several minutes, the Kindle was up to 3.17 as max delta.
The Samsung is the only one that had a big delta. But not as big as you indicate.
EDIT:
setorientationallowed(0,0,1,0)
type TSensor
ax#
ay#
lax#
lay#
ix#
iy#
endtype
global Sensor as TSensor
TestSensor()
end
function TestSensor()
min#=100
max#=0
maxdelta# = -1
t#=timer()
do
print ("equalizing")
print("FPS")
print(screenfps())
if timer()-t#>10.0 then exit
sync()
loop
do
if timer()-t#>3.0
t#=timer()
min#=100
max#=0
endif
if getpointerpressed()=1
exit
endif
print("FPS")
print(screenfps())
if screenfps()<min# then min#=screenfps()
print("FPS Min.")
print(min#)
if screenfps()>max# then max#=screenfps()
print("FPS Max.")
print(max#)
delta# = max#-min#
print("Max-Min FPS Delta")
print(delta#)
if maxdelta#<delta# then maxdelta#=delta#
print("Max Delta")
print(maxdelta#)
print("Frame Time")
print(getframetime())
if 1=1
print("Universal - Accelerometer")
print("X,Y,Angle,Speed")
print(getdirectionx()) //Mit Tastatur kombiniert
print(getdirectiony())
print(GetDirectionAngle())
print(GetDirectionSpeed())
endif
UpdateSensor()
x#=50.0+GetDirectionX()*50.0
y#=50.0+GetDirectionY()*50.0
drawline(getvirtualwidth()/2.0,getvirtualheight()/2.0,x#,y#,255,255,0)
x#=50.0+Sensor.ix#*50.0
y#=50.0+Sensor.iy#*50.0
drawline(getvirtualwidth()/2.0,getvirtualheight()/2.0,x#,y#,0,255,0)
Sync()
loop
endfunction
function UpdateSensor()
//der Plan
//Multiplizieren
//und dann im Radius bleiben
Sensor.ax#=GetDirectionX()*100.0
Sensor.ay#=GetDirectionY()*100.0
dx#=Sensor.ax#-Sensor.lax#
dy#=Sensor.ay#-Sensor.lay#
Sensor.lax#=Sensor.ax#
Sensor.lay#=Sensor.ay#
if sqrt(dx#*dx# + dy#*dy#)<=2.0 // 5.0 //2.5
//bleibt dort
else
Sensor.ix#=(Sensor.ix# + (Sensor.ax#/100.0)) /2.0
Sensor.iy#=(Sensor.iy# + (Sensor.ay#/100.0)) /2.0
endif
endfunction
Cheers,
Ancient Lady
AGK Community Tester and AppGameKit Master