How do you generate Pixel Depth Offset billboards from speedtrees?

Hey everyone,

In the Kite Demo some trees have depth offset billboards which are used to compute correct lighting from afar. How can I generate them for my trees made using speedtrees?

Thanks in advance,

up please :slight_smile:

These were rendered out in engine using the render to texture blueprint:

There is a newoption under render imposters called ‘render depth map’. you will have to specify any opacity textures and channels so the blueprint can generate the correct depths with masking.

The above documentation is a bit outdated. You no longer need to use the “High res screenshot” window. Also may need to apply a gamma curve adjustment to the resulting images since the behavior of the vis-buffer materials and gamma has changed over time.

If in doubt, place an unlit material with value 0.5 in emissive in the scene with the imposters when you render. Sample the value in photoshop. If the value is not 127 then a gamma adjustment needs to be applied.

You can do that by using “Levels” and moving the midpoint to either 2.2 or 0.4545 (which is 1/2.2). See which one makes the value equal 127 and do that to your image.

Awesome! Thank you for taking to time to respond :slight_smile: will try that asap

Render 3D Imposter depth

I am trying to reproduce these instructions for baking my own speedtree’s depth to no avail. This is what i have figured out on a blank scene with RenderToTexture_LevelBP:
-Chose Render Type: 3d Imposter Sprites in Capture Settings Panel
-Selected TreeHill02 mesh from Open World Demo Collection on Instance mesh
-clicked on ‘Base Color, Normal, Opacity and Scene Color’ check boxes
-clicked the ‘Output Depth Maps’ checkbox
-filled out the 6 opacity mask and 6 opacity channels for this tree with the corresponding material base color textures and masks to RGBA(0,0,0,1)
-run “ke * renderimposter” on console

All channels come out fine on Saved/Screenshots/Windows/ but the depth, I have noticed the Pawn spits out an error accessing a variable ‘Imposter Mesh Components’ on a routing which seems like the proper place where it should render depth, but thse mesh components are never initialized in RenderToTexture_LevelBP. Help?