Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by TreyH · May 16, 2019 at 12:37 PM · shader-replacement

Overriding Default LWRP Terrain Shaders?

I'm having some trouble coming up with a non-intrusive way of overriding the default grass shaders for LWRP terrains.

Traditionally, we could just write our own shader and tag as with the hidden terrain shader

 Shader "Hidden/TerrainEngine/Details/BillboardWavingDoublePass"
 {
     // ...


but with the LWRP-equivalent:

 Shader "Hidden/TerrainEngine/Details/LightweightPipeline/BillboardWavingDoublePass"
 {
     // ...


This doesn't seem to work, as the files defining the LWRP shaders are included in the project itself and seem to take priority over the contents of /Assets. We can go into /Library/PackageCache/<LWRP path> and modify them directly there, but this is a really clunky way of doing things -- especially since /Library is usually excluded from version control.

Is there an easier way to override these default LWRP shaders?

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
1

Answer by TreyH · Jun 04, 2019 at 01:27 PM

Answering myself to hopefully save others.

By default, there's a ScriptableObject called LightweightRenderPipelineEditorResources that keeps track of which Terrain Materials and Grass Shaders will be used.

Without a version of this object in your Assets Folder, it will always load the backup. That backup includes the default grass shaders.

To use your own shaders, you need a copy of that object in your Assets folder -- it just needs to exist there, no assignment necessary. You will need your own version of that, so I'm attaching the default one for convenience.

Zipped LightweightRenderPipelineEditorResources since you cannot shared *.asset files.

Once you have that, just drop in your custom grass shaders and you're ready to go.

alt text
In my case, it was to allow bending: alt text


override.png (37.8 kB)
lwrp-resource-asset.zip (780 B)
Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

105 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

How to Reset Shader Replacement in Scene View? 1 Answer

I'am new to shaders and I'am making games for mobile devices should I switch over to LWRP? 0 Answers

camera.RenderWithShader not working in 5.1.0f3 0 Answers

Does static batching work with replacement shaders? 0 Answers

For a glass shader: How to "Fallback" completely 100% transparent that works in all device or that it do not render at all? 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges