
在BlackBerry上使用OpenGL绘图
文章平均质量分 79
OpenGL本身是一个复杂的课题,它涉及到图形处理很多具体方面,而其中任何一个具体方面,比如光照、纹理、视图等等,都需要花费大量时间和精力去学习。希望通过简单的说明让BlackBerry开发人员可以快速地进入OpenGL的世界
keyboardOTA
喜欢技术挑战
展开
-
在BlackBerry上使用OpenGL绘图(十二):光照
12光照光照在3D世界中非常重要,在不设置光照的情况下很多模型都无法体现它的真正体积。在OpenGLDemo样例中,当立方体旋转时我们可以看到立方体不同面的明暗效果,这就是光照的作用。 要在OpenGL中使用光照,首先要启用光照支持。启用光照支持同样是通过调用glEn原创 2011-09-27 14:10:39 · 2664 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(十一):纹理数组
11 纹理数组现实世界中的物体由不同的材质组成,表面可能会有不同的花纹,这些特性在模拟的3D世界中无法通过简单的平面实现。为了更好地在3D世界中模拟现实物体,设计人员引入了纹理的概念,主要思路是通过2维图片绘制类似于某种材质表面的图像,然后将2维图片贴附在平面上,形成与现实物原创 2011-09-27 14:06:59 · 4584 阅读 · 1 评论 -
在BlackBerry上使用OpenGL绘图(十):视口变换
10 视口变换相对于以上变换,视口变换更为简单一些,视口变换最终决定显示出来的图片大小。视口变换类似于冲印的照片底片后最终决定放大还是缩小照片,还决定照片放在相框的哪个位置。 视口变换通过方法glViewport实现,该方法接受四个参数,第一个参数和第二个参数指定图片原创 2011-09-26 11:16:10 · 2601 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(九):投影变换
9 投影变换以上讲解的是“视图模型模式”,主要是如何对观察点或者是模型进行变换,下面粗略了解一下“投影模式”。 “投影模式”变换的作用是控制3D模型如何投影到2D的屏幕上。一般希望的是将3D模型投影到2D屏幕上时和我们看见现实世界的物体相同,有近大远小的透视效果,这种原创 2011-09-26 11:14:39 · 2786 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(八):模型的运动
8 模型变换:模型的运动在OpenGL ES中,对模型的变换主要有移动、伸缩和旋转三种,分别对应方法glTranslatef、glScalef和glRotatef三个方法。 glTranslatef方法用于模型的平移,接受三个参数,分别对应X、Y和Z轴上的移动值,正数原创 2011-09-26 11:10:34 · 3187 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(七):视图变换:观察点的运动
7 视图变换:观察点的运动对视图的操作主要表现为对观察点的操作,形象的比喻就是在3D世界中摆放“相机”,你可以指定“相机”的位置,也可以指定“相机”镜头的朝向,还可以指定“相机”机身的朝向。在OpenGL中,开发人员可以通过gluLookAt方法设置观察点,不过在标准的Ope原创 2011-09-24 21:32:50 · 3377 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(六):3D变换介绍
6 3D变换介绍以上通过简单地复制OpenGLDemo中的glRotatef方法实现了3D模型的旋转。然而,为了在自己的程序中得心应手地实现各种复杂的运动,仅仅复制样例代码是不够的,读者需要更深入一层地了解OpenGL中的变换方式。 OpenGL中的基本变换方式有视图原创 2011-09-24 21:28:27 · 2508 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(五):动画的产生
5 动画的产生上一节我们讨论了3D模型的建立,所建立的3D模型是静态的,不像原来的OpenGLDemo中的立方体一样可以旋转。为了让3D模型运动起来,我们需要对程序做一些修改。不过,在开始之前,我们首先需要简单认识一下动画的产生。 用非专业的语言描述,动画是由静态图片原创 2011-09-24 21:25:37 · 2631 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(四):顶点数组与法向量数组
4 顶点数组与法向量数组我们分析样例的目的是希望了解样例中各部分代码的作用以及它们之间的关系。而实现这一目的的有效方法是对样例进行简化,解析出其中最基本的语句,并分析它们的用法。 从样例的运行结果我们知道OpenGLDemo显示了一个转动的立方体,在立方体的表面还有黑原创 2011-09-23 22:40:29 · 3875 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(三):OpenGL样例结构分析
3 OpenGL样例结构分析运行OpenGL样例之后,需要进一步分析样例中代码,才能更好地理解样例的工作机制。在开发环境中打开包“com.rim.samples.device.opengldemo”,可以看到其中有五个类,分别是Cube、CubeRenderer、OpenGL原创 2011-09-23 22:37:15 · 4150 阅读 · 0 评论 -
在BlackBerry上使用OpenGL绘图(二):运行OpenGL样例
2 运行OpenGL样例学习样例是开发人员学习新技术的好方法,通过样例可以直观地了解程序的结构和使用方法,避免阅读冗长的API说明。为了让开发人员快速了解OpenGL在BlackBerry上的使用方法,RIM在BlackBerry开发环境中提供了一个完整的OpenGL样例,开原创 2011-09-23 17:26:14 · 2893 阅读 · 0 评论 -
在BlackBerry上使用 OpenGL绘图(一): OpenGL介绍
为了在QNX上完成3D绘图,拿回之前自己写的“在BlackBerry上使用 OpenGL绘图”阅读,同时在这里和大家分享一下。文章太长,分几篇发上来。下面是第一部分。 在BlackBerry上使用 OpenGL绘图在BlackBerry上进行图像相关的编程有很多方原创 2011-09-23 17:14:16 · 2859 阅读 · 0 评论