I ont les extraits de code suivants:texture inattendue tendue
ctx.texParameteri(ctx.TEXTURE_2D, ctx.TEXTURE_MAG_FILTER, ctx.LINEAR);
ctx.texParameteri(ctx.TEXTURE_2D, ctx.TEXTURE_MIN_FILTER, ctx.LINEAR);
ctx.texParameteri(ctx.TEXTURE_2D, ctx.TEXTURE_WRAP_S, ctx.REPEAT);
ctx.texParameteri(ctx.TEXTURE_2D, ctx.TEXTURE_WRAP_T, ctx.REPEAT);
Ma dimension texture est 256x256.
Option 1 - mon polygone
const x0 = 100;
const x1 = -x0;
const z0 = x0;
const z1 = -z0;
var vertices = new Float32Array(
[ x0, 0, z1, x1, 0, z1, x1, 0, z0, x0, 0, z0]);
Le résultat: La texture est tendue si je perds le détail.
Option 2 - mon polygone (notez que ceci est beaucoup plus petit polygone que l'option 1)
const x0 = 5;
const x1 = -x0;
const z0 = x0;
const z1 = -z0;
var vertices = new Float32Array(
[ x0, 0, z1, x1, 0, z1, x1, 0, z0, x0, 0, z0]);
Le résultat: Je peux voir les détails de ma texture. Je crois comprendre que l'option REPEAT (TEXTURE_WRAP_S et TEXTURE_WRAP_T) me donnera les détails même dans l'option 1. Pourquoi la texture est-elle étirée dans l'option 1? Ai-je mal compris?
Ceci exécute WebGL sur la version de Chrome Canary.
Qu'est-ce que j'ai fait de mal?
Merci d'avance pour votre aide.
Vous définissez les coordonnées de texture pour les sommets et les utiliser dans votre shaders? – Zecc