Search Forums

(Advanced Search)

Latest Threads
How to dynamically change...
Forum: Obi Rope
Last Post: josemendez
23 minutes ago
» Replies: 5
» Views: 124
Pipeline that bends
Forum: Obi Softbody
Last Post: josemendez
04-07-2025, 09:52 AM
» Replies: 13
» Views: 817
How to implement/sync Obi...
Forum: Obi Rope
Last Post: quent_1982
01-07-2025, 01:48 PM
» Replies: 2
» Views: 190
Collisions don't work con...
Forum: Obi Rope
Last Post: chenji
27-06-2025, 03:05 AM
» Replies: 3
» Views: 258
Force Zone apply differen...
Forum: Obi Rope
Last Post: chenji
26-06-2025, 11:41 AM
» Replies: 11
» Views: 757
Can I blend in and out of...
Forum: Obi Cloth
Last Post: josemendez
24-06-2025, 04:42 PM
» Replies: 3
» Views: 244
Using a rigidbody/collide...
Forum: Obi Cloth
Last Post: josemendez
24-06-2025, 09:29 AM
» Replies: 1
» Views: 147
Solver is too performance...
Forum: Obi Rope
Last Post: quent_1982
20-06-2025, 08:09 AM
» Replies: 40
» Views: 4,251
Obi 7 Model Scaling
Forum: Obi Cloth
Last Post: alkis
19-06-2025, 02:37 PM
» Replies: 2
» Views: 258
Obi Softbody instability?
Forum: Obi Softbody
Last Post: Aroosh
18-06-2025, 06:35 PM
» Replies: 0
» Views: 138

 
Pregunta Question of the ObiRope length
Posted by: rinrin - 07-05-2024, 02:33 PM - Forum: Obi Rope - No Replies

hi there!
why does i attach both of the side of the rope will cause the original length is stretched?
and how do i keep the original length (like the video before playing)

Print this item

  Frequent crash after assign the FluidPassCompute
Posted by: spikebor - 07-05-2024, 10:51 AM - Forum: Obi Fluid - Replies (11)

