Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Bug / Crash  Obi Fluid crashed on scene load
#1
Hello Virtual Method Support team,
 
I recently purchased Obi Fluid from Unity Asset Store.
It worked perfectly in Unity Editor.
I built the game.exe and run it and it crashes when scene with fluid is loaded.
I narrowed it down to Obi Emitter component: if it is enabled in scene, the player crashes.
 
Game7776 by Miltocoal [version: Unity 2019.4.9f1_50fe8a171dd9]

libOni.dll caused an Access Violation (0xc0000005)
  in module libOni.dll at 0023:500e3af0.

Error occurred at 2020-10-15_220936.
I:\UnityProjects\Game7776\build\Game7776.exe, run by milto.

35% physical memory in use.
32657 MB physical memory [0 MB free].
304 MB process peak paging file [303 MB used].
274 MB process peak working set [274 MB used].
System Commit Total/Limit/Peak: 4054MB/657MB/3115MB
System Physical Total/Available: 3985MB/467MB
System Process Count: 285
System Thread Count: 4311
System Handle Count: 120081
Disk space data for 'C:\Users\milto\AppData\Local\Temp\Miltocoal\Game7776\Crashes\Crash_2020-10-15_190934824\': 35348586496 bytes free of 126174097408 total.

Read from location FFFFFFFF caused an access violation.

Context:
EDI:    0x1ff6f400  ESI: 0x1ff6f400  EAX:  0x21590010
EBX:    0x1ff6f480  ECX: 0x0377acd0  EDX:  0x1ff6f3e0
EIP:    0x500e3af0  EBP: 0x1ff6f544  SegCs: 0x00000023
EFlags: 0x00010202  ESP: 0x1ff6f3e0  SegSs: 0x0000002b


Bytes at CS:EIP:
0f 29 52 04 89 1a c7 42 14 00 00 00 00 89 4a 18

Mono DLL loaded successfully at 'I:\UnityProjects\Game7776\build\MonoBleedingEdge\EmbedRuntime\mono-2.0-bdwgc.dll'.


Stack Trace of Crashed Thread 22164:
0x500E3AF0 (libOni) Ordinal0
0x500E5231 (libOni) Ordinal0
<Missing stacktrace information>

 
Could you please help me?
 
Sincerely,
Pereadoc Buck.
Reply
#2
Hi there,

This seems to be specific to the Oni backend, in the meantime you can use Burst instead and it should work fine.

Can you give us a bit more detail as to what the scene that crashed contains? Is it one of the sample scenes, or one of your own? Also, what is your target platform (Win 64 bit)?
Reply
#3
(16-10-2020, 09:45 AM)josemendez Wrote: Hi there,

This seems to be specific to the Oni backend, in the meantime you can use Burst instead and it should work fine.

Can you give us a bit more detail as to what the scene that crashed contains? Is it one of the sample scenes, or one of your own? Also, what is your target platform (Win 64 bit)?

Target: Windows x86 (32 bit).
Sample scene crashed: FaucetAndBucket (also my own scene).
Solver backend is already set to Burst, although a following warning displayed: "The Burst backend depends on the following packages: Mathematics, Collections and Burst. The default backend (Oni) will be used instead, if possible". Is there something I can fix?
Reply
#4
(16-10-2020, 12:50 PM)miltocoal Wrote: Target: Windows x86 (32 bit).
Sample scene crashed: FaucetAndBucket (also my own scene).
Solver backend is already set to Burst, although a following warning displayed: "The Burst backend depends on the following packages: Mathematics, Collections and Burst. The default backend (Oni) will be used instead, if possible". Is there something I can fix?

Hi there,

Since I can't reproduce this on a 64 bit machine, chances are the issue is in the 32 bit lib. Will try and get back to you.
Edit: switching to 64 bit should also work fine. It works in editor because the editor is 64-bit only.

For Burst to work, you need to install its dependencies as per the manual:
http://obi.virtualmethodstudio.com/tutor...kends.html

-Burst 1.3.3 or newer
-Collections 0.8.0-preview 5 or newer
-Mathematics 1.0.1 or newer
-Jobs 0.2.9-preview.15 or newer

If you don't have these installed, Burst will fall back to Oni.
Reply
#5
(16-10-2020, 12:57 PM)josemendez Wrote: Hi there,

Since I can't reproduce this on a 64 bit machine, chances are the issue is in the 32 bit lib. Will try and get back to you.

For Burst to work, you need to install its dependencies as per the manual:
http://obi.virtualmethodstudio.com/tutor...kends.html

-Burst 1.3.3 or newer
-Collections 0.8.0-preview 5 or newer
-Mathematics 1.0.1 or newer
-Jobs 0.2.9-preview.15 or newer

If you don't have these installed, Burst will fall back to Oni.

After installing required dependencies, ObiFluid is not crashing anymore for me. Thanks.

As for 32bit, I can't switch to 64bit due to current requirements. Could it affect performance of ObiFluid?
Reply
#6
(16-10-2020, 01:31 PM)miltocoal Wrote: After installing required dependencies, ObiFluid is not crashing anymore for me. Thanks.

No worries! Using Burst is fine, and performance will be better than with Oni. Nevertheless I'm taking a look at the 32 bit Oni library, the bug seems to be related to memory alignment. Once it's fixed it will be included in the next release.

(16-10-2020, 01:31 PM)miltocoal Wrote: As for 32bit, I can't switch to 64bit due to current requirements. Could it affect performance of ObiFluid?

Performance is always a bit lower on 32 bit, regardless of what you're running. So yes, using 32 bit will affect performance.
Reply