17、构建 3D 世界:TourGL 应用详解

构建 3D 世界:TourGL 应用详解

1. 应用概述

TourGL 是一个基于主动渲染框架构建的简单 3D 世界应用。用户通过键盘控制在场景中移动,目标是找到并消除地面上随机放置的形状。游戏以开始屏幕启动,结束时显示“Game Over”消息。该应用展示了多种 OpenGL(JOGL)技术,如透明图像纹理、2D 覆盖层以及位图和 Java 2D 字体的使用。

应用的视觉元素包括:
- 带有红色正方形中心和 x、z 轴数字的绿蓝棋盘格地板。
- 星空天空盒。
- 旋转的“地球”(纹理球体)。
- 始终面向相机的树木广告牌。
- 随机平放在地面上的多个形状(默认是红色的 R)。

用户可以使用箭头键前后移动、左右平移、上下移动和左右转向,但不能离开棋盘格或天空盒的边界。游戏可以通过按下 ESC、q、END、Ctrl - c 或点击关闭框来终止。

2. 类结构与初始化

TourGL 类创建 GUI,包含线程画布 TourCanvasGL 和窗口底部的两个文本字段。TourGL 捕获窗口和组件调整大小事件,并调用 TourCanvasGL 中的方法来暂停、恢复、停止和调整 3D 场景的大小。

TourCanvasGL 构造函数完成以下任务:

// globals
private TourGL tourTop;     // reference back to top-level JFrame
private long period;        // period between drawing
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值