Search Issue Tracker

By Design

Votes

0

Found in

2019.1.0b2

2019.1.0b5

2019.2.0a3

Issue ID

1144260

Regression

No

TerrainPaintUtility faulty calculations when using RenderTexture as a Source

Terrain

-

How to reproduce:
1. Open the "SampleScene" in the attached "Unity Bug report.zip" Project
2. Enter Play Mode
3. Observe the "Terrain" GameObject in Scene View
4. In the Terrain Settings check and uncheck the "Draw Instanced" Checkbox several times to see the difference

Expected Behavior: The RenderTexture, Terrain Heights, Terrain Heights with Draw Instanced values are equal
Actual Behavior: The RenderTexture, Terrain Heights, Terrain Heights with Draw Instanced values are all different

Reproducible with: 2019.1.0f1, 2019.2.0a13

Note: Could not test with 2018.3 and 2017.4 because of the compilation errors

  1. Resolution Note:

    Yes, this is unfortunate, but by design.
    The full valid range of a heightmap is [0, 0.5].
    It's obviously not how it should ideally work, but this behavior stems from the old data format and trying to keep everything backwards compatible with existing Terrain data.
    Your shader needs to multiply your height outputs by 0.5, and clamp them to the [0, 0.5] range.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.