class_csgbox.rst 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. :github_url: hide
  2. .. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
  3. .. DO NOT EDIT THIS FILE, but the CSGBox.xml source instead.
  4. .. The source is found in doc/classes or modules/<name>/doc_classes.
  5. .. _class_CSGBox:
  6. CSGBox
  7. ======
  8. **Inherits:** :ref:`CSGPrimitive<class_CSGPrimitive>` **<** :ref:`CSGShape<class_CSGShape>` **<** :ref:`GeometryInstance<class_GeometryInstance>` **<** :ref:`VisualInstance<class_VisualInstance>` **<** :ref:`CullInstance<class_CullInstance>` **<** :ref:`Spatial<class_Spatial>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  9. A CSG Box shape.
  10. Description
  11. -----------
  12. This node allows you to create a box for use with the CSG system.
  13. **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance<class_MeshInstance>` with a :ref:`PrimitiveMesh<class_PrimitiveMesh>`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay.
  14. Tutorials
  15. ---------
  16. - `Prototyping levels with CSG <$DOCS_URL/tutorials/3d/csg_tools.html>`__
  17. Properties
  18. ----------
  19. +---------------------------------+-------------------------------------------------+---------+
  20. | :ref:`float<class_float>` | :ref:`depth<class_CSGBox_property_depth>` | ``2.0`` |
  21. +---------------------------------+-------------------------------------------------+---------+
  22. | :ref:`float<class_float>` | :ref:`height<class_CSGBox_property_height>` | ``2.0`` |
  23. +---------------------------------+-------------------------------------------------+---------+
  24. | :ref:`Material<class_Material>` | :ref:`material<class_CSGBox_property_material>` | |
  25. +---------------------------------+-------------------------------------------------+---------+
  26. | :ref:`float<class_float>` | :ref:`width<class_CSGBox_property_width>` | ``2.0`` |
  27. +---------------------------------+-------------------------------------------------+---------+
  28. Property Descriptions
  29. ---------------------
  30. .. _class_CSGBox_property_depth:
  31. - :ref:`float<class_float>` **depth**
  32. +-----------+------------------+
  33. | *Default* | ``2.0`` |
  34. +-----------+------------------+
  35. | *Setter* | set_depth(value) |
  36. +-----------+------------------+
  37. | *Getter* | get_depth() |
  38. +-----------+------------------+
  39. Depth of the box measured from the center of the box.
  40. ----
  41. .. _class_CSGBox_property_height:
  42. - :ref:`float<class_float>` **height**
  43. +-----------+-------------------+
  44. | *Default* | ``2.0`` |
  45. +-----------+-------------------+
  46. | *Setter* | set_height(value) |
  47. +-----------+-------------------+
  48. | *Getter* | get_height() |
  49. +-----------+-------------------+
  50. Height of the box measured from the center of the box.
  51. ----
  52. .. _class_CSGBox_property_material:
  53. - :ref:`Material<class_Material>` **material**
  54. +----------+---------------------+
  55. | *Setter* | set_material(value) |
  56. +----------+---------------------+
  57. | *Getter* | get_material() |
  58. +----------+---------------------+
  59. The material used to render the box.
  60. ----
  61. .. _class_CSGBox_property_width:
  62. - :ref:`float<class_float>` **width**
  63. +-----------+------------------+
  64. | *Default* | ``2.0`` |
  65. +-----------+------------------+
  66. | *Setter* | set_width(value) |
  67. +-----------+------------------+
  68. | *Getter* | get_width() |
  69. +-----------+------------------+
  70. Width of the box measured from the center of the box.
  71. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  72. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  73. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`