HyperRogue  11.3d
game/visualization engine based on non-Euclidean geometry
Namespaces | Macros | Functions | Variables
3d-models.cpp File Reference

This file contains the routines to convert HyperRogue's old vector graphics into 3D models. More...

#include "hyper.h"
#include "earcut.hpp"

Namespaces

 hr
 

Macros

#define S   (cgi.scalefactor / 0.805578)
 
#define SH   (cgi.scalefactor / 0.805578 * vid.height_width / 1.5)
 
#define revZ   ((WDIM == 2 || hybri) ? -1 : 1)
 

Functions

hyperpoint hr::get_center (const vector< hyperpoint > &vh)
 
EX ld hr::zc (ld z)
 
vector< hyperpoint > hr::scaleshape (const vector< hyperpoint > &vh, ld s)
 
ld hr::get_zlevel (hyperpoint h)
 
void hr::disable (hpcshape &sh)
 
hyperpoint hr::yzspin (ld alpha, hyperpoint h)
 
hyperpoint hr::psmin (hyperpoint H)
 
EX void hr::queueball (const transmatrix &V, ld rad, color_t col, eItem what)
 

Variables

ld hr::eyepos
 
hyperpoint hr::shcenter
 
EX hyperpoint hr::front_leg
 
EX hyperpoint hr::rear_leg
 
EX transmatrix hr::front_leg_move
 
EX transmatrix hr::rear_leg_move
 
EX transmatrix hr::front_leg_move_inverse
 
EX transmatrix hr::rear_leg_move_inverse
 
EX ld hr::leg_length
 
renderbuffer * hr::floor_textures
 

Detailed Description

This file contains the routines to convert HyperRogue's old vector graphics into 3D models.