fixed some minor issues with HyperRogue's 3D

This commit is contained in:
Zeno Rogue 2018-11-17 19:25:15 +01:00
parent d935febf09
commit e7b90fdb05
2 changed files with 2 additions and 2 deletions

View File

@ -176,7 +176,7 @@ ld sqhypot3(const hyperpoint& h) {
ld zlevel(const hyperpoint &h) {
if(euclid) return h[2];
else if(sphere) return sqrt(intval(h, Hypc));
else return sqrt(-intval(h, Hypc));
else return (h[2] < 0 ? -1 : 1) * sqrt(-intval(h, Hypc));
}
// display a hyperbolic point

View File

@ -171,7 +171,7 @@ void add1(const hyperpoint& H) {
int spherespecial, spherephase;
bool is_behind(const hyperpoint& H) {
return pmodel == mdDisk && vid.alpha + H[2] <= BEHIND_LIMIT;
return pmodel == mdDisk && (hyperbolic ? H[2] >= 0 : true) && vid.alpha + H[2] <= BEHIND_LIMIT;
}
hyperpoint be_just_on_view(const hyperpoint& H1, const hyperpoint &H2) {