Page 1 of 1
[posila][2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturing."
Posted: Wed Dec 25, 2024 1:50 pm
by akapulko
Hi.
Yesterday I was connected to the server Comfy-merry-fulgoramas-2_0_28.
Today I run Factorio and am looking through the list of mods (from this server).
I click on the URL of the mod, read it in the browser, and at that moment the game, it turns out, crashed.
Re: [2.0.28] Crash games from the mod selection menu
Posted: Wed Dec 25, 2024 2:54 pm
by akapulko
I tried to look at the dump with a debugger.
Code: Select all
*** WARNING: Unable to verify checksum for factorio.exe
KEY_VALUES_STRING: 1
Key : Analysis.CPU.mSec
Value: 5686
Key : Analysis.DebugAnalysisManager
Value: Create
Key : Analysis.Elapsed.mSec
Value: 364214
Key : Analysis.Init.CPU.mSec
Value: 499
Key : Analysis.Init.Elapsed.mSec
Value: 30438
Key : Analysis.Memory.CommitPeak.Mb
Value: 260
Key : Timeline.OS.Boot.DeltaSec
Value: 135283
Key : Timeline.Process.Start.DeltaSec
Value: 385
Key : WER.OS.Branch
Value: vb_release
Key : WER.OS.Timestamp
Value: 2019-12-06T14:06:00Z
Key : WER.OS.Version
Value: 10.0.19041.1
Key : WER.Process.Version
Value: 2.0.28.15552
NTGLOBALFLAG: 0
PROCESS_BAM_CURRENT_THROTTLED: 0
PROCESS_BAM_PREVIOUS_THROTTLED: 0
CONTEXT: (.ecxr)
rax=00007ffd7f5e9b16 rbx=00007ff7814fdaa0 rcx=0000003b8c2f3cc0
rdx=0000003b8c2f3c00 rsi=0000003b8c2f4410 rdi=0000000019930520
rip=00007ffde5ddb699 rsp=0000003b8c2f4280 rbp=00007ff781002d40
r8=0000004000000000 r9=000001bb88230000 r10=00007ffde835ede6
r11=0000000000000080 r12=0000000000000910 r13=0000000000000000
r14=0000000000000001 r15=0000003b8c2f47b0
iopl=0 nv up ei pl nz na pe nc
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000202
KERNELBASE!RaiseException+0x69:
00007ffd`e5ddb699 0f1f440000 nop dword ptr [rax+rax]
Resetting default scope
EXCEPTION_RECORD: (.exr -1)
ExceptionAddress: 00007ffde5ddb699 (KERNELBASE!RaiseException+0x0000000000000069)
ExceptionCode: e06d7363 (C++ EH exception)
ExceptionFlags: 00000001
NumberParameters: 4
Parameter[0]: 0000000019930520
Parameter[1]: 0000003b8c2f4410
Parameter[2]: 00007ff7814fdaa0
Parameter[3]: 00007ff77f3c0000
PROCESS_NAME: factorio.exe
ERROR_CODE: (NTSTATUS) 0xe06d7363 - <Unable to get error code text>
EXCEPTION_CODE_STR: e06d7363
EXCEPTION_PARAMETER1: 0000000019930520
EXCEPTION_PARAMETER2: 0000003b8c2f4410
EXCEPTION_PARAMETER3: 00007ff7814fdaa0
EXCEPTION_PARAMETER4: 7ff77f3c0000
STACK_TEXT:
0000003b`8c2f4280 00007ff7`80ca9800 : 00000000`00000910 00007ff7`8029339c 00000000`00000009 00007ff7`810f00a0 : KERNELBASE!RaiseException+0x69
0000003b`8c2f4360 00007ff7`802811fd : 00000000`00000000 00000000`00000000 00000000`00000016 00007ff7`80281a40 : factorio!luaL_openlibs+0x12ca00
0000003b`8c2f43c0 00007ff7`80281a66 : 00000000`00000000 00007f00`0000ffff 00000001`7f60a8b8 00007ff7`80281a40 : factorio!lua_gethookcount+0xc9ebbd
0000003b`8c2f4410 00007ff7`80cc763f : 0000003b`8c2f44c8 00007ff7`80cc72e7 00000000`00000016 00007ff7`80281a40 : factorio!lua_gethookcount+0xc9f426
0000003b`8c2f4450 00007ff7`80cb698c : 00007ff7`810cc701 000001bb`00000000 00000000`00000000 00000000`00000000 : factorio!luaL_openlibs+0x14a83f
0000003b`8c2f44c0 00007ff7`802936f4 : 00000000`00000000 00000000`0000011f 0000003b`8c2f4590 00007ffd`e0f5c398 : factorio!luaL_openlibs+0x139b8c
0000003b`8c2f44f0 00007ff7`802935cc : 00000000`00000009 00000000`00000000 00007ff7`81002d40 00000000`0000011f : factorio!lua_gethookcount+0xcb10b4
0000003b`8c2f4570 00007ff7`7fa41597 : 0000013a`b2dbd670 000001bb`00000002 000001bb`8afceaa0 00007ff7`81002e50 : factorio!lua_gethookcount+0xcb0f8c
0000003b`8c2f45d0 00007ff7`7fa404c4 : 000001bb`c5fe8160 0000003b`8c2f4780 00000000`0000158c 00000000`00000000 : factorio!lua_gethookcount+0x45ef57
0000003b`8c2f4680 00007ff7`7fa4952c : 000001bb`9544cd90 000005a0`00000006 000001bb`00000000 00000000`0000082c : factorio!lua_gethookcount+0x45de84
0000003b`8c2f4a20 00007ff7`7fa4927f : 00000000`00000000 000001bb`9544cd90 0000003b`8c2f4b90 000001bb`a5ce53d0 : factorio!lua_gethookcount+0x466eec
0000003b`8c2f4b30 00007ff7`7fa4ac4a : 000001bb`a5ce53d0 000001bb`d2ab6be0 000001bb`a6c47770 00000000`00000000 : factorio!lua_gethookcount+0x466c3f
0000003b`8c2f4b70 00007ff7`7f9e27f7 : 000001bb`aa1038f8 000001bb`a5ce4cb0 00000000`00000000 00000000`00000000 : factorio!lua_gethookcount+0x46860a
0000003b`8c2f4bd0 00007ff7`7f9e25b6 : 000001bb`a5ce49b0 000001bb`a6c47770 000001bb`a5ce4cb0 000001bb`b41c9250 : factorio!lua_gethookcount+0x4001b7
0000003b`8c2f4c70 00007ff7`7fb2f1f3 : 00000000`00989680 00000000`00989680 00000000`000003a1 00000000`0000005b : factorio!lua_gethookcount+0x3fff76
0000003b`8c2f4cb0 00007ff7`7fbfd433 : 000001bb`c2ed3590 0000003b`8c2f50d0 000001bc`900d5370 00000000`00000000 : factorio!lua_gethookcount+0x54cbb3
0000003b`8c2f4f70 00007ff7`80a32b0a : 000001bc`900d5370 00000000`00000000 000001bb`8d419270 000001bb`c2ed3590 : factorio!lua_gethookcount+0x61adf3
0000003b`8c2f50a0 00007ff7`80a329da : 000001bc`900d5370 00007ff7`00000000 000001bb`00000000 00000000`00000000 : factorio!lua_pushinteger+0x38e3da
0000003b`8c2f5130 00007ff7`80a32c57 : 000001bb`94a7dcd0 000001bc`9076fe28 000001bb`8d419270 000001bc`900d5370 : factorio!lua_pushinteger+0x38e2aa
0000003b`8c2f5170 00007ff7`80a329ef : 00000000`00000000 000005a0`00000000 00000000`00000000 00000000`00000000 : factorio!lua_pushinteger+0x38e527
0000003b`8c2f5200 00007ff7`80a289c5 : 000001bb`94a7dcd0 000001bb`94a7dcd0 0000003b`8c2f5279 00000000`00000000 : factorio!lua_pushinteger+0x38e2bf
0000003b`8c2f5240 00007ff7`7f9ef4f1 : 00000000`00000000 000001bb`8b072820 000001bb`8af13f30 00000000`00000000 : factorio!lua_pushinteger+0x384295
0000003b`8c2f52e0 00007ff7`7f505b3b : 3ff40000`00000000 3ff40000`00000000 00000000`00989680 00000000`00000000 : factorio!lua_gethookcount+0x40ceb1
0000003b`8c2f5330 00007ff7`7f50401e : 00000000`00000002 3ff00000`00000000 3ff00000`00000000 00000000`00000000 : factorio+0x145b3b
0000003b`8c2f5a60 00007ff7`7f5038a0 : 00007ff7`80f581e2 0000003b`8c2f67c8 00000000`000001f4 000001bb`8afae450 : factorio+0x14401e
0000003b`8c2f5b60 00007ff7`7f4fe555 : 00000000`00000000 00000000`00000001 00000000`00000000 00000000`00000001 : factorio+0x1438a0
0000003b`8c2f6710 00007ff7`7f5017c9 : 00007ff7`00000001 000001bb`882385a0 00007ff7`80ddfe30 00000000`000003b5 : factorio+0x13e555
0000003b`8c2ffa50 00007ff7`80ca7298 : 00007ff7`80de31e0 00000000`00000000 00000000`00000000 000001bb`88090000 : factorio+0x1417c9
0000003b`8c2ffab0 00007ffd`e7887374 : 00000000`00000000 00000000`00000000 00000000`00000000 00007ffd`7f500000 : factorio!luaL_openlibs+0x12a498
0000003b`8c2ffaf0 00007ffd`e839cc91 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : kernel32!BaseThreadInitThunk+0x14
0000003b`8c2ffb20 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : ntdll!RtlUserThreadStart+0x21
SYMBOL_NAME: KERNELBASE!RaiseException+69
MODULE_NAME: KERNELBASE
IMAGE_NAME: KERNELBASE.dll
STACK_COMMAND: ~0s ; .ecxr ; kb
FAILURE_BUCKET_ID: CPP_EXCEPTION_e06d7363_KERNELBASE.dll!RaiseException
OS_VERSION: 10.0.19041.1
BUILDLAB_STR: vb_release
OSPLATFORM_TYPE: x64
OSNAME: Windows 10
IMAGE_VERSION: 10.0.19041.4842
FAILURE_ID_HASH: {1253aecc-520d-655b-58e3-5eb61e209188}
Followup: MachineOwner
---------
Re: [2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturing."
Posted: Fri Jan 03, 2025 5:03 am
by akapulko
Upd.
With this setting
Code: Select all
; Options: all, high, medium, low
; video-memory-usage=all
there are no problems.
Re: [2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturing."
Posted: Fri Jan 03, 2025 3:43 pm
by thesixthroc
Through binary search, I isolated this crash to be triggered by the following line in the definition of the Cerys mod's prototype `cerys-ice-decal-white`, when using the lowest graphics settings:
Code: Select all
pictures = util.table.deepcopy(data.raw["optimized-decorative"]["aqulio-snowy-decal"].pictures)
If this is replaced verbatim by the `pictures` entry of the corresponding vanilla decorative, this issue is fixed.
Note that Cerys has been updated (in 0.6.18) to avoid this base game bug.
Re: [2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturing."
Posted: Fri Jan 03, 2025 4:29 pm
by robot256
thesixthroc wrote: ↑Fri Jan 03, 2025 3:43 pm
Through binary search, I isolated this crash to the following line in the definition of the Cerys mod's prototype `cerys-ice-decal-white`, when using the lowest graphics settings:
Code: Select all
pictures = util.table.deepcopy(data.raw["optimized-decorative"]["aqulio-snowy-decal"].pictures)
If this is replaced verbatim by the `pictures` entry of the corresponding vanilla decorative, this issue is fixed.
Note that Cerys has been updated (in 0.6.18) to avoid this base game bug.
Do you mean there is a bug in deepcopy that is corrupting the pictures table of that entity specifically? It would be interesting to to log(serpent block()) the working and non-working pictures tables.
Re: [2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturing."
Posted: Fri Jan 03, 2025 8:20 pm
by Muche
It seems to me that the actual bug is
Code: Select all
--- data/space-age/prototypes/decorative/decoratives-gleba.lua
+++ data/space-age/prototypes/decorative/decoratives-gleba.lua
@@ -2,6 +2,8 @@
local sounds = require ("__base__.prototypes.entity.sounds")
local decorative_trigger_effects = require("__base__.prototypes.decorative.decorative-trigger-effects")
+local base_decorative_sprite_priority = "extra-high"
+
--[[
General decorative strategy:
survival_chance + subtype_selection_band_of: (region_box - small_scale_knockout)
--- data/space-age/prototypes/decorative/decoratives-aquilo.lua
+++ data/space-age/prototypes/decorative/decoratives-aquilo.lua
@@ -2,6 +2,8 @@
local sounds = require ("__base__.prototypes.entity.sounds")
local decorative_trigger_effects = require("__base__.prototypes.decorative.decorative-trigger-effects")
+local base_decorative_sprite_priority = "extra-high"
+
--lithium
local lithium_rock_tint = {1, 1, 1}
local lithium_rock_rectange = nil --{{0, 0}, {1, 1}}
Cerys' usage of the same images somehow changed the order AtlasBuilder puts textures together, pushing Aquilo's decoratives into virtual atlas.
Re: [2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturing."
Posted: Sat Jan 04, 2025 12:18 am
by thesixthroc
The simplest repro I'm aware of: install a version of Cerys prior to 0.6.18. Visit the map editor, generate an Aquilo surface, switch to that surface, experience crash.
Re: [posila][2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturi
Posted: Mon Jan 06, 2025 4:33 pm
by posila
Re: [posila][2.0.28] Crash in mod selection "TileBatchRenderLogic.cpp:287: Tile renderer doesn't support virtual texturi
Posted: Tue Jan 07, 2025 3:39 pm
by posila
Thanks for the report.
Fixed for 2.0.30