- 4,045
- 63
- 645
Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
Такую штуку получаю при попытке записать текстуру из бит буфера.
Краш указывает вот на эту строчку:
GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, xOffset, yOffset, width, height, GL12.GL_BGRA, GL12.GL_UNSIGNED_INT_8_8_8_8_REV, buf);
Что делаю:
Создаю текстуру с определённым размером и записываю её в бит буфер. Далее гружу всё это в GL.
В определённые моменты размер текстуры меняется...
Естественно, бит буфер пересоздаю, текстуру биндю заново и пересчитываю.
Java:
static int offset;
static int size;
// в какой-то момент меняется offset
// после этого вызываю prepareImage()
public static void prepareImage() {
size = (offset * 2 + 1) << 4;
buf = BufferUtils.createIntBuffer(size * size);
TextureUtil.prepareImage(textureId, size, size);
... // занова создаю текстуру и пишу в буфер
upload(0, 0, size, size);
}
private static void upload(int xOffset, int yOffset, int width, int height) {
bindTexture();
boolean offset = xOffset > 0 || yOffset > 0;
if (offset) {
setPosition(xOffset, yOffset);
GL11.glPixelStorei(GL11.GL_UNPACK_ROW_LENGTH, size);
}
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S, GL12.GL_CLAMP_TO_EDGE);
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T, GL12.GL_CLAMP_TO_EDGE);
GL11.glTexSubImage2D(GL11.GL_TEXTURE_2D, 0, xOffset, yOffset, width, height, GL12.GL_BGRA, GL12.GL_UNSIGNED_INT_8_8_8_8_REV, buf); // тут краш
if (offset) {
setPosition(0, 0);
GL11.glPixelStorei(GL11.GL_UNPACK_ROW_LENGTH, 0);
}
}
Если размер текстуры становится меньше, всё работает, если больше - игра вылетает и выдаёт ошибку...
- Краш-лог
-
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000012d5f66e, pid=2036, tid=0x0000000000001950
#
# JRE version: Java(TM) SE Runtime Environment (8.0_131-b11) (build 1.8.0_131-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C 0x0000000012d5f66e
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
--------------- T H R E A D ---------------
Current thread (0x00000000020ac000): JavaThread "Render thread" [_thread_in_native, id=6480, stack(0x0000000002180000,0x0000000002280000)]
siginfo: ExceptionCode=0xc0000005, reading address 0x000000002ccb5000
Registers:
RAX=0x0000000000000000, RBX=0x0000000000000000, RCX=0x0000000000000004, RDX=0x0000000000000000
RSP=0x000000000227d3e8, RBP=0x0000000000000230, RSI=0x000000002ccb5000, RDI=0x000000003614e940
R8 =0x0000000000000290, R9 =0x000000003614e7c0, R10=0x000000002ccb4e80, R11=0x000000003614e7c0
R12=0x0000000000000000, R13=0x0000000000000000, R14=0x000000005f319260, R15=0x0000000000000001
RIP=0x0000000012d5f66e, EFLAGS=0x0000000000010206
Top of Stack: (sp=0x000000000227d3e8)
0x000000000227d3e8: 0000000000000009 0000000000000290
0x000000000227d3f8: 000000000227d5d0 000000001c6a0000
0x000000000227d408: 000000005f31c6d4 0000000022fe7ca0
0x000000000227d418: 000000005f195c22 0000000000000000
0x000000000227d428: 0000000000000000 000000005f31c680
0x000000000227d438: 000000001c6a0000 0000000000000001
0x000000000227d448: 000000005f31ec7d 000000000227d5d0
0x000000000227d458: 0000000000000001 0000000022e2b090
0x000000000227d468: 0000000000000004 0000005200000052
0x000000000227d478: 0000000000000005 0000000000000000
0x000000000227d488: 0000000000000000 0000000000000001
0x000000000227d498: 0000000000000000 0000000022e2b090
0x000000000227d4a8: 000000001c6a0000 0000000022fe7ca0
0x000000000227d4b8: 000000005f4246a9 000000000227d5c0
0x000000000227d4c8: 0000000000000000 0000000000000000
0x000000000227d4d8: ffffffff00000004 0000000000000000
Instructions: (pc=0x0000000012d5f66e)
0x0000000012d5f64e: 8b f2 49 8b fb 41 8b e8 85 ed 0f 84 4a 00 00 00
0x0000000012d5f65e: b9 04 00 00 00 0f 8f 05 00 00 00 48 f7 d9 f7 dd
0x0000000012d5f66e: 8b 1e 48 03 f1 48 83 c7 04 8b c3 8b d3 81 e0 00
0x0000000012d5f67e: 00 ff 00 c1 e8 10 81 e3 00 ff 00 00 0b d8 8b c2
Register to memory mapping:
RAX=0x0000000000000000 is an unknown value
RBX=0x0000000000000000 is an unknown value
RCX=0x0000000000000004 is an unknown value
RDX=0x0000000000000000 is an unknown value
RSP=0x000000000227d3e8 is pointing into the stack for thread: 0x00000000020ac000
RBP=0x0000000000000230 is an unknown value
RSI=0x000000002ccb5000 is an unknown value
RDI=0x000000003614e940 is an unknown value
R8 =0x0000000000000290 is an unknown value
R9 =0x000000003614e7c0 is an unknown value
R10=0x000000002ccb4e80 is an unknown value
R11=0x000000003614e7c0 is an unknown value
R12=0x0000000000000000 is an unknown value
R13=0x0000000000000000 is an unknown value
R14=0x000000005f319260 is an unknown value
R15=0x0000000000000001 is an unknown value
Stack: [0x0000000002180000,0x0000000002280000], sp=0x000000000227d3e8, free space=1012k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C 0x0000000012d5f66e
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 11761 org.lwjgl.opengl.GL11C.nglTexSubImage2D(IIIIIIIIJ)V (0 bytes) @ 0x0000000004242f3c [0x0000000004242ec0+0x7c]
j org.lwjgl.opengl.GL11C.glTexSubImage2D(IIIIIIIILjava/nio/IntBuffer;)V+17
j org.lwjgl.opengl.GL11.glTexSubImage2D(IIIIIIIILjava/nio/IntBuffer;)V+14
j ru.liahim.mist.client.shader.FogTexture.upload(IIII)V+74
j ru.liahim.mist.client.shader.FogTexture.createFogTexture(Lnet/minecraft/world/World;II)V+74
J 22003 C1 ru.liahim.mist.handlers.Fog.prepareFogParameters(F)V (321 bytes) @ 0x000000000570db24 [0x000000000570d180+0x9a4]
J 22001 C1 ru.liahim.mist.handlers.Fog.renderWorldLastEvent(Lnet/minecraftforge/client/event/RenderWorldLastEvent;)V (43 bytes) @ 0x0000000005776454 [0x0000000005776080+0x3d4]
Краш-лог:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000012d5f66e, pid=2036, tid=0x0000000000001950
#
# JRE version: Java(TM) SE Runtime Environment (8.0_131-b11) (build 1.8.0_131-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.131-b11 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C 0x0000000012d5f66e
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
# http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
--------------- T H R E A D ---------------
Current thread (0x00000000020ac000): JavaThread "Render thread" [_thread_in_native, id=6480, stack(0x0000000002180000,0x0000000002280000)]
siginfo: ExceptionCode=0xc0000005, reading address 0x000000002ccb5000
Registers:
RAX=0x0000000000000000, RBX=0x0000000000000000, RCX=0x0000000000000004, RDX=0x0000000000000000
RSP=0x000000000227d3e8, RBP=0x0000000000000230, RSI=0x000000002ccb5000, RDI=0x000000003614e940
R8 =0x0000000000000290, R9 =0x000000003614e7c0, R10=0x000000002ccb4e80, R11=0x000000003614e7c0
R12=0x0000000000000000, R13=0x0000000000000000, R14=0x000000005f319260, R15=0x0000000000000001
RIP=0x0000000012d5f66e, EFLAGS=0x0000000000010206
Top of Stack: (sp=0x000000000227d3e8)
0x000000000227d3e8: 0000000000000009 0000000000000290
0x000000000227d3f8: 000000000227d5d0 000000001c6a0000
0x000000000227d408: 000000005f31c6d4 0000000022fe7ca0
0x000000000227d418: 000000005f195c22 0000000000000000
0x000000000227d428: 0000000000000000 000000005f31c680
0x000000000227d438: 000000001c6a0000 0000000000000001
0x000000000227d448: 000000005f31ec7d 000000000227d5d0
0x000000000227d458: 0000000000000001 0000000022e2b090
0x000000000227d468: 0000000000000004 0000005200000052
0x000000000227d478: 0000000000000005 0000000000000000
0x000000000227d488: 0000000000000000 0000000000000001
0x000000000227d498: 0000000000000000 0000000022e2b090
0x000000000227d4a8: 000000001c6a0000 0000000022fe7ca0
0x000000000227d4b8: 000000005f4246a9 000000000227d5c0
0x000000000227d4c8: 0000000000000000 0000000000000000
0x000000000227d4d8: ffffffff00000004 0000000000000000
Instructions: (pc=0x0000000012d5f66e)
0x0000000012d5f64e: 8b f2 49 8b fb 41 8b e8 85 ed 0f 84 4a 00 00 00
0x0000000012d5f65e: b9 04 00 00 00 0f 8f 05 00 00 00 48 f7 d9 f7 dd
0x0000000012d5f66e: 8b 1e 48 03 f1 48 83 c7 04 8b c3 8b d3 81 e0 00
0x0000000012d5f67e: 00 ff 00 c1 e8 10 81 e3 00 ff 00 00 0b d8 8b c2
Register to memory mapping:
RAX=0x0000000000000000 is an unknown value
RBX=0x0000000000000000 is an unknown value
RCX=0x0000000000000004 is an unknown value
RDX=0x0000000000000000 is an unknown value
RSP=0x000000000227d3e8 is pointing into the stack for thread: 0x00000000020ac000
RBP=0x0000000000000230 is an unknown value
RSI=0x000000002ccb5000 is an unknown value
RDI=0x000000003614e940 is an unknown value
R8 =0x0000000000000290 is an unknown value
R9 =0x000000003614e7c0 is an unknown value
R10=0x000000002ccb4e80 is an unknown value
R11=0x000000003614e7c0 is an unknown value
R12=0x0000000000000000 is an unknown value
R13=0x0000000000000000 is an unknown value
R14=0x000000005f319260 is an unknown value
R15=0x0000000000000001 is an unknown value
Stack: [0x0000000002180000,0x0000000002280000], sp=0x000000000227d3e8, free space=1012k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C 0x0000000012d5f66e
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 11761 org.lwjgl.opengl.GL11C.nglTexSubImage2D(IIIIIIIIJ)V (0 bytes) @ 0x0000000004242f3c [0x0000000004242ec0+0x7c]
j org.lwjgl.opengl.GL11C.glTexSubImage2D(IIIIIIIILjava/nio/IntBuffer;)V+17
j org.lwjgl.opengl.GL11.glTexSubImage2D(IIIIIIIILjava/nio/IntBuffer;)V+14
j ru.liahim.mist.client.shader.FogTexture.upload(IIII)V+74
j ru.liahim.mist.client.shader.FogTexture.createFogTexture(Lnet/minecraft/world/World;II)V+74
J 22003 C1 ru.liahim.mist.handlers.Fog.prepareFogParameters(F)V (321 bytes) @ 0x000000000570db24 [0x000000000570d180+0x9a4]
J 22001 C1 ru.liahim.mist.handlers.Fog.renderWorldLastEvent(Lnet/minecraftforge/client/event/RenderWorldLastEvent;)V (43 bytes) @ 0x0000000005776454 [0x0000000005776080+0x3d4]