Showing the changes to libraries/script-engine/src/ModelScriptingInterface.cpp (1 of 71 files). Show all
Unified · Split
| @@ -102,7 +102,7 @@ QScriptValue ModelScriptingInterface::appendMeshes(MeshProxyList in) { · 101 unmodified lines | |||
| 102 | indexStartOffset += numVertices; | 102 | indexStartOffset += numVertices; |
| 103 | } | 103 | } |
| 104 | 104 | ||
| 105 | model::MeshPointer result(new model::Mesh()); | 105 | graphics::MeshPointer result(new graphics::Mesh()); |
| 106 | 106 | ||
| 107 | gpu::Element vertexElement = gpu::Element(gpu::VEC3, gpu::FLOAT, gpu::XYZ); | 107 | gpu::Element vertexElement = gpu::Element(gpu::VEC3, gpu::FLOAT, gpu::XYZ); |
| 108 | gpu::Buffer* combinedVertexBuffer = new gpu::Buffer(combinedVertexSize, combinedVertexData.get()); | 108 | gpu::Buffer* combinedVertexBuffer = new gpu::Buffer(combinedVertexSize, combinedVertexData.get()); |
| @@ -130,12 +130,12 @@ QScriptValue ModelScriptingInterface::appendMeshes(MeshProxyList in) { · 21 unmodified lines | |||
| 130 | gpu::BufferView combinedIndexesBufferView(combinedIndexesBufferPointer, indexElement); | 130 | gpu::BufferView combinedIndexesBufferView(combinedIndexesBufferPointer, indexElement); |
| 131 | result->setIndexBuffer(combinedIndexesBufferView); | 131 | result->setIndexBuffer(combinedIndexesBufferView); |
| 132 | 132 | ||
| 133 | std::vector<model::Mesh::Part> parts; | 133 | std::vector<graphics::Mesh::Part> parts; |
| 134 | parts.emplace_back(model::Mesh::Part((model::Index)0, // startIndex | 134 | parts.emplace_back(graphics::Mesh::Part((graphics::Index)0, // startIndex |
| 135 | (model::Index)result->getNumIndices(), // numIndices | 135 | (graphics::Index)result->getNumIndices(), // numIndices |
| 136 | (model::Index)0, // baseVertex | 136 | (graphics::Index)0, // baseVertex |
| 137 | model::Mesh::TRIANGLES)); // topology | 137 | graphics::Mesh::TRIANGLES)); // topology |
| 138 | result->setPartBuffer(gpu::BufferView(new gpu::Buffer(parts.size() * sizeof(model::Mesh::Part), | 138 | result->setPartBuffer(gpu::BufferView(new gpu::Buffer(parts.size() * sizeof(graphics::Mesh::Part), |
| 139 | (gpu::Byte*) parts.data()), gpu::Element::PART_DRAWCALL)); | 139 | (gpu::Byte*) parts.data()), gpu::Element::PART_DRAWCALL)); |
| 140 | 140 | ||
| 141 | 141 | ||
| @@ -153,7 +153,7 @@ QScriptValue ModelScriptingInterface::transformMesh(glm::mat4 transform, MeshPro · 11 unmodified lines | |||
| 153 | } | 153 | } |
| 154 | 154 | ||
| 155 | const auto inverseTransposeTransform = glm::inverse(glm::transpose(transform)); | 155 | const auto inverseTransposeTransform = glm::inverse(glm::transpose(transform)); |
| 156 | model::MeshPointer result = mesh->map([&](glm::vec3 position){ return glm::vec3(transform * glm::vec4(position, 1.0f)); }, | 156 | graphics::MeshPointer result = mesh->map([&](glm::vec3 position){ return glm::vec3(transform * glm::vec4(position, 1.0f)); }, |
| 157 | [&](glm::vec3 color){ return color; }, | 157 | [&](glm::vec3 color){ return color; }, |
| 158 | [&](glm::vec3 normal){ return glm::vec3(inverseTransposeTransform * glm::vec4(normal, 0.0f)); }, | 158 | [&](glm::vec3 normal){ return glm::vec3(inverseTransposeTransform * glm::vec4(normal, 0.0f)); }, |
| 159 | [&](uint32_t index){ return index; }); | 159 | [&](uint32_t index){ return index; }); |
| @@ -199,7 +199,7 @@ QScriptValue ModelScriptingInterface::getVertex(MeshProxy* meshProxy, int vertex · 39 unmodified lines | |||
| 199 | QScriptValue ModelScriptingInterface::newMesh(const QVector<glm::vec3>& vertices, | 199 | QScriptValue ModelScriptingInterface::newMesh(const QVector<glm::vec3>& vertices, |
| 200 | const QVector<glm::vec3>& normals, | 200 | const QVector<glm::vec3>& normals, |
| 201 | const QVector<MeshFace>& faces) { | 201 | const QVector<MeshFace>& faces) { |
| 202 | model::MeshPointer mesh(new model::Mesh()); | 202 | graphics::MeshPointer mesh(new graphics::Mesh()); |
| 203 | 203 | ||
| 204 | // vertices | 204 | // vertices |
| 205 | auto vertexBuffer = std::make_shared<gpu::Buffer>(vertices.size() * sizeof(glm::vec3), (gpu::Byte*)vertices.data()); | 205 | auto vertexBuffer = std::make_shared<gpu::Buffer>(vertices.size() * sizeof(glm::vec3), (gpu::Byte*)vertices.data()); |
| @@ -236,12 +236,12 @@ QScriptValue ModelScriptingInterface::newMesh(const QVector<glm::vec3>& vertices · 30 unmodified lines | |||
| 236 | mesh->setIndexBuffer(indexBufferView); | 236 | mesh->setIndexBuffer(indexBufferView); |
| 237 | 237 | ||
| 238 | // parts | 238 | // parts |
| 239 | std::vector<model::Mesh::Part> parts; | 239 | std::vector<graphics::Mesh::Part> parts; |
| 240 | parts.emplace_back(model::Mesh::Part((model::Index)0, // startIndex | 240 | parts.emplace_back(graphics::Mesh::Part((graphics::Index)0, // startIndex |
| 241 | (model::Index)faces.size() * 3, // numIndices | 241 | (graphics::Index)faces.size() * 3, // numIndices |
| 242 | (model::Index)0, // baseVertex | 242 | (graphics::Index)0, // baseVertex |
| 243 | model::Mesh::TRIANGLES)); // topology | 243 | graphics::Mesh::TRIANGLES)); // topology |
| 244 | mesh->setPartBuffer(gpu::BufferView(new gpu::Buffer(parts.size() * sizeof(model::Mesh::Part), | 244 | mesh->setPartBuffer(gpu::BufferView(new gpu::Buffer(parts.size() * sizeof(graphics::Mesh::Part), |
| 245 | (gpu::Byte*) parts.data()), gpu::Element::PART_DRAWCALL)); | 245 | (gpu::Byte*) parts.data()), gpu::Element::PART_DRAWCALL)); |
| 246 | 246 | ||
| 247 | 247 | ||