OpenShaderDesigner 0.0.1
Loading...
Searching...
No Matches
OpenShaderDesigner::Nodes::Shaders::Function Class Reference

Functions are a Shader function that takes inputs and outputs. More...

#include <Shaders.h>

Inheritance diagram for OpenShaderDesigner::Nodes::Shaders::Function:
OpenShaderDesigner::Node OpenShaderDesigner::ShaderAsset OpenShaderDesigner::FileManager::Asset

Public Member Functions

 Function (const FileManager::Path &path, ShaderGraph &graph)
 
NodeCopy (ShaderGraph &graph) const override
 
void Inspect () override
 
void Compile () override
 
void Open () override
 
std::string GetCode () const override
 
void View (HDRTexture::HandleType *Target) override
 
- Public Member Functions inherited from OpenShaderDesigner::Node
 Node (ShaderGraph &graph, ImVec2 pos)
 
void DrawPin (int id, Pin &pin, ImPinDirection direction)
 
void Draw (ImGuiID id)
 
virtual bool CheckConnection (Pin *, Pin *)
 
virtual void ValidateConnections ()
 
- Public Member Functions inherited from OpenShaderDesigner::ShaderAsset
 ShaderAsset (const FileManager::Path &path, ShaderGraph &graph)
 
void PushState ()
 
void PopState ()
 
GraphStateGetState ()
 
const GraphStateGetState () const
 
ShaderGraphGetGraph ()
 
const ShaderGraphGetGraph () const
 
- Public Member Functions inherited from OpenShaderDesigner::FileManager::Asset
 Asset (const Path &path)
 
bool Dirty () const
 
virtual void Save (const Path &path)
 
File & GetFile ()
 
FileID GetID () const
 

Static Public Member Functions

static Asset * Create (const FileManager::Path &path)
 
static Asset * Load (const FileManager::Path &path)
 
static Asset * Import (const FileManager::Path &src, const FileManager::Path &dst)
 

Additional Inherited Members

- Public Attributes inherited from OpenShaderDesigner::Node
ShaderGraphGraph
 
ImVec2 Position = { 0, 0 }
 
struct { 
 
   std::string   Title 
 
   ImColor   Color 
 
   ImColor   HoveredColor 
 
   ImColor   ActiveColor 
 
   bool   Enabled 
 
Header 
 
struct { 
 
   std::vector< Pin >   Inputs 
 
   std::vector< Pin >   Outputs 
 
IO 
 
struct { 
 
   std::string   Alias 
 
   FlagT   Flags 
 
Info 
 
- Static Public Attributes inherited from OpenShaderDesigner::ShaderAsset
static const std::string VersionString = "#version 430 core"
 
- Protected Member Functions inherited from OpenShaderDesigner::FileManager::Asset
void MakeDirty ()
 
FileManagerParent () const
 
- Protected Attributes inherited from OpenShaderDesigner::ShaderAsset
std::string Code
 

Detailed Description

Functions are a Shader function that takes inputs and outputs.

Functions are not analagous to Material Functions in UnrealEngine. Functions work strictly on their inputs and outputs without a specified domain.

Member Function Documentation

◆ Compile()

void Function::Compile ( )
overridevirtual

◆ Copy()

Node * Function::Copy ( ShaderGraph & graph) const
nodiscardoverridevirtual

◆ GetCode()

std::string Function::GetCode ( ) const
overridevirtual

◆ Inspect()

void Function::Inspect ( )
overridevirtual

◆ Open()

void Function::Open ( )
overridevirtual

◆ View()

void Function::View ( HDRTexture::HandleType * Target)
overridevirtual

The documentation for this class was generated from the following files: