Skip to content
Snippets Groups Projects
Commit 914f5821 authored by Christian Mattes's avatar Christian Mattes
Browse files

Merge branch 'pesser' into 'master'

Fix lava-vr under windows

See merge request !1
parents d492138b 70728d12
No related branches found
No related tags found
1 merge request!1Fix lava-vr under windows
......@@ -21,5 +21,15 @@ list(APPEND lava_pack_shaders
)
set(lava_pack_shaders "${lava_pack_shaders}" CACHE INTERNAL "lava_pack_shaders")
find_package(ZLIB REQUIRED)
link_directories(${ZLIB_INCLUDE_DIRS})
target_link_libraries(lava-vr PUBLIC ${ZLIB_LIBRARIES})
target_include_directories(lava-vr PUBLIC ./src)
target_link_libraries(lava-vr PUBLIC lava lava-extras-openvr lava-extras-pipeline lava-extras-geometry lava-extras-pack lava-extras-imgui z)
target_link_libraries(lava-vr PUBLIC lava lava-extras-openvr lava-extras-pipeline lava-extras-geometry lava-extras-pack lava-extras-imgui zlib)
if (TARGET glm_static)
target_link_libraries(lava-vr PRIVATE glm_static)
else()
message( FATAL_ERROR "Lava-VR requires glm_static as a target. Please make sure to add it using something like 'add_subdirectory('lava/extern/glm/glm')' before including lava-vr." )
endif()
\ No newline at end of file
#include "VRMesh.hh"
#include <exception>
#include <iostream>
#include <assert.h>
#include <zlib.h>
#include <assimp/Importer.hpp>
......@@ -107,10 +108,10 @@ VRMesh VRMesh::readFromFile(const std::string &filename) {
result.vertices.resize(header.num_verts);
gzread(file, result.vertices.data(),
uint(sizeof(Vertex) * header.num_verts));
uint32_t(sizeof(Vertex) * header.num_verts));
result.indices.resize(header.num_indcs);
gzread(file, result.indices.data(),
uint(sizeof(uint32_t) * header.num_indcs));
uint32_t(sizeof(uint32_t) * header.num_indcs));
if (header.has_color_texture) {
result.colorTexture = readTexture(file);
......@@ -151,7 +152,7 @@ VRMesh VRMesh::readFromObj(const std::string &objfile,
aiMesh *theMesh = importScene->mMeshes[0];
auto uv = theMesh->mTextureCoords[0];
for (unsigned int i = 0; i < theMesh->mNumVertices; ++i) {
for (uint32_t i = 0; i < theMesh->mNumVertices; ++i) {
Vertex v;
v.position.x = theMesh->mVertices[i].x;
v.position.y = theMesh->mVertices[i].y;
......@@ -164,10 +165,10 @@ VRMesh VRMesh::readFromObj(const std::string &objfile,
result.vertices.push_back(v);
}
for (unsigned int i_f = 0; i_f < theMesh->mNumFaces; ++i_f) {
for (uint32_t i_f = 0; i_f < theMesh->mNumFaces; ++i_f) {
assert(theMesh->mFaces[i_f].mNumIndices == 3 &&
"Only triangles for now please");
for (unsigned int i_i = 0; i_i < 3; ++i_i) {
for (uint32_t i_i = 0; i_i < 3; ++i_i) {
uint32_t currentVertexIndex =
(uint32_t)theMesh->mFaces[i_f].mIndices[i_i];
result.indices.push_back(currentVertexIndex);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment