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. HDU 5446 Unknown Treasure (卢卡斯+CRT

    代码: #include"bits/stdc++.h" #define db double #define ll long long #define vec vector<l ...

  2. python基础之列表、元组和字典

    列表 列表定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序 ...

  3. 10.2 ajax

    Ajax Ajax简介 AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”.即使用Javascript语言与服务器进行异步交互 ...

  4. 十四、pymysql模块

    一.安装的两种方法 第一种 #安装 pip3 install pymysql 第二种 二.链接,执行sql,关闭(游标) import pymysql user= input('用户名:>> ...

  5. 无法访问hadoop yarn8088端口的解决方法

    1.检查是否正确的启动了resourcemanager服务 若是没有启动,请检查yarn-site-xml配置 2.若是启动了 1.检查客户机和虚拟机之间是否能够相互ping通 2.检查虚拟机防火墙是 ...

  6. luogu4196 [CQOI2006]凸多边形 半平面交

    据说pkusc出了好几年半平面交了,我也来水一发 ref #include <algorithm> #include <iostream> #include <cstdi ...

  7. Hadoop学习笔记系列

    Hadoop学习笔记系列   一.为何要学习Hadoop? 这是一个信息爆炸的时代.经过数十年的积累,很多企业都聚集了大量的数据.这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼 ...

  8. 风格指南--C++

    0.避免多重包含是学编程时基本的要求; 1. 前置声明是为了降低编译依赖,防止修改一个头文件引发多米诺效应; 2. 内联函数的合理使用可提高代码执行效率; 3. ‐inl.h 可提高代码可读性 (一般 ...

  9. Windows下安装PHP及开发环境配置

    一.Apache 因为Apache官网只提供源代码,如果要使用必须得自己编译,这里我选择第三方安装包Apache Lounge. 1. 进入Apachelounge官方下载地址:http://www. ...

  10. uiautomator+cucumber实现移动app自动化测试

    前提 由于公司业务要求,所以自动化测试要达到以下几点: 跨应用的测试 测试用例可读性强 测试报告可读性强 对失败的用例有截图保存并在报告中体现 基于以上几点,在对自动化测试框架选型的时候就选择了uia ...