43 lines
1.1 KiB
C++
43 lines
1.1 KiB
C++
// Copyright (c) 2023 Dominic Masters
|
|
//
|
|
// This software is released under the MIT License.
|
|
// https://opensource.org/licenses/MIT
|
|
|
|
#pragma once
|
|
#include "scene/components/display/ShaderInterface.hpp"
|
|
#include "display/shader/SimpleTexturedShader.hpp"
|
|
|
|
namespace Dawn {
|
|
class SimpleTexturedShaderInterface :
|
|
public ShaderInterface<SimpleTexturedShader>
|
|
{
|
|
public:
|
|
/**
|
|
* SimpleTexturedShader scene item component interface.
|
|
*
|
|
* @param i Scene Item this interface belongs to.
|
|
*/
|
|
SimpleTexturedShaderInterface(SceneItem *i);
|
|
|
|
/**
|
|
* Sets the primary colour texture to be used by the shader.
|
|
*
|
|
* @param texture Texture to use.
|
|
*/
|
|
void setTexture(Texture *texture);
|
|
|
|
/**
|
|
* Sets the multiplicitive color to be used by the shader.
|
|
*
|
|
* @param color Color to be used.
|
|
*/
|
|
void setColor(struct Color color);
|
|
|
|
/**
|
|
* Returns the current color from the shader.
|
|
*
|
|
* @return Current color.
|
|
*/
|
|
struct Color getColor();
|
|
};
|
|
} |