Przeglądaj źródła

doc: Sync classref with current source

Rémi Verschelde 4 lat temu
rodzic
commit
d22791c271

+ 14 - 0
doc/classes/Callable.xml

@@ -47,6 +47,12 @@
 				Creates a new [Callable] for the method called [code]method_name[/code] in the specified [code]object[/code].
 			</description>
 		</method>
+		<method name="bind" qualifiers="vararg">
+			<return type="void">
+			</return>
+			<description>
+			</description>
+		</method>
 		<method name="call" qualifiers="vararg">
 			<return type="Variant">
 			</return>
@@ -106,6 +112,14 @@
 			<description>
 			</description>
 		</method>
+		<method name="unbind">
+			<return type="Callable">
+			</return>
+			<argument index="0" name="argcount" type="int">
+			</argument>
+			<description>
+			</description>
+		</method>
 	</methods>
 	<constants>
 	</constants>

+ 2 - 0
doc/classes/GPUParticles3D.xml

@@ -67,6 +67,8 @@
 		<member name="amount" type="int" setter="set_amount" getter="get_amount" default="8">
 			Number of particles to emit.
 		</member>
+		<member name="collision_base_size" type="float" setter="set_collision_base_size" getter="get_collision_base_size" default="0.01">
+		</member>
 		<member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" enum="GPUParticles3D.DrawOrder" default="0">
 			Particle draw order. Uses [enum DrawOrder] values.
 		</member>

+ 23 - 0
doc/classes/GPUParticlesAttractor3D.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesAttractor3D" inherits="VisualInstance3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="attenuation" type="float" setter="set_attenuation" getter="get_attenuation" default="1.0">
+		</member>
+		<member name="cull_mask" type="int" setter="set_cull_mask" getter="get_cull_mask" default="4294967295">
+		</member>
+		<member name="directionality" type="float" setter="set_directionality" getter="get_directionality" default="0.0">
+		</member>
+		<member name="strength" type="float" setter="set_strength" getter="get_strength" default="1.0">
+		</member>
+	</members>
+	<constants>
+	</constants>
+</class>

+ 17 - 0
doc/classes/GPUParticlesAttractorBox.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesAttractorBox" inherits="GPUParticlesAttractor3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="extents" type="Vector3" setter="set_extents" getter="get_extents" default="Vector3( 1, 1, 1 )">
+		</member>
+	</members>
+	<constants>
+	</constants>
+</class>

+ 17 - 0
doc/classes/GPUParticlesAttractorSphere.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesAttractorSphere" inherits="GPUParticlesAttractor3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="radius" type="float" setter="set_radius" getter="get_radius" default="1.0">
+		</member>
+	</members>
+	<constants>
+	</constants>
+</class>

+ 19 - 0
doc/classes/GPUParticlesAttractorVectorField.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesAttractorVectorField" inherits="GPUParticlesAttractor3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="extents" type="Vector3" setter="set_extents" getter="get_extents" default="Vector3( 1, 1, 1 )">
+		</member>
+		<member name="texture" type="Texture3D" setter="set_texture" getter="get_texture">
+		</member>
+	</members>
+	<constants>
+	</constants>
+</class>

+ 17 - 0
doc/classes/GPUParticlesCollision3D.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesCollision3D" inherits="VisualInstance3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="cull_mask" type="int" setter="set_cull_mask" getter="get_cull_mask" default="4294967295">
+		</member>
+	</members>
+	<constants>
+	</constants>
+</class>

+ 17 - 0
doc/classes/GPUParticlesCollisionBox.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesCollisionBox" inherits="GPUParticlesCollision3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="extents" type="Vector3" setter="set_extents" getter="get_extents" default="Vector3( 1, 1, 1 )">
+		</member>
+	</members>
+	<constants>
+	</constants>
+</class>

+ 43 - 0
doc/classes/GPUParticlesCollisionHeightField.xml

