I'm currently developing a custom particle simulation for our game, and I am at the point where collision detection with other objects (e.g., Unity/PhysX colliders, as well as other obi simplexes) is the next item to develop.
Given that Obi already has a comprehensive collision detection and handling system, and that all of the game objects in our project are configured to use it, I was hoping that I could leverage it instead of starting from scratch and having yet another collision management system running alongside the other two (PhysX and Obi).
However, after looking at the code (I appear to be on version 6.4 as CHANGELOG.txt contains a "## [6.4]" subsection), I am a but stumped on how I'd accomplish this.
Currently I have a particle simulation where each particle has position, velocity, mass, etc. Ideally, I'd queue up a job that takes the particles' states in and outputs the particles' and rigidbodies' new velocities/velocity changes. The new velocities would be applied to the particles with another job, and the rigidbodies would be updated on the main thread just prior to Physics.Update().
Further, I noticed that in Obi 7, the integration between Obi and Burst was announced to be cleaner. I presume this means removing the abstraction layer that'd allow Burst/Oni interchangeability, which is likely to make this work a bit easier. As such, I think beta access might be important.
(I sent an email to obi (at) virtualmethodstudio (dot) com about this, but I figured I'd start a thread here in case you are more active on the forums.)
I'm not entirely sure how to go about doing this, e.g. how tightly I should integrate the simulation I wrote with Obi. Any pointers on how I should go about doing this would be helpful!
Given that Obi already has a comprehensive collision detection and handling system, and that all of the game objects in our project are configured to use it, I was hoping that I could leverage it instead of starting from scratch and having yet another collision management system running alongside the other two (PhysX and Obi).
However, after looking at the code (I appear to be on version 6.4 as CHANGELOG.txt contains a "## [6.4]" subsection), I am a but stumped on how I'd accomplish this.
Currently I have a particle simulation where each particle has position, velocity, mass, etc. Ideally, I'd queue up a job that takes the particles' states in and outputs the particles' and rigidbodies' new velocities/velocity changes. The new velocities would be applied to the particles with another job, and the rigidbodies would be updated on the main thread just prior to Physics.Update().
Further, I noticed that in Obi 7, the integration between Obi and Burst was announced to be cleaner. I presume this means removing the abstraction layer that'd allow Burst/Oni interchangeability, which is likely to make this work a bit easier. As such, I think beta access might be important.
(I sent an email to obi (at) virtualmethodstudio (dot) com about this, but I figured I'd start a thread here in case you are more active on the forums.)
I'm not entirely sure how to go about doing this, e.g. how tightly I should integrate the simulation I wrote with Obi. Any pointers on how I should go about doing this would be helpful!