Go to file
Jarrod Doyle ccd3952a7e
Move core lighting behaviour to `KeepersCompound.Lighting` project
2025-04-11 20:20:33 +01:00
.github/workflows Enable AoT in csproj rather than in CI 2025-01-14 20:32:35 +00:00
KeepersCompound.LGS Unzip resources in reverse order and overwrite 2025-01-15 21:24:19 +00:00
KeepersCompound.Lighting Move core lighting behaviour to `KeepersCompound.Lighting` project 2025-04-11 20:20:33 +01:00
KeepersCompound.Lightmapper Move core lighting behaviour to `KeepersCompound.Lighting` project 2025-04-11 20:20:33 +01:00
LocalPackages/tinyembree/1.1.0.1 Add custom TinyEmbree package with backface culling 2025-01-26 17:27:31 +00:00
.gitignore Add custom TinyEmbree package with backface culling 2025-01-26 17:27:31 +00:00
LICENSE Add license 2025-02-23 14:38:06 +00:00
NuGet.Config Add custom TinyEmbree package with backface culling 2025-01-26 17:27:31 +00:00
README.md Update readme to point to TTLG thread 2025-04-07 18:06:58 +01:00
lightmapper.sln Move core lighting behaviour to `KeepersCompound.Lighting` project 2025-04-11 20:20:33 +01:00

README.md

KeepersCompound: Lightmapper

Description

TTLG Release Thread

KCLight is an external lightmapping tool for NewDark 1.27 fan mission. DromEd's built-in lighting is single-threaded, has a number of bugs, and scales extremely poorly with lightmap scale and large open spaces. KCLight uses a multi-threaded approach with a modern raytracing library to improve lighting times, reduce lighting artifacts, and often improves in-game performance in complex scenes.

Features

  • All DromEd lighting functionality
  • Massively improved lighting times
  • Better light culling, improving performance in large-scale city maps and eliminating object lighting errors
  • Additional warnings to mappers for mis-configured lights
  • Produces generally more accurate shadows

Usage

Download the latest release and unzip it somewhere. Open a console in the unzipped folder and run KeepersCompound.Lightmapper --help to see the help screen:

Compute lightmaps for a NewDark .MIS/.COW

Usage:
  KeepersCompound.Lightmapper <install-path> <campaign-name> <mission-name> 
  [options]

Arguments:
  <install-path>   The path to the root Thief installation. [required]
  <campaign-name>  The folder name of the fan mission. For OMs this is blank. 
                   [required]
  <mission-name>   The name of the mission file including extension. [required]

Options:
  -f, --fast-pvs     Use a fast PVS calculation with looser cell light indices. 
                     [default: False]
  -o, --output-name  Name of output file excluding extension. [default: kc_lit]
  -?, -h, --help     Show help and usage information
  -v, --version      Show version information

Building

This project requires the .NET 9.0 runtime and SDK. Raytracing uses a forked version of TinyEmbree with backface culling enabled, a pre-built package can be found in LocalPackages.

License

Distributed under the MIT License. See LICENSE for more information.