Search Forums

(Advanced Search)

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

 
  Test if rope is tense, and extend it in code
Posted by: usernameHed - 18-03-2018, 12:56 PM - Forum: Obi Rope - Replies (5)

Hello, i have a rope attached on 2 player. I want to test in c# if the rope is tense enougth, and if so, extend the rope (when the player it a button for exemple).

I have found in GrapplingHook the way to extend the rope, with [ObiRopeCursor].ChangeLength([ObiRope].RestLength +- value;
Now, how can I test if the rope is more or less tense ? I could test the distance maybe...

I just bougth Obi rope, please be explicit

[Image: ezgif-4-e6bff1cec6.gif]

Print this item

  Proxy for simulation from simple model to complex model
Posted by: Sest14 - 18-03-2018, 11:41 AM - Forum: Obi Cloth - Replies (3)

Hello.

I'd like to make a character wear a skirt using Obi Cloth. 
First, I created a simple cylindrical skirt and set up the simulation.
Next, I created a complex shaped skirt with many pleats and frills. 
And I tried to pour animation using a proxy, but it did not work well. 

https://www.fastpic.jp/index.php?module=...123744.png
Since it is a model before information disclosure, images can not be uploaded. sorry.

It looks like a thorn popping out from various places (mainly pleats and frills). It is the result of simply binding.
Both of skirts are not thick.

How can I solve this issue?

Environment:
Windows 7
Unity 5.6.3f1
ObiCloth 3.3

Edit:
Upload a image of issue
https://www.fastpic.jp/images.php?file=6483429385.png

Print this item

Triste No collision with the object
Posted by: mikechui - 17-03-2018, 04:52 PM - Forum: Obi Fluid - Replies (4)

Hi all,

I have set up the fluid (see attached) but there is no collision with the object.
Sorry to bother you all as I read the FAQ already but got stuck ><
Super thanks again!!

Best,

Mike

Print this item

  Adding pin constraints to a rope at runtime
Posted by: Chilly5 - 17-03-2018, 01:12 PM - Forum: Obi Rope - Replies (10)

Hello,

I am working on a game in Unity where I want to add pin constraints all the way down the Obi Rope at runtime. Every unit of the rope should be covered with a constraint. The idea is that I'm attaching selectable colliders that can be "grabbed" by the player and then swung on.

I copied almost exactly the code from the "adding/removing constraints" page on the website here: http://obi.virtualmethodstudio.com/tutor...aints.html
Unity didn't like a few of the casts so I modified it slightly, but it's more or less the same.

Here's my current script:


Code:
    [SerializeField]
    private GameObject _networkedGrabPoint;

    private ObiRope _obiRope;

    [SerializeField]
    private List<GameObject> _chainLinks = new List<GameObject>();

    [SerializeField]
    private List<GameObject> _ropeLinks = new List<GameObject>();

    void Start()
    {
        _obiRope = GetComponentInChildren<ObiRope>();
        _chainLinks = _obiRope.chainLinks;

        for (int i = 0; i < _obiRope.positions.Length; i++)
        {
            GameObject _ropeLink = GameObject.Instantiate(_networkedGrabPoint, transform);
            _ropeLink.transform.localPosition = _obiRope.positions[i];
            _ropeLinks.Add(_ropeLink);
        }
    }
    
    void Update () {
        if (Input.GetKeyDown(KeyCode.R))
        {
            ObiPinConstraints constraints = _obiRope.GetComponent<ObiPinConstraints>();
            ObiPinConstraintBatch batch = constraints.GetBatches() as ObiPinConstraintBatch;
            
            // remove the constraints from the solver, because we cannot modify the constraints list while the solver is using it.
            constraints.RemoveFromSolver(null);

            ObiCollider ropeLink = _ropeLinks[0].GetComponent<ObiCollider>();
            batch.AddConstraint(0, ropeLink as ObiColliderBase, Vector3.zero, 1.0f);

            // add all constraints back:
            constraints.AddToSolver(null);
            
        }
    }

Almost word for word copied from what was given on the website. For some reason it didn't like the line "(ObiPinConstraintBatch)constraints.Getbatches()[0]" so I modified it to "constraints.GetBatches() as ObiPinConstraintBatch".

Right now, it's giving me a "null reference exception: object reference not set to an instance of an object" error on this line: batch.AddConstraint(0, ropeLink as ObiColliderBase, Vector3.zero, 1.0f);

I don't understand why. I checked the ObiColliderBase and it seems to definitely exist so I don't know why it would give me a null reference error there.

Any help would be very appreciated!

Thank you.

Print this item

  Rope twitching at 30 fps
Posted by: Harpoon - 17-03-2018, 11:47 AM - Forum: Obi Rope - Replies (5)

Perhaps I'm doing something wrong but every time the FPS is below 60 the rope starts twitching.

Below is the example.

I've added some post processing to the camera to lower the fps.

Print this item

  Tips for improving performance?
Posted by: CageyKG - 17-03-2018, 03:05 AM - Forum: Obi Rope - Replies (2)

Are there any general guidlines or tips to follow in order to reduce Obi Rope’s CPU footprint? Obi currently more than halves my framerate when simulating and I’m looking to get it back down to acceptable VR speed. It seems like most of it comes from updating obi colliders (ObiSolver.FixedUpdate.UpdateColliders is around 30% of frame’s total time.) I’ve been pretty fast and loose with adding obi colliders around since a lot of the game is very up close to the ObiRope cables and I wanted them to interact well with things inside the VR space. Do I need to be more sparing with these?

The other large chunk comes from rendering with ObiSolver.LateUpdate…ObiRopeThichRenderMode.Update being another 25% of my frame’s time. Smoothing seems like the main culprit (drops to aroung 7% when changing smoothing from max 3 down to 0), but decreasing it doesn’t have pleasing results. Should I be using higher cable resolution or some other method to achieve less angular cables instead?

It’s also a huge multiplier on the physics update, increasing it by at least 2 times when the solver is enabled, sometimes more (running on a timestep of .01 with the default 6 solver iterations). Is this just part of the deal when it comes to running this solver, or does it seem like that should be reducable somehow as well?

The scene in question has around 20 cables with an average of around 15 particles each, 4 pins constraints each, hierarchical tethers, and full smoothing/rendering. The solver is set to skip skin, volume, stitch, and density, but does everything else on Sequential settings with 5 iterations. Solver reports that it’s only using 466 particles total, which seems well within a reasonable range, hence my looking elsewhere for spots to improve performance.

Print this item

  Advice on how to make a fine powder
Posted by: corbinyo`` - 16-03-2018, 03:35 PM - Forum: Obi Fluid - Replies (1)

Has anyone used obi fluid to make something similar to a fine powder, like baking soda or flour?

Print this item

  Adding ObiEmmitor gameObject in code
Posted by: shtolyan - 16-03-2018, 02:16 PM - Forum: Obi Fluid - Replies (10)

Hello! Thank you for the wonderful asset
Can you help me with the problem of creating an emitter in the code? The object is created on the scene, all obi objects are configured, but the render does not work.


[Image: -o3QSG2tnohlkRdAU6fe4bzLjCN7hFBsL7ufMg94...=2048x2048]

Here is my code:



public void Init()

        {

            GameObject emitterObject = new GameObject("emitter",

                typeof(ObiEmitter),

                typeof(ObiParticleRenderer));



            emitterObject.transform.position = gameObject.transform.position;

            emitterObject.transform.parent = gameObject.transform;



            _emitter = emitterObject.GetComponent<ObiEmitter>();

            _emitter.Solver = GameControllerObjects.Instance.ObiSolver;

            _emitter.NumParticles = 1000;

            _emitter.emissionMethod = ObiEmitter.EmissionMethod.STREAM;

            _emitter.speed = ((Liquid)VRAObject.Type).Speed;

            _emitter.lifespan = ((Liquid)VRAObject.Type).Lifespan;

            _emitter.randomVelocity = ((Liquid)VRAObject.Type).RandomVeloncity;

            _emitter.EmitterMaterial = GameControllerObjects.Instance.ObiEmitterMaterial;



            Color newCol = new Color();

            string htmlValue = "#" + ((Liquid)VRAObject.Type).ParticleColor;

            ObiParticleRenderer particleRenderer = emitterObject.GetComponent<ObiParticleRenderer>();

            if (ColorUtility.TryParseHtmlString(htmlValue, out newCol))

                particleRenderer.particleColor = newCol;

            particleRenderer.radiusScale = ((Liquid) VRAObject.Type).RadiusScale;

            GameControllerObjects.Instance.ObiFluidRenderer.particleRenderers.Add(particleRenderer);



            StartCoroutine(OnFinish());


        }

IEnumerator OnFinish()

        {

            yield return _emitter.StartCoroutine(_emitter.GeneratePhysicRepresentationForMesh());

            _emitter.AddToSolver(null);
        }


Also I have Exeption!
NullReferenceException: Object reference not set to an instance of an object
Obi.ObiActor.PushDataToSolver (ParticleData data) (at Assets/Obi/Scripts/Actors/ObiActor.cs:369)
Obi.ObiActor.AddToSolver (System.Object info) (at Assets/Obi/Scripts/Actors/ObiActor.cs:276)
Obi.ObiEmitter.AddToSolver (System.Object info) (at Assets/Obi/Scripts/Actors/ObiEmitter.cs:137)
Obi.ObiActor.Start () (at Assets/Obi/Scripts/Actors/ObiActor.cs:148)

Thank you!

Print this item

  holes on clothes
Posted by: AnriCZ - 15-03-2018, 06:46 PM - Forum: Obi Cloth - Replies (7)

Hi!
I saw video on the youtube https://www.youtube.com/watch?v=sc6kq1TV8Ek. I am doing everything the same, but have a problem. When I activated animation in Unity, shorts are torn.
The same problem I see in DAZ when turn animation on.
When I change poses in DAZ also appear holes on clothes, but in 1 sec everything goes to normal and clothes puts on correctly.
I spent many hours in solving of this problem, but nothing.
Daz 4.10
Unity 201.3.1f1
Genesis 8

So, i was  searching for alternative way for clothing and found your asset.
Questions:
1. Does it works with Daz3d genesis 8 models and clothing?
2. Will it solve my problems with holes?

Print this item

  Oculus support
Posted by: mikechui - 15-03-2018, 12:17 PM - Forum: Obi Fluid - Replies (3)

Dear sir,

May I know if the plugin will work with Oculus rift and an imported 3D model with interaction like pouring water?

Best,

Mike

Print this item