Search Unity

Jobs, ECS, compute shaders and procedural instancing.

Discussion in 'Entity Component System' started by twobob, Apr 22, 2018.

  1. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    I have tried to make this sound like an intelligent question.

    Given a mature but small project say https://github.com/keijiro/Swarm or https://github.com/keijiro/Cloner
    which implements compute shaders and procedural instancing

    considering the performance of projects like https://github.com/chengkehan/GPUSkinning it should be possible to get greatish performance even without better compiling via procedural instancing. Of course considering via data driven first and foremost is probably paramount and the 2017 talk that touched on that was great.

    I am having a little trouble envisioning the available future partitioning to start making steps to optimize this code - which seems in the profiler like in principle perfect for this process. Not because it is inherently bad, but because it is fundamentally great. Lovely jumping-in point.

    Rather than talking about my intellectual shortcomings around this subject (U3D forums only have so much storage) perhaps I should just ask:

    Is there already an example worked project - out there - like the Unity3D tech demo from 2017 with computes and instancing and commensurate scaffolding via ECS and job architecture, cementing some best practice archetypes in place.Yes I know it is earlyish days and best practice is a changing thing but there must be a /better/ way already for the really very specific and common and similar systems of behaviour required to "optimize well" the projects I cited.

    Working code speaks ten thousand posts.

    And, if not, any snippets or pointers some sages might share.

    Bumbling thanks
     
    Last edited: Apr 22, 2018
  2. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Last edited: Apr 23, 2018