Skip to content
This repository has been archived by the owner on Jun 5, 2024. It is now read-only.

cjhosken/breeze_render_engine

Repository files navigation

Breeze Render Engine

Introduction

Breeze Render Engine is a c++ program that can create and render 3-dimensional scenes. Users have the ability to add, edit, and move objects to create their own pieces of art. Breeze Render Engine is my first C++ project, and has taken me around 8 months part time to complete.


Supported Systems

  • Windows

If you would like support for Linux or macOS, do it yourself. ❤


Installation & Running

To run Breeze Render Engine, you will need to go to the release page of this projects Github repoistory. From there you can download the latest version and run the .exe file.


Documentation

If you would prefer to watch a tutorial than read the documentation, you can find the tutorial video here.

Viewport

Viewport

When you first start up Breeze Render Engine, you'll be introduced to this screen. This is the Viewport.

The Viewport is where you can find all the necassary buttons to use the program. The Viewport contains multiple panels, with the 3D Scene Viewer behind it.


App Button

In the top left you have the App Button. Clicking on this will open a menu with button options.

Quit: Quit Breeze Render Engine


App Bar

On the left side you have the App Bar. Here you can toggle selection and add new objects. This are the list of buttons in top-to-bottom order.

Toggle Selector: toggle whether objects can be selected or not.

Add Cube: add a cube to the scene.

Add Plane: add a plane to the scene.

Add Sphere: add a sphere to the scene.

Add OBJ: add a custom OBJ.

Add Camera: add a camera.

Extra Buttons: open a menu that allows you add extra objects.


Doc Bar

Beneath the App Bar in the bottom left is the Doc Bar. This provides you access to the documentation as well as the source code.

Open Documentation: opens the README file in a web browser.

Open Source: opens the source code in a web browser.


Top Bar

At the top of the viewport is the Top Bar. The Top Bar allows you to toggle between wireframe or solid view.

Wire View: Select wire view.

Solid View: Select solid view.


End Bar

The end bar is in the top right of the viewport. It contains buttons that let you report a bug and close the application.

Report Bug: Report a bug.

Quit: Quit Breeze Render Engine


The 3D Scene Viewer

The 3D Scene Viewer is relatively simple.

Left Mouse Click: select objects.

Left Mouse Drag: rotate around viewport.

Scroll Wheel: zoom.

Delete Key: delete selected object.

0: toggle between camera view and viewport view.


The Properties Panel

The Properties Panel is where you control all aspects of the scene. There are 4 kinds of tabs in the properties panel.

Render Tab: Contains properties for rendering.

World Tab: Contains properties for the viewport

Object Tab: Contains properties for the selected object.

Camera Tab: Contains properties for the selected camera.


Known TODOs

  • Rendering transformations aren't correct.
  • Rendering not fully implemented.
  • Crashes when rendering large images.
  • Runs in background after quitting when cancelling render.

Tested Systems

  • Windows 10, 8GB RAM, Intel I7-7500U, NVIDIA GeForce 940MX
  • Windows 10, 24GB RAM, Intel I5-7400, NVIDIA GeForce 1060 TI

If you come across any bugs don't report them because they're features.


Resources

I can't count how many stack overflow posts I've read trying to complete this project. So here are the more general resources that I used.


Contact

Breeze Render Engine was written by me, Christopher Hosken. You can get in contact with me here.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages