Hi dev.
Correct me if I'm wrong, for now I think the particle rendering is only for debugging and adjustment to get desired physics result.
So why not use Unity's Handle API to do it?
My current problem with it is my Unity 2022.2.2f1 URP 14, Obi Particle shader does not render.
I do not wish to tell you guys to fix this shader, since it will break again when Unity makes changes to their rendering.
Handle API will not break, it can draw mesh with custom shader.
The sphere mesh can be referenced in code (instead of currently generated in shader?), and the shader can just be a simple Lit shader made in Shader Graph.
Shader Graph's shader will not likely to break than custom HLSL shader.
I have been searching about how to fix the mesh collider problem in my soft body project using Obi, and I faced with this question (Obi SoftBody with unity Mesh Collider and Mesh Filter (virtualmethodstudio.com)), which is somehow similar to mine. I wanted to ask that is there any example, where I can learn and easily understand how I can get mesh and update its particles which will give me the result as mesh collider. My main purpose in this post is to understand how I can use the Mesh in the blueprint by code.
I have 2 different emitters emitting the same kind of fluid: same blueprint, size, etc. Only the color is changed for clarity.
When the 2 fluids come in contact with each others, a visible transparent seam will appear between them.
I am on URP.
Here attached, you can see the seam and the Obi Fluid Renderer settings.
As shown in one screenshot, turning off Particle Z Write removes the seam, but the particles become very blob-ish where they contact each others (from different emitters) and one emitter fluid seems to prevail over the other, giving a wrong impression of what the actual fluid composition should be (looks like 80% blue, instead of the 50% blue and 50% red)
Any idea how to fix this? Changing the color blending (Obi Fluid Renderer) doesn't seem to help, but I don't understand yet what I'm doing there anyway.
I am interested in doing something along the lines of your existing Freight Lift demo, where there's a number of ropes holding a mass like a pendulum.
In my situation though, the cables are much longer. I have the bounciness under control but now would like to reduce or damp the amount of pendulum swing when the top of the freight crane moves. Real physics is cool, and all, but this is a game and I don't want to make users cry with trying to stabilize the load quite that much.
What is the best way to do this? I am thinking of measuring the deflection and applying a counter force to the load/platform objects pinned at the bottom of the ropes. Is there a specific Obi API or should I just apply it with regular Physics.AddForce()? Or is there an alternative?
(As an aside, with the Freight Lift demo, I noticed that if I change the rope density below about 0.25 to help reduce the distance constraint workload, the simulation refuses to lengthen/shorten the ropes. I didn't see anything in the docs about a valid range here.)
I am using mesh collider with obiCollider, when I let obiCollider touch any collider that , it doesnt matter obi or not fluid ,just pass away trought the collider, How could I solve this or is there a way to make up?
I am trying to remove the triangles from the soft body, but I am having troubles. I am not able to access the mesh collider or Mesh filter of the soft body. When I am trying to set it up, it is ignored by the obi soft body, even though when I try to remove triangles it does remove but I am unable to see the result due to the Mesh Collider and Mesh Filter inaccessibility of the soft body . I was wondering if there is something special that I must do to achieve the result . As you can see in the attached image, the mesh collider is not attached with the soft body even though it is attached to the object.
Using Obi Rope for VR and I'm using the ObiContactGrabber script on my hand collider spheres with trigger option checked and then calling Grab and Release when a button is pressed and released. Everything is working perfectly. I can grab and manipulate the rope just like I'd expect. I then go in and check the Surface-based collisions option and run again, the grab is offset a few feet away. It's not where my hand is.
What am I missing? Is this script not compatible with surface-based collisions?