Sixth 3D - 3D engine

Table of Contents


1 Project description

System is implemented in Java because:

  • It scales well to handle great complexity.
  • It is easy to refactor and experiment with.
  • It is fast enough thanks to Java virtual machine just-in-time compiler.
  • Easy to run on various hardware platforms and operating systems.

3D rendering is done in software, 100% pure Java on CPU. At least for now. Modern CPU cores count keeps growing and therefore rendering by CPU is not as expensive as it used to be for the old single core systems.

CPU rendering performance is already good enough to implement usable 3D UI at sufficient detail level, resolution and frame rate.

Pure Java also means easy portability and installation. No need to deal with platform specific dependencies.

Also CPU rendering allows to easily test different rendering algorithms and retains complete control of every rendered pixel.

2 Software development

Instructions to embed Sixth-3D in your project as a library. Maven *pom.xml* file snippet:

<dependencies>
    ...
    <dependency>
        <groupId>eu.svjatoslav</groupId>
        <artifactId>sixth-3d</artifactId>
        <version>1.0</version>
    </dependency>
    ...
</dependencies>

<repositories>
    ...
    <repository>
        <id>svjatoslav.eu</id>
        <name>Svjatoslav repository</name>
        <url>http://www2.svjatoslav.eu/maven/</url>
    </repository>
    ...
</repositories>

Auto-generated graphs for parts of Sixth-3D code/architecture using this tool

Author: Svjatoslav Agejenko

Created: 2016-08-03 Wed 23:15

Validate