From 6e7a9ae71b7d1ebbc13511accc188debc94c0858 Mon Sep 17 00:00:00 2001 From: Relintai Date: Mon, 2 Aug 2021 23:27:24 +0200 Subject: [PATCH] Added a new virtual voxel_surface_id_get method to the material cache. --- library/terra_material_cache.cpp | 5 +++++ library/terra_material_cache.h | 1 + library/terra_material_cache_pcm.cpp | 3 +++ library/terra_material_cache_pcm.h | 1 + 4 files changed, 10 insertions(+) diff --git a/library/terra_material_cache.cpp b/library/terra_material_cache.cpp index 535b9fa..486e68a 100644 --- a/library/terra_material_cache.cpp +++ b/library/terra_material_cache.cpp @@ -85,6 +85,9 @@ void TerraMaterialCache::materials_set(const Vector &materials) { Ref TerraMaterialCache::voxel_surface_get(const int index) { return Ref(); } +Ref TerraMaterialCache::voxel_surface_id_get(const int id) { + return Ref(); +} void TerraMaterialCache::voxel_surface_add(Ref value) { } void TerraMaterialCache::voxel_surface_set(int index, Ref value) { @@ -130,6 +133,8 @@ void TerraMaterialCache::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "materials", PROPERTY_HINT_NONE, "17/17:Material", PROPERTY_USAGE_DEFAULT, "Material"), "materials_set", "materials_get"); ClassDB::bind_method(D_METHOD("voxel_surface_get", "index"), &TerraMaterialCache::voxel_surface_get); + ClassDB::bind_method(D_METHOD("voxel_surface_id_get", "index"), &TerraMaterialCache::voxel_surface_id_get); + ClassDB::bind_method(D_METHOD("voxel_surface_add", "value"), &TerraMaterialCache::voxel_surface_add); ClassDB::bind_method(D_METHOD("voxel_surface_set", "index", "surface"), &TerraMaterialCache::voxel_surface_set); ClassDB::bind_method(D_METHOD("voxel_surface_remove", "index"), &TerraMaterialCache::voxel_surface_remove); diff --git a/library/terra_material_cache.h b/library/terra_material_cache.h index 3c77eee..806ce67 100644 --- a/library/terra_material_cache.h +++ b/library/terra_material_cache.h @@ -60,6 +60,7 @@ public: void materials_set(const Vector &materials); virtual Ref voxel_surface_get(const int index); + virtual Ref voxel_surface_id_get(const int id); virtual void voxel_surface_add(Ref value); virtual void voxel_surface_set(const int index, Ref value); virtual void voxel_surface_remove(const int index); diff --git a/library/terra_material_cache_pcm.cpp b/library/terra_material_cache_pcm.cpp index 8245ef2..a532634 100644 --- a/library/terra_material_cache_pcm.cpp +++ b/library/terra_material_cache_pcm.cpp @@ -66,6 +66,9 @@ void TerraMaterialCachePCM::set_margin(const int margin) { Ref TerraMaterialCachePCM::voxel_surface_get(const int index) { return Ref(); } +Ref TerraMaterialCache::voxel_surface_id_get(const int id) { + return Ref(); +} void TerraMaterialCachePCM::voxel_surface_add(Ref value) { } void TerraMaterialCachePCM::voxel_surface_set(int index, Ref value) { diff --git a/library/terra_material_cache_pcm.h b/library/terra_material_cache_pcm.h index cef461b..9ce5bb8 100644 --- a/library/terra_material_cache_pcm.h +++ b/library/terra_material_cache_pcm.h @@ -65,6 +65,7 @@ public: void set_margin(const int margin); Ref voxel_surface_get(const int index); + Ref voxel_surface_id_get(const int id); void voxel_surface_add(Ref value); void voxel_surface_set(const int index, Ref value); void voxel_surface_remove(const int index);