Files
wschod/TODO.org
2025-07-24 07:49:24 +02:00

2.3 KiB

hhhh#+TITLE: Wschód TODO

UI system

DONE Switch from floats to ints in all UI stuff, from vec2's to ivec2's

TODO Centering widget in parent

TODO Inheriting width/height from parent

TODO Flowbox proper weighing

TODO UI system major refactoring and redesign

TODO Context menus

TODO Z-sorting UI children (or windows)

DONE Loading UI from a file or script

TODO Better GL scissoring, calculating the summed AABB crop box from ALL parents

DONE Move layout_width and layout_spacing into the widget out of the style

DONE Entry cursor

DONE Reset UI state (hovered, clicked, focused) on lose UI focus

DONE Entry UTF-8 support

DONE Think about the UI on_xxx_down/up handling (solved)

DONE Revamp UI event system

DONE Implement vtables (something else was done)

DONE Split the UI code into several files

DONE UI style system

DONE Layout weight + absolute size mixing possibility

DONE Scissoring of out-of-bounds UI elements

DONE On mouse enter, on mouse leave, and on mouse move callbacks

DONE Button widget

DONE Tooltip rendering

DONE Borders

DONE Padding/margin

DONE Aspect ratios

DONE Checkbox widget

DONE Spinner widget (ints)

DONE Scrollable widget

DONE Stacking glScissor() from parents

DONE Progress bar widget

DONE Scroll bar widget

DONE FlowLayout widget

DONE Multiline text widget

DONE Text entry widget

DONE Movable windows

DONE Resizable windows

DONE Move uicursor to uidummy

DONE Fix scrollable scrolling being a bit weird

Entity system

TODO Entity hit testing

TODO Sky/sun/clouds drawing seperate from other entities

TODO Entity on hover UI label, outline

TODO Optimize entity rendering and ticking; it's a huge bottleneck

TODO Ticking system revamp; ticking calculation when out of tick radius and coming back

TODO Meshing together N entities for less drawcalls

Chunk system

TODO Chunk queue/heap sorted by distance to player

Misc.

TODO Move cursor changing to graphics.c

TODO Better sky/cloud system, perhaps a hemisphere

TODO Sun system

Overall game structure

DONE Resource packs with shaders, textures, entity templates

TODO Map pack with heightmap data, materialmap data, entities and their placements

DONE Guile/Lua integration

TODO Proper memory freeing: UI Widgets, pakman, UIContext, stateman