---
# System prepended metadata

title: Rendercontroller

---

# Rendercontroller

Default is "controller.render.default", thath looks like this:

```kotlin
newResRenderControllerFile("filename") {
    resRenderController { 
        controllers("ocelot") {
            textures()
            geometry()
            materials()
        }
    }
}
```

But sometimes you have more then one texture or geometry. To account for that create a render controller simmilar to this:

```kotlin
newResRenderControllerFile("filename") {
    resRenderController {
        controllers("ocelot") {
            textures(arrayListOf("id_1", "id_2", "id_3"), Query.variant)
            geometry(arrayListOf("id_1", "id_2", "id_3"), Query.variant)
            materials()
        }
    }
}
```

The second arg has to output the index of the array.
The counterpart in the entity definition has to look like this:

```kotlin
newResEntityFile("filename") {
    resEntity { 
        description { 
            textures { 
                texture("id_1", "textures/entity/...")
                texture("id_2", "textures/entity/...")
                texture("id_3", "textures/entity/...")
            }
            geometries { 
                geometry("id_1", "geometry.test1")
                geometry("id_2", "geometry.test2")
                geometry("id_3", "geometry.test3")
            }
        }
    }
}
```

To change the OnHurtColor, onFireColor or overlayColor, set the parameters like this:

```kotlin
//todo
```