@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesCollisionHeightField" inherits="GPUParticlesCollision3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="extents" type="Vector3" setter="set_extents" getter="get_extents" default="Vector3( 1, 1, 1 )">
+		</member>
+		<member name="follow_camera_enabled" type="bool" setter="set_follow_camera_mode" getter="is_follow_camera_mode_enabled" default="false">
+		</member>
+		<member name="follow_camera_push_ratio" type="float" setter="set_follow_camera_push_ratio" getter="get_follow_camera_push_ratio" default="0.1">
+		</member>
+		<member name="resolution" type="int" setter="set_resolution" getter="get_resolution" enum="GPUParticlesCollisionHeightField.Resolution" default="2">
+		</member>
+		<member name="update_mode" type="int" setter="set_update_mode" getter="get_update_mode" enum="GPUParticlesCollisionHeightField.UpdateMode" default="0">
+		</member>
+	</members>
+	<constants>
+		<constant name="RESOLUTION_256" value="0" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_512" value="1" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_1024" value="2" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_2048" value="3" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_4096" value="4" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_8192" value="5" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_MAX" value="6" enum="Resolution">
+		</constant>
+		<constant name="UPDATE_MODE_WHEN_MOVED" value="0" enum="UpdateMode">
+		</constant>
+		<constant name="UPDATE_MODE_ALWAYS" value="1" enum="UpdateMode">
+		</constant>
+	</constants>
+</class>

+ 37 - 0
doc/classes/GPUParticlesCollisionSDF.xml

@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesCollisionSDF" inherits="GPUParticlesCollision3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="extents" type="Vector3" setter="set_extents" getter="get_extents" default="Vector3( 1, 1, 1 )">
+		</member>
+		<member name="resolution" type="int" setter="set_resolution" getter="get_resolution" enum="GPUParticlesCollisionSDF.Resolution" default="2">
+		</member>
+		<member name="texture" type="Texture3D" setter="set_texture" getter="get_texture">
+		</member>
+		<member name="thickness" type="float" setter="set_thickness" getter="get_thickness" default="1.0">
+		</member>
+	</members>
+	<constants>
+		<constant name="RESOLUTION_16" value="0" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_32" value="1" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_64" value="2" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_128" value="3" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_256" value="4" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_512" value="5" enum="Resolution">
+		</constant>
+		<constant name="RESOLUTION_MAX" value="6" enum="Resolution">
+		</constant>
+	</constants>
+</class>

+ 17 - 0
doc/classes/GPUParticlesCollisionSphere.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="GPUParticlesCollisionSphere" inherits="GPUParticlesCollision3D" version="4.0">
+	<brief_description>
+	</brief_description>
+	<description>
+	</description>
+	<tutorials>
+	</tutorials>
+	<methods>
+	</methods>
+	<members>
+		<member name="radius" type="float" setter="set_radius" getter="get_radius" default="1.0">
+		</member>
+	</members>
+	<constants>
+	</constants>
+</class>

+ 10 - 0
doc/classes/ParticlesMaterial.xml

@@ -131,6 +131,16 @@
 		<member name="anim_speed_random" type="float" setter="set_param_randomness" getter="get_param_randomness" default="0.0">
 			Animation speed randomness ratio.
 		</member>
+		<member name="attractor_interaction_enabled" type="bool" setter="set_attractor_interaction_enabled" getter="is_attractor_interaction_enabled" default="true">
+		</member>
+		<member name="collision_bounce" type="float" setter="set_collision_bounce" getter="get_collision_bounce" default="0.0">
+		</member>
+		<member name="collision_enabled" type="bool" setter="set_collision_enabled" getter="is_collision_enabled" default="true">
+		</member>
+		<member name="collision_friction" type="float" setter="set_collision_friction" getter="get_collision_friction" default="0.0">
+		</member>
+		<member name="collision_use_scale" type="bool" setter="set_collision_use_scale" getter="is_collision_using_scale" default="false">
+		</member>
 		<member name="color" type="Color" setter="set_color" getter="get_color" default="Color( 1, 1, 1, 1 )">
 			Each particle's initial color. If the [GPUParticles2D]'s [code]texture[/code] is defined, it will be multiplied by this color. To have particle display color in a [BaseMaterial3D] make sure to set [member BaseMaterial3D.vertex_color_use_as_albedo] to [code]true[/code].
 		</member>

