let it leave me like a long breath

let it dissipate or fade in the background

(no subject)

Profile

xax: purple-orange {11/3 knotwork star, pointed down (Default)
howling howling howling

Nav

  • Recent Entries
  • Archive
  • Reading
  • Tags
  • Memories
  • Profile

Tags

  • art - 2 uses
  • asteroid garden - 4 uses
  • code - 19 uses
  • demos - 1 use
  • dreams - 5 uses
  • ff7 fangame - 23 uses
  • fic prompts - 13 uses
  • gamedev challenge - 82 uses
  • hell game - 76 uses
  • nanowrimo - 11 uses
  • plants - 9 uses
  • process - 52 uses
  • programming - 51 uses
  • screenshots - 5 uses
  • writing log - 83 uses

May 2025

S M T W T F S
    123
45678 910
1112131415 1617
18192021222324
25262728293031
  • Aug. 31st, 2019
  • xax: yellow-orange {7/2} knotwork star, pointed down (7sided)
    [personal profile] xax
    Tags:
    • gamedev challenge,
    • programming
    posted @ 10:14 pm

    so this 2 week project started out as "work on the rendering pipeline", since that's slow and bad, and ended up morphing into mostly being about texturing.

    the original plan was to do low-level rendering changes, stuff like doing in-place render updates, or just reuse of existing buffers rather than every update needing to be a full reallocation. the main problem was that doing a growth tick took like a third of a second due to the re-render, and that was just... not acceptable performance under any circumstance. but it turns out fixing that is difficult

    i did end up restructuring the code to use vertex indices (instead of duplicating vertices), and i split render updates into landscape updates and object updates, which did speed up the growth ticks a lot, but it didn't really solve the underlying problems.

    instead i got textures working. this involved a few things: writing a shader to do triangular texel mapping, changing the rendering code to produce correct uvs for all the world geometry, asset-loading code to load different textures, some tile data-handling to get their information into the right places where it could be used to figure out what texture they should use, texture-atlasing code to merge textures together so that i could merge geometry together into one big chunk that all shares the same gl texture, and some very rudimentary code to handle polyhedra "models" that generate the correct uvs for certain shapes. in the process of doing this, though, i did break (more like disable) the old lighting code, and i'm not sure what i'll do to replace it eventually.

    so like, that's a fair chunk of stuff that's important and needed to be done, but it's not quite the low-level graphics stuff i was anticipating working on.

    • tile uvs
    • less eye-searing uvs
    • triangular texels
    • texture atlasing
    • correct wall uvs
    • way faster growth ticks (anigif)
    • uvs for simple models

    this has been kind of funny, since the new textures kind of look terrible? so all this work has basically just made the game look less nice, until i draw some less bad textures and work out some ctm stuff so it's not all minecraft-style repeating tiles. it's a big technical achievement, though.


    • Previous Entry
    • Add Memory
    • Share This Entry
    • Next Entry
    • Reply
Page generated Jul. 20th, 2025 01:31 pm
Powered by Dreamwidth Studios

Style Credit

  • Style: (No Theme) for vertical