Shaders are pink and unable to convert to URP.

I imported some assets and found pink shaders. I noticed it happened with all .shader files. I am also unable to use Amplify shader in unity. Yes, I goto edit> Render pipeline > URP > Genarate Material but still everything is pink.
proto_gray 1 material was not upgraded. There's no upgrader to convert Universal Render Pipeline/Lit shader to selected pipeline
Please help me

If you own Amplify then you might be able to re-export those shaders now it supports URP.

For custom shaders - depends on how complex they are. In some cases it’s as simple as adding a tag to the source, for others it’s a complete rewrite.

having the same issue. have you managed to solve it without buying Amplify?

The solution varies depending on where the shader came from:

  1. Shaders built with Amplify can be converted with Amplify
  2. Unity can convert it’s own standard shaders in most cases
  3. Custom shaders need to be converted manually. The complexity of this varies from “Just add a simple tag to the shader code” right up to “You’ll need to understand URP in depth and rethink how to get the same effect”.

If you’re unfamiliar with shader programming and it’s a custom shader your best bet is to contact the author or look around for a similar shader that was built for URP.

I did a simple stencil buffer shader, and the material with the shader that writes to the buffer seems to render out pink, any suggestions on what tags I can add to fix this?

These are my tags for the shader
Tags { “RenderType”=“Opaque” “Queue” = “Geometry-1”}

Probably won’t get a reply in time, since this is for an assignment but I still hope to know for future reference sake. Thanks!

Edit 1: I will try to look at the source for the upgraded shaders on github and try to see what I can do meantime

Edit 2: I am using the 2D renderer pipeline for Light2D, it seems like it simply lacks the functionality to add renderer feature like a forward renderer does, I’ve hit a roadblock here and I think I will have to abandon adding 2d lighting to my game. However, it seems like it is part of their backlog to add the “add renderer” feature sometime in the future, though I doubt I would be lucky enough to see it being added in within the time period I have.
Source: Will 2D Render Pipeline support Renderer Features?

For 2021 and higher Unity versions :
Windows → Rendering → Render Pipeline Converter.
Check boxes - Rendering Settings, Material Upgrade, Readonly Material Converter and press Intitialize Converters button, afterwards Convert Assets button.

3 Likes

legend