Giter Site home page Giter Site logo

laygl's Introduction

Layman OpenGL (laygl)

A simple 3D engine for the layman.

Screenshot

Currently implemented

  • Creating a window and renderer with a modern OpenGL context.
  • High resolution clock for elapsed-time calculation.
  • Physically Based Rendering (metallic/roughness workflow).
  • Support glTF 2.0 file format.
  • Materials.
  • Normal maps.
  • Anti-aliasing (MSAA 8x multi-sampling).
  • Back-face culling optimization.
  • Mipmapping / anisotropic filtering.
  • Wireframe mode.
  • Directional and point lights.

Short term

  • Image Based Lighting (IBL).
  • Flat terrain.

Long term

  • Transparency
  • Fog
  • Third person camera with tilt-pan-zoom offsets.
  • Skeletal animation
  • Multi-texturing
  • Terrain collision
  • Texture atlases
  • GUI
  • Day/night cycle
  • Cell shading
  • Font rendering
  • Distance field text rendering
  • Particle effects
  • Instanced rendering
  • Procedural terrain
  • Shadow mapping
  • Percentage closer filtering
  • Post-processing effects
  • Gaussian Blur
  • Multisampled FBOs
  • Bloom effect
  • Multiple render targets
  • Geometry shaders
  • Cube map reflections
  • Render to cube map texture
  • Lens flare
  • Occlusion queries
  • Water

Not clear yet

  • Runtime keybinding system to map actions to GLFW key constants.
  • Associating different materials to different mesh parts of a model.
  • Loading materials from files.

License

This is free and unencumbered software released into the public domain. See the UNLICENSE file for more details.

laygl's People

Contributors

nitrix avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.