<i>This post was originally made by <b>danij</b> on the dengDevs blog. It was posted under the categories: Beta 6, Engine, Games, Version 1.9.</i>
Recently commited to svn are the final changes in the transition to an abstract interface for referencing textures, flats, sprites etc called materials. All world-renderable surfaces will ultimately use this interface (model skins and sky textures still to go) to allow all types of texture to be used interchangeably (flats on walls, sprites on planes etc).
Publicly, materials are referenced by a continuous range of unique (eternal) identifiers. These identifiers are also used within net packets but currently there is no mechanism to ensure that the client-side identifiers match those server-side.
What should we do here? I guess upon handshake (and before the client is added to the game) the server should send it's material dictionary to the client which it can then store locally for matching server to local idents.