位置: 编程技术 - 正文

OpenGL(opengl和directX区别)

编辑:rootadmin

推荐整理分享OpenGL(opengl和directX区别),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:opengl版本过低怎么办,opengl渲染gpu选自动还是选显卡?,opengl版本过低怎么办,opengl错误,opengl错误,opengl错误1282,opengl是什么意思,opengl版本过低怎么办,内容如对您有帮助,希望把文章链接给更多的朋友!

OpenGL(Open Graphics Library)定义了一个跨编程语言、跨平台的编程接口规&#;的专业的图形程序接口。它用于二维和三维图像,是一个底层图形库。OpenGL ES (OpenGL for Embedded Systems) 是 OpenGL API 的子集。

一、创建一个OpenGL ES的环境:

为了画一个图形,首先要创建一个view容器。一个直接的方式就是实现GLSurfaceView和GLSurfaceView.Renderer这两个接口。一个GLSurfaceView用来当做画布,GLSurfaceView.Renderer用来控制在画布上画什么。

用GLSurfaceView当做画布只是实现OpenGL ES画图的一种方式。全屏或者接近全屏的画图view用GLSurfaceView是好选择。如果只是在layout的一部分上用OpenGL ES画图可能用TextureView好一些。还有一种是用SurfaceView,但是需要写很多的代码。

下面展示用GLSurfaceView和GLSurfaceView.Renderer实现画图。

第一步:首先在Manifest中声明对OpenGL的使用。

声明要使用OpenGL ES 2.0API

如果应用中使用了texture compression,必须声明你的APP中要使用的压缩&#;式

第二步:为OpenGL ES Graphics创建一个Activity

创建的activity中要用到GLSurfaceView这个控件。

第三步:创建一个GLSurfaceView控件OpenGL(opengl和directX区别)

GLSurfaceView只是用来充当画布,不能自己完成绘制。控制绘制的是渲染器GLSurfaceView.Renderer。不要直接使用GLSurfaceView这个类,为了实现监听触摸事件等,要继承这个类。

如果要用OpenGL ES 2.0 需要声明调用的是2.0API,如下:

在继承了GLSurfaceView的类中,这里指MyGLSurfaceView,另外一个可选项是当只有绘制的数据有改变时才渲染。

这个设置能防止GLSurfaceView重新绘制,直到requestRender()这个方法被调用。

第四步:创建一个Renderer类

继承GLSurfaceView.Renderer类创建渲染器类。调用下面三个方法指明怎样在GLSurfaceView中画图像:

onSurfaceCreated()调用一次设置view的OpenGL ES环境

onDrawFrame()每次重新绘制都要调用

onSurfaceChanged()view的几何形状变化后都要调用,例如当设备的屏幕方向改变之后。

下面的例子示例了如何在一个GLSurfaceView中绘制一个灰色的背景。

OpenGL 输出中文 英文 数字 OpenGL输出中文英文数字将文字以轮廓与点形式表现

openGl学习之添加颜色 OpenGL支持两种颜色模式:一种是RGBA模式,一种是颜色索引模式。无论哪种颜色模式,计算机都必须为每一个像素保存一些数据,即通过每一个像素的颜

OpenGL编程环境配置 这学期的计算机图形学课,老师要我们交一份用OpenGL做的图形程序作为作业。因此,我开始学习OpenGL。操作系统:WIN8.1,环境:VS。按照书上说的:

本文链接地址:https://www.jiuchutong.com/biancheng/373160.html 转载请保留说明!

上一篇:Build Qt5.3.1 for Freescale I.MX6Q based Linux 3.0.15

下一篇:OpenGL 输出中文 英文 数字(opengl语言)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络