Utility/OBJLoader: Fix OBJ uvs
This commit is contained in:
parent
df2a029f30
commit
b3af14f65a
|
|
@ -214,6 +214,7 @@ Nazara Engine:
|
|||
- ⚠ ENetHost::GetTotalReceivedPackets now returns the number of commands received (instead of the number of UDP packets received)
|
||||
- Added EmptyStream class, useful to measure how many bytes some writing operations will take
|
||||
- SegmentCollider2D: Add support for neighbors (aka "ghost vertices"), allowing to prevent seams collisions
|
||||
- ⚠ OBJLoader flips UV by default, fixing a lot of models UV
|
||||
|
||||
Nazara Development Kit:
|
||||
- Added ImageWidget (#139)
|
||||
|
|
|
|||
|
|
@ -92,10 +92,6 @@ int main()
|
|||
// Ce paramètre sert à indiquer la mise à l'échelle désirée lors du chargement du modèle.
|
||||
params.mesh.matrix.MakeScale(Nz::Vector3f(0.01f)); // Un centième de la taille originelle
|
||||
|
||||
// Les UVs de ce fichier sont retournées (repère OpenGL, origine coin bas-gauche) par rapport à ce que le moteur attend (haut-gauche)
|
||||
// Nous devons donc indiquer au moteur de les retourner lors du chargement
|
||||
params.mesh.texCoordScale.Set(1.f, -1.f);
|
||||
|
||||
// Nazara va par défaut optimiser les modèles pour un rendu plus rapide, cela peut prendre du temps et n'est pas nécessaire ici
|
||||
params.mesh.optimizeIndexBuffers = false;
|
||||
|
||||
|
|
|
|||
|
|
@ -306,6 +306,8 @@ namespace Nz
|
|||
if (vertexIndices.texCoord > 0)
|
||||
{
|
||||
Vector2f uv = Vector2f(texCoords[vertexIndices.texCoord - 1]);
|
||||
uv.y = 1.f - uv.y; //< OBJ model texcoords seems to majority start from bottom left
|
||||
|
||||
uvPtr[index] = Vector2f(parameters.texCoordOffset + uv * parameters.texCoordScale);
|
||||
}
|
||||
else
|
||||
|
|
|
|||
Loading…
Reference in New Issue