Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rename CubeMesh to BoxMesh #44091

Merged
merged 1 commit into from
Dec 5, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions doc/classes/CubeMesh.xml → doc/classes/BoxMesh.xml
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="CubeMesh" inherits="PrimitiveMesh" version="4.0">
<class name="BoxMesh" inherits="PrimitiveMesh" version="4.0">
<brief_description>
Generate an axis-aligned cuboid [PrimitiveMesh].
Generate an axis-aligned box [PrimitiveMesh].
</brief_description>
<description>
Generate an axis-aligned cuboid [PrimitiveMesh].
The cube's UV layout is arranged in a 3×2 layout that allows texturing each face individually. To apply the same texture on all faces, change the material's UV property to [code]Vector3(3, 2, 1)[/code].
Generate an axis-aligned box [PrimitiveMesh].
The box's UV layout is arranged in a 3×2 layout that allows texturing each face individually. To apply the same texture on all faces, change the material's UV property to [code]Vector3(3, 2, 1)[/code].
</description>
<tutorials>
</tutorials>
<methods>
</methods>
<members>
<member name="size" type="Vector3" setter="set_size" getter="get_size" default="Vector3( 2, 2, 2 )">
Size of the cuboid mesh.
Size of the box mesh.
</member>
<member name="subdivide_depth" type="int" setter="set_subdivide_depth" getter="get_subdivide_depth" default="0">
Number of extra edge loops inserted along the Z axis.
Expand Down
4 changes: 2 additions & 2 deletions doc/classes/MeshDataTool.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
[codeblocks]
[gdscript]
var mesh = ArrayMesh.new()
mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, CubeMesh.new().get_mesh_arrays())
mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, BoxMesh.new().get_mesh_arrays())
var mdt = MeshDataTool.new()
mdt.create_from_surface(mesh, 0)
for i in range(mdt.get_vertex_count()):
Expand All @@ -27,7 +27,7 @@
[/gdscript]
[csharp]
var mesh = new ArrayMesh();
mesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, new CubeMesh().GetMeshArrays());
mesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, new BoxMesh().GetMeshArrays());
var mdt = new MeshDataTool();
mdt.CreateFromSurface(mesh, 0);
for (var i = 0; i &lt; mdt.GetVertexCount(); i++)
Expand Down
2 changes: 1 addition & 1 deletion doc/classes/PrimitiveMesh.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
Base class for all primitive meshes. Handles applying a [Material] to a primitive mesh.
</brief_description>
<description>
Base class for all primitive meshes. Handles applying a [Material] to a primitive mesh. Examples include [CapsuleMesh], [CubeMesh], [CylinderMesh], [PlaneMesh], [PrismMesh], [QuadMesh], and [SphereMesh].
Base class for all primitive meshes. Handles applying a [Material] to a primitive mesh. Examples include [BoxMesh], [CapsuleMesh], [CylinderMesh], [PlaneMesh], [PrismMesh], [QuadMesh], and [SphereMesh].
</description>
<tutorials>
</tutorials>
Expand Down
2 changes: 1 addition & 1 deletion editor/code_editor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -873,7 +873,7 @@ Ref<Texture2D> CodeTextEditor::_get_completion_icon(const ScriptCodeCompletionOp
tex = get_theme_icon("MemberMethod", "EditorIcons");
break;
case ScriptCodeCompletionOption::KIND_PLAIN_TEXT:
tex = get_theme_icon("CubeMesh", "EditorIcons");
tex = get_theme_icon("BoxMesh", "EditorIcons");
break;
default:
tex = get_theme_icon("String", "EditorIcons");
Expand Down
File renamed without changes
8 changes: 4 additions & 4 deletions editor/node_3d_editor_gizmos.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -398,10 +398,10 @@ void EditorNode3DGizmo::add_handles(const Vector<Vector3> &p_handles, const Ref<
void EditorNode3DGizmo::add_solid_box(Ref<Material> &p_material, Vector3 p_size, Vector3 p_position) {
ERR_FAIL_COND(!spatial_node);

CubeMesh cubem;
cubem.set_size(p_size);
BoxMesh box_mesh;
box_mesh.set_size(p_size);

Array arrays = cubem.surface_get_arrays(0);
Array arrays = box_mesh.surface_get_arrays(0);
PackedVector3Array vertex = arrays[RS::ARRAY_VERTEX];
Vector3 *w = vertex.ptrw();

Expand All @@ -412,7 +412,7 @@ void EditorNode3DGizmo::add_solid_box(Ref<Material> &p_material, Vector3 p_size,
arrays[RS::ARRAY_VERTEX] = vertex;

Ref<ArrayMesh> m = memnew(ArrayMesh);
m->add_surface_from_arrays(cubem.surface_get_primitive_type(0), arrays);
m->add_surface_from_arrays(box_mesh.surface_get_primitive_type(0), arrays);
m->surface_set_material(0, p_material);
add_mesh(m);
}
Expand Down
2 changes: 1 addition & 1 deletion editor/plugins/material_editor_plugin.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ class MaterialEditor : public Control {
Camera3D *camera;

Ref<SphereMesh> sphere_mesh;
Ref<CubeMesh> box_mesh;
Ref<BoxMesh> box_mesh;

TextureButton *sphere_switch;
TextureButton *box_switch;
Expand Down
8 changes: 4 additions & 4 deletions modules/gdnavigation/navigation_mesh_generator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -176,10 +176,10 @@ void NavigationMeshGenerator::_parse_geometry(Transform p_accumulated_transform,

BoxShape3D *box = Object::cast_to<BoxShape3D>(*s);
if (box) {
Ref<CubeMesh> cube_mesh;
cube_mesh.instance();
cube_mesh->set_size(box->get_extents() * 2.0);
mesh = cube_mesh;
Ref<BoxMesh> box_mesh;
box_mesh.instance();
box_mesh->set_size(box->get_extents() * 2.0);
mesh = box_mesh;
}

CapsuleShape3D *capsule = Object::cast_to<CapsuleShape3D>(*s);
Expand Down
3 changes: 2 additions & 1 deletion scene/register_scene_types.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -670,8 +670,8 @@ void register_scene_types() {

#ifndef _3D_DISABLED
ClassDB::register_virtual_class<PrimitiveMesh>();
ClassDB::register_class<BoxMesh>();
ClassDB::register_class<CapsuleMesh>();
ClassDB::register_class<CubeMesh>();
ClassDB::register_class<CylinderMesh>();
ClassDB::register_class<PlaneMesh>();
ClassDB::register_class<PrismMesh>();
Expand Down Expand Up @@ -835,6 +835,7 @@ void register_scene_types() {
ClassDB::add_compatibility_class("CSGShape", "CSGShape3D");
ClassDB::add_compatibility_class("CSGSphere", "CSGSphere3D");
ClassDB::add_compatibility_class("CSGTorus", "CSGTorus3D");
ClassDB::add_compatibility_class("CubeMesh", "BoxMesh");
ClassDB::add_compatibility_class("CylinderShape", "CylinderShape3D");
ClassDB::add_compatibility_class("DirectionalLight", "DirectionalLight3D");
ClassDB::add_compatibility_class("EditorSpatialGizmo", "EditorNode3DGizmo");
Expand Down
40 changes: 20 additions & 20 deletions scene/resources/primitive_meshes.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -477,10 +477,10 @@ CapsuleMesh::CapsuleMesh() {
}

/**
CubeMesh
BoxMesh
*/

void CubeMesh::_create_mesh_array(Array &p_arr) const {
void BoxMesh::_create_mesh_array(Array &p_arr) const {
int i, j, prevrow, thisrow, point;
float x, y, z;
float onethird = 1.0 / 3.0;
Expand Down Expand Up @@ -672,60 +672,60 @@ void CubeMesh::_create_mesh_array(Array &p_arr) const {
p_arr[RS::ARRAY_INDEX] = indices;
}

void CubeMesh::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_size", "size"), &CubeMesh::set_size);
ClassDB::bind_method(D_METHOD("get_size"), &CubeMesh::get_size);
void BoxMesh::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_size", "size"), &BoxMesh::set_size);
ClassDB::bind_method(D_METHOD("get_size"), &BoxMesh::get_size);

ClassDB::bind_method(D_METHOD("set_subdivide_width", "subdivide"), &CubeMesh::set_subdivide_width);
ClassDB::bind_method(D_METHOD("get_subdivide_width"), &CubeMesh::get_subdivide_width);
ClassDB::bind_method(D_METHOD("set_subdivide_height", "divisions"), &CubeMesh::set_subdivide_height);
ClassDB::bind_method(D_METHOD("get_subdivide_height"), &CubeMesh::get_subdivide_height);
ClassDB::bind_method(D_METHOD("set_subdivide_depth", "divisions"), &CubeMesh::set_subdivide_depth);
ClassDB::bind_method(D_METHOD("get_subdivide_depth"), &CubeMesh::get_subdivide_depth);
ClassDB::bind_method(D_METHOD("set_subdivide_width", "subdivide"), &BoxMesh::set_subdivide_width);
ClassDB::bind_method(D_METHOD("get_subdivide_width"), &BoxMesh::get_subdivide_width);
ClassDB::bind_method(D_METHOD("set_subdivide_height", "divisions"), &BoxMesh::set_subdivide_height);
ClassDB::bind_method(D_METHOD("get_subdivide_height"), &BoxMesh::get_subdivide_height);
ClassDB::bind_method(D_METHOD("set_subdivide_depth", "divisions"), &BoxMesh::set_subdivide_depth);
ClassDB::bind_method(D_METHOD("get_subdivide_depth"), &BoxMesh::get_subdivide_depth);

ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "size"), "set_size", "get_size");
ADD_PROPERTY(PropertyInfo(Variant::INT, "subdivide_width", PROPERTY_HINT_RANGE, "0,100,1,or_greater"), "set_subdivide_width", "get_subdivide_width");
ADD_PROPERTY(PropertyInfo(Variant::INT, "subdivide_height", PROPERTY_HINT_RANGE, "0,100,1,or_greater"), "set_subdivide_height", "get_subdivide_height");
ADD_PROPERTY(PropertyInfo(Variant::INT, "subdivide_depth", PROPERTY_HINT_RANGE, "0,100,1,or_greater"), "set_subdivide_depth", "get_subdivide_depth");
}

void CubeMesh::set_size(const Vector3 &p_size) {
void BoxMesh::set_size(const Vector3 &p_size) {
size = p_size;
_request_update();
}

Vector3 CubeMesh::get_size() const {
Vector3 BoxMesh::get_size() const {
return size;
}

void CubeMesh::set_subdivide_width(const int p_divisions) {
void BoxMesh::set_subdivide_width(const int p_divisions) {
subdivide_w = p_divisions > 0 ? p_divisions : 0;
_request_update();
}

int CubeMesh::get_subdivide_width() const {
int BoxMesh::get_subdivide_width() const {
return subdivide_w;
}

void CubeMesh::set_subdivide_height(const int p_divisions) {
void BoxMesh::set_subdivide_height(const int p_divisions) {
subdivide_h = p_divisions > 0 ? p_divisions : 0;
_request_update();
}

int CubeMesh::get_subdivide_height() const {
int BoxMesh::get_subdivide_height() const {
return subdivide_h;
}

void CubeMesh::set_subdivide_depth(const int p_divisions) {
void BoxMesh::set_subdivide_depth(const int p_divisions) {
subdivide_d = p_divisions > 0 ? p_divisions : 0;
_request_update();
}

int CubeMesh::get_subdivide_depth() const {
int BoxMesh::get_subdivide_depth() const {
return subdivide_d;
}

CubeMesh::CubeMesh() {
BoxMesh::BoxMesh() {
// defaults
size = Vector3(2.0, 2.0, 2.0);
subdivide_w = 0;
Expand Down
8 changes: 4 additions & 4 deletions scene/resources/primitive_meshes.h
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,10 @@ class CapsuleMesh : public PrimitiveMesh {
};

/**
Similar to test cube but with subdivision support and different texture coordinates
A box
*/
class CubeMesh : public PrimitiveMesh {
GDCLASS(CubeMesh, PrimitiveMesh);
class BoxMesh : public PrimitiveMesh {
GDCLASS(BoxMesh, PrimitiveMesh);

private:
Vector3 size;
Expand All @@ -158,7 +158,7 @@ class CubeMesh : public PrimitiveMesh {
void set_subdivide_depth(const int p_divisions);
int get_subdivide_depth() const;

CubeMesh();
BoxMesh();
};

/**
Expand Down