http://book.51cto.com/art/201104/255588.htm

第1章  架好通向OpenGL的桥

本章主要是为以后进行的OpenGL编程进行一些铺垫工作。主要内容有:OpenGL组件包的安装、如何从VC++ 6.0下的OpenGL程序中提取有用的信息、glut库的设置。

1.1   由C++Builder 6.0 通向OpenGL(1)

事实上,大家所用的操作系统Windows XP、Windows 2000与开发环境C++Builder 6.0已经将这座桥架好。我们现在所要做的工作就是将桥面铺平,以便我们走得更舒服。我们这里所有的设置是以Windows XP操作系统为例进行说明。

简单介绍一个组件:TOpenGLB 6。这个组件是由Alan开发的,用于OpenGL编程时进行背景设置。现在可以免费使用这个组件(这里有个非常有趣的故事,大家可以阅读本章后面的内容)。读者可以从http://www.hellix.com/Alan/Computing/免费下载。

看过OpenGL方面书的读者都知道,所有的OpenGL程序都要设置一个背景,每次都要写:

  1. #include<gl/gl.h>
  2. #include<gl/glu.h>

还要进行屏幕的颜色、大小、长宽比例、在窗口中的位置等方面的设置。而且在VC++中这些设置都需要特定的函数来实现。好了,现在我们可以把这项工作交给TOpenGLB 6组件去做,实现上面提到的效果只需用鼠标拖曳一下即可。

当然读者也可以使用其他功能更强大的组件包,但在网上找了一下并没有找到适用于C++Builder 6.0的OpenGL方面的组件(用于C++Builder 4.0、C++Builder 5.0倒有不少)。当然,如果读者对C++Builder 6.0和OpenGL都比较了解的话,可以自己开发最适合自己用的组件。

下面用TOpenGLB 6组件包来铺设 "桥面"。

考虑到一般人会将应用程序安装到D盘,以下均假定C++Builder 6.0的安装目录为 D:\Program Files\Borland\CBuilder 6。首先,将TOpenGLB 6(里面包含了OpenGL组件包的所有文件)文件夹放到CBuilder 6文件夹下。工作正式开始:

打开C++Builder 6.0。在菜单栏选择"组件"→"安装包"命令,如图1-1所示。

 
(点击查看大图)图1-1  组件安装包略图

单击后,将看到如图1-2所示的界面,单击"添加"按钮。

 
(点击查看大图)图1-2  安装过程示意图

如图1-3所示,这里的对话框让你来选择组件包文件。打开文件夹TOpenGLB 6,选择OpenGLPackage.bpl文件,单击"打开"按钮就可以了。

 
(点击查看大图)图1-3  选择安装包

然后会出现如图1-4所示的界面。大家观察一下我们前面所做工作的效果。在C++Builder 6.0组件面板中,最后的位置多出了一个Helix标签。单击一下,你会发现它上面出现了一个OpenGL组件。而它就是我们所需要的,以后所有的程序就是用它来设置屏幕背景的。

 
(点击查看大图)图1-4  Helix标签添加效果

