Name | Modified | Size | Downloads / Week |
---|---|---|---|
XNA_Particles_V1.1_InstallerEXE.zip | 2012-11-06 | 386.9 kB | |
README.txt | 2012-11-06 | 4.1 kB | |
XNA_Particles_V1.1_Installer.zip | 2012-11-03 | 240.3 kB | |
XNA_Particles_V1.0_Installer.zip | 2012-01-08 | 255.3 kB | |
Version_1.0.zip | 2011-12-29 | 80.9 kB | |
Totals: 5 Items | 967.5 kB | 0 |
===== Welcome to Particle Simulator ===== Project: ParticleTest2 Author: Cody Duncan Date: December 28th, 2011 v1.0 Intial Project Development November 3rd 2012 v1.1 - Fixed redundant matrix calculations in physics simulation pixel shader. - Added ability to toggle the core gravity mode to reset particles with initial velocities that make them spiral or orbit. - Added Command Line arguments to adjust particle count, pull strength, and core gravity constants. - Massively Increased performance by switching particle texture with a smaller texture. - Added more notes in code. - Updated Readme Requirements: Visual Studio 2008, XNA 3.1, ShaderModel 3.0 on Graphics Card Description: Stateful particle system that includes collision with walls, not with other particles. References: http://www.gamasutra.com/view/feature/2122/building_a_millionparticle_system.php borrows some source: http://www.catalinzima.com/tutorials/4-uses-of-vtf/particle-systems/ credit for Particle Physics.fx and Particle.fx shaders also goes to Catalin Zima,though several modifications were made to allow for attractors and gravitation. inspired by: http://www.youtube.com/watch?v=ACHJ2rGyP10 (dhscaresme) and http://www.youtube.com/watch?v=CyAZ2Y7nOTw (GearGOD) ===== Help ===== using command line argument --help will print much of the information below to the console. ===== Command Line Arguments ===== To use args: description -> example format dash before argName, value in next arg -> -arg value slash before argName, value in next arg -> /arg value colon after Argname, followed by value -> -arg:value equals after Argname, followed by value -> -arg=value Argnames can be full name or first letter, noted in Args section of each parameter listed below. particleCount: particleCount^2 is the number of particles rendered. Default: 512 (262144 total particles) Args: -particles /particles -p /p pullStrength : Power of Mouse-click gravity(left)/antigravity(right). Default: 100 Note: Pull power weakens linearly over greater distance, rather than exponentially, like gravity Args: -mousePull /mousePull -m /m CoreGravity : Power of Gravity in Center of space (mode 3). Default: 45000 Args: -gravity /gravity -g /g ===== Controls ===== Modes (number corresponds to key to press) 1: No Gravity press 1 to set to this mode 2: Downward Gravity: gravity pulls down to bottom of window press 2 to set to this mode 3: Core Gravity: gravity pulls toward center of window press 3 to set to this mode Keyboard Controls Enter - Reset particles Shift(left) - Toggle mouse gravity power Default: Normal Normal: Pull power = pullStrength(default 100) Boost : Pull power = 5 * pullStrength, for extra pull 4 - Toggle Orbit/Spiral on Core Gravity Reset Default: Spiral Spiral - particles slowly spiral toward center. Orbit - particles orbit center, don't get closer or futher Note: This change shows when you reset the particles, and only on Core Gravity Mode. Example: 1. hit 3 to get to core gravity mode 2. hit Enter to reset particles to spiral velocities 3. hit 4 toggle to orbital reset velocities 4. hit Enter to reset with orbital velocities 5. hit 4 then Enter to toggle back to spiral velocities Mouse Controls Left-click - attract to cursor Right-click - repel from cursor Camera Controls up,down,left,right,z,x Note: using these throws off the mapping of clicks to attraction/repel points. probably need to fix that later, but it's fine for a proof of concept.