Răsfoiți Sursa

Big particle preview and scaling preview with LMB + LShift

Ivan K 10 ani în urmă
părinte
comite
0532ea5c6f

+ 21 - 14
bin/Data/Scripts/Editor/EditorParticleEffect.as

@@ -26,8 +26,9 @@ void CreateParticleEffectEditor()
     InitParticleEffectBasicAttributes();
     RefreshParticleEffectEditor();
 
-    int height = Min(ui.root.height - 60, 500);
-    particleEffectWindow.SetSize(300, height);
+    int width = Min(ui.root.width - 60, 800);
+    int height = Min(ui.root.height - 60, 600);
+    particleEffectWindow.SetSize(width, height);
     CenterDialog(particleEffectWindow);
 
     HideParticleEffectEditor();
@@ -797,13 +798,13 @@ void InitParticleEffectPreview()
     zone.ambientColor = Color(0.15, 0.15, 0.15);
     zone.fogColor = Color(0, 0, 0);
     zone.fogStart = 10.0;
-    zone.fogEnd = 100.0;
+    zone.fogEnd = 1000.0;
 
     particlePreviewCameraNode = particlePreviewScene.CreateChild("PreviewCamera");
-    particlePreviewCameraNode.position = Vector3(0, 0, -2.5);
+    particlePreviewCameraNode.position = Vector3(0, 0, -5);
     Camera@ camera = particlePreviewCameraNode.CreateComponent("Camera");
     camera.nearClip = 0.1f;
-    camera.farClip = 100.0f;
+    camera.farClip = 1000.0f;
 
     particlePreviewLightNode = particlePreviewScene.CreateChild("particlePreviewLight");
     particlePreviewLightNode.direction = Vector3(0.5, -0.5, 0.5);
@@ -825,10 +826,9 @@ void InitParticleEffectPreview()
     particleEffectEmitter.effect = editParticleEffect;
 
     particleEffectPreview = particleEffectWindow.GetChild("ParticleEffectPreview", true);
-    particleEffectPreview.SetFixedHeight(100);
     particleEffectPreview.SetView(particlePreviewScene, camera);
 
-    SubscribeToEvent(particleEffectPreview, "DragMove", "RotateParticleEffectPreview");
+    SubscribeToEvent(particleEffectPreview, "DragMove", "NavigateParticleEffectPreview");
 }
 
 ParticleEffect@ CreateNewParticleEffect()
@@ -1312,17 +1312,24 @@ void RefreshParticleEffectMaterial()
     SubscribeToEvent(pickButton, "Released", "PickEditParticleEffectMaterial");
 }
 
-void RotateParticleEffectPreview(StringHash eventType, VariantMap& eventData)
+void NavigateParticleEffectPreview(StringHash eventType, VariantMap& eventData)
 {
-    int elemX = eventData["ElementX"].GetInt();
-    int elemY = eventData["ElementY"].GetInt();
+    int dx = eventData["DX"].GetInt();
+    int dy = eventData["DY"].GetInt();
     
     if (particleEffectPreview.height > 0 && particleEffectPreview.width > 0)
     {
-        float yaw = ((particleEffectPreview.height / 2) - elemY) * (90.0 / particleEffectPreview.height);
-        float pitch = ((particleEffectPreview.width / 2) - elemX) * (90.0 / particleEffectPreview.width);
-
-        particleEffectPreviewNode.rotation = particleEffectPreviewNode.rotation.Slerp(Quaternion(yaw, pitch, 0), 0.1);
+        if (!input.keyDown[KEY_LSHIFT])
+        {
+            float yaw = dy * 20 * time.timeStep;
+            float pitch = dx * 20 * time.timeStep;
+            particleEffectPreviewNode.Rotate(Quaternion(yaw, pitch, 0));
+        }
+        else
+        {
+            particleEffectPreviewNode.Translate(Vector3(0, 0, 1) * dx * 1.5 * time.timeStep);
+            particleEffectPreviewNode.Translate(Vector3(0, 0, 1) * dy * 1.5 * time.timeStep);
+        }
         particleEffectPreview.QueueUpdate();
     }
 }

+ 636 - 636
bin/Data/UI/EditorParticleEffectWindow.xml

@@ -18,698 +18,698 @@
         </element>
     </element>
     <element type="BorderImage" style="EditorDivider" />
