Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Post Entities 1.0 - Editor Utility to create concrete job types #300

Open
jkeon opened this issue Dec 23, 2023 · 0 comments
Open

Post Entities 1.0 - Editor Utility to create concrete job types #300

jkeon opened this issue Dec 23, 2023 · 0 comments

Comments

@jkeon
Copy link
Member

jkeon commented Dec 23, 2023

When using Burst we'll get a warning for some generic TaskDriver consolidation jobs.

Compilation was requested for method 
    `Unity.Jobs.IJobExtensions+JobStruct`1[[Anvil.Unity.DOTS.Entities.TaskDriver.EntityProxyDataSource`1+ConsolidateEntityProxyDataSourceJob[[
        DeclineCookies.StationX.Game.Simulation.InteractionRequest, station-x-simulaton-runtime, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], 
        anvil-unity-dots-runtime, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null::
        Execute(Anvil.Unity.DOTS.Entities.TaskDriver.EntityProxyDataSource`1+ConsolidateEntityProxyDataSourceJob[[
            eclineCookies.StationX.Game.Simulation.InteractionRequest, station-x-simulaton-runtime, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]&, 
            anvil-unity-dots-runtime, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null|System.IntPtr, mscorlib, Version=4.0.0.0, Culture=neutral, 
            PublicKeyToken=b77a5c561934e089|System.IntPtr, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089|Unity.Jobs.LowLevel.Unsafe.JobRanges&, 
            UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null|System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)` 
            but it is not a known Burst entry point. 
            This may be because the [BurstCompile] method is defined in a generic class, and the generic class is not instantiated with concrete types anywhere in your code.

These jobs will not get burst compiled but will still run without issue as unbursted jobs.

We simply need to create an Editor utility or Source Gen a class similar to AOT work we've done before to have all possible variants of the job written concretely.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant