# Thin Instance on shader material

**URL:** <https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008>\
**Category:** Questions\
**Tags:** material\
**Created:** [July 31, 2020, 1:59am UTC](https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008 "2020-07-31T01:59:21Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![TheNosiriN](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/thenosirin/32/11803_2.png) [@TheNosiriN](https://forum.babylonjs.com/u/TheNosiriN)\
**Post date:** [July 31, 2020, 1:59am UTC](https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008/1 "2020-07-31T01:59:22Z")

</div>

I just noticed that thin instances don’t work on ShaderMaterial but work on StandardMaterial, I don’t quite know all about thin instances but does anyone know how to make it work on ShaderMaterial? I believe it has something to do with the attributes.

testing playground: [https://playground.babylonjs.com/#MT2SFV](https://playground.babylonjs.com/#MT2SFV)

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [July 31, 2020, 10:07am UTC](https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008/2 "2020-07-31T10:07:20Z")

</div>

You need to add some includes in your shader to support instances / thin instances:

[https://playground.babylonjs.com/#MT2SFV#1](https://playground.babylonjs.com/#MT2SFV#1)

---

<div class="post-metadata">

**Author:** ![TheNosiriN](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/thenosirin/32/11803_2.png) [@TheNosiriN](https://forum.babylonjs.com/u/TheNosiriN)\
**Post date:** [August 1, 2020, 1:41pm UTC](https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008/3 "2020-08-01T13:41:02Z")

</div>

Wow thanks, I was on this for long so I decided to leave it but know I can continue

---

<div class="post-metadata">

**Author:** ![TheNosiriN](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/thenosirin/32/11803_2.png) [@TheNosiriN](https://forum.babylonjs.com/u/TheNosiriN)\
**Post date:** [August 1, 2020, 11:14pm UTC](https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008/4 "2020-08-01T23:14:41Z")

</div>

@Evgeni_Popov Just one quick question, is it possible to use thin instance buffers with both translation and rotation or is only one the limit? because the docs say “position/rotation/scaling.”

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [August 2, 2020, 8:37am UTC](https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008/5 "2020-08-02T08:37:55Z")

</div>

Yes, you can have a position + rotation + scaling: you must give a matrix to create a thin instance, and a matrix can hold at the same time a position + a rotation + a scaling.

---

<div class="post-metadata">

**Author:** ![TheNosiriN](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/thenosirin/32/11803_2.png) [@TheNosiriN](https://forum.babylonjs.com/u/TheNosiriN)\
**Post date:** [August 2, 2020, 6:51pm UTC](https://forum.babylonjs.com/t/thin-instance-on-shader-material/13008/7 "2020-08-02T18:51:05Z")

</div>

Thanks, I got it working.