-    <element type="View3D">
-        <attribute name="Name" value="ParticleEffectPreview" />
-        <attribute name="Texture" value="Texture2D;" />
-        <attribute name="Use Derived Opacity" value="false" />
-        <attribute name="Is Resizable" value="true" />
-        <attribute name="Fixed Height Resizing" value="true" />
-        <attribute name="Resize Border" value="0 6 0 6" />
-    </element>
-    <element type="BorderImage" style="EditorDivider" />
     <element>
-        <attribute name="Min Size" value="0 16" />
-        <attribute name="Max Size" value="2147483647 16" />
         <attribute name="Layout Mode" value="Horizontal" />
-        <attribute name="Name" value="NameContainer" />
-    </element>
-    <element type="BorderImage" style="EditorDivider" />
-    <element type="ListView" style="PanelView">
-        <attribute name="Min Size" value="0 60" />
-        <element type="BorderImage" internal="true">
-            <element internal="true">
-                <element style="Panel">
-                    <element type="Text">
-                        <attribute name="Text" value="Initial" />
-                    </element>
-                </element>
-                 <!-- Initial Attributes -->
-                <element>
-                    <!-- Constant Force -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Constant Force" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ConstantForceX" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ConstantForceY" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ConstantForceZ" />
-                        </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Direction Min -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Direction (min)" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="DirectionMinX" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="DirectionMinY" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="DirectionMinZ" />
-                        </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Direction Max -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Direction (max)" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="DirectionMaxX" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="DirectionMaxY" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="DirectionMaxZ" />
+        <element type="View3D">
+            <attribute name="Name" value="ParticleEffectPreview" />
+            <attribute name="Use Derived Opacity" value="false" />
+        </element>
+        <element>
+            <attribute name="Layout Mode" value="Vertical" />
+            <element>
+                <attribute name="Min Size" value="0 16" />
+                <attribute name="Max Size" value="2147483647 16" />
+                <attribute name="Layout Mode" value="Horizontal" />
+                <attribute name="Name" value="NameContainer" />
+            </element>
+            <element type="BorderImage" style="EditorDivider" />
+            <element type="ListView" style="PanelView">
+                <attribute name="Min Size" value="0 60" />
+                <element type="BorderImage" internal="true">
+                    <element internal="true">
+                        <element style="Panel">
+                            <element type="Text">
+                                <attribute name="Text" value="Initial" />
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Damping Force -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Damping Force" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="DampingForce" />
+                        <!-- Initial Attributes -->
+                        <element>
+                            <!-- Constant Force -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Constant Force" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ConstantForceX" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ConstantForceY" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ConstantForceZ" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Active Time -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Active Time" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ActiveTime" />
+                        <element>
+                            <!-- Direction Min -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Direction (min)" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="DirectionMinX" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="DirectionMinY" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="DirectionMinZ" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Inactive Time -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Inactive Time" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="InactiveTime" />
+                        <element>
+                            <!-- Direction Max -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Direction (max)" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="DirectionMaxX" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="DirectionMaxY" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="DirectionMaxZ" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Min Particle Size -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Particle Size (min)" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ParticleSizeMinX" />
+                        <element>
+                            <!-- Damping Force -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Damping Force" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="DampingForce" />
+                                </element>
+                            </element>
                         </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ParticleSizeMinY" />
+                        <element>
+                            <!-- Active Time -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Active Time" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ActiveTime" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Max Particle Size -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Particle Size (max)" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ParticleSizeMaxX" />
+                        <element>
+                            <!-- Inactive Time -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Inactive Time" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="InactiveTime" />
+                                </element>
+                            </element>
                         </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="ParticleSizeMaxY" />
+                        <element>
+                            <!-- Min Particle Size -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Particle Size (min)" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ParticleSizeMinX" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ParticleSizeMinY" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Time To Live -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Time To Live" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="TimeToLiveMin" />
+                        <element>
+                            <!-- Max Particle Size -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Particle Size (max)" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ParticleSizeMaxX" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="ParticleSizeMaxY" />
+                                </element>
+                            </element>
                         </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="TimeToLiveMax" />
