Latest Threads |
can you remove particles ...
Forum: Obi Softbody
Last Post: aardworm
09-07-2025, 07:09 AM
» Replies: 0
» Views: 65
|
ObiRope Mesh Renderer
Forum: Obi Rope
Last Post: quent_1982
08-07-2025, 11:27 AM
» Replies: 4
» Views: 276
|
How to dynamically change...
Forum: Obi Rope
Last Post: quent_1982
08-07-2025, 06:34 AM
» Replies: 6
» Views: 427
|
Pipeline that bends
Forum: Obi Softbody
Last Post: josemendez
04-07-2025, 09:52 AM
» Replies: 13
» Views: 1,130
|
How to implement/sync Obi...
Forum: Obi Rope
Last Post: quent_1982
01-07-2025, 01:48 PM
» Replies: 2
» Views: 295
|
Collisions don't work con...
Forum: Obi Rope
Last Post: chenji
27-06-2025, 03:05 AM
» Replies: 3
» Views: 381
|
Force Zone apply differen...
Forum: Obi Rope
Last Post: chenji
26-06-2025, 11:41 AM
» Replies: 11
» Views: 1,057
|
Can I blend in and out of...
Forum: Obi Cloth
Last Post: josemendez
24-06-2025, 04:42 PM
» Replies: 3
» Views: 353
|
Using a rigidbody/collide...
Forum: Obi Cloth
Last Post: josemendez
24-06-2025, 09:29 AM
» Replies: 1
» Views: 215
|
Solver is too performance...
Forum: Obi Rope
Last Post: quent_1982
20-06-2025, 08:09 AM
» Replies: 40
» Views: 5,181
|
|
|
Counting total particles into bucket |
Posted by: FamilyGamesTime - 09-10-2018, 03:29 AM - Forum: Obi Fluid
- Replies (1)
|
 |
Hi,
Using the Obi Fluid faucet and bucket example but with a lifespan of say 5 on the particles, how would I go about counting the total particles that have entered the bucket? This would include the particle count after the lifespan of the current particles expire and new particles are generated. Basically what I'm trying to do is allow the user to move the bucket and calculate a score based on how many particles enter the bucket in total. The liquid stream may come in bursts (e.g. 500 in 1 second, then the particles are expired and another round comes a few seconds later), or it may be a constant stream but just 500 active particles at any one time.
So if they catch all the particles in the first stream I want the score to be 500, then those particles expire, and if they catch all the particles in the second stream the score would be 1000.
I've used the collider example and tested if the collider is the bucket, which gives me a current total count in the bucket. Because the ID of the particles are reused when the expire, I can't keep a list of all particle IDs that have collided with the bucket.
Is there some sort of OnExpire event I can hook in to? This way I could check at expire time if the particle is colliding with the bucket and add 1 to the overall score.
Thanks.
|
|
|
Moving rope (attach/fixed point) without applying force to the rope |
Posted by: KjetilMV - 03-10-2018, 09:19 AM - Forum: Obi Rope
- Replies (8)
|
 |
Hi
I have moving object which my object must be(or seem to be) attached to. What I need to do is have my rope moving with the object, without any (or a minimal amount of) force being applied to the rope. In other words: the rope must hang straight down even though the parent object is moving.
Any suggestions or tips on how to achieve this?
Thanks in advance.
|
|
|
Per particle phase change |
Posted by: ckyun777 - 01-10-2018, 04:12 PM - Forum: Obi Fluid
- Replies (3)
|
 |
Hello
I'm working on welding simulation.
Is it possible to change per particle properties?
For example, viscosity of a particle can be changed by external heat? and getting colder as time flows?
Is it possible to make some particle become a sleep state and activated by external trigger so the computation load can be optimized.
Thanks!
|
|
|
Performance Questions |
Posted by: rosedev - 01-10-2018, 03:08 AM - Forum: Obi Fluid
- Replies (5)
|
 |
