Hi. I used version 3.6 together with Unity 5.02 to release my game. Working fine, using a custom class that generates a derivative of a pont graph as I needed to cover a planet surface with nodes.
Updated Unity to 5.11, then 5.1.1p3. Path lookup stopped working on iOS-il2cpp builds. Everything works ok on the Editor.
I updated to version 3.7 at the AssetStore (using the Pro version btw). Had to change some of my code as I had patched 3.6 slightly, but got back to a working version on the Editor. When publishing to iOS-il2cpp, paths are still showing with 0 nodes. Scan is very fast, and then the path is empty, so the agent simply sits still.
In order to try to narrow down the issue I then simply opened the PointGraphExample.unity scene supplied with A* Pathfinding Project. Verified that it works on Editor. Published to iOS-il2cpp, and same results: the cylinder is no longer following the path, presumably because it is being scanned and returning 0 nodes.
Can you reproduce this? I understand it is probably an il2cpp bug, but how do we go about fixing this or reporting to Unity?
Best regards,
Mauricio Piacentini
Hi
Are you getting any exceptions?
Try to make a build with exception support set to “Explicitly Thrown Exceptions” (unity player settings).
I am using 5.1.2p1 and I just tried a webgl build with exception support set to None, api compatibility level set to .Net 2.0 subset, stripping level disabled and it works perfectly fine for me.
Does it work on iOS-il2cpp universal buids as well?
Your PointGraphExample.unity scene works for me in 5.1.2p2, WebGL build. But it does not work if I build for iOS (also using il2cpp). It compiles and runs, but the node count is 0.
BTW, in 5.1.2f1 I get link errors. So it seems that il2cpp evolution is a bit erratic, some builds work, others don’t even compile, others compile but don’t work… Difficult (impossible?) to diagnose as it works in the Editor and even in WebGL, and I can not see a way to throw exceptions or something like this on iOS.
More information to Aron: I started from a clean download of our package (3.7 on AssetStore) on 5.1.2p2. My results are this:
1- Trying a Navmesh terrain example
- Works ok on all platforms tested, including il2cpp ios
2- Trying the PointGraph example
- Works ok on Editor, Standalone, webGl-il2cpp and iOS-Mono
- On iOS-il2cpp the build works, scene runs without errors, but the node count is 0, so the agent remains stuck
It is very strange that the webgl-il2cpp build works while the ios one fails. But as the navmesh example works I think this narrows down the il2cpp translation problem to something specific in the PointGraph class.
I submitted a bug to Unity today.
Maybe other people are not seeing this yet because it does not affect the navmeshes, which I believe might be more popular than the PointGraph.
Very odd…
It is usually iOS that works and WebGL that does not work…
Just tested 5.2b5. Unfortunately the bug is still there.
Just to let you know it was reproduced by Unity QA. It only happens on older iOS versions (I was testing on 7.04), apparently 8 and later are ok. They do not have yet an ETA for the fix.
Ok. Thanks.
Annoying, but hopefully Unity will push a fix soon.
Good news is that this issue is fixed in 5.1.3p3, just released today. The 5.2 branch is still not fixed, but this should probably come in the next update (fingers crossed).
1 Like