+                        <element>
+                            <!-- Time To Live -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Time To Live" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="TimeToLiveMin" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="TimeToLiveMax" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Velocity -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Velocity" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="VelocityMin" />
+                        <element>
+                            <!-- Velocity -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Velocity" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="VelocityMin" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="VelocityMax" />
+                                </element>
+                            </element>
                         </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="VelocityMax" />
+                        <element>
+                            <!-- Rotation -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Rotation" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="RotationMin" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="RotationMax" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Rotation -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Rotation" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="RotationMin" />
+                        <element>
+                            <!-- Rotation Speed -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Rotation Speed" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="RotationSpeedMin" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="RotationSpeedMax" />
+                                </element>
+                            </element>
                         </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="RotationMax" />
+                        <!-- End of Initial Attributes -->
+                        <element type="BorderImage" style="EditorDivider" />
+                        <element style="Panel">
+                            <element type="Text">
+                                <attribute name="Text" value="Variation" />
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Rotation Speed -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Rotation Speed" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="RotationSpeedMin" />
+                        <!-- Variation Attributes -->
+                        <element>
+                            <!-- Size Addition -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Size (add)" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="SizeAdd" />
+                                </element>
+                            </element>
                         </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="RotationSpeedMax" />
+                        <element>
+                            <!-- Size Multiplication -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Size (multiply)" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="SizeMultiply" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                    <!-- End of Initial Attributes -->
-                <element type="BorderImage" style="EditorDivider" />
-                <element style="Panel">
-                    <element type="Text">
-                        <attribute name="Text" value="Variation" />
-                    </element>
-                </element>
-             <!-- Variation Attributes -->
-                <element>
-                    <!-- Size Addition -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Size (add)" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="SizeAdd" />
+                        <element>
+                            <!-- Animation LOD bias -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Animation LOD bias" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="AnimationLodBias" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Size Multiplication -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Size (multiply)" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="SizeMultiply" />
+                        <!-- End of Variation Attributes -->
+                        <element type="BorderImage" style="EditorDivider" />
+                        <element>
+                            <!-- Color Frames -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Color Frames" />
+                            </element>
                         </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Animation LOD bias -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Animation LOD bias" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="AnimationLodBias" />
+                        <element type="ListView" style="PanelView">
+                            <attribute name="Name" value="ColorFrameListView" />
+                            <attribute name="Highlight Mode" value="Always" />
+                            <attribute name="Min Size" value="0 100" />
                         </element>
-                    </element>
-                </element>
-                <!-- End of Variation Attributes -->
-                <element type="BorderImage" style="EditorDivider" />
-                <element>
-                    <!-- Color Frames -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Color Frames" />
-                    </element>
-                </element>
-                <element type="ListView" style="PanelView">
-                    <attribute name="Name" value="ColorFrameListView" />
-                    <attribute name="Highlight Mode" value="Always" />
-                    <attribute name="Min Size" value="0 100" />
-                </element>
-                <element>
-                    <attribute name="Name" value="ColorFrameButtonContainer" />
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="4" />
+                        <element>
+                            <attribute name="Name" value="ColorFrameButtonContainer" />
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="4" />
 
-                    <element type="Button">
-                        <attribute name="Name" value="NewColorFrame" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Border" value="1 1 1 1" />
-                        <element type="Text">
-                            <attribute name="Text" value="New" />
-                            <attribute name="Text Alignment" value="Center" />
+                            <element type="Button">
+                                <attribute name="Name" value="NewColorFrame" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Border" value="1 1 1 1" />
+                                <element type="Text">
+                                    <attribute name="Text" value="New" />
+                                    <attribute name="Text Alignment" value="Center" />
+                                </element>
+                            </element>
+                            <element type="Button">
+                                <attribute name="Name" value="RemoveColorFrame" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Border" value="1 1 1 1" />
+                                <element type="Text">
+                                    <attribute name="Text" value="Remove" />
+                                    <attribute name="Text Alignment" value="Center" />
+                                </element>
+                            </element>
+                            <element type="Button">
+                                <attribute name="Name" value="ColorFrameSort" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Border" value="1 1 1 1" />
+                                <element type="Text">
+                                    <attribute name="Text" value="Sort" />
+                                    <attribute name="Text Alignment" value="Center" />
+                                </element>
+                            </element>
                         </element>
