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

Support DOTS-Instancing (URP Only) #349

Conversation

Hum9183
Copy link

@Hum9183 Hum9183 commented Apr 7, 2024

Summary

Support DOTS-Instancing (URP Only)

Environment

Windows 11

  • 2022.3.5f1 URP Forward
    • It worked.
  • 2022.3.5f1 URP Forward+
    • It worked.
  • 2020.3.48.f1 URP Forward
    • It didn't work. This is due to a compile error in Entities(Preview) and is not directly related to UTS. If you want to use DOTS Instancing, you should not use the Preview version of Package.
    • If you do not install Entities(Preview), no error occurs and you can use the shaders as usual

Details

  • Added definitions required for GPU Instancing and DOTS Instancing
    • Since URP14.0.7, the required definitions have become a bit more complex, and it seems that the hlsl file has to be included.
    • In addition to that, URP14.0.7 is supported from Unity2022.2.14f1, but Unity2022.2.14f1 seems to be 202229 in UNITY_VERSION. So we decided to support it from 202230.
  • unity_ObjectToWorld and unity_WorldToObject have been changed to use render-pipelines core library
    • This is because DOTS Instancing no longer uses unity_ObjectToWorld, etc.
    • The core library seems to be automatically rewritten when using DOTS Instancing

dots-instancing01

@H3idi-X H3idi-X self-requested a review April 7, 2024 01:48
@H3idi-X
Copy link
Collaborator

H3idi-X commented Apr 7, 2024

Thanks for your big contribution!
The next actions we do are:

  • We create a test branch and merge your PR to it.
  • We test the branch with our current test systems.
  • Perhaps, we need to add some internal test projects for DOTS instancing then.

@H3idi-X H3idi-X changed the base branch from development/v1 to dev/dots-instancing April 7, 2024 06:37
@H3idi-X H3idi-X merged commit c0d323e into Unity-Technologies:dev/dots-instancing-urp Apr 7, 2024
1 check passed
H3idi-X added a commit that referenced this pull request Apr 19, 2024
* Support DOTS-Instancing (URP Only) (#349)

Merged to a brach for this feature.

* Dev/dots instancing urp sample (#353)

* Added an ecs urp graphics project.

* Set toon shader to a material, mat1.mat that is used in RenderMeshUtilityExample.

* Added ToonShader_ProjectURP_ECS project and started to convert the project compatible with ECS.

* Started to convert a scene, AngelRing.

* Made Angel Ring scene compatible with ECS.

* Cube_HardEdge scene is compatible with ECS.

* MatCapMask scene is also compatible with ECS.

* ShaderBall scene is also compatible with ECS.

* Normal Map scene is also compatible with ECS.

* Sample scene is compatible with ECS.

* The project uses ForwardPlus instead of Forward.

* SceneLight Hi-CutFileter Test scene is compatible with Entity Graphics.

* PointLightTest scene is compatible with ECS graphics.

* LightAndShadows scene is compatible with ECS graphics.

* LightAndShadowsBakedLight scene is compatible with entity graphics.

* EmissiveAnimation scene is compatible with Entity Graphics.

* Updated the shader version no to 0.10.0-preview.

* Removed samples that utilize skinned mesh animations.

* Fixed: an error undeclared identifier '_FOVEATED_RENDERING_NON_UNIFORM_RASTER'

* made URP shader ready for soft shadow quality.

* Dev/dots instancing urp tests (#354)

* Added UniversalGraphicsTestECS

* fixed: wrong path in manifest.json.

* Added scene to build target.

* disabled emission map scroll in the ECS test scene.

* Disabled all the things animate in the ECS test project.

* added graphics test componet for testing to all the scene camera objects.

* set up dx11 graphics tests.

* Added mac reference images.

* added mac urp-ecs test yml.

* renamed the test project.

* added new editors to _editor.yml

* removed 2023.3 from osx_metal-urp-ecs-2022.3.yml

* Added UniversalGraphicsTestECS-2023.2.

* Added graphics test reference images for Windows API tests.

* added ecs test yml files. dx11 2022.3, 2023.2 and MacOS 2023.2

* Moved Mac Image for 2023.2 from OSXEditor to OSXEditor_AppleSilicon folder.

* fixed UniversalGraphicsTestECS-2022.3 windows tests yml file.

* added windows vulkan ECS tests.

* Dev/dots instancing urp documentation (#355)

* Updated the docs
.

* Updated CHANGELOG.md

* Updated TableOfContents.md.

* Updated FeatureModels_en.md

---------

Co-authored-by: Miyakawa Takeshi <[email protected]>
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

Successfully merging this pull request may close these issues.

None yet

2 participants