// Copyright (c) 2012-2021 Wojciech Figat. All rights reserved. #pragma once #include "Engine/Scripting/ScriptingType.h" #include "Enums.h" /// /// Graphics device manager that creates, manages and releases graphics device and related objects. /// API_CLASS(Static) class FLAXENGINE_API Graphics { DECLARE_SCRIPTING_TYPE_NO_SPAWN(Graphics); public: /// /// Enables rendering synchronization with the refresh rate of the display device to avoid "tearing" artifacts. /// API_FIELD() static bool UseVSync; /// /// Anti Aliasing quality setting. /// API_FIELD() static Quality AAQuality; /// /// Screen Space Reflections quality setting. /// API_FIELD() static Quality SSRQuality; /// /// Screen Space Ambient Occlusion quality setting. /// API_FIELD() static Quality SSAOQuality; /// /// Volumetric Fog quality setting. /// API_FIELD() static Quality VolumetricFogQuality; /// /// The shadows quality. /// API_FIELD() static Quality ShadowsQuality; /// /// The shadow maps quality (textures resolution). /// API_FIELD() static Quality ShadowMapsQuality; /// /// Enables cascades splits blending for directional light shadows. /// API_FIELD() static bool AllowCSMBlending; public: /// /// Disposes the device. /// static void DisposeDevice(); };