What's New in Director 8.5 > Controlling the 3D World > Rendering functionality > Renderer services object properties |  |

Renderer services object properties

The global `getRendererServices()` object contains a property list with the following properties. For example, use the syntax `getRendererServices().renderer` to determine the currently active renderer.

Property | Access | Description | Default
--- | --- | --- | ---
`renderer` | Get and set | The rasterizer library all 3D sprites use to draw themselves. This property must be set before any 3D sprite comes into existence. Its default value is determined by the `preferredRenderer` property of the first cast member loaded from file. This is a run-time property that is not saved. Possible values are as follows:

`#openGL`: openGL drivers for a hardware accelerator

`#directX7_0`: DirectX7_0 drivers for a hardware accelerator

`#directX5_2`: DirectX5_2 drivers for a hardware accelerator

`#software`: built-in Director software renderer

None

`rendererDeviceList` | Get | A list of available rasterizer libraries. Possible values are as follows: `#openGL`: openGL drivers for a hardware accelerator `#directX7_0`: DirectX7_0 drivers for a hardware accelerator `#directX5_2`: DirectX5_2 drivers for a hardware accelerator

`#software`: built-in Director software renderer

None

`currentRenderer` | Get | The rasterizer currently in use. Possible values are as follows: `#openGL`: openGL drivers for a hardware accelerator `#directX7_0`: DirectX7_0 drivers for a hardware accelerator `#directX5_2`: DirectX5_2 drivers for a hardware accelerator `#software`: built-in Director software renderer | None
`modifiers` | Get | A list of modifiers available for 3D cast members. Possible values are as follows: `#lod` `#toon` `#sds` `#bonesPlayer`

`#keyframePlayer`

`#inker`

`#collision`

#meshDeform

None

`primitives` | Get | A list of basic 3D shapes available for all 3D cast members. Possible values are as follows: `#box` `#sphere` `#plane` `#particle`

`#cylinder`

None

`textureRenderFormat` | Get and set | A four-digit integer identifying the pixel format used for textures on the 3D hardware accelerator card. Adjust this to improved color fidelity or to fit more textures on the card. You can fit twice as many 16-bit textures as 32-bit textures in the same space. If a movie tries to use more textures than will fit on a card at a single time, Director switches to software rendering.

Possible values are as follows:

`#rgba8888`: one byte for red, green, blue, and alpha

`#rgba8880`: same as above, without alpha opacity

`#rgba5650`: 16-bit color with no alpha; 5 bits for red, 6 for green, 5 for blue

`#rgba5550`: 16-bit color with no alpha; 5 bits each for red, green, and blue

`#rgba5551`: 5 bits each for red, green, and blue; 1 bit for alpha

`#rgba4444`: 4 bits each for red, green, blue, and alpha

`#rgba5551`

`depthBufferDepth` | Get and set | Either 16 or 24, depending on the hardware card. Controls the precision of the hardware depth buffer. | None
`colorBufferDepth` | Get | Either 16 or 32, depending on the hardware card. Controls the precision of the hardware output buffer. | None
`getHardwareInfo()` | Returns a property list of the specifics of the hardware card (if any) on the client's machine | A property list with the following entries: `#Present`: `TRUE (1)` if the card is present; `FALSE (0)` if the card is absent `#vendor-stringname:` the vendor name, with a value of Unknown if the name can't be determined `#model-stringModel:` the name of the model

`#maxTextureSize[``maxWidth``,` `maxHeight``]`: maximum height and width of textures. Textures are reduced in size if they exceed these maximums.

`#supportedTexturePixelFormat`: texture pixel formats supported by card.

`#textureUnits`: number of texture units the card has

`#depthBufferRange`: list of bit-depth resolutions available

`#colorBufferRange`: list of bit-depth resolutions