在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

[软件设计] Glut Demo 小程序 - 渲染半透明立方体和球体

nih***发布 已通过手机认证
任务编号:5881289 悬赏任务200元 悬赏任务 : 按雇主需求进行任务后提交稿件,被采纳后即获得佣金。

Glut Demo 小程序 - 渲染半透明立方体和球体

距截止: 任务已圆满完成 雇主已托管赏金:200
雇主发布需求 雇主托管佣金 服务商投稿 雇主开始选稿 任务完成

任务大厅共需1个合格投稿 | 每稿将获得200| 每人交稿次数不限 可多次任务

投诉举报 联系Ta 我来承接 已有1 个投稿 | 已采纳1 稿 | 拒绝0 稿 | 目前中标名额已满

任务需求:
请先看图,然后再继续阅读下面列出的需求点

1. 详细需求

首先渲染一个立方体
- 带有简单的光照 (比如环境光 + 散射光),有基本的三维效果
- 立方体是半透明的
- 立方体的 12 条边额外用线条加强显示,在背面的勾勒线由于被遮挡,颜色较淡

然后把多个立方体组合到一起,形成一个组合立方体
- 目标是即使存在遮挡,也能一目了然看清空间划分和边界

作为参考,可以使用下面的五个立方体作为测试场景 (参考附图)

50*50*50 立方体 * 4
100*100*50 立方体 * 1 (紧贴上面的 4 个立方体)

接下来再渲染一些半透明球体,有红色球和绿色球两种
- 要求视线重叠处颜色可以叠加
- 球体本身可以不带任何三维效果,看起来像是平面下的圆一样

最后在每个立方体内部生成 5 个随机球体,大小、颜色、坐标均随机,并观察最终效果

- 可以通过鼠标左键拖动实现对整个场景自由观察,即相机在一个球体上可沿经线、纬线方向移动,视线始终经过球心
- 可以通过改变常量,在编译前切换平行投影 / 开透投影,默认为平行投影

需求要点
0. 使用尽可能简洁的编码风格来实现这个 Demo,单个 C/C++ 文件实现
1. 立方体是半透明的
2. 立方体要有 (光照)三维效果立体感,不能每个面颜色完全一样
3. 立方体要有勾勒线
4. 立方体背面的勾勒线颜色较浅
5. 对组合立方体能一目了然看清空间划分结构和边界
6. 红色和绿色球体也是半透明的,视线重叠处颜色自动叠加
7. 在每个立方体中生成一些随机球体作为 Demo 的一部分
8. 支持鼠标拖动实现对场景自由观察
9. 支持编译前在平行投影 / 开透投影间进行切换

需要在程序开头处定义成常量的参数:

- 立方体颜色、勾勒线颜色
- 立方体透明度、勾勒线透明度
- 红色球体颜色、绿色球体颜色、球体透明度
- 投影方式: 平行投影 / 开透投影


- 完成以上需求点,提供 C/C++ 源码
- 录制一段小视频 (移动镜头观察) 作为实际实现效果的直观展示

要求开发者具有 OpenGL 程序开发经验 (从头学起也来不及啊喂)

(PS: 尽量使用邮件沟通)

使用道具 举报

全部参与1

已采纳

使用道具 举报

发新帖
国内首家创新型IT技术需求众包服务平台,软件需求就上天盟网! 立即登录 立即注册