Skip to content

alterdekim/Simple-3DEngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

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

About

Yet another 3DEngine

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages