Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Join us on March 30, 2023, between 5 am & 1 pm EST, in the Performance Profiling Dev Blitz Day 2023 - Q&A forum and Discord where you can connect with our teams behind the Memory and CPU Profilers.
    Dismiss Notice

How to setup my asset project to support multiple render pipelines?

Discussion in 'Assets and Asset Store' started by andycodes, Dec 6, 2022.

  1. andycodes

    andycodes

    Joined:
    Jan 22, 2013
    Posts:
    39
    When the render pipelines were introduced, I opted to keep my asset store projects on the built-in pipeline to prevent a situation where I couldn't change back to built-in if I ever needed to.
    I understand there's an upgrade tool, and for game developers this is an awesome tool to upgrade a project just once.
    But if I'm developing an asset (let's say it's primarily materials as there are different shaders for the pipelines) and I want to provide support for all 3 render pipelines, what does the workflow look like?
    Are there tools or guides already available for this process, or do I need to have my base project in the built-in pipeline, and convert a copy of the project to HDRP and URP with separate uploads each time I want to publish (and update) a project?
     
  2. CodeSmile

    CodeSmile

    Joined:
    Apr 10, 2014
    Posts:
    2,087
    You can do all of it in one project. You do have to have copies of your assets, specifically materials and shaders.

    What some of the better organized assets do is to provide at least RP specific materials that can be easily replaced for all meshes.

    To develop assets for multiple RPs you‘d create the necessary RP assets for urp and hdrp in your project, then under project settings assign one of the RP assets and you‘ll be using that specific RP. Set it back to None to go back to legacy RP. Pretty sure you could write a script to automate this.
     
    andycodes likes this.