Skip to content

suny-am/mega

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Mega Render Engine

Report Bug Β· Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. Resources
  7. License
  8. Contact

About The Project

Mega is a WebGPU based (targeting DAWN/WGPU and the web via Emscripten) render engine.

πŸ”

Built With

CPlusPlus CMake WebGPU glTF

πŸ”

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Prerequisites

This is an example of how to list things you need to use the software and how to install them. The foolowing examples pertains to installing the required dependencies on MacOS.

CMake

# Make sure to install XCode via the App store first
xcode-select --install && \
brew install cmake

Installation

1. Clone the repo

git clone https://github.com/suny-am/mega.git && \
cd mega

2. Build the project

navigate to the project directory of your choice

# Working Directory Example
cd 1.getting_started/hello_webgpu

Then choose one of three compile options:

WGPU-Native
cmake -B build-wgpu -DWEBGPU_BACKEND=WGPU
cmake --build build-wgpu
Dawn
cmake -B build-dawn -DWEBGPU_BACKEND=DAWN
cmake --build build-dawn
Emscripten
emcmake cmake -B build-emscripten
cmake --build build-emscripten

πŸ”

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

1. Fork the Project

gh repo fork suny-am/mega --clone
cd mega

2. Create your Feature Branch

git checkout -b feature/aNewCoolFeature

3. Commit your Changes

`git commit -m 'Add a new cool feature'

4. Push to the Branch

git push origin feature/aNewCoolFeature

5. Open a Pull Request

gh pr create 

πŸ”

Usage

Use this space to show useful examples of how a project can be used. Additional screenshots, code examples and demos work well in this space. You may also link to more resources.

TBD

πŸ”

Roadmap

  • File parsing
    • native file dialog
    • Load .gltf/glb
    • Load .obj into gltf format
    • TBD (🚧)
  • Dynamics
    • World color
  • Shaders
    • BRDF
    • TBD (🚧)
  • UI
    • Dear ImGui integration
    • ImGuizmo integration
    • TBD (🚧)
  • Camera control
    • Orbit (turntable)
    • Zoom
    • Pan
    • TBD (🚧)
  • TBD (🚧)

πŸ”

Resources

References

Assets

textures

models

shaders

License

Distributed under the MIT License. See LICENCE.txt for more information.

πŸ”

Contact

Your Name - @sunyam.bsky.social - [email protected]

Project Link: https://github.com/suny-am/mega

πŸ”

About

WebGPU Based render engine

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages