summaryrefslogtreecommitdiff
path: root/modules/csg/doc_classes/CSGSphere3D.xml
blob: d2f985b3a2148ea573a9ce9cf63dc11af920df14 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?xml version="1.0" encoding="UTF-8" ?>
<class name="CSGSphere3D" inherits="CSGPrimitive3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
	<brief_description>
		A CSG Sphere shape.
	</brief_description>
	<description>
		This node allows you to create a sphere for use with the CSG system.
		[b]Note:[/b] CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a [MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay.
	</description>
	<tutorials>
		<link title="Prototyping levels with CSG">$DOCS_URL/tutorials/3d/csg_tools.html</link>
	</tutorials>
	<members>
		<member name="material" type="Material" setter="set_material" getter="get_material">
			The material used to render the sphere.
		</member>
		<member name="radial_segments" type="int" setter="set_radial_segments" getter="get_radial_segments" default="12">
			Number of vertical slices for the sphere.
		</member>
		<member name="radius" type="float" setter="set_radius" getter="get_radius" default="0.5">
			Radius of the sphere.
		</member>
		<member name="rings" type="int" setter="set_rings" getter="get_rings" default="6">
			Number of horizontal slices for the sphere.
		</member>
		<member name="smooth_faces" type="bool" setter="set_smooth_faces" getter="get_smooth_faces" default="true">
			If [code]true[/code] the normals of the sphere are set to give a smooth effect making the sphere seem rounded. If [code]false[/code] the sphere will have a flat shaded look.
		</member>
	</members>
</class>