Bonsoir à tous et bonne année 2021 !

Cela fait des années que je réalise des projets en OpenGL mais il y a tout de même des points sur lesquels je bloque :

- Multitexturing :

J'ai créé une petite lib qui charge des fichiers .obj pour ensuite en faire un rendu mais j'ai un léger problème lorsqu'il y a plusieurs textures à afficher. Je n'ai aucun problème à utiliser le multitexturing en lui-même, le parviens bien à envoyer toutes les textures au fragment shader mais comment le shader peut-il savoir quelle texture afficher ?? J'ai mis en place une solution en ajoutant des attributs de sommets contenant des entiers pour les index des textures (Tel vertex sera associé à la texture 0, un autre à la texture 1 ...) mais mon compilateur GLSL rejette les attributs sous forme d'entiers et je suis obligé d'utiliser des flottants, ce qui pose problème : Je fais passer mon attribut du vertex shader au fragment shader mais il semblerait qu'il y ait des erreurs de précision de type 0.99 au lieu de 1.0 ce qui fausse la conversion du flottant en entier, par exemple dans le cas de 0.99 au lieu de 1.0 c'est la texture 0 qui va être affichée au lieu de la texture 1. Bref il existe sûrement une autre solution pour indiquer au fragment shader quelle texture utiliser mais j'ignore laquelle.

- Reflets :

D'après mes recherches sur Google il faut utiliser une texture cubique pour faire des reflets avec effets de réfraction, cette texture cubique représente l'environnement tout autour de la caméra, mais comment générer une texture cubique en temps réel ??? Il est possible d'utiliser 6 FBO (Un pour chaque face) donc 6 caméras donc 6 rendus en plus du rendu normal durant un frame (En ne comptant d'autres éventuels rendus pour des ombres) mais cela ne risque pas de faire grandement chuter les performances ???

Voilà pour les interrogations qui me hantent depuis quelques temps, si quelqu'un peut m'apporter quelques réponses ce serait avec grand plaisir