+ 8 - 6
doc/classes/RenderingServer.xml

@@ -3579,22 +3579,24 @@
 		<constant name="INSTANCE_PARTICLES" value="4" enum="InstanceType">
 			The instance is a particle emitter.
 		</constant>
-		<constant name="INSTANCE_LIGHT" value="5" enum="InstanceType">
+		<constant name="INSTANCE_PARTICLES_COLLISION" value="5" enum="InstanceType">
+		</constant>
+		<constant name="INSTANCE_LIGHT" value="6" enum="InstanceType">
 			The instance is a light.
 		</constant>
-		<constant name="INSTANCE_REFLECTION_PROBE" value="6" enum="InstanceType">
+		<constant name="INSTANCE_REFLECTION_PROBE" value="7" enum="InstanceType">
 			The instance is a reflection probe.
 		</constant>
-		<constant name="INSTANCE_DECAL" value="7" enum="InstanceType">
+		<constant name="INSTANCE_DECAL" value="8" enum="InstanceType">
 			The instance is a decal.
 		</constant>
-		<constant name="INSTANCE_GI_PROBE" value="8" enum="InstanceType">
+		<constant name="INSTANCE_GI_PROBE" value="9" enum="InstanceType">
 			The instance is a GI probe.
 		</constant>
-		<constant name="INSTANCE_LIGHTMAP" value="9" enum="InstanceType">
+		<constant name="INSTANCE_LIGHTMAP" value="10" enum="InstanceType">
 			The instance is a lightmap.
 		</constant>
-		<constant name="INSTANCE_MAX" value="10" enum="InstanceType">
+		<constant name="INSTANCE_MAX" value="11" enum="InstanceType">
 			Represents the size of the [enum InstanceType] enum.
 		</constant>
 		<constant name="INSTANCE_GEOMETRY_MASK" value="30" enum="InstanceType">

+ 4 - 0
scene/3d/gpu_particles_collision_3d.cpp

@@ -29,6 +29,7 @@
 /*************************************************************************/
 
 #include "gpu_particles_collision_3d.h"
+
 #include "core/thread_work_pool.h"
 #include "mesh_instance_3d.h"
 #include "scene/3d/camera_3d.h"
@@ -663,6 +664,9 @@ void GPUParticlesCollisionHeightField::_bind_methods() {
 	BIND_ENUM_CONSTANT(RESOLUTION_4096);
 	BIND_ENUM_CONSTANT(RESOLUTION_8192);
 	BIND_ENUM_CONSTANT(RESOLUTION_MAX);
+
+	BIND_ENUM_CONSTANT(UPDATE_MODE_WHEN_MOVED);
+	BIND_ENUM_CONSTANT(UPDATE_MODE_ALWAYS);
 }
 
 void GPUParticlesCollisionHeightField::set_follow_camera_push_ratio(float p_follow_camera_push_ratio) {

+ 1 - 0
servers/rendering_server.cpp

@@ -2152,6 +2152,7 @@ void RenderingServer::_bind_methods() {
 	BIND_ENUM_CONSTANT(INSTANCE_MULTIMESH);
 	BIND_ENUM_CONSTANT(INSTANCE_IMMEDIATE);
 	BIND_ENUM_CONSTANT(INSTANCE_PARTICLES);
+	BIND_ENUM_CONSTANT(INSTANCE_PARTICLES_COLLISION);
 	BIND_ENUM_CONSTANT(INSTANCE_LIGHT);
 	BIND_ENUM_CONSTANT(INSTANCE_REFLECTION_PROBE);
 	BIND_ENUM_CONSTANT(INSTANCE_DECAL);