Monopoly — Portage moderne 0.1.0
Portage moderne C/C++23 du Monopoly de 1999
Loading...
Searching...
No Matches
World3DProjection.hpp File Reference
#include "MeshRuntime.hpp"
#include "SequenceTransforms.hpp"
#include <array>
#include <cstdint>
#include <expected>
#include <optional>
Include dependency graph for World3DProjection.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  monopoly::engine::World3DRect
 
struct  monopoly::engine::World3DCamera
 
struct  monopoly::engine::World3DProjectionError
 
struct  monopoly::engine::World3DProjectionState
 

Namespaces

namespace  monopoly
 
namespace  monopoly::engine
 

Enumerations

enum class  monopoly::engine::World3DProjectionErrorCode { monopoly::engine::InvalidViewport , monopoly::engine::InvalidPlanes , monopoly::engine::InvalidFieldOfView , monopoly::engine::InvalidCameraDirection }
 

Functions

std::expected< World3DProjectionState, World3DProjectionError > monopoly::engine::makeWorld3DProjectionState (World3DRect viewport, World3DCamera camera)
 
std::optional< World3DRect > monopoly::engine::world3DMeshScreenRect (const data::MeshBounds &bounds, const sequence::Matrix3D &worldTransform, const World3DProjectionState &projection) noexcept
 
std::optional< World3DRect > monopoly::engine::intersectWorld3DRect (World3DRect left, World3DRect right) noexcept
 

Variables

constexpr float monopoly::engine::MonopolyBoardNearPlane = 10.0F
 
constexpr float monopoly::engine::MonopolyBoardFarPlane = 1540.0F