2023-03-02 14:35:28 +03:00
2022-04-05 14:52:18 +03:00
2023-03-02 14:35:28 +03:00
2022-04-05 14:55:49 +03:00

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

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

Render Screenshot

License

GNU GPLv3

Authors

Description
Languages
Java 100%