diff options
Diffstat (limited to '3rdparty/bgfx/tools/geometryc/geometryc.cpp')
-rw-r--r-- | 3rdparty/bgfx/tools/geometryc/geometryc.cpp | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/3rdparty/bgfx/tools/geometryc/geometryc.cpp b/3rdparty/bgfx/tools/geometryc/geometryc.cpp index d2aff270f58..d604fd38269 100644 --- a/3rdparty/bgfx/tools/geometryc/geometryc.cpp +++ b/3rdparty/bgfx/tools/geometryc/geometryc.cpp @@ -589,7 +589,7 @@ void parseObj(char* _data, uint32_t _size, Mesh* _mesh, bool _hasBc) if (0 == bx::strCmp(argv[0], "vn") ) { - bx::Vec3 normal; + bx::Vec3 normal(bx::init::None); bx::fromString(&normal.x, argv[1]); bx::fromString(&normal.y, argv[2]); bx::fromString(&normal.z, argv[3]); @@ -607,7 +607,7 @@ void parseObj(char* _data, uint32_t _size, Mesh* _mesh, bool _hasBc) } else if (0 == bx::strCmp(argv[0], "vt") ) { - bx::Vec3 texcoord; + bx::Vec3 texcoord(bx::init::None); texcoord.y = 0.0f; texcoord.z = 0.0f; @@ -645,15 +645,10 @@ void parseObj(char* _data, uint32_t _size, Mesh* _mesh, bool _hasBc) pw = 1.0f; } - float invW = 1.0f/pw; - px *= invW; - py *= invW; - pz *= invW; + bx::Vec3 pos(px, py, pz); - bx::Vec3 pos; - pos.x = px; - pos.y = py; - pos.z = pz; + const float invW = bx::rcp(pw); + pos = bx::mul(pos, invW); _mesh->m_positions.push_back(pos); } @@ -753,8 +748,9 @@ void processGltfNode(cgltf_node* _node, Mesh* _mesh, Group* _group, bool _hasBc) { _mesh->m_positions.reserve(_mesh->m_positions.size() + accessorCount); - bx::Vec3 pos; - for (cgltf_size v=0;v<accessorCount;++v) + bx::Vec3 pos(bx::init::None); + + for (cgltf_size v = 0; v < accessorCount; ++v) { gltfReadFloat(accessorData, numComponents, v, &pos.x, 3); pos = mul(pos, nodeToWorld); @@ -766,8 +762,9 @@ void processGltfNode(cgltf_node* _node, Mesh* _mesh, Group* _group, bool _hasBc) _mesh->m_normals.reserve(_mesh->m_normals.size() + accessorCount); hasNormal = true; - bx::Vec3 normal; - for (cgltf_size v=0;v<accessorCount;++v) + bx::Vec3 normal(bx::init::None); + + for (cgltf_size v = 0; v < accessorCount; ++v) { gltfReadFloat(accessorData, numComponents, v, &normal.x, 3); normal = mul(normal, nodeToWorldNormal); @@ -779,8 +776,9 @@ void processGltfNode(cgltf_node* _node, Mesh* _mesh, Group* _group, bool _hasBc) _mesh->m_texcoords.reserve(_mesh->m_texcoords.size() + accessorCount); hasTexcoord = true; - bx::Vec3 texcoord; - for (cgltf_size v=0;v<accessorCount;++v) + bx::Vec3 texcoord(bx::init::None); + + for (cgltf_size v = 0; v < accessorCount; ++v) { gltfReadFloat(accessorData, numComponents, v, &texcoord.x, 3); _mesh->m_texcoords.push_back(texcoord); |