25 lines
1,009 B
Python
25 lines
1,009 B
Python
def write_bytes(file, source):
|
|
with open(source.path, mode="rb") as binary:
|
|
buffer = binary.read()
|
|
buffer = buffer[148:] # skip .dds header
|
|
|
|
file.write("0x{:02x}".format(buffer[0]))
|
|
for byte in range(1, len(buffer)):
|
|
file.write(",0x{:02x}".format(buffer[byte]))
|
|
|
|
|
|
def run(target, source, env):
|
|
with open(str(target[0]), "w", encoding="utf-8", newline="\n") as file:
|
|
file.write('/* WARNING, THIS FILE WAS GENERATED BY THE "{}" SCRIPT, DO NOT EDIT */ \n\n'.format(source[0].name))
|
|
|
|
file.write(
|
|
"// LTC Lookup table for BRDF fitting by Eric Heitz (https://eheitzresearch.wordpress.com/415-2/) \n"
|
|
)
|
|
file.write("static const int LTC_LUT_DIMENSIONS = 64; // 64x64\n")
|
|
file.write("static const uint8_t LTC_LUT1[] = {")
|
|
write_bytes(file, source[1])
|
|
file.write("};\n\n")
|
|
|
|
file.write("static const uint8_t LTC_LUT2[] = {")
|
|
write_bytes(file, source[2])
|
|
file.write("};\n\n")
|