Before I add the FluidPassCompute, the Fluid only crash when I give it too small voxel size and/or too small Max Surface Chunks value.
But after adding the FluidPassCompute, I have many frequent crash (suppose not related to above fields since I've adjusted them)

Now it's likely crash when I enter or exit Play mode.

The log when crashed

Code:
D3D11: Failed to create RenderTexture (8 x 8 fmt 9 aa 1), error 0x887a0005
D3D11: Failed to create RenderTexture (8 x 8 fmt 53 aa 1), error 0x887a0005
d3d11: failed to create staging 2D texture w=64 h=64 d3dfmt=2 [887a0005]
Failed to present D3D11 swapchain due to device reset/removed.This error can happen if you draw or dispatch very expensive workloads to the GPU, which can cause Windows to detect a GPU Timeout and reset the device. (see https://docs.microsoft.com/en-us/windows-hardware/drivers/display/timeout-detection-and-recovery).If you believe this error is due to built-in Unity functionality, please submit a bug.This is an unrecoverable error and the editor will shut down.

Also, this is the error in that is frequently shown after I added the FluidPassCompute asset.

Code:
RTHandle.Initialize should only be called once before allocating any Render Texture. This may be caused by an unreleased RTHandle resource.
Unreleased RTHandles:
    _Foam

UnityEngine.Rendering.RTHandles:Initialize (int,int,bool)
Obi.ObiFluidRendererFeature:Create () (at Assets/Obi/Scripts/Fluid/Rendering/URP/ObiFluidRendererFeature.cs:27)
UnityEngine.Rendering.Universal.UniversalAdditionalCameraData:OnDestroy () (at Library/PackageCache/com.unity.render-pipelines.universal@14.0.9/Runtime/UniversalAdditionalCameraData.cs:819)



Full Editor Log in the attachment.

Don't know why I can't add attachment (it rotating icon), link https://drive.google.com/file/d/18iCalYf...sp=sharing

Print this item

  (7.0) Still confused about how Obi physics updates in 7.0
Posted by: kodra - 07-05-2024, 09:38 AM - Forum: General - Replies (4)

Quote:In Obi 7 all solvers always run in parallel. Simulation starts in LateUpdate(), while still using a fixed timestep. This combines the best features from all ObiUpdater flavors and simplifies setup, as a result, the ObiUpdater component has been removed.



I still don't get it. LateUpdate() is called every frame. It's frame rate dependent. Then how Obi solvers runs in LateUpdate() while using a fixed timestep at the same time?

If I have game logic in LateUpate() (for example, update the bone's position), does Obi solver updates before or after it?

Print this item

Gran sonrisa Obi7 | I made a pool
Posted by: spikebor - 07-05-2024, 06:10 AM - Forum: Obi Fluid - Replies (5)

So happy I can make a pool now  Gran sonrisa
This is not able with earlier versions of Obi whoo.



I'm just testing with a pool size width 20x10 height 3m
To cover this pool, I used extremely big particle (resolution 0.02, count 15k) on a RTX 3070.

Tbh I do not expect a swap chain crash with just 15k particle, since Unity CPU shuriken only has problem at 10k, so I don't think 15k is heavy for GPU.
But the pool will crash when it about to reach 11k particle.

After more testing, I found out this crash is about the Memory Budget foldout. After I set Max Surface Chunks to 150k (425mb) it can run now, but the GPU cry for help  Sonrojado

This is a very important part that will crash Unity if not properly set, so I suggest: when the Emitter detect user give it a very big particle count blueprint, can show a big red warning box telling user must scale the max Surface Chunks accordingly, or even better, suggest a value to set.


Also, in PlayMode the Solver only show Chunks and memory we set, not the Chunks and memory we used up.
Suggest adding to the display used up Chunks  / set Chunks . With that I can set the Max Surface Chunks with better value. For now, I can only blindly set. The values I set may be much more than it actually need. 

Window Build test: 20ms for this pool, optimization tips please?

Btw, the pool is there, I'll move next to scripting buoyancy, if you please can give some demo code about adding force based on character volume displacement inside the Fluid that would be big help!

Print this item

  Obi7Beta | Fluid can not work with paused game and UI
Posted by: spikebor - 06-05-2024, 06:12 PM - Forum: Obi Fluid - Replies (2)

Hi, happy to have my first bug report for Obi 7 Gran sonrisa . The problem:
In my UI code, when menu opened, game is paused by setting

Code:
                Time.timeScale = Mathf.Epsilon;

Game is paused, but my UI can still work, I can click button and that button clicked will do some action.
This UI document can work with any scene, but when I open a Fluid scene (sample: ComputeFluids), when play the game and open UI menu, I can move the focus, but cannot click any button. Essentially, the "consume click" event of the UI Document is somehow stopped working?

So, my conclusion is Compute Fluid has some bug with Time.timeScale = Mathf.Epsilon; that will mess up my UI. It is not frozen, just not consume clicks.

Also, I suggest for a feature to pause ObiSolver from updating. Currently I can only disable ObiSolver when I do not want it to update, but by doing so, for example the Fluid, it will disappear. If the Fluid stop updating but still render, it can be neat for a stop time gameplay feature.

Print this item

  Setting angular velocity of a kinematic body is not supported
Posted by: vrtraining - 06-05-2024, 02:38 PM - Forum: Obi Rope - Replies (1)

Im getting this error 

Code:
Setting linear velocity of a kinematic body is not supported.

If I manually set my Game Object Rigidbody to Kinematic during runtime, I keep getting this error. Its coming from ObiRigidBody.cs

Code:
private void UpdateKinematicVelocities(float stepTime)
        {
            // differentiate positions/orientations to get our own velocites for kinematic objects.
            // when calling Physics.Simulate, MovePosition/Rotation do not work correctly. Also useful for animations.
            if (unityRigidbody.isKinematic)
            {
                // differentiate positions to obtain linear velocity:
                unityRigidbody.velocity = (transform.position - prevPosition) / stepTime;

                // differentiate rotations to obtain angular velocity:
                Quaternion delta = transform.rotation * Quaternion.Inverse(prevRotation);
                unityRigidbody.angularVelocity = new Vector3(delta.x, delta.y, delta.z) * 2.0f / stepTime;
            }

            prevPosition = transform.position;
            prevRotation = transform.rotation;
        }


Any idea that I could suppress or get rid of this warning? Im using latest 6.5 version with Unity 2023.2.19f

Print this item

  Is there a way to query collisions with Obi Bone?
Posted by: spikebor - 06-05-2024, 12:00 PM - Forum: Obi Rope - Replies (5)

I want to detect collisions with this character (which has nothing on him other than Obi bone)
Can it be done, or he should have Collider? I think Obi Bone or not, it has particles under it as all Obi things, so I can query its collisions with my character (my character has Obi Collider)
I want to debug the impulse.

[Image: AfR6o6v.png]

The Golem can contact and push my character back, but this code (subscribed to character's solver.OnCollision event) returns no collisions.

Code:
        void Solver_OnCollision(object sender, ObiSolver.ObiCollisionEventArgs e)
        {
            foreach (Oni.Contact contact in e.contacts)
            {
                collisionsImpulse += contact.normalImpulse;
            }
        }

Even though I enable Collision and Particle Collision collision / Queries on my character.

Print this item

  Compatibility with magicacloth2
Posted by: etemaru - 04-05-2024, 12:16 PM - Forum: Obi Fluid - Replies (3)

An error occurs when magicacloth2 and obi fluid are used together, and the error continues even if magicacloth2 is removed.

What should I do?

Print this item

  Rope Jittering/ Stuttering
Posted by: Nixon - 03-05-2024, 12:46 PM - Forum: Obi Rope - Replies (3)

Good Day, 

thank you for your time! 
I am currently experiencing rope stuttering in my VR Game. I have made a small video demostration, where you can have a look at how it is experiecned:

https://drive.google.com/uc?id=171SoEWaf...t=download

Then after watching the video, heres some screenshots from the Components!

I have attatched two screenshots to this, one is the Solver Inspector + Hierarchy and one is one of the Ropes Inspector


Again, thank you so much in advance!
Best,
Nixon Sonrisa

Print this item

Exclamación Advection but for a mesh.
Posted by: spikebor - 03-05-2024, 09:28 AM - Forum: Obi Fluid - Replies (2)

I'm thinking about this idea for a while.
We got: 
-Obi Fluid which is limited in particle count, making something like a pool will be hard on the GPU.
-Obi fluid can advect things near it, like shuriken particles.

So why can't we apply the same advection idea, but instead of shurikens, we apply it to the nearby mesh vertex?

So the idea is we have a pool of Obi fluid particles, which having very large particle scale, and not rendered.
With this we can have any object that jump into the pool will be physics collide and have buoyancy force to pull it up but with low particle count.
And on top we have a plane mesh for the surface, which advected by the Obi Fluid. This way the mesh can have deformation, this mesh can be Fluxy mesh which have 2.5D sim on top to give us detailed waves simulation, while the Obi Fuild give it bigger wave advection.

Isn't this a best of both world? You can make a bridge asset that have 2 requirements that are Fluxy and Obi Fluid. If you can add underwater rendering for it, it will sell like hot cakes.

Print this item