<<<<<<< HEAD ======= DrawableDescriptor | SDF-2D - v0.7.6 >>>>>>> 2454f2f37d581c69f5d0c844a028712ddbc0a1cc

Used for containing the required information to compile drawables into shader code.

Each Drawable must have a static property of this type, called descriptor.

For more information on how to create your own DrawableDescriptor-s, look at the code of CircleFactory or InvertedTunnelFactory.

### Hierarchy

- DrawableDescriptor

## Index

### Properties

- empty
- objectCountScaler
- propertyUniformMapping
- sdf
- shaderCombinationSteps
- uniformCountMacroName

## Properties

### Readonly empty

empty: Drawable

<<<<<<< HEAD
- Defined in drawables/drawable-descriptor.ts:73
=======
- Defined in drawables/drawable-descriptor.ts:73
>>>>>>> 2454f2f37d581c69f5d0c844a028712ddbc0a1cc

When no shaderCombinationStep matches the current number of drawables exactly, the value of `empty` is used to pad out arrays.

### Optional objectCountScaler

objectCountScaler: undefined | number

<<<<<<< HEAD
- Defined in drawables/drawable-descriptor.ts:57
=======
- Defined in drawables/drawable-descriptor.ts:57
>>>>>>> 2454f2f37d581c69f5d0c844a028712ddbc0a1cc

Calculating the number of objects to be drawn is done using the following pseudo-formula:

objectCountScaler * propertyUniformMapping[0].length

By default, its value is 1

### propertyUniformMapping

propertyUniformMapping: {}

<<<<<<< HEAD
- Defined in drawables/drawable-descriptor.ts:17
=======
- Defined in drawables/drawable-descriptor.ts:17
>>>>>>> 2454f2f37d581c69f5d0c844a028712ddbc0a1cc

An object describing the relationship between the object returned by a Drawable's getObjectToSerialize and the name of the arrays used in the GLSL code.

#### Type declaration

- ##### [property: string]: string

### Optional sdf

sdf: undefined | { distanceFunctionName: string; isInverted?: undefined | false | true; shader: string }

<<<<<<< HEAD
- Defined in drawables/drawable-descriptor.ts:28
=======
- Defined in drawables/drawable-descriptor.ts:28
>>>>>>> 2454f2f37d581c69f5d0c844a028712ddbc0a1cc

Required property for shapes having physical dimensions.

### shaderCombinationSteps

shaderCombinationSteps: Array<number>

<<<<<<< HEAD
- Defined in drawables/drawable-descriptor.ts:67
=======
- Defined in drawables/drawable-descriptor.ts:67
>>>>>>> 2454f2f37d581c69f5d0c844a028712ddbc0a1cc

Number of possible drawables around each tile.

For each step, a shader will be generated. And at runtime the closes matching shader will be used to render a given part of the scene.

Must contain 0 as a value.

### uniformCountMacroName

uniformCountMacroName: string

<<<<<<< HEAD
- Defined in drawables/drawable-descriptor.ts:23
=======
- Defined in drawables/drawable-descriptor.ts:23
>>>>>>> 2454f2f37d581c69f5d0c844a028712ddbc0a1cc

The name of the uniform int used in the code to refer to the number of drawables of this type.