wave4-systembase-with-inner-ijobentity

Creates Burst-compatible IJobEntity schedules within managed SystemBase wrappers.

6|Updated Apr 2, 2026
One-click install
npx skills add https://github.com/dyCuong03/unity-agent-team --skill wave4-systembase-with-inner-ijobentity
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: wave4-systembase-with-inner-ijobentity
Source: https://github.com/dyCuong03/unity-agent-team/tree/main/.claude/skills/unity-dots/wave4-systembase-with-inner-ijobentity
Command: npx skills add https://github.com/dyCuong03/unity-agent-team --skill wave4-systembase-with-inner-ijobentity

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It solves the challenge of writing efficient Unity DOTS systems when the system shell needs managed resources, while the hot path still needs Burst-compiled job performance.

Core Features & Use Cases

  • Managed SystemBase outer shell: Use SystemBase when you must hold managed references (e.g., event subscriptions, managed callbacks, or managed access patterns).
  • Burst-compiled inner IJobEntity hot path: Delegate the compute-heavy work to inner IJobEntity structs that can be marked with [BurstCompile].
  • Correct dependency chaining across ScheduleParallel: Use the SystemBase.Dependency auto-chaining behavior across sequential ScheduleParallel calls to avoid race conditions.

Use it when you have multiple jobs per OnUpdate that should share a dependency chain, but you cannot make the entire system purely ISystem because managed context is required.

Quick Start

Use the SystemBase shell for managed setup, then move all per-frame compute into Burst-compiled inner IJobEntity jobs scheduled from OnUpdate.

Frequently Asked Questions about wave4-systembase-with-inner-ijobentity

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I use Burst-compiled jobs in a Unity DOTS SystemBase that requires managed resources?▼

To use Burst-compiled jobs with managed resources in Unity DOTS, maintain a managed SystemBase outer shell for callbacks while delegating compute-heavy work to inner IJobEntity structs marked with [BurstCompile]. This preserves parallel job performance during OnUpdate.

Can I schedule multiple IJobEntity jobs sequentially in Unity DOTS without causing race conditions?▼

You can schedule multiple IJobEntity jobs sequentially without race conditions by relying on the SystemBase.Dependency auto-chaining behavior across sequential ScheduleParallel calls to correctly preserve dependency chaining.

What is the best way to combine managed system callbacks with parallel job performance in Unity ECS?▼

The best way to combine managed callbacks with parallel job performance is using a SystemBase shell for managed setup and moving per-frame compute into Burst-compiled inner IJobEntity jobs scheduled from OnUpdate.

Why should I avoid Burst-compiling the OnUpdate method in a SystemBase with managed dependencies?▼

You should avoid Burst-compiling the OnUpdate method because the SystemBase shell requires managed context like event subscriptions or interface references, which prevents the virtual method itself from being Burst-compiled.

When do I need an inner IJobEntity instead of a purely unmanaged ISystem in Unity DOTS?▼

You need an inner IJobEntity when your system cannot be purely unmanaged ISystem because it requires managed context, but you still need to execute the compute-heavy workload as Burst-compiled jobs for parallel performance.

Does SystemBase support dependency chaining for sequential ScheduleParallel calls automatically?▼

Yes, SystemBase supports dependency chaining automatically by utilizing its built-in SystemBase.Dependency auto-chaining behavior across sequential ScheduleParallel calls to ensure safe job execution.