Simple-3DEngine/README.md
2022-04-05 14:55:49 +03:00

68 lines
1.1 KiB
Markdown

# Simple 3D Engine
Simple 3D Engine created using Raymarching algorithms in pure Java.
## Features
- FOG Light
- Ambient Light
- Lambert Light
- Materials
- Sphere
- Plane
- Triangle
- Octahedron
- Runtime rendering
## Default Scene
```Java
public class Canvas extends Raymarcher {
private static final long serialVersionUID = 1L;
private Sphere smallSphere = new Sphere( new Vector3(-2,0,1), 0.25 );
private LambertLight light = new LambertLight(new Vector3(4,2,4));
public Canvas() {
init();
}
@Override
public void onStart() {
this.setCameraPosition(new Vector3(0, 0, -3));
this.setCameraRotation(new Vector3(-10, 0, 0));
smallSphere.getMaterial().setColor(new MaterialColor(0.3, 0.9, 1.0));
this.add(smallSphere);
this.add(new Plane(new Vector3(0,0,0)));
this.addLight(light);
}
@Override
public void onRender() {}
}
```
## Screenshots
![Render Screenshot](https://i.ibb.co/b6mpJp9/1.png)
![Render Screenshot](https://i.ibb.co/wNp0Fny/2.png)
## License
[GNU GPLv3](https://choosealicense.com/licenses/gpl-3.0/)
## Authors
- [@Wain](https://www.github.com/alterdekim)