Graphics v0.0.0
A simple abstraction layer for the modern graphics APIs.
载入中...
搜索中...
未找到
Program类 参考abstract

着色器程序. 更多...

#include <Program.h>

类 Program 继承关系图:
GLProgram VKProgram

struct  Descriptor
 

Public 成员函数

virtual void use ()=0
 
virtual void set_uniform (const std::string &name, int value)=0
 
virtual void set_uniform (const std::string &name, float value)=0
 
virtual void set_uniform (const std::string &name, const Vector2 &value)=0
 
virtual void set_uniform (const std::string &name, const Vector3 &value)=0
 
virtual void set_uniform (const std::string &name, const Vector4 &value)=0
 
virtual void set_uniform (const std::string &name, const Matrix4 &value)=0
 
int get_stage_count () const
 

静态 Public 成员函数

static std::shared_ptr< Programcreate (const Descriptor &desc)
 创建着色器阶段. 更多...
 
static std::shared_ptr< Programcreate (std::string_view name)
 创建着色器阶段. 更多...
 

Protected 成员函数

 Program (const Descriptor &desc)
 

Protected 属性

std::string name_
 
int stage_count_ = 0
 

静态 Protected 属性

static std::unordered_map< std::string, std::shared_ptr< Program > > cache_
 

详细描述

着色器程序.

包含若干着色器阶段.

成员函数说明

◆ create() [1/2]

std::shared_ptr< Program > Program::create ( const Descriptor desc)
static

创建着色器阶段.

参数
desc描述符.

◆ create() [2/2]

std::shared_ptr< Program > Program::create ( std::string_view  name)
static

创建着色器阶段.

参数
name着色器文件名称.

从指定位置加载具有相同名称和特定后缀的 SPIR-V 文件.


该类的文档由以下文件生成: