Skip to content

iamparas0/3DCompositingEngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Open-Source 3D Compositing Engine

Overview

This project is an open-source 3D Compositing Engine designed for video creators and VFX artists. The engine allows for seamless integration of 3D models into 2D video footage, with support for complex lighting, textures, and physics-based rendering. Users can upload models, adjust lighting, and synchronize 3D objects with video footage through a React-based UI.


Features

  • 3D Rendering Engine: Supports complex lighting, textures, and physics simulations.
  • Camera Tracking: Synchronizes 3D models with video camera movement.
  • Physics Simulation: Supports physics-based rendering using a custom physics engine or Bullet Physics.
  • React UI: Web-based interface for users to interact with the engine, upload assets, and manage scenes.
  • Asset Management: Load and manage 3D models, textures, and scenes.
  • Shader Support: Includes support for custom shaders (GLSL, HLSL).

Folder Structure

/src
├── /core               # Core engine components
│   ├── engine.cpp      # Main engine logic
│   ├── engine.h        # Engine header file
│   ├── /rendering      # Rendering functionality
│   ├── /physics        # Physics simulations
│   ├── /assets         # Asset management
│   ├── /scenes         # Scene management
├── /tracking           # Camera tracking
├── /ui                 # Web-based UI with React
└── main.cpp            # Main entry point

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/3d-compositing-engine.git
    cd 3d-compositing-engine
  2. Ensure you have the following dependencies installed:

    • C++ compiler (e.g., GCC or MSVC)
    • OpenGL or Vulkan for rendering
    • Bullet Physics (optional, for physics simulations)
    • Python (for scripting integration)
    • Node.js and npm (for React-based UI)
    • CMake (for building the project)
  3. To build the engine, run the following commands:

    mkdir build
    cd build
    cmake ..
    make
  4. To start the React-based UI, navigate to the /src/ui directory:

    cd src/ui
    npm install
    npm start

Usage

Once the engine is built and the UI is running:

  • Upload Models: Use the UI to upload 3D models and textures.
  • Adjust Settings: Modify lighting, camera position, and physics parameters in real time.
  • Render: Export the final composited scene with 3D objects integrated into video footage.

Contributing

Contributions are welcome! If you would like to improve the project, feel free to submit a pull request or report issues.


License

This project is licensed under the MIT License. See the LICENSE file for details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published