# Библиотека gfx.skeletons

Библиотека для работы с именованными скелетами, такими как 'hand', 
использующийся для управления, отображаемыми при виде от первого лица, 
рукой и переносимым предметом. Набор функций аналогичен компоненту skeleton 
у сущностей.

Первым аргументом в функции передаётся имя скелета.

```lua
-- Возвращает объектную обёртку над скелетом
local skeleton = gfx.skeletons.get(name: str)

-- Возвращает индекс кости по имени или nil
skeleton:index(name: str) -> int

-- Возвращает имя модели, назначенной на кость с указанным индексом
skeleton:get_model(index: int) -> str

-- Переназначает модель кости с указанным индексом
-- Сбрасывает до изначальной, если не указывать имя
skeleton:set_model(index: int, name: str)

-- Возвращает матрицу трансформации кости с указанным индексом
skeleton:get_matrix(index: int) -> mat4

-- Устанавливает матрицу трансформации кости с указанным индексом
skeleton:set_matrix(index: int, matrix: mat4)

-- Возвращает текстуру по ключу (динамически назначаемые текстуры - '$имя')
skeleton:get_texture(key: str) -> str

-- Назначает текстуру по ключу
skeleton:set_texture(key: str, value: str)

-- Проверяет статус видимости кости по индесу 
-- или всего скелета, если индекс не указан
skeleton:is_visible([опционально] index: int) -> bool

-- Устанавливает статус видимости кости по индексу
-- или всего скелета, если индекс не указан
skeleton:set_visible([опционально] index: int, status: bool)

-- Возвращает цвет сущности
skeleton:get_color() -> vec3

-- Устанавливает цвет сущности
skeleton:set_color(color: vec3)
```
