mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-12-02 04:20:28 +00:00
75bc7be622
This allows setting different texture wrap modes and setting different texture coordinate scale factors.
33 lines
786 B
C++
33 lines
786 B
C++
/*
|
|
* Copyright (c) 2021, Jesse Buhagiar <jooster669@gmail.com>
|
|
* Copyright (c) 2021, Mathieu Gaillard <gaillard.mathieu.39@gmail.com>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/RefCounted.h>
|
|
#include <AK/Vector.h>
|
|
|
|
#include "Common.h"
|
|
|
|
class Mesh : public RefCounted<Mesh> {
|
|
public:
|
|
Mesh() = delete;
|
|
|
|
Mesh(Vector<Vertex> vertices, Vector<TexCoord> tex_coords, Vector<Triangle> triangles);
|
|
|
|
size_t vertex_count() const { return m_vertex_list.size(); }
|
|
|
|
size_t triangle_count() const { return m_triangle_list.size(); }
|
|
|
|
void draw(float uv_scale);
|
|
|
|
bool is_textured() const { return m_tex_coords.size() > 0; }
|
|
|
|
private:
|
|
Vector<Vertex> m_vertex_list;
|
|
Vector<TexCoord> m_tex_coords;
|
|
Vector<Triangle> m_triangle_list;
|
|
};
|