diff --git a/Userland/Demos/GLTeapot/WavefrontOBJLoader.cpp b/Userland/Demos/GLTeapot/WavefrontOBJLoader.cpp index 81412c82f2..08fa574447 100644 --- a/Userland/Demos/GLTeapot/WavefrontOBJLoader.cpp +++ b/Userland/Demos/GLTeapot/WavefrontOBJLoader.cpp @@ -24,6 +24,11 @@ RefPtr WavefrontOBJLoader::load(const String& fname) for (auto line = obj_file_or_error.value()->line_begin(); !line.at_end(); ++line) { auto object_line = *line; + // FIXME: Parse texture coordinates and vertex normals + if (object_line.starts_with("vt") || object_line.starts_with("vn")) { + continue; + } + // This line describes a vertex (a position in 3D space) if (object_line.starts_with("v")) { auto vertex_line = object_line.split_view(' '); @@ -45,6 +50,12 @@ RefPtr WavefrontOBJLoader::load(const String& fname) return nullptr; } + if (object_line.contains("/")) { + for (int i = 1; i <= 3; ++i) { + face_line.at(i) = face_line.at(i).split_view("/").at(0); + } + } + // Create a new triangle triangles.append( {