mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-27 14:37:16 +00:00
fixed a freeze in some Archimedean geometries
This commit is contained in:
parent
9b7ad345a9
commit
b88ef69f59
13
polygons.cpp
13
polygons.cpp
@ -116,11 +116,14 @@ vector<unique_ptr<drawqueueitem>> ptds;
|
||||
void hpcpush(hyperpoint h) {
|
||||
if(sphere) h = mid(h,h);
|
||||
ld threshold = (DIM == 3 || last->flags & POLY_TRIANGLES) ? 100 : (sphere ? (ISMOBWEB || NONSTDVAR ? .04 : .001) : 0.1) * pow(.25, vid.linequality);
|
||||
if(/*vid.usingGL && */!first && intval(hpc.back(), h) > threshold) {
|
||||
hyperpoint md = mid(hpc.back(), h);
|
||||
hpcpush(md);
|
||||
hpcpush(h);
|
||||
return;
|
||||
if(/*vid.usingGL && */!first) {
|
||||
ld i = intval(hpc.back(), h);
|
||||
if(i > threshold && i < 10) {
|
||||
hyperpoint md = mid(hpc.back(), h);
|
||||
hpcpush(md);
|
||||
hpcpush(h);
|
||||
return;
|
||||
}
|
||||
}
|
||||
first = false;
|
||||
hpc.push_back(h);
|
||||
|
Loading…
Reference in New Issue
Block a user