You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
Merge pull request #50618 from reduz/implement-more-specialization-constants
Implement more rendering options as specialization constants
This commit is contained in:
@@ -1854,6 +1854,14 @@ void RenderingServer::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("light_directional_set_blend_splits", "light", "enable"), &RenderingServer::light_directional_set_blend_splits);
|
||||
ClassDB::bind_method(D_METHOD("light_directional_set_sky_only", "light", "enable"), &RenderingServer::light_directional_set_sky_only);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("light_projectors_set_filter", "filter"), &RenderingServer::light_projectors_set_filter);
|
||||
|
||||
BIND_ENUM_CONSTANT(LIGHT_PROJECTOR_FILTER_NEAREST);
|
||||
BIND_ENUM_CONSTANT(LIGHT_PROJECTOR_FILTER_NEAREST_MIPMAPS);
|
||||
BIND_ENUM_CONSTANT(LIGHT_PROJECTOR_FILTER_LINEAR);
|
||||
BIND_ENUM_CONSTANT(LIGHT_PROJECTOR_FILTER_LINEAR_MIPMAPS);
|
||||
BIND_ENUM_CONSTANT(LIGHT_PROJECTOR_FILTER_LINEAR_MIPMAPS_ANISOTROPIC);
|
||||
|
||||
BIND_ENUM_CONSTANT(LIGHT_DIRECTIONAL);
|
||||
BIND_ENUM_CONSTANT(LIGHT_OMNI);
|
||||
BIND_ENUM_CONSTANT(LIGHT_SPOT);
|
||||
@@ -1939,12 +1947,20 @@ void RenderingServer::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("decal_set_fade", "decal", "above", "below"), &RenderingServer::decal_set_fade);
|
||||
ClassDB::bind_method(D_METHOD("decal_set_normal_fade", "decal", "fade"), &RenderingServer::decal_set_normal_fade);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("decals_set_filter", "filter"), &RenderingServer::decals_set_filter);
|
||||
|
||||
BIND_ENUM_CONSTANT(DECAL_TEXTURE_ALBEDO);
|
||||
BIND_ENUM_CONSTANT(DECAL_TEXTURE_NORMAL);
|
||||
BIND_ENUM_CONSTANT(DECAL_TEXTURE_ORM);
|
||||
BIND_ENUM_CONSTANT(DECAL_TEXTURE_EMISSION);
|
||||
BIND_ENUM_CONSTANT(DECAL_TEXTURE_MAX);
|
||||
|
||||
BIND_ENUM_CONSTANT(DECAL_FILTER_NEAREST);
|
||||
BIND_ENUM_CONSTANT(DECAL_FILTER_NEAREST_MIPMAPS);
|
||||
BIND_ENUM_CONSTANT(DECAL_FILTER_LINEAR);
|
||||
BIND_ENUM_CONSTANT(DECAL_FILTER_LINEAR_MIPMAPS);
|
||||
BIND_ENUM_CONSTANT(DECAL_FILTER_LINEAR_MIPMAPS_ANISOTROPIC);
|
||||
|
||||
/* VOXEL GI API */
|
||||
|
||||
ClassDB::bind_method(D_METHOD("voxel_gi_create"), &RenderingServer::voxel_gi_create);
|
||||
@@ -2814,6 +2830,11 @@ RenderingServer::RenderingServer() {
|
||||
ProjectSettings::get_singleton()->set_custom_property_info("rendering/anti_aliasing/screen_space_roughness_limiter/amount", PropertyInfo(Variant::FLOAT, "rendering/anti_aliasing/screen_space_roughness_limiter/amount", PROPERTY_HINT_RANGE, "0.01,4.0,0.01"));
|
||||
ProjectSettings::get_singleton()->set_custom_property_info("rendering/anti_aliasing/screen_space_roughness_limiter/limit", PropertyInfo(Variant::FLOAT, "rendering/anti_aliasing/screen_space_roughness_limiter/limit", PROPERTY_HINT_RANGE, "0.01,1.0,0.01"));
|
||||
|
||||
GLOBAL_DEF("rendering/textures/decals/filter", DECAL_FILTER_LINEAR_MIPMAPS);
|
||||
ProjectSettings::get_singleton()->set_custom_property_info("rendering/textures/decals/filter", PropertyInfo(Variant::INT, "rendering/textures/decals/filter", PROPERTY_HINT_ENUM, "Nearest (Fast),Nearest+Mipmaps,Linear,Linear+Mipmaps,Linear+Mipmaps Anisotropic (Slow)"));
|
||||
GLOBAL_DEF("rendering/textures/light_projectors/filter", LIGHT_PROJECTOR_FILTER_LINEAR_MIPMAPS);
|
||||
ProjectSettings::get_singleton()->set_custom_property_info("rendering/textures/light_projectors/filter", PropertyInfo(Variant::INT, "rendering/textures/light_projectors/filter", PROPERTY_HINT_ENUM, "Nearest (Fast),Nearest+Mipmaps,Linear,Linear+Mipmaps,Linear+Mipmaps Anisotropic (Slow)"));
|
||||
|
||||
GLOBAL_DEF_RST("rendering/occlusion_culling/occlusion_rays_per_thread", 512);
|
||||
GLOBAL_DEF_RST("rendering/occlusion_culling/bvh_build_quality", 2);
|
||||
ProjectSettings::get_singleton()->set_custom_property_info("rendering/occlusion_culling/bvh_build_quality", PropertyInfo(Variant::INT, "rendering/occlusion_culling/bvh_build_quality", PROPERTY_HINT_ENUM, "Low,Medium,High"));
|
||||
|
||||
Reference in New Issue
Block a user