没有合适的资源?快使用搜索试试~ 我知道了~
在windows 95 nt 下 用opengl 编 程.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 23 浏览量
2021-10-10
14:54:58
上传
评论
收藏 25KB DOCX 举报
温馨提示
试读
18页
在windows 95 nt 下 用opengl 编 程.docx
资源推荐
资源详情
资源评论
在 windows 95 nt 下 用 opengl 编 程
科 学 计 算 可 视 化, 计 算 机 动 画 和 虚 拟 现 实 是 现 在 计 算 机 图 形
学 的 三 个 热 点。 而 这 三 个 热 点 的 核 心 都 是 三 维 真 实 感 图 形 的
绘 制。 由 于 opengl(open graphics library) 具 有 跨 平 台 性、 简 便、
高 效、 个人收集整理 勿做商业用途
功 能 完 善, 目 前 已 经 成 为 了 三 维 图 形 制 作 方 法 中 事 实 上 的 工
业 标 准。 自 从 windows nt 3.51 在 微 机 平 台 上 支 持 opengl 以 后, 现
在 微 个人收集整理 勿做商业用途
软 公 司 在 windows 95 osr2、windows nt 4.0 中 连 续 性 的 提 供
opengl 开 发 环 个人收集整理 勿做商业用途
境。visual c++ 从 4.2 版 本 以 后 已 经 完 全 支 持 opengl api, 使 三
维 世 界 个人收集整理 勿做商业用途
的“ 平 民 化” 已 成 为 必 然。
windows 操 作 系 统 对 opengl 的 支 持
具 有 windows 编 程 经 验 的 人 都 知 道, 在 windows 下 用 gdi 作 图 必
须 通 过 个人收集整理 勿做商业用途
设 备 上 下 文(device context 简 写 dc) 调 用 相 应 的 函 数; 用
opengl 作 图 个人收集整理 勿做商业用途
也 是 类 似,opengl 函 数 是 通 过“ 渲 染 上 下 文”(rendering context 简
写 个人收集整理 勿做商业用途
1 / 18
rc) 完 成 三 维 图 形 的 绘 制。windows 下 的 窗 口 和 设 备 上 下 文 支 持
“ 个人收集整理 勿做商业用途
位 图 格 式”( pixelformat) 属 性, 和 r c 有 着 位 图 结 构 上 的 一 致。
个人收集整理 勿做商业用途
只 要 在 创 建 r c 时 与 一 个 d c 建 立 联 系( r c 也 只 能 通 过 已 经
个人收集整理 勿做商业用途
建 立 了 位 图 格 式 的 d c 来 创 建),opengl 的 函 数 就 可 以 通 过 r
c 个人收集整理 勿做商业用途
对 应 的 d c 画 到 相 应 的 显 示 设 备 上。 这 里 还 有 以 下 需 要 注 意 的
个人收集整理 勿做商业用途
方 面:
1. 一 个 线 程 只 能 拥 有 一 个 渲 染 上 下 文( r c), 也 就 是 说, 用
户 个人收集整理 勿做商业用途
如 果 在 一 个 线 程 内 对 不 同 设 备 作 图, 只 能 通 过 更 换 与 r c 对
应 个人收集整理 勿做商业用途
的 d c 来 完 成, 而 r c 在 线 程 中 保 持 不 变。( 当 然, 删 除 旧 的
r 个人收集整理 勿做商业用途
c 后 再 创 建 新 的 是 可 以 的) 与 此 对 应, 一 个 r c 也 只 能 属 于 一
个人收集整理 勿做商业用途
个 线 程, 不 能 被 不 同 线 程 同 时 共 享。
2. 设 定 dc 位 图 格 式 等 于 设 定 了 相 应 的 窗 口 的 位 图 格 式, 并 且个
人收集整理 勿做商业用途
d c 和 窗 口 的 位 图 格 式 一 旦 确 定 就 不 能 再 改 变。 这 一 点 只 能 期
个人收集整理 勿做商业用途
2 / 18
望 以 后 的 windows 版 本 改 进 了。
3. 一 个 r c 虽 然 可 以 更 换 dc, 在 任 何 时 刻 只 能 利 用 一 个 d c个
人收集整理 勿做商业用途
( 这 个 dc 称 为 rc 的 当 前 dc), 但 由 于 一 个 窗 口 可 以 让 多 个 d c
作 个人收集整理 勿做商业用途
图 从 而 可 以 让 多 个 线 程 利 用 多 个 r c 在 该 窗 口 上 执 行 opengl
操 个人收集整理 勿做商业用途
作。
4. 现 在 的 windows 下 的 opengl 版 本 对 opengl 和 gdi 在 同 一 个 dc 上
作 图 有 个人收集整理 勿做商业用途
一 定 的 限 制。 当 使 用 双 缓 存 用 opengl 产 生 动 画 时, 不 能 使 用 gdi
函 个人收集整理 勿做商业用途
数 向 该 dc 作 图。
5. 不 建 议 用 a n s i c 在 windows 下 编 写 opengl 程 序。 这 样
的 程 个人收集整理 勿做商业用途
序 虽 然 具 有 跨 平 台 的 可 移 植 性( 比 如 很 多 s g i 的 例 子 程 序),
个人收集整理 勿做商业用途
但 是 它 们 不 能 利 用 windows 操 作 系 统 的 很 多 特 性, 实 用 价 值 不
大。 个人收集整理 勿做商业用途
用 v c 来 编 写 opengl 程 序
3 / 18
经 过 上 面 的 分 析, 用 v c 来 调 用 opengl 作 图 的 方 法 就 很 显 然 了。
个人收集整理 勿做商业用途
步 骤 如 下:
1. 先 设 置 显 示 设 备 d c 的 位 图 格 式(pixelformat) 属 性。 这 通
过 个人收集整理 勿做商业用途
填 充 一 个 pixelformatdescriptor 的 结 构 来 完 成( 关 于
pixelformatdescriptor 个人收集整理 勿做商业用途
中 各 项 数 据 的 意 义, 请 参 照 v c 的 帮 助 信 息), 该 结 构 决 定 了
opengl 作 图 的 物 理 设 备 的 属 性, 比 如 该 结 构 中 的 数 据 项 dw!ags
中 个人收集整理 勿做商业用途
pfd_doublebu#er 位 如 果 没 有 设 置( 置 1), 通 过 该 设 备 的 d c
上 作 个人收集整理 勿做商业用途
图 的 opengl 命 令 就 不 可 能 使 用 双 缓 冲 来 做 动 画。 有 一 些 位 图 格
个人收集整理 勿做商业用途
式(pixelformat) 是 dc 支 持 的, 而 有 一 些 dc 就 不 支 持 了。 所 以 程
序 个人收集整理 勿做商业用途
必 须 先 用 choosepixelformat 来 选 择 dc 所 支 持 的 与 指 定 位 图 格 式
最 个人收集整理 勿做商业用途
接 近 的 位 图 格 式, 然 后 用 setpixelformat 设 置 dc 的 位 图 格 式。个人
收集整理 勿做商业用途
2. 利 用 刚 才 的 设 备 d c 建 立 渲 染 上 下 文 r c
(wglcreatecontext), 个人收集整理 勿做商业用途
使 得 rc 与 dc 建 立 联 系(wglmakecurrent)。
4 / 18
剩余17页未读,继续阅读
资源评论
学习使人快乐张
- 粉丝: 39
- 资源: 6万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功