ProtoTracer  1.0
Real-time 3D rendering and animation engine
Loading...
Searching...
No Matches
Engine.cpp
Go to the documentation of this file.
1#include "Engine.h"
2
3void RenderingEngine::Rasterize(Scene* scene, CameraManager* cameraManager) {
4 for (int i = 0; i < cameraManager->GetCameraCount(); i++) {
5 Rasterizer::Rasterize(scene, cameraManager->GetCameras()[i]);
6
7 if (scene->UseEffect()) {
8 scene->GetEffect()->ApplyEffect(cameraManager->GetCameras()[i]->GetPixelGroup());
9 }
10 }
11}
12
14 for (int i = 0; i < cameraManager->GetCameraCount(); i++) {
15 DisplayTest::FillWhite(cameraManager->GetCameras()[i]);
16 }
17}
Declares the RenderingEngine class for rendering and display operations.
virtual IPixelGroup * GetPixelGroup()=0
Retrieves the associated pixel group.
Manages multiple CameraBase objects.
uint8_t GetCameraCount()
Retrieves the count of cameras managed by the CameraManager.
CameraBase ** GetCameras()
Retrieves the array of CameraBase objects.
static void FillWhite(CameraBase *camera)
Fills the camera display entirely with white pixels.
virtual void ApplyEffect(IPixelGroup *pixelGroup)=0
Pure virtual method for applying the effect to a pixel group.
static void Rasterize(Scene *scene, CameraBase *camera)
Rasterizes a 3D scene onto a 2D camera view.
static void Rasterize(Scene *scene, CameraManager *cameraManager)
Rasterizes the given scene using the cameras managed by the CameraManager.
Definition Engine.cpp:3
static void DisplayWhite(CameraManager *cameraManager)
Fills the display with white for all cameras in the CameraManager.
Definition Engine.cpp:13
Manages a collection of 3D objects and applies optional screen-space effects.
Definition Scene.h:25
bool UseEffect()
Checks if an effect is enabled for the scene.
Definition Scene.cpp:11
Effect * GetEffect()
Retrieves the current screen-space effect.
Definition Scene.cpp:23