-                    </element>
-                    <element type="Button">
-                        <attribute name="Name" value="RemoveColorFrame" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Border" value="1 1 1 1" />
-                        <element type="Text">
-                            <attribute name="Text" value="Remove" />
-                            <attribute name="Text Alignment" value="Center" />
+                        <element type="BorderImage" style="EditorDivider" />
+                        <element>
+                            <!-- Texture Frames -->
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Texture Frames" />
+                            </element>
                         </element>
-                    </element>
-                    <element type="Button">
-                        <attribute name="Name" value="ColorFrameSort" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Border" value="1 1 1 1" />
-                        <element type="Text">
-                            <attribute name="Text" value="Sort" />
-                            <attribute name="Text Alignment" value="Center" />
+                        <element type="ListView" style="PanelView">
+                            <attribute name="Name" value="TextureFrameListView" />
+                            <attribute name="Min Size" value="0 100" />
                         </element>
-                    </element>
-                </element>
-                <element type="BorderImage" style="EditorDivider" />
-                <element>
-                    <!-- Texture Frames -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Texture Frames" />
-                    </element>
-                </element>
-                <element type="ListView" style="PanelView">
-                    <attribute name="Name" value="TextureFrameListView" />
-                    <attribute name="Min Size" value="0 100" />
-                </element>
-                <element>
-                    <attribute name="Name" value="TextureFrameButtonContainer" />
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="4" />
+                        <element>
+                            <attribute name="Name" value="TextureFrameButtonContainer" />
+                            <attribute name="Min Size" value="0 16" />
+                            <attribute name="Max Size" value="2147483647 16" />
+                            <attribute name="Layout Mode" value="Horizontal" />
+                            <attribute name="Layout Spacing" value="4" />
 
-                    <element type="Button">
-                        <attribute name="Name" value="NewTextureFrame" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Border" value="1 1 1 1" />
-                        <element type="Text">
-                            <attribute name="Text" value="New" />
-                            <attribute name="Text Alignment" value="Center" />
-                        </element>
-                    </element>
-                    <element type="Button">
-                        <attribute name="Name" value="RemoveTextureFrame" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Border" value="1 1 1 1" />
-                        <element type="Text">
-                            <attribute name="Text" value="Remove" />
-                            <attribute name="Text Alignment" value="Center" />
-                        </element>
-                    </element>
-                    <element type="Button">
-                        <attribute name="Name" value="TextureFrameSort" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Border" value="1 1 1 1" />
-                        <element type="Text">
-                            <attribute name="Text" value="Sort" />
-                            <attribute name="Text Alignment" value="Center" />
-                        </element>
-                    </element>
-                </element>
-                <element type="BorderImage" style="EditorDivider" />
-                <element style="Panel">
-                    <element type="Text">
-                        <attribute name="Text" value="Emitter" />
-                    </element>
-                </element>
-                 <!-- Emitter Attributes -->
-                <element>
-                    <!-- Num Particles -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Number of Particles" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="NumParticles" />
-                        </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Emitter Size -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Emitter Size" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="EmitterSizeX" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="EmitterSizeY" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="EmitterSizeZ" />
-                        </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Emission Rate -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Emission Rate" />
-                    </element>
-                    <element>
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="1" />
-                        <element type="LineEdit">
-                            <attribute name="Name" value="EmissionRateMin" />
-                        </element>
-                        <element type="LineEdit">
-                            <attribute name="Name" value="EmissionRateMax" />
-                        </element>
-                    </element>
-                </element>
-                <element>
-                    <!-- Emitter Shape -->
-                    <attribute name="Min Size" value="0 16" />
-                    <attribute name="Max Size" value="2147483647 16" />
-                    <attribute name="Layout Mode" value="Horizontal" />
-                    <attribute name="Layout Spacing" value="10" />
-                    <element type="Text" style="EditorAttributeText">
-                        <attribute name="Text" value="Emitter Shape" />
-                    </element>
-                    <element type="DropDownList">
-                        <attribute name="Name" value="EmitterShape" />
-                        <attribute name="Resize Popup" value="true" />
-                        <!-- Skip style processing as the purpose of below tags is to populate the content element -->
-                        <element type="Window" internal="true" popup="true" style="none">
-                            <element type="ListView" internal="true" style="none">
-                                <element type="BorderImage" internal="true" style="none">
-                                    <element internal="true" style="none">
-                                        <element type="Text" style="FileSelectorFilterText">
-                                            <attribute name="Text" value="Box" />
-                                        </element>
-                                        <element type="Text" style="FileSelectorFilterText">
-                                            <attribute name="Text" value="Sphere" />
-                                        </element>
-                                    </element>
+                            <element type="Button">
+                                <attribute name="Name" value="NewTextureFrame" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Border" value="1 1 1 1" />
+                                <element type="Text">
+                                    <attribute name="Text" value="New" />
+                                    <attribute name="Text Alignment" value="Center" />
+                                </element>
+                            </element>
+                            <element type="Button">
+                                <attribute name="Name" value="RemoveTextureFrame" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Border" value="1 1 1 1" />
+                                <element type="Text">
+                                    <attribute name="Text" value="Remove" />
+                                    <attribute name="Text Alignment" value="Center" />
+                                </element>
+                            </element>
+                            <element type="Button">
+                                <attribute name="Name" value="TextureFrameSort" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Border" value="1 1 1 1" />
+                                <element type="Text">
+                                    <attribute name="Text" value="Sort" />
+                                    <attribute name="Text Alignment" value="Center" />
                                 </element>
                             </element>
                         </element>
