Design Choices

Platforms

Virtual Reality Display and Tracking

The Virtual Reality hardware platform was pre-selected for this project.

At Spraying Systems Company we have several models of the Oculus head mounted displays (Go, Rift, and Rift S). Though we have access so seveal other technologies such as 3D projects and Augmented Reality devices. Oculus products remain our main developmental platform.

Oculus Rift Head Mounted Display

Software Development

Though Spraying Systems have numerous 3D development platforms such as AutoDesk 3DS or Ensight for CFD applications; I selected Unity due to having more personal experience with the platform in the prototyping of Augmented Reality ideas using the platform.

Unity is a cross-platform development platform for games, videos, architecture, and product development. The community is large and informative and has numerous plugins to work with other industrial applications such as PiXYZ, Reflect, and VuForia.

Unity Version 2019.3 was selected due to is stable support of the VFX graph; a must have for future work requiring thousands of particles.

Unity serves as my primary developmental platform for XR work

Particles Systems

In Unity there are two particle system approaches one can use; the built-in particle system (also known as Shuriken), and the VFX graph.

You can choice to make your own particle system working off of objection creation and destruction. Doing do gives to even more control of the particles underlying physics. (This application utilizes a custom made particle system.)

Unfortunately, there is an immediate trade-off that electrostatic atomizers face when selecting a particle system. They are sprays (hundreds of thousands of particles) which lean towards the use of VFX graph, but the particles obey addition physics which interact with the environment ( shuriken and Object-based). Trying to get an realistic spray using the non-VFX approaches quickly reduces the frame rate to a unusable state. (especially since each particle influences all the surround particles, exponentiating the problem).


This issue being said, there is plenty of potential for the VFX graph as the future work. User are finding work-arounds and there are still approaches of VFX, such as a vector force field, that can be explored.

Interactable VFX

Users are developing ways to interact with the VFX graph.

UNITY VFX Graph Episode 4: Attractive Force. https://www.youtube.com/watch?v=3EsITXwhlF4.


An Electric Dipole Vector field

Future work could use these vector fields within Unity's VFX graph to create more realistic spray effects.

Haag, Olaf. OlafHaag/VectorFields. Python, 2020. https://github.com/OlafHaag/VectorFields.