有没有会opengl的大神
aide吧
全部回复
仅看楼主
level 10
7eu7d7 楼主
为什么我清屏一句就花了20多毫秒啊……gl.glClear(GL10.GL_COLOR_BUFFER_BIT);求大神解答[乖]
2016年12月18日 14点12分 1
level 12
你想想你手机有多少个像素,这样算下了你的手机就快到没边了[笑眼]
2016年12月18日 14点12分 2
……可是我画一张1080x1920的图片,只要1毫秒
2016年12月18日 14点12分
level 11
这个还真没去留意它的执行速度,你会不会算错了,是不是算成了onDrawFrame(GL10 gl的每次执行速度?)
2016年12月19日 01点12分 4
我是对清屏这句单独计算的时间,onDrawFrame总共耗时基本25毫秒,清屏这句就花了20毫秒
2016年12月19日 01点12分
@7eu7d7 帖代码看看
2016年12月19日 01点12分
@toshiba猪猪 代码发楼下了
2016年12月19日 01点12分
@7eu7d7 看了下,写法是对的,可能执行速度就这样吧,楼主不要纠结了[滑稽] 我做播放2k视频都能全速流畅运行
2016年12月19日 01点12分
level 10
7eu7d7 楼主
@Override
public void onDrawFrame(GL10 gl)
{
long ks=System.currentTimeMillis();
gl.glClear(GL10.GL_COLOR_BUFFER_BIT);//清除颜色缓存和深度缓存
rndt=System.currentTimeMillis()-ks;
gl.glEnable(GL10.GL_CULL_FACE);//设置为打开背面剪裁
gl.glShadeModel(GL10.GL_SMOOTH);//设置着色模型为平滑着色
gl.glFrontFace(GL10.GL_CW);//设置逆时针为正
gl.glMatrixMode(GL10.GL_MODELVIEW);//设置当前矩阵为模式矩阵
gl.glLoadIdentity();//设置当前矩阵为单位矩阵
gl.glEnable(GL10.GL_BLEND);
//gl.glBlendFunc(GL10.GL_SRC_ALPHA,GL10.GL_ONE_MINUS_SRC_ALPHA);
gl.glBlendFunc(GL10.GL_ONE,GL10.GL_ONE_MINUS_SRC_ALPHA);
gl.glEnable(GL10.GL_LIGHTING);
gl.glEnable(GL10.GL_LIGHT0);
gl.glPushMatrix();
gl.glScalef(1,-1,1);
gl.glTranslatef(0,-Screen7e.fbly_raw,0);
Draw(gl);
gl.glPopMatrix();
}
public void Draw(GL10 gl){
}
2016年12月19日 01点12分 5
level 10
7eu7d7 楼主
public long rndt;
Brush br=new Brush();
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig p2)
{
gl.glDisable(GL10.GL_DITHER);//关闭抗抖动
gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT,GL10.GL_FASTEST);//设置特定Hint项目的模式,这里为设置使用快速模式
gl.glClearColor(1,1,1,1);//设置屏幕背景色为黑色
gl.glDisable(GL10.GL_DEPTH_TEST);//启用深度检测
}
@Override
public void onSurfaceChanged(GL10 gl, int width, int height)
{
gl.glViewport(0, 0, width, height);
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glLoadIdentity();
gl.glOrthof(0,Screen7e.fblx_raw, 0, Screen7e.fbly_raw, 0, 1);
}
2016年12月19日 01点12分 6
level 12
路过
2016年12月19日 02点12分 7
1