Skip to content

Commit

Permalink
Renamed PlaneShape to WorldMarginShape
Browse files Browse the repository at this point in the history
  • Loading branch information
AndreaCatania committed Feb 27, 2020
1 parent 3b64ecb commit 2e0fb66
Show file tree
Hide file tree
Showing 12 changed files with 37 additions and 41 deletions.
2 changes: 1 addition & 1 deletion doc/classes/PhysicsServer.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1467,7 +1467,7 @@
If [code]set[/code] there is a linear motor on this axis that targets a specific velocity.
</constant>
<constant name="SHAPE_PLANE" value="0" enum="ShapeType">
The [Shape] is a [PlaneShape].
The [Shape] is a [WorldMarginShape].
</constant>
<constant name="SHAPE_RAY" value="1" enum="ShapeType">
The [Shape] is a [RayShape].
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="PlaneShape" inherits="Shape" version="4.0">
<class name="WorldMarginShape" inherits="Shape" version="4.0">
<brief_description>
Infinite plane shape for 3D collisions.
</brief_description>
<description>
An infinite plane shape for 3D collisions. Note that the [Plane]'s normal matters; anything "below" the plane will collide with it. If the [PlaneShape] is used in a [PhysicsBody], it will cause colliding objects placed "below" it to teleport "above" the plane.
An infinite plane shape for 3D collisions. Note that the [Plane]'s normal matters; anything "below" the plane will collide with it. If the [WorldMarginShape] is used in a [PhysicsBody], it will cause colliding objects placed "below" it to teleport "above" the plane.
</description>
<tutorials>
</tutorials>
<methods>
</methods>
<members>
<member name="plane" type="Plane" setter="set_plane" getter="get_plane" default="Plane( 0, 1, 0, 0 )">
The [Plane] used by the [PlaneShape] for collision.
The [Plane] used by the [WorldMarginShape] for collision.
</member>
</members>
<constants>
Expand Down
1 change: 0 additions & 1 deletion editor/icons/PlaneMesh.svg

This file was deleted.

1 change: 1 addition & 0 deletions editor/icons/WorldMarginShape.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 4 additions & 4 deletions editor/import/resource_importer_scene.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,10 @@
#include "scene/resources/animation.h"
#include "scene/resources/box_shape.h"
#include "scene/resources/packed_scene.h"
#include "scene/resources/plane_shape.h"
#include "scene/resources/ray_shape.h"
#include "scene/resources/resource_format_text.h"
#include "scene/resources/sphere_shape.h"
#include "scene/resources/world_margin_shape.h"

