1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-10-31 22:12:59 +00:00

render entities only if visible

This commit is contained in:
Zeno Rogue
2025-04-27 01:23:00 +02:00
parent 3846ff83c3
commit 0797e540d6
4 changed files with 25 additions and 2 deletions

View File

@@ -94,8 +94,21 @@ bbox join(bbox a, bbox b) {
return r;
}
bbox room_bb{0, 0, room_x, room_y};
bbox screen_bb{0, 0, screen_x, screen_y};
bbox get_intersect(bbox a, bbox b) {
bbox r;
r.minx = max(a.minx, b.minx);
r.miny = max(a.miny, b.miny);
r.maxx = min(a.maxx, b.maxx);
r.maxy = min(a.maxy, b.maxy);
return r;
}
bool intersect(bbox a, bbox b) {
return max(a.minx, b.minx) < min(a.maxx, b.maxx) && max(a.miny, b.miny) < min(a.maxy, b.maxy);
auto g = get_intersect(a, b);
return g.minx < g.maxx && g.miny < g.maxy;
}
void print(hstream& hs, const bbox& b) {