BurstTriangulator
v3.8.0
Search Results for

    Show / Hide Table of Contents

    Known Issues

    Below you can find current known issues. If you found a bug, please report it by opening a GitHub issue.

    #333: AtomicSafetyHandle may throw InvalidOperationException

    Unity.Collections@2.2+ has an unresolved bug, as you can read here:

    QUOTE

    All containers allocated with Allocator.Temp on the same thread use a shared AtomicSafetyHandle instance rather than each having their own.

    This can lead to safety check error throws like this:

    InvalidOperationException: The Unity.Collections.NativeList`1[System.Int32]
    has been declared as [WriteOnly] in the job, but you are reading from it.
    

    when using UnsafeTriangulator with Allocator.Temp. Consider the following example:

    using var positions = new NativeList<double2>(Allocator.Temp);
    positions.Add(...);
    
    new UnsafeTriangulator().Triangulate(input: new(){ Positions = positions.AsArray() }, ...);
    

    Unfortunately, due to AsArray() call, which should be safe, the above example will trigger an exception from the safety handle. Currently the only way to resolve this issue is:

    • Disable safety checks, or
    • Call ToArray(Allocator)

    I recommend the second option, calling ToArray, unless you are certain about what you are doing.

    using var positions = new NativeList<double2>(Allocator.Temp);
    positions.Add(...);
    
    using var p = postions.ToArray(Allocator.Temp);
    new UnsafeTriangulator().Triangulate(input: new(){ Positions = p }, ...);
    

    📂 Archived Issues (Click to expand)

    Archive

    #103: Leak Detected Warning in the Console

    In the Unity Editor, you may encounter the following log message:

    Leak Detected : Persistent allocates 257 individual allocations. To find out more please enable 'Jobs/LeakDetection/Full StackTraces' and reproduce the leak again.
    

    Not to worry, this issue is likely related to an internal bug in the Unity.Collections or Unity.Burst package (related to NativeQueue<> allocation).

    Resolved: NativeQueue<T> is no longer used in the package. The log should no longer be visible since v3.6.

    #105, #106: Incorrect triangulations for complicated input

    Due to floating-point precision, triangulation may fail for some input. This is often related to single-point precision. Changing coordinates from float2 to double2 solves the issue. This will be addressed in the upcoming release. If you want to try it now, there is an experimental branch available here.

    Resolved: Use double2 precision (e.g., Triangulator<double2>). Fixed since v3.

    In this article
    Back to top Generated by DocFX | Documentation © 2024 by Andrzej Więckowski is licensed under CC BY 4.0