So ive been trying something interesting recently in Unity, ive been interfacing nvidia particle physics with character animation (using shape matching and updating particles every frame based on reference animation) in a virtual agent prototyping testbed, im using the Nvidia Flex unity plug in from the asset and the underlying C++ solver with associated params is not available for public use I think. Anyways, I have now completely physics based data oriented animation that is overlaid on top of canned animations of the virtual agent testbed. I have high level control of various effects like a shocking processor, melting, forces on specific particles, locking particles and deforming said character that can be controlled as a layer in the virtual agent architecture.However when I introduce many characters there are a few issues, firstly I require an individual container for each flex based character, this is because every particle in memory from the container is affected by the same params struct. So more characters I have the more chugging the CPU does. Even though there are buffer reads and writes from the GPU for each flex character.Im wondering if I can take avail of the ECS system in Unity, perhaps considering every flex character as an entity and underlying particles associated with it as one of its components. The systems would be the high level controllers like shock processors, deformers from the virtual agent testbed.I guess my question is has anyone worked with Nvidia Flex and ECS? There was wind of an engine being built for physics in Flex and ECS but in C++, not sure in Unity.
Probably your post fits better in the DOTS forum:
Hey thanks ill do that…
1 Like