Skip to main content

@novorender/api / DeviceQuirks

Interface: DeviceQuirks

Defined in: @novorender/src/core3d/device.ts:116

Known device specific quirks and bugs that we can work around.

Remarks

These problems usually stems from buggy native WebGL drivers. Workarounds may involve disabling certain features or not producing certain outputs.

Properties

adreno600

readonly adreno600: boolean;

Defined in: @novorender/src/core3d/device.ts:118

Adreno 600 series driver bug. Normals in the picking buffer will be 0 and toon shading will be off.


iosInterpolationBug

readonly iosInterpolationBug: boolean;

Defined in: @novorender/src/core3d/device.ts:122

Older IOS/Ipad devices don't implement flat shading for float varyings properly and thus introduces interpolation noise, which needs to be rounded off.


slowShaderRecompile

readonly slowShaderRecompile: boolean;

Defined in: @novorender/src/core3d/device.ts:120

Older Android webgl drivers struggle to compile large shader programs, even asynchronously. To avoid stuttering, disable aggressive recompile, at the expense of overall render performance.