项目作者: Graygzou

项目描述 :
Basic rendering engine written in Java.
高级语言: Java
项目地址: git://github.com/Graygzou/3D-Rendering-Engine.git
创建时间: 2018-03-18T15:48:02Z
项目社区:https://github.com/Graygzou/3D-Rendering-Engine

开源协议:

下载


3D-Rendering-Engine

Basic rendering engine written in Java. This project was made during an rendering course, followed at ENSEEIHT, a french engineer school.

About

We did not write the full engine but we completed it as part of an assignment. We mainly focus on transformation matrices, depth rendering, rasterization process, lighting interpolation and texture manipulation.

Getting started

To launch a scene, run the src\Renderer class.
You have to provide a .scene file in first argument of the run which correspond to the scene you which to render.
To reach the end of the rendering process, you also have to specified a .jpg or .png texture image.

All the availables scenes are in the \data folder. Each one of them contains a different .off file which correspond to a 3D mesh. Textures images are also in the \data folder.

Results

Basic Rasterization Renderer

Those pictures show 3 step of our rendering system :

  1. Wireframe rendering with colored vertices.
  2. Solid rendering, without lighting.
  3. Solid rendering, with lighting.

Rabbit


Monkey

With texture

The following images are an example of textures rendering. We kept the previous steps but we add two more for the texture :

  1. Solid rendering, with texture
  2. Solid rendering, with texture combined with base color.

Plane with rock texture

Contributors