Hacker Newsnew | past | comments | ask | show | jobs | submit | cubicool's commentslogin

I put a ScanlineSweeper impl into slughorn a day or two after he released it (and he was even cool enough to hop on our Discord and help me fix 2 bugs) :) The quality is really great, but without the "banding" (partitioning) that Slug uses, it doesn't run quite as fast (and Slug is already a tradeoff in speed for increased quality). It's also easier to understand (without all the "tricks" you need for the Slug bands "early discard"), and uses up less VRAM.

I'll be keeping my eye on it, for sure. Like I mentioned elsewhere, slughorn has become WAY more than "just text." Glyph-centric usage is what made Slug popular, but I've been spending my free time lately trying to figure out how to make it work for vector graphics IN GENERAL (to varying degrees of success, based on the amount of time I can dedicate to it...)


I'm the author of slughorn/osgSlug, and was surprised to find this thread. The article my boss put out a few days ago focused mostly on the "text-centric" aspects of Slug (which is what it was originally created for, afterall), but slughorn has grown into WAY more than that now. :) Glyphs are, afterall, "just shapes", and the whole experiment started with my asking: "why can't it just do ALL VECTOR GRAPHICS!?" And so ... yeah. Here we are.

We're still nowhere near the levels of libraries like Noesis or Rive (which are fundamentally different approaches to the same idea), but hey--maybe one day. There's already an impressively large stack of stuff I've been able to pull of with just some clever shader tricks, and I'm coming up with more things I want to try every day.

Right now I'm working on adding completely GPU-driven "path stroking" to slughorn/osgSlug (which uses SSBO to store/update a `slughorn::Path` and then does some `gl_InstanceID` tricks to dynamically "emit" the necessary geometric bounds Slug needs to do its analytical fill/antialiasing), and after that I'll go back to finishing the full Porter-Duff compositing stack.

There are also a handful of UIs from games I want to try "cloning" (Deadspace's diegetic style, the radio scanner from the Arkham games, etc). I also keep this HUGE directory of UIs I see in shows/movies; every time I see some mocked-up thing and think to myself, "I wonder how they did that?", I usually snap a screenshot to poke at later.

Here are some "just for fun" screenshots of interesting stuff I haven't put up on Github yet:

https://slughorn.io/funsies-00.png <- which one is 2D!? ): https://slughorn.io/funsies-01.png <- decaling slughorn-based "shapes" on 3D meshes; you can zoom until the GPU runs out of float precision

There's a whole slew of cool changes I haven't fully updated the repo with; there just aren't enough hours in the day, and we still gotta pay bills. Anyway, I'll check back later if anyone has any questions/ideas/things they'd like to see... that kinda feedback dictates what I focus on next. :)


Yeah, I (author) regularly use AI (anyone who doesn't is ... well, they're not seeing the same reality I am, anyways :)), but I don't just "turn it loose." It reviews my initial passes, catches stupid mistakes I make, and often has good advice about "Hey, don't overengineer this", although I _do_ have to regularly reign it in from other complete nonsense (which kind of makes me happy, because it means, you know, I still have a job). For slughorn, it mostly did some of the C++ tests, almost all of the pytest coverage, the pybind docstrings, and the GLFW example (since I do 99% of my own testing with OSG until I finish there and move on to Vulkan).


Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: