GearEngine  0.0.1
Gear::Shader 클래스 참조abstract

#include <Shader.h>

Gear::Shader에 대한 상속 다이어그램 :
Inheritance graph
Gear::Shader에 대한 협력 다이어그램:
Collaboration graph

Public 멤버 함수

virtual ~Shader ()=default
 
virtual void Bind () const =0
 
virtual void Unbind () const =0
 
virtual void SetInt (const std::string &name, int value)=0
 
virtual void SetFloat (const std::string &name, float value)=0
 
virtual void SetFloat3 (const std::string &name, const glm::vec3 &value)=0
 
virtual void SetFloat4 (const std::string &name, const glm::vec4 &value)=0
 
virtual void SetMat4 (const std::string &name, const glm::mat4 &value)=0
 
virtual const std::string & GetName () const =0
 

정적 Public 멤버 함수

static Ref< ShaderCreate (const std::string &filepath)
 
static Ref< ShaderCreate (const std::string &name, const std::string &vertexSrc, const std::string &fragmentSrc)
 

상세한 설명

Shader.h 파일의 9 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ ~Shader()

virtual Gear::Shader::~Shader ( )
virtualdefault

멤버 함수 문서화

◆ Bind()

virtual void Gear::Shader::Bind ( ) const
pure virtual

Gear::OpenGLShader에서 구현되었습니다.

◆ Create() [1/2]

Ref< Shader > Gear::Shader::Create ( const std::string &  filepath)
static

Shader.cpp 파일의 9 번째 라인에서 정의되었습니다.

10  {
11  switch (Renderer::GetAPI())
12  {
14  GR_CORE_ASSERT(false, "RendererAPI::None is currently not supported!");
15  return nullptr;
17  return std::make_shared<OpenGLShader>(filepath);
18  }
19  GR_CORE_ASSERT(false, "Unknown RendererAPI!");
20  return nullptr;
21  }
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ Create() [2/2]

Ref< Shader > Gear::Shader::Create ( const std::string &  name,
const std::string &  vertexSrc,
const std::string &  fragmentSrc 
)
static

Shader.cpp 파일의 23 번째 라인에서 정의되었습니다.

24  {
25  switch (Renderer::GetAPI())
26  {
28  GR_CORE_ASSERT(false, "RendererAPI::None is currently not supported!");
29  return nullptr;
31  return std::make_shared<OpenGLShader>(name, vertexSrc, fragmentSrc);
32  }
33  GR_CORE_ASSERT(false, "Unknown RendererAPI!");
34  return nullptr;
35  }
이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ GetName()

virtual const std::string& Gear::Shader::GetName ( ) const
pure virtual

Gear::OpenGLShader에서 구현되었습니다.

◆ SetFloat()

virtual void Gear::Shader::SetFloat ( const std::string &  name,
float  value 
)
pure virtual

Gear::OpenGLShader에서 구현되었습니다.

◆ SetFloat3()

virtual void Gear::Shader::SetFloat3 ( const std::string &  name,
const glm::vec3 &  value 
)
pure virtual

Gear::OpenGLShader에서 구현되었습니다.

◆ SetFloat4()

virtual void Gear::Shader::SetFloat4 ( const std::string &  name,
const glm::vec4 &  value 
)
pure virtual

Gear::OpenGLShader에서 구현되었습니다.

◆ SetInt()

virtual void Gear::Shader::SetInt ( const std::string &  name,
int  value 
)
pure virtual

Gear::OpenGLShader에서 구현되었습니다.

◆ SetMat4()

virtual void Gear::Shader::SetMat4 ( const std::string &  name,
const glm::mat4 &  value 
)
pure virtual

Gear::OpenGLShader에서 구현되었습니다.

◆ Unbind()

virtual void Gear::Shader::Unbind ( ) const
pure virtual

Gear::OpenGLShader에서 구현되었습니다.


이 클래스에 대한 문서화 페이지는 다음의 파일들로부터 생성되었습니다.:
Gear::RendererAPI::API::None
@ None
Gear::RendererAPI::API::OpenGL
@ OpenGL
Gear::Renderer::GetAPI
static RendererAPI::API GetAPI()
Definition: Renderer.h:23
GR_CORE_ASSERT
#define GR_CORE_ASSERT(x,...)
Definition: Core.h:68