Firstborn/Library/PackageCache/com.unity.burst@1.7.3/Documentation~/docs/KnownIssues.md
Schaken-Mods b486678290 Library -Artifacts
Library -Artifacts
2023-03-28 12:24:16 -05:00

2.3 KiB

Known Issues

  • The maximum target CPU is currently hardcoded per platform. For standalone builds that target desktop platforms (Windows/Linux/macOS) you can choose the supported targets via Burst AOT Settings. For other platforms see the table above.
  • Building iOS player from Windows will not use Burst, (see Burst AOT Requirements)
  • Building Android player from Linux will not use Burst, (see Burst AOT Requirements)
  • Building from an Xcode project generated via "Create Xcode Project" will not use Burst.
  • If you change the Burst package version (via update for example), you need to close and restart the editor. A warning is now displayed to this effect.
  • Struct with explicit layout can generate non optimal native code.
  • BurstCompiler.SetExecutionMode does not affect the runtime yet for deterministic mode.
  • Burst does not support scheduling generic Jobs through generic methods. While this would work in the editor, it will not work in the standalone player.
  • Assemblies whose path contain a semicolon break Burst.

Some of these issues may be resolved in a future release of Burst.

Known issues with DllImport

  • DllImport is only supported for native plugins, not platform-dependent libraries like kernel32.dll.

Known issues with debugging/profiling

  • Lambda captures on Entity.ForEach() are not discovered for debugging data, so you won't be able to inspect variables originating from these.
  • Structs that utilize LayoutKind=Explicit, and have overlapping fields, are represented by a struct that will hide one of the overlaps. In the future they will be represented as a union of structs, to allow inspection of fields that overlap.
  • Function parameters are currently readonly from a debugging point of view. They are recorded to a stack argument during the prologue. Changing their value in the debugger may not have an affect.
  • Due to the way we build code for Standalone Players, you will need to instruct the profiling/debugging tool where to locate the symbols (Point the tool to the folder containing the lib_burst_generated files (usually Plugins))