1.1 由C++Builder 6.0 通向OpenGL(1)的更多相关文章

  1. BCB6.0(Borland C++ Builder 6.0)下载位置(P2P)

    这个老东西还真不好找,搜索了一下,有一些所谓的精简版,绿色版,破解版,不靠谱. 公司有正版光盘,我装过,下面这两个应该是原版的: CD1: ed2k://|file|%5BBorland.C...Bu ...

  2. javafx:JavaFX Scene Builder 2.0打开含有第三方jar包的fxml文件报错 Caused by: java.lang.ClassNotFoundException

    报错如下: java.io.IOException: javafx.fxml.LoadException: /C:/User.................test.fxml at com.orac ...

  3. 报表工具Report Builder 3.0的安装

    工作后第一次尝试独立安装一个软件啊 话不多说,总结一下过程 前言:已经Baidu了Report Builder 3.0的安装教程了,就到微软的官网上下载去了,下载完成双击程序安装告诉我,要想安装Rep ...

  4. DSP Builder 12.0安装及crack方法

    在安装dsp_builder之前请确保已安装所需要的matlab版本 在此之前我已经安装了matlab R2011a,下面安装dsp builder 下面就是破解了,因为12.0的版本刚出,还没有相应 ...

  5. VC++6.0使用OpenGL前的配置(必看)

    要在VC++6.0中使用opengl,需要配置一下环境设置. 具体需要两步: 1.加入一个头文件,两个lib文件,两个dll文件,放在合适位置. 2.配置一下vc++6.0的Project Setti ...

  6. (BCB)C++ Builder 6.0在Win7下如何使用帮助Help

    因为Win7.Win8.Win8.1不再支持.hlp帮助类型,在BCB中无法打开帮助Help,打开时出错:"不包括功能"或"不受支持的帮助",提示如下: 为何无 ...

  7. 解决C++ builder 4.0编译后的程序在某些计算机上运行出现"EAccessViolation" 的错误

    1. bordbk41.dll is missing or not registered. regsvr32 "C:\Program Files (x86)\Common Files\Bor ...

  8. 基于Cocos2d-x学习OpenGL ES 2.0系列——OpenGL ES渲染之LayerColor(8)

    在前面文章中讲述了Cocos2d-x引擎OpenGL渲染准备Shader方面,本文主要讲解使用LayerColor来讲述OpenGL的渲染过程. 1.LayerColor对象创建 添加LayerCol ...

  9. 基于Cocos2d-x学习OpenGL ES 2.0系列——OpenGL ES渲染之Shader准备(7)

    Cocos2d-x底层图形绘制是使用OpenGL ES协议的.OpenGL ES是什么呢? OpenGL ES(OpenGl for Embedded System)是OpenGL三维图形API的子集 ...

随机推荐

  1. CC3200串口UART1配置

    1. 首先打开工程\CC3200SDK_1.1.0\example\adc\ewarm,以ADC例程为例,修改串口引脚复用,先看下引脚图 2. 修改引脚复用代码 void PinMuxConfig(v ...

  2. js和CSS3炫酷3D相册展示

    <!doctype html> <html> <head> <meta charset="UTF"> <title>js ...

  3. ARC下,不显式指定任何属性关键字时,默认的关键字都有哪些

    1.对应基本数据类型默认关键字是 atomic,readwrite,assign 2.对于普通的 Objective-C 对象 atomic,readwrite,strong

  4. USACO Section1.1 Friday the Thirteenth 解题报告

    friday解题报告 —— icedream61 博客园(转载请注明出处) -------------------------------------------------------------- ...

  5. 18、bootStap JavaScript插件

    1.模态框 <!--模态框经过了优化,更加灵活,以弹出对话框的形式出现,具有最小和最实用的功能集.--> <button type="button" class= ...

  6. 【APUE】Chapter8 Process Control

    这章的内容比较多.按照小节序号来组织笔记的结构:再结合函数的示例带代码标注出来需要注意的地方. 下面的内容只是个人看书时思考内容的总结,并不能代替看书(毕竟APUE是一本大多数人公认的UNIX圣经). ...

  7. iOS-QQ好友列表实现

    0.QQ好友列表实现 0.首先说说实现思路 自定义UITableView,每一个分组都是一个UITableViewHeaderFooterView,然后自定义cell,这里分组的实现主要是自定义UIT ...

  8. java 继承小结

    [code=java] //多态的经典例子 //向上转型后,父类只能调用子类和父类的共同方法和的重写方法(方法名相同,参数也相同),不能调用重载方法(方法名相同,但参数不同) class A { pu ...

  9. 易语言.开源(绝地求生多功能盒子)类似LOL盒子

    下载地址:https://pan.baidu.com/s/1OXwCjGJODkcZVrCwVixu3Q     成品地址:https://pan.lanzou.com/i0rmdwj

  10. 孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2

    孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第九天. 今天继续学习mongoDB的简单操作, ...