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

This file implements the basic graphical routines. More...

#include "hyper.h"

Classes

struct  hr::display_data
 
struct  hr::glfont_t
 
struct  hr::msginfo
 

Namespaces

 hr
 

Macros

#define View   (::hr::current_display->view_matrix)
 
#define cwtV   (::hr::current_display->player_matrix)
 
#define centerover   (::hr::current_display->precise_center)
 
#define gmatrix   (::hr::current_display->cellmatrices)
 
#define gmatrix0   (::hr::current_display->old_cellmatrices)
 
#define NLP   (::hr::current_display->local_perspective)
 
#define CHARS   (128+NUMEXTRA)
 
#define FONTTEXTURESIZE   2048
 
#define SETMOUSEKEY   5000
 
#define CFPS   30
 

Typedefs

typedef Uint16 hr::texturepixel
 

Functions

int hr::utfsize (char c)
 
EX int hr::get_sightrange ()
 
EX int hr::get_sightrange_ambush ()
 
bool hr::eqs (const char *x, const char *y)
 
EX int hr::getnext (const char *s, int &i)
 
EX color_t & hr::qpixel (SDL_Surface *surf, int x, int y)
 
void hr::loadfont (int siz)
 
int hr::textwidth (int siz, const string &str)
 
EX int hr::darkenedby (int c, int lev)
 
EX color_t hr::darkened (color_t c)
 
EX color_t hr::darkena3 (color_t c, int lev, int a)
 
EX color_t hr::darkena (color_t c, int lev, int a)
 
EX void hr::eyewidth_translate (int ed)
 
void hr::reset_projection ()
 
EX bool hr::model_needs_depth ()
 
EX void hr::setGLProjection (color_t col IS(backcolor))
 
EX int hr::next_p2 (int a)
 
void hr::sdltogl (SDL_Surface *txt, glfont_t &f, int ch)
 
void hr::init_glfont (int size)
 
int hr::gl_width (int size, const char *s)
 
glhr::textured_vertex hr::charvertex (int x1, int y1, ld tx, ld ty)
 
bool hr::gl_print (int x, int y, int shift, int size, const char *s, color_t color, int align)
 
EX void hr::resetGL ()
 
EX bool hr::displaystr (int x, int y, int shift, int size, const char *str, color_t color, int align)
 
EX bool hr::displaystr (int x, int y, int shift, int size, const string &s, color_t color, int align)
 
EX bool hr::displayfrSP (int x, int y, int sh, int b, int size, const string &s, color_t color, int align, int p)
 
EX bool hr::displayfr (int x, int y, int b, int size, const string &s, color_t color, int align)
 
EX bool hr::displaychr (int x, int y, int shift, int size, char chr, color_t col)
 
EX void hr::flashMessages ()
 
EX string hr::fullmsg (msginfo &m)
 
void hr::addMessageToLog (msginfo &m, vector< msginfo > &log)
 
EX void hr::clearMessages ()
 
EX void hr::addMessage (string s, char spamtype)
 
EX color_t hr::colormix (color_t a, color_t b, color_t c)
 
EX int hr::rhypot (int a, int b)
 
EX ld hr::realradius ()
 
EX void hr::drawmessage (const string &s, int &y, color_t col)
 
EX void hr::drawmessages ()
 
EX color_t hr::gradient (color_t c0, color_t c1, ld v0, ld v, ld v1)
 
EX void hr::drawCircle (int x, int y, int size, color_t color, color_t fillcolor IS(0))
 
EX void hr::displayButton (int x, int y, const string &name, int key, int align, int rad IS(0))
 
EX void hr::displaymm (char c, int x, int y, int rad, int size, const string &title, int align)
 
EX bool hr::displayButtonS (int x, int y, const string &name, color_t col, int align, int size)
 
EX void hr::displayColorButton (int x, int y, const string &name, int key, int align, int rad, color_t color, color_t color2 IS(0))
 
ld hr::textscale ()
 
EX void hr::do_setfsize ()
 
EX void hr::disable_vsync ()
 
EX void hr::setvideomode ()
 
EX void hr::initgraph ()
 
EX void hr::cleargraph ()
 
EX int hr::calcfps ()
 
EX bool hr::subscreens::is_current_player (int id)
 
EX void hr::subscreens::prepare ()
 
EX bool hr::subscreens::split (reaction_t what)
 

Variables

EX int hr::fontscale = 100
 
EX display_data hr::default_display
 
EX display_data * hr::current_display = &default_display
 
EX unsigned hr::backcolor = 0
 
EX unsigned hr::bordcolor = 0
 
EX unsigned hr::forecolor = 0xFFFFFF
 
TTF_Font * hr::font [256]
 
EX SDL_Surface * hr::s
 
EX SDL_Surface * hr::s_screen
 
EX color_t hr::qpixel_pixel_outside
 
EX string hr::fontpath = ISWEB ? "sans-serif" : HYPERPATH "DejaVuSans-Bold.ttf"
 
bool hr::fading = false
 
ld hr::fadeout = 1
 
tuple< int, eModel, display_data *, int > hr::last_projection
 
EX bool hr::new_projection_needed
 
EX ld hr::lband_shift
 
glfont_t * hr::glfont [256]
 
int hr::curx = 0
 
int hr::cury = 0
 
int hr::theight = 0
 
texturepixel hr::fontdata [FONTTEXTURESIZE][FONTTEXTURESIZE]
 
vector< glhr::textured_vertex > hr::tver
 
EX purehookset hr::hooks_resetGL
 
EX vector< msginfo > hr::msgs
 
EX vector< msginfo > hr::gamelog
 
EX char hr::mousekey = 'n'
 
EX char hr::newmousekey
 
EX bool hr::setfsize = true
 
EX bool hr::vsync_off
 
EX bool hr::noGUI = false
 
EX vector< display_data > hr::subscreens::player_displays
 
EX bool hr::subscreens::in
 
EX int hr::subscreens::current_player
 

Detailed Description

This file implements the basic graphical routines.