KStarbound/CHANGES.md

1023 B

Technical differences

  • Lighting engine is based off original code, but is heavily modified, such as:
    • Before spreading point lights, potential rectangle is determined, to reduce required calculations
    • Lights are clasterized, and clusters are processed together, on different threads (multithreading)
    • Point lights are being spread along both diagonals, not only along left-right bottom-top diagonal (can be adjusted using "light quality" setting)
    • While overall performance is marginally better than original game, and scales up to any number of cores, efficiency of spreading algorithm is worse than original
  • Chunk rendering is split into render regions, which size can be adjusted in settings
    • Increasing render region size will decrease CPU load when rendering world and increase GPU utilization efficiency, while hurting CPU performance on chunk updates, and vice versa
    • Render region size themselves align with world borders, so 3000x2000 world would have 30x25 sized render regions