【置顶】Group Project

SUN YAT-SEN UNIVERSITY

Group Project: Create A 3D World!

Computer Graphics
2017-01-01

1. Introduction

The goal of this project is to learn more about the usage of OpenGL. How to construct a scene? How to display a person? How to build a 3D game? You and your little teamates can be the explorer of your own world.

Warning: All codes and documents should be written and submitted individually, without copying existed answers (Neither from other student nor from the Internet). Plagiarism = Fail. Besides, there may be at least 30% penalty for late homework.

2. Tasks

2.1 Pre-requirement

2.2 Create your own 3D world.

There are no restrictions on the themes or methods to implement your idea. So this is the best chance for you to turn your imagination into reality, well, reality in the OpenGL world. Maybe you are interested in animations and cartoons, so you can find some 3d models of your favorite characters such as Naruto and make scene. Or you are interested in game, you can inplement your own game. How about CS, or Minecraft? That’s it, you can do everything you want. However, there is still a list of technologies/features you must involve, which is:

  1. Camera Roaming(第一人称或者第三人称摄像机漫游)
  2. Texture Mapping(纹理映射)
  3. Simple Lighting(简单光照)
  4. Sky Box(天空盒)
  5. Deep Test(深度测试)
  6. Model Managment(模型管理)

And there is a bonus list for you:

  1. Complex Lighting(复杂光照: Gama矫正,法线贴图,HDR,SSAO…)
  2. Particle System (粒子系统: 渲染⾬、雪、雾等)
  3. Display Text(显示文字,中文/英文/立体/平面)
  4. Display list(显示列表)
  5. Stencil Test(模板测试)
  6. Anti aliasing(抗锯齿)
  7. Collision Detection(碰撞检测)
  8. Skeletal Animation(骨骼动画)
  9. Explosion Effect(爆炸效果)
  10. Fluid Simulation(流体模拟)

2.3 Report

Still, you should submit a report with your project. The report should at least include:

You will also have a presentation to show us what you have achieved before the final exams, so be prepared!

3. Submitting Format

Please submit your homework to sysucg2017@163.com. You subject of the email should be as same as your attachment(aka. your .zip file)

Only a .zip file should be submitted from each group. Under the .zip file, the content should look like this:

classTpye_Group#?_version?:
  |— src/
  |— doc/
  |— bin/

For example, the ninth group in required class would submit ther homework by the first time in: R_Group#9_version0.zip