Hello,
I have two questions on performance.
1) Unity Profiler shows spikes approximately once per second on the Oni.WaitForAllTasks() method, even when the fluid is not moving. Is it normal?
I also checked with ObiProfiler, but I didn't notice anything unusual, except the long "Idle (15ms)" label, which seems to be shown on every spike.
I attached screenshots of ObiSolver, Unity Profiler, ObiProfiler and Emitter material.
2) I have a big level with many (about 20) colliders (some of them are EdgeCollider2D). Does it make sence to disable all colliders which are far away from the fluid?
I have an idea to fetch the fluid grid each frame using Oni.GetParticleGrid() and disable all colliders that don't contains/intersects with any of the fluid cells.
Something like that:
Code: // Solver.OnFrameEnd += UpdateCollidersState;
private void UpdateCollidersState(object sender, System.EventArgs e)
{
var cellCount = Oni.GetParticleGridSize(Solver.OniSolver);
CurrentFluidGridCells = new Oni.GridCell[cellCount];
Oni.GetParticleGrid(Solver.OniSolver, CurrentFluidGridCells);
for (var i = 0; i < Colliders.Count; i++)
{
var c = Colliders[i];
var shouldBeEnabled = false;
for (var j = 0; j < CurrentFluidGridCells.Length; i++)
{
if (IsColliderAABBIntersectsWithFluidGridCell(c.SourceCollider, CurrentFluidGridCells[j].center, CurrentFluidGridCells[j].size*2)) // compare collider.bounds with cell bounds
{
shouldBeEnabled = true;
break;
}
}
c.enabled = shouldBeEnabled;
c.SourceCollider.enabled = shouldBeEnabled;
}
}
What do you think, will it increase the performace? I'm asking because I can't test it quickly (I have to change a lot of code to implement that)
Thank you.
![[Image: n2yV2iG.png]](https://i.imgur.com/n2yV2iG.png)
![[Image: s15wdgA.png]](https://i.imgur.com/s15wdgA.png)
![[Image: 1K4tELS.png]](https://i.imgur.com/1K4tELS.png)
|
|
|
High Resolution mesh initialization |
Posted by: kocosman - 30-09-2018, 05:17 AM - Forum: Obi Cloth
- Replies (1)
|
 |
Hey there,
I started using Obi Cloth extensively for a project recently. Unity editor becomes unresponsive while initializing a high resolution mesh. It works when the mesh has around 10.000 vertices, but it crashes at around 60.000 vertices. Does obi cloth has limitations, is it a unity bug, any ideas?
Thanks.
Software:
Unity 2018.2.8f1
Latest Obi Cloth
Hardware:
i7-7700HQ (2.8GHz, 8 core)
GTX 1070
|
|
|
Cloth Proxy hangs forever on "Bind" |
Posted by: henryh - 26-09-2018, 01:59 AM - Forum: Obi Cloth
- Replies (1)
|
 |
[attachment=184]
Hello,
I recently discovered that I needed to create a cloth proxy. It is for the trim of a women's dress mesh. I added Obi Cloth Proxy to the new trim mesh, assigned the original dress (ObiCloth) object to the "Particle Proxy" field. I created a ObiMeshTopology for the new trim mesh and generated it, then assigned it to ObiClothProxy's Target Topology field. Lastly, I created an ObiTriangleSkinMap to map between the original dress mesh to the new trim mesh.
Clicking on the new ObiTriangleSkinMap, I assigned the original dress mesh's ObiMeshTopology to the "Source topology" field of the new ObiTriangleSkinMap, and assigned the new trim mesh to the "Target mesh" field. Then I proceeded to "Edit skin map".
Here is the problem. When I click "Bind" the Unity freezes and never unfreezes (I have to use Window's Task Manager to forcefully End Task on Unity). I'm using Unity verysion 2018.2.2f1.
What's happening here? I can't debug it because Unity is completely frozen.
Thanks,
Henry
Update: I let it run for 15 minutes and it finally completed. Is there any way to speed up the process?
|
|
|
|