xcal
基于 C++23 的现代图形渲染引擎
载入中...
搜索中...
未找到
xcal
render
impl
opengl
object
axis.hpp
浏览该文件的文档.
1
#pragma once
2
#include <
xcal/public.h
>
3
4
#include <
xcal/mobject/objects/axis.hpp
>
5
#include <
xcal/render/impl/opengl/gl/buffer.hpp
>
6
#include <
xcal/render/impl/opengl/object/object.hpp
>
7
#include <
xcal/render/impl/opengl/utils/singlemobjectwrapper.hpp
>
8
#include <
xcmath/mobject/mat.hpp
>
9
#include <
xcmath/xcmath.hpp
>
10
11
namespace
xcal::render::opengl::object
{
12
class
XCAL_API
Axis3D
:
public
Object
{
13
public
:
14
using
mat
=
xcmath::mat<float_t, 4, 4>
;
15
16
private
:
17
GL::Buffer
vbo_;
18
utils::SingleMGroupWrapper<mobject::Axis3D>
mobject_{
nullptr
};
19
std::shared_ptr<GL::ShaderProgram> shader_program_;
20
21
public
:
22
explicit
Axis3D
(
mobject::Axis3D
*mobject);
23
void
create
()
override
;
24
void
destroy()
override
;
25
void
render()
const override
;
26
void
update_projection_view(
27
const
xcmath::mat4<float_t>
&projection_view)
override
;
28
29
Axis3D
(
const
Axis3D
&) =
delete
;
30
};
31
}
// namespace xcal::render::opengl::object
32
XCAL_OPENGL_REGIST_OBJECT
(
xcal::render::opengl::object::Axis3D
, Axis3D);
buffer.hpp
xcal::mobject::Axis3D
Definition
axis.hpp:39
xcal::render::opengl::GL::Buffer
Definition
buffer.hpp:10
xcal::render::opengl::object::Axis3D
Definition
axis.hpp:12
xcal::render::opengl::object::Axis3D::Axis3D
Axis3D(const Axis3D &)=delete
xcal::render::opengl::object::Object
Definition
object.hpp:15
xcal::render::opengl::utils::SingleMGroupWrapper
Definition
singlemobjectwrapper.hpp:52
xcmath::mat< float_t, 4, 4 >
mat.hpp
Header file for matrix class template and related utilities
axis.hpp
xcal::render::opengl::object
Definition
typedef.hpp:36
xcal::render::opengl::object::create
xcal::render::opengl::object::object_ptr create(T *mobject)
object.hpp
XCAL_OPENGL_REGIST_OBJECT
#define XCAL_OPENGL_REGIST_OBJECT(class_, type)
Definition
object.hpp:44
public.h
XCAL_API
#define XCAL_API
Definition
public.h:69
singlemobjectwrapper.hpp
xcmath.hpp
生成于 2025年 九月 19日 星期五 21:12:12 , 为 xcal使用
1.9.8