• Android面试收集录 OpenGL ES


    1.如何用OpenGL ES绘制一个三角形?

    • 编写一个类实现Renderer接口,实现onDrawFrame方法,onSurfaceChanged方法,onSurfaceCreated方法
    • 编写一个类Triangle类,定义定点坐标,装载所有顶点坐标,调用GL10的一个glDrawArrays方法来绘制三角形
    • 最后在重写的onDrawFrame方法中调用triangle.drawSelf来真正绘制三角形

    2.OpenGL ES绘制一个矩形有哪些方法?

    • 三角形旋转法(但是要求一个角为90度)
    • 顶点法绘制矩形,先定义4个顶点坐标
    • 索引法绘制矩形

    3.用索引法绘制多边形有什么限制?

    • 必须使用byte[]定义定点索引,索引的个数不能超过255个

    4.如何绘制一个四棱锥?

    • 注意:使用OpenGL ES绘制的任何图像都是用三角形拼出来的
    • 定义4个面,每个面3个点
    • 然后再onDrawFrame方法绘制4个三角形来组成一个四棱锥

    5.如何给一个立方体的6个面上色?

    • 一个颜色由4个值(RGBA)组成,每个平面4个顶点,一个平面需要16个值来描述颜色
    • 立方体有6个面,总共需要96个值来描述颜色
    • 先定义一个长度为96的数组来记录颜色,然后使用glDrawArrays方法绘制立方体

    6.OpenGL ES支持哪几种光源?

    • 定向光
    • 定位光

    7.请介绍一下OpenGL ES光源的环境光,散射光,镜面反射的含义?

    • 环境光的pname参数值为GL10.GL_AMBIENT,表示一个特定光源在场景中添加的环境光的RGBA强度。、
    • 散射光,参数为GL10.GL_DIFFUSE,来自于某个方向,撞击物体表面后,会均匀地发散
    • 镜面反射光,参数为:GL10.GL_SPECULAR,来自一个特定方向
  • 相关阅读:
    winform 与 html 交互 简单案例
    Winform窗口弹出位置控制
    c#预处理指令
    最简单的数据绑定
    Asp.Net细节性问题精萃
    AjaxUploader使用
    Log4net对文件的支持
    Log4net对数据库的支持
    Log4net使用
    Log4net介绍
  • 原文地址:https://www.cnblogs.com/Jason-Jan/p/8573756.html
Copyright © 2020-2023  润新知