You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Merge pull request #101012 from zachseiss/master
Preserve emission ring shape properties during conversion from GPUParticles3D to CPUParticles3D and vice versa
This commit is contained in:
@@ -1417,6 +1417,11 @@ void CPUParticles3D::convert_from_particles(Node *p_particles) {
|
|||||||
set_emission_shape(EmissionShape(material->get_emission_shape()));
|
set_emission_shape(EmissionShape(material->get_emission_shape()));
|
||||||
set_emission_sphere_radius(material->get_emission_sphere_radius());
|
set_emission_sphere_radius(material->get_emission_sphere_radius());
|
||||||
set_emission_box_extents(material->get_emission_box_extents());
|
set_emission_box_extents(material->get_emission_box_extents());
|
||||||
|
set_emission_ring_height(material->get_emission_ring_height());
|
||||||
|
set_emission_ring_radius(material->get_emission_ring_radius());
|
||||||
|
set_emission_ring_inner_radius(material->get_emission_ring_inner_radius());
|
||||||
|
set_emission_ring_cone_angle(material->get_emission_ring_cone_angle());
|
||||||
|
|
||||||
Ref<CurveXYZTexture> scale3D = material->get_param_texture(ParticleProcessMaterial::PARAM_SCALE);
|
Ref<CurveXYZTexture> scale3D = material->get_param_texture(ParticleProcessMaterial::PARAM_SCALE);
|
||||||
if (scale3D.is_valid()) {
|
if (scale3D.is_valid()) {
|
||||||
split_scale = true;
|
split_scale = true;
|
||||||
|
|||||||
@@ -640,6 +640,10 @@ void GPUParticles3D::convert_from_particles(Node *p_particles) {
|
|||||||
proc_mat->set_emission_shape(ParticleProcessMaterial::EmissionShape(cpu_particles->get_emission_shape()));
|
proc_mat->set_emission_shape(ParticleProcessMaterial::EmissionShape(cpu_particles->get_emission_shape()));
|
||||||
proc_mat->set_emission_sphere_radius(cpu_particles->get_emission_sphere_radius());
|
proc_mat->set_emission_sphere_radius(cpu_particles->get_emission_sphere_radius());
|
||||||
proc_mat->set_emission_box_extents(cpu_particles->get_emission_box_extents());
|
proc_mat->set_emission_box_extents(cpu_particles->get_emission_box_extents());
|
||||||
|
proc_mat->set_emission_ring_height(cpu_particles->get_emission_ring_height());
|
||||||
|
proc_mat->set_emission_ring_radius(cpu_particles->get_emission_ring_radius());
|
||||||
|
proc_mat->set_emission_ring_inner_radius(cpu_particles->get_emission_ring_inner_radius());
|
||||||
|
proc_mat->set_emission_ring_cone_angle(cpu_particles->get_emission_ring_cone_angle());
|
||||||
|
|
||||||
if (cpu_particles->get_split_scale()) {
|
if (cpu_particles->get_split_scale()) {
|
||||||
Ref<CurveXYZTexture> scale3D = memnew(CurveXYZTexture);
|
Ref<CurveXYZTexture> scale3D = memnew(CurveXYZTexture);
|
||||||
|
|||||||
Reference in New Issue
Block a user