Speedtree node bug

Import a speedtree tree.

The “Speedtree” node is connected to the world position offset.

Now create a texture coordinate node

http://puu.sh/txqNy/8ae13fbda7.png

And connect it to something that plugs into the base color.

You will see this error:

http://puu.sh/txpZR/6aaf1ef865.png

Disconnecting the “Speedtree” node from the world position offset fixes the problem.

I used it before and it worked fine, so this is a new bug in 4.15P1.

Hi again John,

Another quick find! I’ve reproduced this issue and logged a report for it here: Unreal Engine Issues and Bug Tracker (UE-41099)

By now I’m sure you know the typical “You can watch the bug and keep in mind it wont get fixed right away” response. Anyway, for the post! Its great that users find issues with our previews quickly so we catch the bugs early.

Cheers,

Ed

This was caused by a really weird bug in the Microsoft HLSL compiler:
https://social.msdn.microsoft.com/Forums/en-US/50f90e42-acb5-435c-907f-2979e6ca2043/why-is-this-function-call-ambiguous-when-compiling-my-d3d-shader?forum=windowssdk

We’ve worked around it in the final 4.15 release. Great catch!

Interesting, for fixing it so quickly!

I pulled latest 4.15 and I can confirm its working again :slight_smile:

I found this bug because I recently made my trees calculate the color variation in the vertex shader using customized UVs to save some performance, and then use that calculated color from the TexCoord[] node for the base color.

I’m actually not sure if I gained any performance through that, in another test I did I tried running an expensive 700 instruction sky through the vertex shader, but with only 170K vertices it was already more expensive than doing it regularly in the pixel shader (>1 million pixels). So the vertex shader seems to be way more expensive for the same amount of calculations. Is that expected?

But I still hope it makes sense for trees, since those don’t have that many vertices in my case, after something like 50 meters I already use billboards.