-                    </element>
-                </element>
-                <!-- End of Renderer Attributes -->
-                <element type="BorderImage" style="EditorDivider" />
-                <element style="Panel">
-                    <element type="Text">
-                        <attribute name="Text" value="Renderer" />
-                    </element>
-                </element>
-                <element style="Panel">
-                 <!-- Emitter Attributes -->
-                    <element>
-                        <!-- Material -->
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="10" />
-                        <element type="Text" style="EditorAttributeText">
-                            <attribute name="Text" value="Material" />
+                        <element type="BorderImage" style="EditorDivider" />
+                        <element style="Panel">
+                            <element type="Text">
+                                <attribute name="Text" value="Emitter" />
+                            </element>
                         </element>
+                        <!-- Emitter Attributes -->
                         <element>
-                            <attribute name="Name" value="ParticleMaterialContainer" />
+                            <!-- Num Particles -->
                             <attribute name="Min Size" value="0 16" />
                             <attribute name="Max Size" value="2147483647 16" />
                             <attribute name="Layout Mode" value="Horizontal" />
-                            <attribute name="Layout Spacing" value="1" />
-                        </element>
-                    </element>
-                    <element>
-                        <!-- Scaled -->
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="10" />
-                        <element type="Text" style="EditorAttributeText">
-                            <attribute name="Text" value="Scaled" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Number of Particles" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="NumParticles" />
+                                </element>
+                            </element>
                         </element>
                         <element>
+                            <!-- Emitter Size -->
                             <attribute name="Min Size" value="0 16" />
                             <attribute name="Max Size" value="2147483647 16" />
                             <attribute name="Layout Mode" value="Horizontal" />
-                            <attribute name="Layout Spacing" value="1" />
-                            <element type="CheckBox">
-                                <attribute name="Name" value="Scaled" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Emitter Size" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="EmitterSizeX" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="EmitterSizeY" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="EmitterSizeZ" />
+                                </element>
                             </element>
-                        </element>
-                    </element>
-                    <element>
-                        <!-- Sorted -->
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="10" />
-                        <element type="Text" style="EditorAttributeText">
-                            <attribute name="Text" value="Sorted" />
                         </element>
                         <element>
+                            <!-- Emission Rate -->
                             <attribute name="Min Size" value="0 16" />
                             <attribute name="Max Size" value="2147483647 16" />
                             <attribute name="Layout Mode" value="Horizontal" />
-                            <attribute name="Layout Spacing" value="1" />
-                            <element type="CheckBox">
-                                <attribute name="Name" value="Sorted" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Emission Rate" />
+                            </element>
+                            <element>
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="1" />
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="EmissionRateMin" />
+                                </element>
+                                <element type="LineEdit">
+                                    <attribute name="Name" value="EmissionRateMax" />
+                                </element>
                             </element>
-                        </element>
-                    </element>
-                    <element>
-                        <!-- Relative -->
-                        <attribute name="Min Size" value="0 16" />
-                        <attribute name="Max Size" value="2147483647 16" />
-                        <attribute name="Layout Mode" value="Horizontal" />
-                        <attribute name="Layout Spacing" value="10" />
-                        <element type="Text" style="EditorAttributeText">
-                            <attribute name="Text" value="Relative Transform" />
                         </element>
                         <element>
