Skip to content

GINGER594/Sin3D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

114 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Sin3D

Sin3D is a lightweight MonoGame extension library designed to reduce boilerplate and make creating 3D games feel as simple as working in 2D.

It provides clean, high-level abstractions for cameras, rendering, models, and collision detection — without hiding or replacing MonoGame’s core.


Features

Camera

Camera3D class:

  • Handles view and projection matrices.

Renderer

Renderer3D class:

  • Toggleable default BasicEffect lighting.
  • Configurable directional BasicEffect lighting.
  • Configurable fog.
  • Single-line render calls.

Model Abstraction

Model3D class:

  • Handles position.
  • Handles rotation (quaternion-based).
  • Handles scale.
  • Handles World matrix.
  • Texture mapping (including per-mesh texture-mapping for multi-meshed models).
  • Collision detection with other models (including multi-mesh models).

Collision Detection

  • Bounding spheres
  • Axis-aligned bounding boxes (AABB)
  • Oriented bounding boxes (OBB)
  • Optimized collision pipeline: Bounding Sphere → AABB → OBB

How To Get Started:

  • Install MonoGame and add to your project.
  • Install Sin3D and add to your project.
  • Start coding! (sample projects can be found in the SampleProjects folder ready for you to build!)

About

A light-weight, MonoGame Extension Library created with the aim of making 3D games as easy to create as 2D games within MonoGame

Resources

License

Stars

19 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages