core renderer refactor finish

This commit is contained in:
h4570
2022-07-25 20:10:46 +02:00
parent 819a7c3de3
commit 0c63de8ac9
18 changed files with 258 additions and 109 deletions
@@ -30,15 +30,15 @@ class PipelineInfoBag {
bool antiAliasingEnabled;
/**
* @brief True -> disables "clip against each plane" algorithm.
* Default: false.
* @brief False -> disables "clip against each plane" algorithm.
* Default: True.
*
* Full clip checks are slow, but they are
* preventing visual artifacts, which can happen
* for big 3D objects (or objects near camera eyes)
* Force enabled in dynamic pipe, because of efficiency.
*/
bool noFullClipChecks;
bool fullClipChecks;
};
} // namespace Tyra
@@ -0,0 +1,24 @@
/*
# ______ ____ ___
# | \/ ____| |___|
# | | | \ | |
#-----------------------------------------------------------------------
# Copyright 2022, tyra - https://github.com/h4570/tyra
# Licenced under Apache License 2.0
# Sandro Sobczyński <sandro.sobczynski@gmail.com>
*/
#pragma once
namespace Tyra {
enum PipelineFrustumCulling {
/** No frustum culling */
PipelineFrustumCulling_None = 0,
/** Frustum culling of whole object */
PipelineFrustumCulling_Simple = 1,
/** Frustum culling of parts of an object */
PipelineFrustumCulling_Precise = 2,
};
}
@@ -12,6 +12,7 @@
#include "renderer/3d/pipeline/shared/pipeline_shading_type.hpp"
#include "../shared/pipeline_lighting_options.hpp"
#include "./pipeline_frustum_culling.hpp"
namespace Tyra {
@@ -20,6 +21,7 @@ class PipelineOptions {
PipelineOptions() { lighting = nullptr; }
~PipelineOptions() {}
PipelineFrustumCulling frustumCulling;
PipelineShadingType shadingType;
bool blendingEnabled;
bool antiAliasingEnabled;