add 'graphics.chunk-max-vertices-dense' setting
This commit is contained in:
parent
6a8afe2795
commit
096092303f
@ -73,6 +73,7 @@ SettingsHandler::SettingsHandler(EngineSettings& settings) {
|
||||
builder.add("frustum-culling", &settings.graphics.frustumCulling);
|
||||
builder.add("skybox-resolution", &settings.graphics.skyboxResolution);
|
||||
builder.add("chunk-max-vertices", &settings.graphics.chunkMaxVertices);
|
||||
builder.add("chunk-max-vertices-dense", &settings.graphics.chunkMaxVerticesDense);
|
||||
builder.add("chunk-max-renderers", &settings.graphics.chunkMaxRenderers);
|
||||
|
||||
builder.section("ui");
|
||||
|
||||
@ -24,15 +24,22 @@ class RendererWorker : public util::Worker<std::shared_ptr<Chunk>, RendererResul
|
||||
BlocksRenderer renderer;
|
||||
public:
|
||||
RendererWorker(
|
||||
const Level& level,
|
||||
const Level& level,
|
||||
const Chunks& chunks,
|
||||
const ContentGfxCache& cache,
|
||||
const EngineSettings& settings
|
||||
) : level(level),
|
||||
chunks(chunks),
|
||||
renderer(settings.graphics.chunkMaxVertices.get(),
|
||||
*level.content, cache, settings)
|
||||
{}
|
||||
)
|
||||
: level(level),
|
||||
chunks(chunks),
|
||||
renderer(
|
||||
settings.graphics.denseRender.get()
|
||||
? settings.graphics.chunkMaxVerticesDense.get()
|
||||
: settings.graphics.chunkMaxVertices.get(),
|
||||
*level.content,
|
||||
cache,
|
||||
settings
|
||||
) {
|
||||
}
|
||||
|
||||
RendererResult operator()(const std::shared_ptr<Chunk>& chunk) override {
|
||||
renderer.build(chunk.get(), &chunks);
|
||||
|
||||
@ -71,6 +71,8 @@ struct GraphicsSettings {
|
||||
IntegerSetting skyboxResolution {64 + 32, 64, 128};
|
||||
/// @brief Chunk renderer vertices buffer capacity
|
||||
IntegerSetting chunkMaxVertices {200'000, 0, 4'000'000};
|
||||
/// @brief Chunk renderer vertices buffer capacity in dense render mode
|
||||
IntegerSetting chunkMaxVerticesDense {800'000, 0, 8'000'000};
|
||||
/// @brief Limit of chunk renderers count
|
||||
IntegerSetting chunkMaxRenderers {6, -4, 32};
|
||||
};
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user