GridView and Grid, FOVLayer and PathLayer #252

Open
opened 2026-03-03 04:05:03 +00:00 by john · 0 comments
Owner

7DRL finding. The requirement to size and position a Grid when it's really serving as a container of walkable/visible data, the requirement to use a single visible/walkable dataset, and the requirement to allocate the walkable/visible layers regardless of if or how they're being used, are all huge disappointments with the current API.

first, an investigation.

Then, in "complete harmony" with the HeightMap and DiscreteMap classes and libtcod's underlying walkable, visible datastructures - let's provide the current Grid experience as a GridView with a default Grid with default visible and walkable layers. Directly instantiating a Grid means shared map data, with multiple or no tcod map layers inside of it; multiple GridView instances can share the texture cache with independent camera positions.

7DRL finding. The requirement to size and position a Grid when it's really serving as a container of walkable/visible data, the requirement to use a single visible/walkable dataset, and the requirement to allocate the walkable/visible layers regardless of if or how they're being used, are all huge disappointments with the current API. first, an investigation. Then, in "complete harmony" with the `HeightMap` and `DiscreteMap` classes and libtcod's underlying walkable, visible datastructures - let's provide the current `Grid` experience as a `GridView` with a default `Grid` with default `visible` and `walkable` layers. Directly instantiating a `Grid` means shared map data, with multiple or no tcod map layers inside of it; multiple `GridView` instances can share the texture cache with independent camera positions.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
john/McRogueFace#252
No description provided.