Consolidate and update

This commit is contained in:
2026-10-27 15:58:22 -07:00
parent eb211da457
commit 6c13722fc6
42 changed files with 498 additions and 169 deletions

View File

@ -31,7 +31,7 @@ else:
lnx.enable_reload(__name__)
# Leenkx version
lnx_version = '2026.9'
lnx_version = '2026.10'
lnx_commit = '$Id: 6b2644d47db169cedd95593497cc283207d23a74 $'
LNX_TORRENT_DEFAULT_TRACKERS = [
@ -382,6 +382,27 @@ def init_properties():
('Hashlink', 'Hashlink', 'Hashlink')],
name="Runtime", description="Runtime to use when launching the game", default='Krom', update=assets.invalidate_shader_cache)
bpy.types.World.lnx_loadscreen = BoolProperty(name="Loading Screen", description="Show asset loading progress on published builds", default=True)
bpy.types.World.lnx_loadscreen_mode = EnumProperty(
items=[('Image', 'Image', 'Background image with a progress bar'),
('Simple', 'Simple', 'Background color with a progress bar')],
name="Loading Screen Mode", description="What the loading screen displays behind the progress bar", default='Image', update=assets.invalidate_compiler_cache)
bpy.types.World.lnx_loadscreen_bgcolor = FloatVectorProperty(name="Loading Background Color", description="Background color shown behind the loading bar and image", default=(0.0, 0.165, 0.208, 1.0), min=0.0, max=1.0, subtype='COLOR', size=4, update=assets.invalidate_compiler_cache)
bpy.types.World.lnx_loadscreen_image = StringProperty(name="Loading Screen Image", description="Background image shown behind the loading bar, leave as 'Default' to use the Leenkx logo wallpaper", default="Default", subtype="FILE_PATH", update=assets.invalidate_compiler_cache)
bpy.types.World.lnx_loadscreen_fit = EnumProperty(
items=[('TopLeft', 'Top Left', 'Draw the image at its native size anchored to the top left'),
('TopCenter', 'Top Center', 'Draw the image at its native size anchored to the top center'),
('TopRight', 'Top Right', 'Draw the image at its native size anchored to the top right'),
('CenterLeft', 'Center Left', 'Draw the image at its native size anchored to the center left'),
('Center', 'Center', 'Draw the image at its native size centered on screen'),
('CenterRight', 'Center Right', 'Draw the image at its native size anchored to the center right'),
('BottomLeft', 'Bottom Left', 'Draw the image at its native size anchored to the bottom left'),
('BottomCenter', 'Bottom Center', 'Draw the image at its native size anchored to the bottom center'),
('BottomRight', 'Bottom Right', 'Draw the image at its native size anchored to the bottom right'),
('Contain', 'Contain', 'Scale the image to fit inside the screen, preserving aspect ratio'),
('Stretch', 'Stretch to Fit', 'Stretch the image to fill the screen, ignoring aspect ratio')],
name="Image Fit", description="How the loading screen image is positioned on screen", default='Center', update=assets.invalidate_compiler_cache)
bpy.types.World.lnx_loadscreen_show_percentage = BoolProperty(name="Loading Screen Percentage", description="Draw the loading progress percentage above the progress bar", default=False, update=assets.invalidate_compiler_cache)
bpy.types.World.lnx_loadscreen_color = FloatVectorProperty(name="Loading Bar Color", description="Color of the loading progress bar and percentage text", default=(0.1647, 0.8784, 0.8784, 1.0), min=0.0, max=1.0, subtype='COLOR', size=4)
bpy.types.World.lnx_vsync = BoolProperty(name="VSync", description="Vertical Synchronization", default=True, update=assets.invalidate_compiler_cache)
bpy.types.World.lnx_dce = BoolProperty(name="DCE", description="Enable dead code elimination", default=False, update=assets.invalidate_compiler_cache)
bpy.types.World.lnx_asset_compression = BoolProperty(name="Asset Compression", description="Enable scene data compression with LZ4. Warning: This will slow down export!", default=False, update=assets.invalidate_compiler_cache)
@ -763,8 +784,8 @@ def update_leenkx_world():
# This allows for seamless migration from earlier versions of Leenkx
for rp in wrd.lnx_rplist: # TODO: deprecated
if hasattr(rp, 'rp_gi') and rp.rp_gi != 'Off':
rp.rp_gi = 'Off'
rp.rp_voxels = rp.rp_gi
rp.rp_gi = 'Off'
# For some breaking changes we need to use a special update
# routine first before regularly replacing nodes