Top all-time · #3456
rxi
Personal blog · rxi.github.ioprogramminggames
rxi is a personal blog at rxi.github.io about programming and games. Since 2020, 22 different Hacker News readers have linked it 25 times, most often “Cached Software Rendering”. No feed was found, so read it on the site itself.
Most-linked posts?
- Cached Software Rendering5 people · 6 mentions · first linked 2020-06-04
- Lite: An Implementation Overview4 people · 4 mentions · first linked 2020-06-04
- Microui v2: An Implementation Overview4 people · 4 mentions · first linked 2023-06-20
- Textbox Behaviour2 people · 2 mentions · first linked 2024-09-05
- Microui v2: An Implementation Overview2 people · 2 mentions · first linked 2020-05-10
- Cached Software Rendering2 people · 2 mentions · first linked 2020-05-09
What Hacker News says?
Not even that: SDL just provides a pixel buffer, the application draws everything itself per-pixel. Lite uses a technique I refer to as "cached software rendering" which allows the application code to be written as if it's doing a fullscreen-redrawn when it wants to update, the renderer cache (rencache.c) then works out which regions actually need to be redrawn at the end of the frame and redraws only those. You can…
Comment linking /200402.html
on “Show HN: Lite – A small, fast text editor”Submitted Textbox behaviour: Standard functionality for text input in user interfaces as a story · 3 points
HN discussionThis is a delightful take on a style of UI I really love. Separating the UI logic from drawing with a set of draw commands is an excellent and very versatile idea - I first saw it in microui, and the separation allowed me to easily use the library in the browser using WASM and Canvas2D. ( https://rxi.github.io/microui_v2_an_implementation_overview.... ) Also, doing layout in WASM and rendering to HTML is a great ide…
Comment linking /microui_v2_an_implementation_overview.html
on “Clay – UI Layout Library”Submitted Textbox Behaviour as a story · 3 points
HN discussionIt's easy to skip drawing frames when no state changes, and for frames where state does change, you can use techniques like rxi's cached software rendering to avoid redrawing the entire screen: https://rxi.github.io/cached_software_rendering.html
Comment linking /cached_software_rendering.html
on “The complexity that lives in the GUI”Submitted Lite: An Implementation Overview as a story · 3 points
HN discussionA related project is Lite, a graphical text editor that's a bit further along the frontier of useful features vs code simplicity. It includes lua 5.2 and SDL. On top of that, it's a few c files to handle input and rendering, and a set of neatly written lua modules for the logic. Repo and author write-up: https://github.com/rxi/lite https://rxi.github.io/lite_an_implementation_overview.html
Comment linking /lite_an_implementation_overview.html
on “Build Your Own Text Editor”Submitted Level Generation Using Markov Chains as a story · 2 points
HN discussionThe UI is done using an immediate rendering model. It is entirely composed of two rendering operations, drawing solid color rects, or rendering text from a true type font. You can read a bit about the underlying technology here: https://rxi.github.io/cached_software_rendering.html It's quite brilliant.
Comment linking /cached_software_rendering.html
on “Lite: A lightweight text editor written in Lua”Submitted Lite: An Implementation Overview as a story · 2 points
HN discussionI would like to know more details about how the UI is build. So far I have found this [1]. A tutorial-like post will be welcome, though. [1] https://rxi.github.io/lite_an_implementation_overview.html
Comment linking /lite_an_implementation_overview.html
on “Lite: A lightweight text editor written in Lua”Submitted Cached Software Rendering as a story · 2 points
HN discussionIf you are interested, the write up on the cached software renderer used in Lite is written up here: https://rxi.github.io/cached_software_rendering.html
Comment linking /cached_software_rendering.html
on “Lite: A lightweight text editor written in Lua”Submitted A Simple Undo System as a story · 1 points
HN discussionGraphics / general software discussion: https://www.iquilezles.org/ https://fabiensanglard.net/ https://rxi.github.io/ https://drewdevault.com/ https://raphlinus.github.io/ https://gafferongames.com/ https://www.gwern.net/ https://jvns.ca/
Comment linking /
on “Ask HN: Favourite blogs?”Submitted A Simple Serialization System as a story · 1 points
HN discussion> IMGUI does not mean it needs to refresh all-or-nothing. The author of microui described an interesting approach to this here https://rxi.github.io/cached_software_rendering.html
Comment linking /cached_software_rendering.html
on “About the IMGUI Paradigm”Submitted Microui v2: An Implementation Overview (2020) as a story · 1 points
HN discussionAlso see: https://rxi.github.io/microui_v2_an_implementation_overview....
Comment linking /microui_v2_an_implementation_overview.html
on “MicroUI – A tiny, portable, immediate-mode UI library written in ANSI C”Submitted Microui v2: An Implementation Overview as a story · 1 points
HN discussionInteresting discussion of rendering from one of related projects at https://rxi.github.io/cached_software_rendering.html
Comment linking /cached_software_rendering.html
on “A lightweight, simple, fast, feature-filled, text editor written in C, and Lua”Submitted Cached Software Rendering as a story · 1 points
HN discussionBeyond the rendering which as noted is nothing that hasn't been done before (in general) the inherent OT/multi user + tree sitter functionality is something that entices me. I'm surprised nobody pointed out lite/litexl here either it's rendering of ui is very similar (although fonts are via a texture; like a game would) and doesn't focus overly on the GPU but optimises those paths like games circa directx9/opengl 1.…
Comment linking /
on “Leveraging Rust and the GPU to render user interfaces at 120 FPS”Submitted Microui v2: An Implementation Overview as a story · 1 points
HN discussionSubmitted Microui v2: An Implementation Overview as a story · 1 points
HN discussion