View Issue Details

IDProjectCategoryView StatusLast Update
0027219RunnerLayersPublic2018-06-18 16:29
ReporterStewart BishopAssigned ToCoreTech 
PriorityLowSeverityC - GeneralReproducibility100%
Status AssignedResolutionOpen 
Product Version 
Target VersionFixed in Version 
Summary0027219: Layers: Issues with layers overlapping
DescriptionI've encountered a problem with the ZBuffer.

What I'm trying to do: The floor layer renders on depth 0 (= Z). Later, another layer renders at depth -16. However, in a layer script I shift the world matrix so that in theory the new layer at depth -16 should actually render at depth 0 again. By changing the gpu_zfunc to be "equal" I would expect a nice stencil / silhouette. This does not work. For some reason its offset by 0.00125 on Z.

My attached testing project demos this with 2 asset layers that are "floors" and 2 asset layers which should silhouette. Floors render at 0, -16, Silhouette at -500,-516 - using a matrix shift of +500 this should match. It does not without manually subtracting 0.00125 (global.ZOFF).

If the silhouette layers are offset by -1000 (global.Z) => (-1000, -1016) the trick fails for one of the silhouetting layers, but not the other.
Steps To ReproduceUse "W" and "S" to shift the matrix by increments of 0.00125.
Tagsrendering, Runner
1.4 Found In
2.x Runtime Found In2.0.7.110
2.x Runtime Verified In

Activities

Stewart Bishop

2017-07-28 10:20

Developer  

Ztest.yyz (16,718 bytes)