《android游戏开发》

《android游戏开发》

ID:26870909

大小:1.32 MB

页数:41页

时间:2018-11-29

《android游戏开发》_第1页
《android游戏开发》_第2页
《android游戏开发》_第3页
《android游戏开发》_第4页
《android游戏开发》_第5页
资源描述:

《《android游戏开发》》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《Android游戏开发》实验指导书实验一基本图形【实验类型】验证性【实验要求】必做【实验目的】l熟悉GL_POINTS,GL_LINE_STRIP,GL_LINE_LOOP,GL_LINES,GL_TRIANGLE_STRIP,GL_TRIANGLE_FAN,GL_TRIANGLES常量的区别。【重点】1.掌握AndroidOpenGL三种图形类型。2.掌握OpenGL的基本结构。3.掌握绘制图形的方法及参数。【实验内容】1.使用glDrawArrays,glDrawElements两种方法绘制矩形。2.使用GL_POINTS,GL_LINE_STRIP

2、,GL_LINE_LOOP,GL_LINES,GL_TRIANGLE_STRIP,GL_TRIANGLE_FAN,GL_TRIANGLES替换函数中的参数,观察出现的图形。核心代码:publicclassTriangle{/**定点坐标值*/privateFloatBuffervertexBuffer;/**初始化定点坐标*/privatefloatvertices[]={0.0f,0.5f,-2.0f,//上点-0.5f,-0.5f,-2.0f,//左下点0.5f,-0.5f,-2.0f//右下点};/***构造方法,实例化vertexBuffer对象*

3、/publicTriangle(){//ByteBufferbyteBuf=ByteBuffer.allocateDirect(vertices.length*4);byteBuf.order(ByteOrder.nativeOrder());vertexBuffer=byteBuf.asFloatBuffer();vertexBuffer.put(vertices);vertexBuffer.position(0);}/***自定义的绘制三角形方法*/publicvoiddraw(GL10gl){gl.glPointSize(10);//指定要绘制的定点

4、gl.glVertexPointer(3,GL10.GL_FLOAT,0,vertexBuffer);//启用顶点缓存gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);//绘制三角形gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP,0,vertices.length/3);//关闭定点缓存gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);}}实验二颜色渲染【实验类型】验证性【实验要求】必做【实验目的】l能使用glDrawArray,glDrawEl

5、ements两种方法绘制图形。l掌握使用 glColor4f,glColorPointer两种函数为图形加入颜色的方法。l会绘制立方体。【重点】1.掌握颜色绘制的glDrawArray,glDrawElements两种方法使用。2.掌握立方体的绘制步骤。3.了解立方体绘制的顶点模式。【实验内容】l绘制一个三角形和一个正方形,并给图形添加颜色,图形如下图。核心代码:publicclassDemo2_2extendsGLSurfaceViewimplementsRenderer{/**自定义三角形对象实例*/privateTriangletriangle;pr

6、ivateSquaresquare;/***构造方法*/publicDemo2_2(Contextcontext){super(context);setRenderer(this);triangle=newTriangle();//实例化三角形对象square=newSquare();}/***当GLSurfaceView对象创建时,自动调用*/publicvoidonSurfaceCreated(GL10gl,EGLConfigconfig){gl.glShadeModel(GL10.GL_SMOOTH);//启用平滑着色gl.glClearColor(

7、0.0f,0.0f,0.0f,0.5f);//设置清屏使用的颜色(背景色)gl.glClearDepthf(1.0f);//设置深度缓存gl.glEnable(GL10.GL_DEPTH_TEST);//启用深度测试/*将DepthBuffer中的值使用最大值清空整个DepthBuffer,这个最大值缺省为1.0,为距离viewPoint最远的裁剪的距离。最小值为0,表示距离viewPoint最近的裁剪面的距离。距离大小为相对值而非实际距离,这个值越大表示与Viewpoint之间的距离越大。因此将初值这设为1.0相当于清空DepthBuffer。当Open

8、GL栅格化所绘制基本图形(Primitive),将计算该Primi

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。