+                            <!-- Emitter Shape -->
                             <attribute name="Min Size" value="0 16" />
                             <attribute name="Max Size" value="2147483647 16" />
                             <attribute name="Layout Mode" value="Horizontal" />
-                            <attribute name="Layout Spacing" value="1" />
-                            <element type="CheckBox">
-                                <attribute name="Name" value="Relative" />
+                            <attribute name="Layout Spacing" value="10" />
+                            <element type="Text" style="EditorAttributeText">
+                                <attribute name="Text" value="Emitter Shape" />
+                            </element>
+                            <element type="DropDownList">
+                                <attribute name="Name" value="EmitterShape" />
+                                <attribute name="Resize Popup" value="true" />
+                                <!-- Skip style processing as the purpose of below tags is to populate the content element -->
+                                <element type="Window" internal="true" popup="true" style="none">
+                                    <element type="ListView" internal="true" style="none">
+                                        <element type="BorderImage" internal="true" style="none">
+                                            <element internal="true" style="none">
+                                                <element type="Text" style="FileSelectorFilterText">
+                                                    <attribute name="Text" value="Box" />
+                                                </element>
+                                                <element type="Text" style="FileSelectorFilterText">
+                                                    <attribute name="Text" value="Sphere" />
+                                                </element>
+                                            </element>
+                                        </element>
+                                    </element>
+                                </element>
                             </element>
                         </element>
-                    </element>
+                        <!-- End of Renderer Attributes -->
+                        <element type="BorderImage" style="EditorDivider" />
+                        <element style="Panel">
+                            <element type="Text">
+                                <attribute name="Text" value="Renderer" />
+                            </element>
+                        </element>
+                        <element style="Panel">
+                            <!-- Emitter Attributes -->
+                            <element>
+                                <!-- Material -->
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="10" />
+                                <element type="Text" style="EditorAttributeText">
+                                    <attribute name="Text" value="Material" />
+                                </element>
+                                <element>
+                                    <attribute name="Name" value="ParticleMaterialContainer" />
+                                    <attribute name="Min Size" value="0 16" />
+                                    <attribute name="Max Size" value="2147483647 16" />
+                                    <attribute name="Layout Mode" value="Horizontal" />
+                                    <attribute name="Layout Spacing" value="1" />
+                                </element>
+                            </element>
+                            <element>
+                                <!-- Scaled -->
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="10" />
+                                <element type="Text" style="EditorAttributeText">
+                                    <attribute name="Text" value="Scaled" />
+                                </element>
+                                <element>
+                                    <attribute name="Min Size" value="0 16" />
+                                    <attribute name="Max Size" value="2147483647 16" />
+                                    <attribute name="Layout Mode" value="Horizontal" />
+                                    <attribute name="Layout Spacing" value="1" />
+                                    <element type="CheckBox">
+                                        <attribute name="Name" value="Scaled" />
+                                    </element>
+                                </element>
+                            </element>
+                            <element>
+                                <!-- Sorted -->
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="10" />
+                                <element type="Text" style="EditorAttributeText">
+                                    <attribute name="Text" value="Sorted" />
+                                </element>
+                                <element>
+                                    <attribute name="Min Size" value="0 16" />
+                                    <attribute name="Max Size" value="2147483647 16" />
+                                    <attribute name="Layout Mode" value="Horizontal" />
+                                    <attribute name="Layout Spacing" value="1" />
+                                    <element type="CheckBox">
+                                        <attribute name="Name" value="Sorted" />
+                                    </element>
+                                </element>
+                            </element>
+                            <element>
+                                <!-- Relative -->
+                                <attribute name="Min Size" value="0 16" />
+                                <attribute name="Max Size" value="2147483647 16" />
+                                <attribute name="Layout Mode" value="Horizontal" />
+                                <attribute name="Layout Spacing" value="10" />
+                                <element type="Text" style="EditorAttributeText">
+                                    <attribute name="Text" value="Relative Transform" />
+                                </element>
+                                <element>
+                                    <attribute name="Min Size" value="0 16" />
+                                    <attribute name="Max Size" value="2147483647 16" />
+                                    <attribute name="Layout Mode" value="Horizontal" />
+                                    <attribute name="Layout Spacing" value="1" />
+                                    <element type="CheckBox">
+                                        <attribute name="Name" value="Relative" />
+                                    </element>
+                                </element>
+                            </element>
 
