ada349c0a2
The builtin namespace is intended to be a slighly higher level interface with OpenGL through the charcoal engine. It is inteneded to allow the developer to create applications without needing to create shader code or worry about rendering techniques. Eventually, applications with lighting, textures, vertex coloring, shadows, and a text-based UI should be available through the builtin namespace
27 lines
628 B
C++
27 lines
628 B
C++
#pragma once
|
|
|
|
#include "Prerenderable.h"
|
|
#include "Camera3D.h"
|
|
|
|
namespace charcoal
|
|
{
|
|
namespace builtin
|
|
{
|
|
class Camera3D : public Prerenderable, public charcoal::Camera3D
|
|
{
|
|
public:
|
|
Camera3D(
|
|
float fov_y,
|
|
float aspect_ratio,
|
|
float znear,
|
|
float zfar,
|
|
const vec3& position,
|
|
const vec3& forward = vec3(0.0f, 0.0f, 1.0f),
|
|
const vec3& up = vec3(0.0f, 1.0f, 0.0f),
|
|
const vec3& right = vec3(0.0f) // Zero for auto-calculated
|
|
) : charcoal::Camera3D(fov_y, aspect_ratio, znear, zfar, position, forward, up, right) {}
|
|
|
|
void prerender() override { charcoal::Camera3D::prerender(); }
|
|
};
|
|
}
|
|
} |