我正在寻找一个示例代码,演示如何使用Android SurfaceView实现每秒30帧?假设每一帧都画一个圆,以位置x和y开始,并且每一帧将x和y增加1。
额外问题: 除了上面的内容之外,我想叠加另一个视图来显示文本内容,以便无论绘制什么图形,都会在这个文本内容下面显示。如何实现?
额外问题: 除了上面的内容之外,我想叠加另一个视图来显示文本内容,以便无论绘制什么图形,都会在这个文本内容下面显示。如何实现?
如果你想要高帧率,你需要仔细阅读GLSurfaceView。在普通的Surface View下,你将受制于昂贵的布局计算和CPU中心渲染。使用GLSurfaceView,你可以将这些任务转移到GPU上,并且对布局进行更紧密、高效的控制。
public void onDraw(Canvas canvas) {
...
// Add text
Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setFakeBoldText(true); // if you like bold
paint.setShadowLayer(5, 5, 5, Color.GRAY); // add shadow
paint.setColor(Color.WHITE);
paint.setTextSize(30);
canvas.drawText("FPS: " + _fps, 10, 35, paint);
}