DirectX sfera struttura Coordinate
-
20-09-2019 - |
Domanda
Non ho una sfera con normali per-vertice e sto cercando di ricavare le coordinate texture per l'oggetto utilizzando l'algoritmo:
U = Asin(Norm.X) / PI + 0.5
V = Asin(Norm.Y) / PI + 0.5
Con una trama a pois, ottengo:
Ecco lo stesso oggetto senza la texture applicata:
Il problema che sto guardando particuarly (So che c'è qualcuno) è il disallineamento delle texture.
Sono propenso a credere che il problema risiede nel mio uso di tali algoritmi, come l'evidenziazione speculare (che non utilizza qualsiasi texture, ma fa affidamento sui normali di essere corretto) sembra non avere artefatti.
Tutte le idee?
Soluzione
Non puoi semplicemente impostare le UV mentre si sta costruendo la sfera?
Quindi:
u = theta / (2 * PI);
v = phi / PI;
Modifica: Potrei anche sottolineare che probabilmente c'è qualcosa di sbagliato con le normali dato il puntino nero sulla parte superiore ... Ci sembra anche essere messo in evidenza le linee lungo i bordi dei poligoni. Ciò mette in evidenza ancora una volta per un po 'incerti normali probabili ...