Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Mobile Optimizations
#1
Hi, I love the fluid plugin and it works great on my computer. However, on my android device which is pretty new is struggling to get through the basics of my small scale fluid animation, I would appreciate it if anyone could tell me as many steps as possible to optimize the efficiency on mobile devices (im fine with a reduction in quality as i want my project to work on as many devices as possible) any and all tips would be greatly appreciated. Thanks!
Reply
#2
(02-01-2018, 06:31 PM)pstudios Wrote: Hi, I love the fluid plugin and it works great on my computer. However, on my android device which is pretty new is struggling to get through the basics of my small scale fluid animation, I would appreciate it if anyone could tell me as many steps as possible to optimize the efficiency on mobile devices (im fine with a reduction in quality as i want my project to work on as many devices as possible) any and all tips would be greatly appreciated. Thanks!

Hi there!

First of all, profile your scene in your device (trough ADB). Focusing your effort on something you're not sure its the bottleneck (could be simulation or rendering, seen both on different types of mobile devices) is generally not a good idea.

In case your bottleneck is rendering (highly likely if you're using the built-in fluid shaders, as they're meant for high-end desktops), you will need to write a simpler shader. We can help you with that if needed.

In case the problem is simulation, try to:
- Make Unity's physics timestep larger, and max timestep smaller.
- Reduce your fluid material resolution.
- Reduce the amount of density constraint iterations in your ObiSolver.

cheers!
Reply
#3
(11-01-2018, 04:54 PM)josemendez Wrote: Hi there!

First of all, profile your scene in your device (trough ADB). Focusing your effort on something you're not sure its the bottleneck (could be simulation or rendering, seen both on different types of mobile devices) is generally not a good idea.

In case your bottleneck is rendering (highly likely if you're using the built-in fluid shaders, as they're meant for high-end desktops), you will need to write a simpler shader. We can help you with that if needed.

In case the problem is simulation, try to:
- Make Unity's physics timestep larger, and max timestep smaller.
- Reduce your fluid material resolution.
- Reduce the amount of density constraint iterations in your ObiSolver.

cheers!



Greetings, I am a new customer and also wondering about this.

Our game is focused on mobile, and would love to have much simpler fluid renderer shaders, is there an example we can work from? My quick search didn't show any results.

Thank you for your attention

(10-02-2018, 03:22 AM)oddgoo Wrote: Greetings, I am a new customer and also wondering about this.

Our game is focused on mobile, and would love to have much simpler fluid renderer shaders, is there an example we can work from? My quick search didn't show any results.

Thank you for your attention

Actually, I've just found the flat and opaque shaders, and I'm happy to profile with those  Sonrisa
Reply
#4
(11-01-2018, 04:54 PM)josemendez Wrote: Hi there!

First of all, profile your scene in your device (trough ADB). Focusing your effort on something you're not sure its the bottleneck (could be simulation or rendering, seen both on different types of mobile devices) is generally not a good idea.

In case your bottleneck is rendering (highly likely if you're using the built-in fluid shaders, as they're meant for high-end desktops), you will need to write a simpler shader. We can help you with that if needed.

In case the problem is simulation, try to:
- Make Unity's physics timestep larger, and max timestep smaller.
- Reduce your fluid material resolution.
- Reduce the amount of density constraint iterations in your ObiSolver.

cheers!
Hello. Can you provide information where i can find "physics timestep larger, and max timestep smaller" and material resolution?


Attached Files Thumbnail(s)
   
Reply
#5
(09-07-2018, 12:53 PM)Artem Wrote: Hello. Can you provide information where i can find "physics timestep larger, and max timestep smaller" and material resolution?

"Material resolution" is part of the fluid material asset used by your emitter. Here's the full documentation:
http://obi.virtualmethodstudio.com/tutor...rials.html
Reply
#6
(10-07-2018, 09:31 AM)josemendez Wrote: "Material resolution" is part of the fluid material asset used by your emitter. Here's the full documentation:
http://obi.virtualmethodstudio.com/tutor...rials.html

thanks for the answer.  

I was able to achieve 37 fps at 800 particles on xiaomi mi4s and would like to achieve 60 fps. 

Can you help me?

thanks.
Reply
#7
(11-07-2018, 08:03 AM)Artem Wrote: thanks for the answer.  

I was able to achieve 37 fps at 800 particles on xiaomi mi4s and would like to achieve 60 fps. 

Can you help me?

thanks.

Hello

I'm new around here and I liked using obi. It works fine on my computer, but when I throw it into the phone, my liquid spills out regardless of the collider of the bottle I put into it.

My main goal is to use it in Augmented Reality, but I can't move on to it before I can figure it out.

Can you help me please?
Reply
#8
(03-04-2021, 11:59 PM)EbruBozkurt Wrote: Hello

I'm new around here and I liked using obi. It works fine on my computer, but when I throw it into the phone, my liquid spills out regardless of the collider of the bottle I put into it.

My main goal is to use it in Augmented Reality, but I can't move on to it before I can figure it out.

Can you help me please?

If you’re using MeshColliders for your bottles/containers, don’t. They’re “hollow”, which means only their surface produces collisions. Particles will easily tunnels trough their surface when moving them around. Use distance fields instead:

http://obi.virtualmethodstudio.com/tutor...ields.html
Reply
#9
Hello.

I'm using Obi Fluid and I noticed that it takes a long time to launch the app on my Android device.
At first I thought it was a problem with my project, but when I built and launched the sample scene "FaucetAndBucket", it took the same time.
It takes about 10 seconds until the MainScene starts playing.
How can I reduce the startup time?
Thank you.

My environment
Unity 2019.3.7f1
Obi Fluid 6.0.1
Device GalaxyS10
Reply
#10
(05-04-2021, 08:28 AM)MikeSan Wrote: Hello.

I'm using Obi Fluid and I noticed that it takes a long time to launch the app on my Android device.
At first I thought it was a problem with my project, but when I built and launched the sample scene "FaucetAndBucket", it took the same time.
It takes about 10 seconds until the MainScene starts playing.
How can I reduce the startup time?
Thank you.

My environment
Unity 2019.3.7f1
Obi Fluid 6.0.1
Device GalaxyS10

Hi there,

I'm unable to reproduce this, opening the FaucetAndBucket scene takes 2-3 seconds on a Galaxy S4 for us. Obi does not do any preprocessing at startup, so there should be no waiting time at start. Simulation is done every the same way frame since startup.

Maybe you can use Unity's profiler to determine what's causing that extra wait at start in your device.

let me know how it goes,
Reply