mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-02-02 12:19:18 +00:00
refactored flat_model_enabler
This commit is contained in:
parent
9c61da86f3
commit
0a6c80e909
@ -1974,11 +1974,7 @@ EX void showCustomizeChar() {
|
|||||||
int firsty = dialog::items[0].position / 2;
|
int firsty = dialog::items[0].position / 2;
|
||||||
int scale = firsty - 2 * vid.fsize;
|
int scale = firsty - 2 * vid.fsize;
|
||||||
|
|
||||||
dynamicval<eModel> pm(pmodel, flat_model());
|
flat_model_enabler fme;
|
||||||
glClear(GL_DEPTH_BUFFER_BIT);
|
|
||||||
dynamicval<ld> va(pconf.alpha, 1);
|
|
||||||
dynamicval<ld> vs(pconf.scale, 1);
|
|
||||||
dynamicval<ld> vc(pconf.camera_angle, 0);
|
|
||||||
|
|
||||||
initquickqueue();
|
initquickqueue();
|
||||||
transmatrix V = atscreenpos(vid.xres/2, firsty, scale);
|
transmatrix V = atscreenpos(vid.xres/2, firsty, scale);
|
||||||
|
10
hud.cpp
10
hud.cpp
@ -401,20 +401,12 @@ EX void drawStats() {
|
|||||||
if(geometry == gRotSpace || geometry == gProduct) rots::draw_underlying(!cornermode);
|
if(geometry == gRotSpace || geometry == gProduct) rots::draw_underlying(!cornermode);
|
||||||
|
|
||||||
{
|
{
|
||||||
dynamicval<eModel> pm(pmodel, flat_model());
|
|
||||||
glClear(GL_DEPTH_BUFFER_BIT);
|
|
||||||
// dynamicval<videopar> v(vid, vid);
|
|
||||||
// pconf.alpha = vid.scale = 1;
|
|
||||||
dynamicval<ld> va(pconf.alpha, 1);
|
|
||||||
dynamicval<ld> vs(pconf.scale, 1);
|
|
||||||
dynamicval<ld> vc(pconf.camera_angle, 0);
|
|
||||||
if(prod) pconf.alpha = 30, pconf.scale = 30;
|
|
||||||
|
|
||||||
auto& cd = current_display;
|
auto& cd = current_display;
|
||||||
auto xc = cd->xcenter;
|
auto xc = cd->xcenter;
|
||||||
auto yc = cd->ycenter;
|
auto yc = cd->ycenter;
|
||||||
|
|
||||||
calcparam();
|
flat_model_enabler fme;
|
||||||
|
|
||||||
if(crosshair_color && crosshair_size > 0) {
|
if(crosshair_color && crosshair_size > 0) {
|
||||||
initquickqueue();
|
initquickqueue();
|
||||||
|
21
hypgraph.cpp
21
hypgraph.cpp
@ -1518,6 +1518,27 @@ transmatrix screenpos(ld x, ld y) {
|
|||||||
|
|
||||||
EX eModel flat_model() { return MDIM == 4 ? mdPixel : mdDisk; }
|
EX eModel flat_model() { return MDIM == 4 ? mdPixel : mdDisk; }
|
||||||
|
|
||||||
|
/** \brief enable the 'flat' model for drawing HUD. See hr::flat_model_enabler */
|
||||||
|
EX void enable_flat_model() {
|
||||||
|
glClear(GL_DEPTH_BUFFER_BIT);
|
||||||
|
pmodel = flat_model();
|
||||||
|
pconf.alpha = 1;
|
||||||
|
pconf.scale = 1;
|
||||||
|
pconf.camera_angle = 0;
|
||||||
|
pconf.stretch = 1;
|
||||||
|
if(prod) pconf.alpha = 30, pconf.scale = 30;
|
||||||
|
calcparam();
|
||||||
|
}
|
||||||
|
|
||||||
|
#if HDR
|
||||||
|
/** \brief enable the 'flat' model for drawing HUD. Use RAII so it will be switched back later */
|
||||||
|
struct flat_model_enabler {
|
||||||
|
projection_configuration bak;
|
||||||
|
flat_model_enabler() { bak = pconf; enable_flat_model(); }
|
||||||
|
~flat_model_enabler() { pconf = bak; calcparam(); }
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
EX transmatrix atscreenpos(ld x, ld y, ld size) {
|
EX transmatrix atscreenpos(ld x, ld y, ld size) {
|
||||||
transmatrix V = Id;
|
transmatrix V = Id;
|
||||||
|
|
||||||
|
@ -513,14 +513,7 @@ EX namespace inv {
|
|||||||
int j = 0, oc = 6;
|
int j = 0, oc = 6;
|
||||||
|
|
||||||
if(1) {
|
if(1) {
|
||||||
dynamicval<eModel> pm(pmodel, flat_model());
|
flat_model_enabler fme;
|
||||||
glClear(GL_DEPTH_BUFFER_BIT);
|
|
||||||
// dynamicval<videopar> v(vid, vid);
|
|
||||||
// pconf.alpha = vid.scale = 1;
|
|
||||||
dynamicval<ld> va(pconf.alpha, 1);
|
|
||||||
dynamicval<ld> vs(pconf.scale, 1);
|
|
||||||
dynamicval<ld> vc(pconf.camera_angle, 0);
|
|
||||||
calcparam();
|
|
||||||
|
|
||||||
for(int i=0; i<ittypes; i++) {
|
for(int i=0; i<ittypes; i++) {
|
||||||
eItem o = eItem(i);
|
eItem o = eItem(i);
|
||||||
|
@ -1381,8 +1381,7 @@ EX void drawStats() {
|
|||||||
|
|
||||||
if(!racing::on) return;
|
if(!racing::on) return;
|
||||||
|
|
||||||
dynamicval<eModel> pm(pmodel, flat_model());
|
flat_model_enabler fme;
|
||||||
glClear(GL_DEPTH_BUFFER_BIT);
|
|
||||||
initquickqueue();
|
initquickqueue();
|
||||||
|
|
||||||
int bsize = vid.fsize * 2;
|
int bsize = vid.fsize * 2;
|
||||||
|
Loading…
Reference in New Issue
Block a user