Newer
Older
GameEngine / src / EditorUI / Nk / NkOpenGLRenderDevice.h
@John Ryland John Ryland on 22 Aug 792 bytes save WIP
#pragma once

/*
	GameEngine and Editor
	by John Ryland
	Copyright (c) 2023
*/

////////////////////////////////////////////////////////////////////////////////////
//	OpenGLRenderDevice

#include "NkIRenderDevice.h"

namespace GameEngine {

class OpenGLRenderDevice : public IRenderDevice
{
public:
    OpenGLRenderDevice();
    ~OpenGLRenderDevice() override;

    // void Create() override;
    // void Destroy() override;

    struct nk_image UploadTexture(Image& image, bool generateMips = true) override;

    void Prepare(int width, int height) override;
    void Draw(nk_context *ctx, int width, int height, struct nk_vec2 scale) override;
    void Present() override;

    nk_draw_null_texture* NullTexture() override;

private:
    struct device *dev;
};

} // GameEngine namespace