/**
 * Copyright (c) 2021 Dominic Masters
 * 
 * This software is released under the MIT License.
 * https://opensource.org/licenses/MIT
 */

#pragma once
#include <dawn/dawn.h>
#include "../../display/framebuffer.h"
#include "../../display/primitive.h"
#include "../../display/texture.h"
#include "../../display/shader.h"
#include "../../display/camera.h"
#include "../../display/primitives/quad.h"

#include "../../display/gui/font.h"

/**
 * Initializes the various frame buffers for the poker game.
 * 
 * @param poker Poker game to initialize for
 * @param render Rendering context.
 */
void pokerFrameInit(poker_t *poker, render_t *render);

/**
 * Bind the world frame, this will also correct the camera angles.
 * 
 * @param poker Poker game context.
 * @param render Rendering engine context.
 */
void pokerFrameWorld(poker_t *poker, render_t *render);

/**
 * Bind the frame for GUI rendering.
 * 
 * @param poker Poker game context.
 * @param render Rendering engine context.
 */ 
void pokerFrameGui(poker_t *poker, render_t *render);

void pokerFrameTest(poker_t *poker, render_t *render);