uint32_t EditorSceneImporter::get_import_flags() const {

Expand Down Expand Up @@ -446,9 +446,9 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh>
colshape->set_name("RayShape");
Object::cast_to<Spatial>(sb)->rotate_x(Math_PI / 2);
} else if (empty_draw_type == "IMAGE") {
PlaneShape *planeShape = memnew(PlaneShape);
colshape->set_shape(planeShape);
colshape->set_name("PlaneShape");
WorldMarginShape *world_margin_shape = memnew(WorldMarginShape);
colshape->set_shape(world_margin_shape);
colshape->set_name("WorldMarginShape");
} else {
SphereShape *sphereShape = memnew(SphereShape);
sphereShape->set_radius(1);
Expand Down
6 changes: 3 additions & 3 deletions editor/spatial_editor_gizmos.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,11 @@
#include "scene/resources/convex_polygon_shape.h"
#include "scene/resources/cylinder_shape.h"
#include "scene/resources/height_map_shape.h"
#include "scene/resources/plane_shape.h"
#include "scene/resources/primitive_meshes.h"
#include "scene/resources/ray_shape.h"
#include "scene/resources/sphere_shape.h"
#include "scene/resources/surface_tool.h"
#include "scene/resources/world_margin_shape.h"

#define HANDLE_HALF_SIZE 9.5

Expand Down Expand Up @@ -3575,9 +3575,9 @@ void CollisionShapeSpatialGizmoPlugin::redraw(EditorSpatialGizmo *p_gizmo) {
p_gizmo->add_handles(handles, handles_material);
}

if (Object::cast_to<PlaneShape>(*s)) {
if (Object::cast_to<WorldMarginShape>(*s)) {

Ref<PlaneShape> ps = s;
Ref<WorldMarginShape> ps = s;
Plane p = ps->get_plane();
Vector<Vector3> points;

Expand Down
6 changes: 3 additions & 3 deletions main/tests/test_physics.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -110,13 +110,13 @@ class TestPhysicsMainLoop : public MainLoop {

PhysicsServer *ps = PhysicsServer::get_singleton();

RID plane_shape = ps->shape_create(PhysicsServer::SHAPE_PLANE);
ps->shape_set_data(plane_shape, p_plane);
RID world_margin_shape = ps->shape_create(PhysicsServer::SHAPE_PLANE);
ps->shape_set_data(world_margin_shape, p_plane);

RID b = ps->body_create(PhysicsServer::BODY_MODE_STATIC);
ps->body_set_space(b, space);
//todo set space
ps->body_add_shape(b, plane_shape);
ps->body_add_shape(b, world_margin_shape);
return b;
}

Expand Down
2 changes: 1 addition & 1 deletion modules/gdnavigation/navigation_mesh_generator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@
#include "scene/resources/concave_polygon_shape.h"
#include "scene/resources/convex_polygon_shape.h"
#include "scene/resources/cylinder_shape.h"
#include "scene/resources/plane_shape.h"
#include "scene/resources/primitive_meshes.h"
#include "scene/resources/shape.h"
#include "scene/resources/sphere_shape.h"
#include "scene/resources/world_margin_shape.h"

#include "modules/modules_enabled.gen.h"
#ifdef TOOLS_ENABLED
Expand Down
6 changes: 1 addition & 5 deletions scene/3d/collision_shape.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@
#include "scene/resources/capsule_shape.h"
#include "scene/resources/concave_polygon_shape.h"
#include "scene/resources/convex_polygon_shape.h"
#include "scene/resources/plane_shape.h"
#include "scene/resources/ray_shape.h"
#include "scene/resources/sphere_shape.h"
#include "scene/resources/world_margin_shape.h"
#include "servers/visual_server.h"
//TODO: Implement CylinderShape and HeightMapShape?
#include "core/math/quick_hull.h"
Expand Down Expand Up @@ -123,10 +123,6 @@ String CollisionShape::get_configuration_warning() const {
return TTR("A shape must be provided for CollisionShape to function. Please create a shape resource for it.");
}

if (shape->is_class("PlaneShape")) {
return TTR("Plane shapes don't work well and will be removed in future versions. Please don't use them.");
}

return String();
}

Expand Down
6 changes: 3 additions & 3 deletions scene/register_scene_types.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,6 @@
#include "scene/resources/packed_scene.h"
#include "scene/resources/particles_material.h"
#include "scene/resources/physics_material.h"
#include "scene/resources/plane_shape.h"
#include "scene/resources/polygon_path_finder.h"
#include "scene/resources/primitive_meshes.h"
#include "scene/resources/ray_shape.h"
Expand All @@ -169,6 +168,7 @@
#include "scene/resources/visual_shader_nodes.h"
#include "scene/resources/world.h"
#include "scene/resources/world_2d.h"
#include "scene/resources/world_margin_shape.h"
#include "scene/scene_string_names.h"

#ifndef _3D_DISABLED
Expand All @@ -190,8 +190,8 @@
#include "scene/3d/multimesh_instance.h"
#include "scene/3d/navigation.h"
#include "scene/3d/navigation_agent.h"
#include "scene/3d/navigation_region.h"
#include "scene/3d/navigation_obstacle.h"
#include "scene/3d/navigation_region.h"
#include "scene/3d/particles.h"
#include "scene/3d/path.h"
#include "scene/3d/physics_body.h"
Expand Down Expand Up @@ -643,7 +643,7 @@ void register_scene_types() {
ClassDB::register_class<CapsuleShape>();
ClassDB::register_class<CylinderShape>();
ClassDB::register_class<HeightMapShape>();
ClassDB::register_class<PlaneShape>();
ClassDB::register_class<WorldMarginShape>();
ClassDB::register_class<ConvexPolygonShape>();
ClassDB::register_class<ConcavePolygonShape>();

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*************************************************************************/
/* plane_shape.cpp */
/* world_margin_shape.cpp */
/*************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
Expand Down Expand Up @@ -28,11 +28,11 @@
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/*************************************************************************/

#include "plane_shape.h"
#include "world_margin_shape.h"

#include "servers/physics_server.h"

Vector<Vector3> PlaneShape::get_debug_mesh_lines() {
Vector<Vector3> WorldMarginShape::get_debug_mesh_lines() {

Plane p = get_plane();
Vector<Vector3> points;
Expand Down Expand Up @@ -61,34 +61,34 @@ Vector<Vector3> PlaneShape::get_debug_mesh_lines() {
return points;
}

void PlaneShape::_update_shape() {
void WorldMarginShape::_update_shape() {

PhysicsServer::get_singleton()->shape_set_data(get_shape(), plane);
Shape::_update_shape();
}

void PlaneShape::set_plane(Plane p_plane) {
void WorldMarginShape::set_plane(Plane p_plane) {

plane = p_plane;
_update_shape();
notify_change_to_owners();
_change_notify("plane");
}

Plane PlaneShape::get_plane() const {
Plane WorldMarginShape::get_plane() const {

return plane;
}

void PlaneShape::_bind_methods() {
void WorldMarginShape::_bind_methods() {

ClassDB::bind_method(D_METHOD("set_plane", "plane"), &PlaneShape::set_plane);
ClassDB::bind_method(D_METHOD("get_plane"), &PlaneShape::get_plane);
ClassDB::bind_method(D_METHOD("set_plane", "plane"), &WorldMarginShape::set_plane);
ClassDB::bind_method(D_METHOD("get_plane"), &WorldMarginShape::get_plane);

ADD_PROPERTY(PropertyInfo(Variant::PLANE, "plane"), "set_plane", "get_plane");
}

PlaneShape::PlaneShape() :
WorldMarginShape::WorldMarginShape() :
Shape(PhysicsServer::get_singleton()->shape_create(PhysicsServer::SHAPE_PLANE)) {

set_plane(Plane(0, 1, 0, 0));
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*************************************************************************/
/* plane_shape.h */
/* world_margin_shape.h */
/*************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
Expand Down Expand Up @@ -28,14 +28,14 @@
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/*************************************************************************/

#ifndef PLANE_SHAPE_H
#define PLANE_SHAPE_H
#ifndef world_margin_shape_H
#define world_margin_shape_H

#include "scene/resources/shape.h"

class PlaneShape : public Shape {
class WorldMarginShape : public Shape {

GDCLASS(PlaneShape, Shape);
GDCLASS(WorldMarginShape, Shape);
Plane plane;

protected:
Expand All @@ -52,6 +52,6 @@ class PlaneShape : public Shape {
return 0;
}

PlaneShape();
WorldMarginShape();
};
#endif // PLANE_SHAPE_H
#endif // world_margin_shape_H

0 comments on commit 2e0fb66

Please sign in to comment.