-                    <!-- End of Renderer Attributes -->
-                </element>
+                            <!-- End of Renderer Attributes -->
+                        </element>
 
+                    </element>
+                </element>
             </element>
-        </element>
-    </element>
-    <element type="BorderImage" style="EditorDivider" />
-    <element>
-        <attribute name="Name" value="ButtonContainer" />
-        <attribute name="Min Size" value="0 16" />
-        <attribute name="Max Size" value="2147483647 16" />
-        <attribute name="Layout Mode" value="Horizontal" />
-        <attribute name="Layout Spacing" value="4" />
-        <element type="Button">
-            <attribute name="Name" value="NewButton" />
-            <attribute name="Layout Mode" value="Horizontal" />
-            <attribute name="Layout Border" value="1 1 1 1" />
-            <element type="Text">
-                <attribute name="Text" value="New" />
-                <attribute name="Text Alignment" value="Center" />
-            </element>
-        </element>
-        <element type="Button">
-            <attribute name="Name" value="RevertButton" />
-            <attribute name="Layout Mode" value="Horizontal" />
-            <attribute name="Layout Border" value="1 1 1 1" />
-            <element type="Text">
-                <attribute name="Text" value="Revert" />
-                <attribute name="Text Alignment" value="Center" />
-            </element>
-        </element>
-        <element type="Button">
-            <attribute name="Name" value="SaveButton" />
-            <attribute name="Layout Mode" value="Horizontal" />
-            <attribute name="Layout Border" value="1 1 1 1" />
-            <element type="Text">
-                <attribute name="Text" value="Save" />
-                <attribute name="Text Alignment" value="Center" />
-            </element>
-        </element>
-        <element type="Button">
-            <attribute name="Name" value="SaveAsButton" />
-            <attribute name="Layout Mode" value="Horizontal" />
-            <attribute name="Layout Border" value="1 1 1 1" />
-            <element type="Text">
-                <attribute name="Text" value="Save as" />
-                <attribute name="Text Alignment" value="Center" />
+            <element type="BorderImage" style="EditorDivider" />
+            <element>
+                <attribute name="Name" value="ButtonContainer" />
+                <attribute name="Min Size" value="0 16" />
+                <attribute name="Max Size" value="2147483647 16" />
+                <attribute name="Layout Mode" value="Horizontal" />
+                <attribute name="Layout Spacing" value="4" />
+                <element type="Button">
+                    <attribute name="Name" value="NewButton" />
+                    <attribute name="Layout Mode" value="Horizontal" />
+                    <attribute name="Layout Border" value="1 1 1 1" />
+                    <element type="Text">
+                        <attribute name="Text" value="New" />
+                        <attribute name="Text Alignment" value="Center" />
+                    </element>
+                </element>
+                <element type="Button">
+                    <attribute name="Name" value="RevertButton" />
+                    <attribute name="Layout Mode" value="Horizontal" />
+                    <attribute name="Layout Border" value="1 1 1 1" />
+                    <element type="Text">
+                        <attribute name="Text" value="Revert" />
+                        <attribute name="Text Alignment" value="Center" />
+                    </element>
+                </element>
+                <element type="Button">
+                    <attribute name="Name" value="SaveButton" />
+                    <attribute name="Layout Mode" value="Horizontal" />
+                    <attribute name="Layout Border" value="1 1 1 1" />
+                    <element type="Text">
+                        <attribute name="Text" value="Save" />
+                        <attribute name="Text Alignment" value="Center" />
+                    </element>
+                </element>
+                <element type="Button">
+                    <attribute name="Name" value="SaveAsButton" />
+                    <attribute name="Layout Mode" value="Horizontal" />
+                    <attribute name="Layout Border" value="1 1 1 1" />
+                    <element type="Text">
+                        <attribute name="Text" value="Save as" />
+                        <attribute name="Text Alignment" value="Center" />
+                    </element>
+                </element>
             </element>
         </element>
     </element>
-    <element type="BorderImage" style="EditorDivider" />
-</element>
+</element>