Euphoria
compiledlines.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "base/vec3.h"
4 #include "base/mat4.h"
5 
6 #include "render/buffer.h"
7 
8 #include <memory>
9 
10 namespace eu::core
11 {
12  struct Lines;
13 }
14 
15 namespace eu::render
16 {
17  struct MaterialShader;
18  struct MaterialShaderCache;
19 
21  {
26  std::shared_ptr<MaterialShader> shader;
27 
28  void
29  render
30  (
31  const mat4f& model_matrix,
32  const mat4f& projection_matrix,
33  const mat4f& view_matrix
34  );
35  };
36 
37 
38  std::shared_ptr<CompiledLines>
39  compile(MaterialShaderCache* shader_cache, const core::Lines& lines);
40 }
41 
42 
std::shared_ptr< CompiledLines > compile(MaterialShaderCache *shader_cache, const core::Lines &lines)
Definition: mat4.h:14
void render(const mat4f &model_matrix, const mat4f &projection_matrix, const mat4f &view_matrix)
std::shared_ptr< MaterialShader > shader
Definition: compiledlines.h:26
Reuses points.
Definition: buffer.h:64
Stores what the data in the vertex_buffer is and how it is laid out/used Represents a OpenGL Vertex A...
Definition: buffer.h:34
Stores vertices, uv, etc.
Definition: buffer.h:13