Merge pull request #25520 from Zylann/expose_node_custom_aabb

Exposed custom AABB setter on GeometryInstance
This commit is contained in:
Rémi Verschelde 2019-05-29 17:18:17 +02:00 committed by GitHub
commit e9ca1a1299
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 0 deletions

View File

@ -9,6 +9,15 @@
<tutorials>
</tutorials>
<methods>
<method name="set_custom_aabb">
<return type="void">
</return>
<argument index="0" name="aabb" type="AABB">
</argument>
<description>
Overrides the bounding box of this node with a custom one. To remove it, set an AABB with all fields set to zero.
</description>
</method>
</methods>
<members>
<member name="cast_shadow" type="int" setter="set_cast_shadows_setting" getter="get_cast_shadows_setting" enum="GeometryInstance.ShadowCastingSetting">

View File

@ -271,6 +271,11 @@ float GeometryInstance::get_extra_cull_margin() const {
return extra_cull_margin;
}
void GeometryInstance::set_custom_aabb(AABB aabb) {
VS::get_singleton()->instance_set_custom_aabb(get_instance(), aabb);
}
void GeometryInstance::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_material_override", "material"), &GeometryInstance::set_material_override);
@ -297,6 +302,8 @@ void GeometryInstance::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_extra_cull_margin", "margin"), &GeometryInstance::set_extra_cull_margin);
ClassDB::bind_method(D_METHOD("get_extra_cull_margin"), &GeometryInstance::get_extra_cull_margin);
ClassDB::bind_method(D_METHOD("set_custom_aabb", "aabb"), &GeometryInstance::set_custom_aabb);
ClassDB::bind_method(D_METHOD("get_aabb"), &GeometryInstance::get_aabb);
ADD_GROUP("Geometry", "");

View File

@ -139,6 +139,8 @@ public:
void set_extra_cull_margin(float p_margin);
float get_extra_cull_margin() const;
void set_custom_aabb(AABB aabb);
GeometryInstance();
};