2025-07-24 00:42 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0004644Spring engineGeneralpublic2015-01-14 22:44
ReporterGoogle_Frog 
Assigned TojK 
PrioritynormalSeveritymajorReproducibilityalways
StatusclosedResolutionno change required 
Product Version98.0.1+git 
Target VersionFixed in Version 
Summary0004644: 98.0.1-258 Some models turn invisible when nearby units are reverse built
DescriptionThere is a set of units in ZK such that viewing a partially reclaimed (with reverse build) unit causes all units in the set to turn invisible. Anarchid thinks it is to do with normals because it looks like every unit in the set has normals. Some units which have normals do not have the problem. Anarchid should be able to provide more information about this later.

http://i.imgur.com/iSvGEfe.png
Steps To ReproduceSpawn an armsolar. Partially reclaim it.
Additional InformationSometimes partially reclaimed a bugged unit can cause ATI players to crash.
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
related to 0004645closedjK FBO incomplete: no attachments [-1] in ShadowHandler.cpp:253 
+Relationships

-Notes

~0013901

abma (administrator)

infolog.txt?

also please set DebugGL=1 please if not already done.

~0013902

Google_Frog (reporter)

Here is an infolog of a crash http://pastebin.com/2Gzrj9NW

~0013903

Google_Frog (reporter)

I have attached a DebugGL=1 infolog from myself. Also I noticed that the invisibility seems to have an ordering.

Spawn a block of a single unit type and partially reclaim one of the units. Only some of the units will be invisible, including the nanoframe of the partially reclaimed unit. If you repeat this with any of the units that turned invisible then less will turn invisible. This order does not match unitID. It is as if partially reclaimed units mess up the drawing for the units that come after them.

Units of a single type occur in chunks in the ordering. Partially reclaiming some unit types will never cause earlier types to become invisible.

~0013904

cleanrock (reporter)

Seem like this visual bug only happen with AdvUnitShading enabled.
I see this bug also with 98.0.

~0013905

Google_Frog (reporter)

Here is a fragment of something from someone with ATI who crashes.

[f=0001669] Error: OpenGL: source<API> type<error> id<2269> severity<high>:
glUniformMatrix4fv has failed to set the uniform at location '32': the uniform's type, component size, or matrix dimensions are incompatible with the function variant (GL_INVALID_OPERATION)
[f=0001669] Error: OpenGL: source<API> type<error> id<2269> severity<high>:
glUniform3f has failed to set the uniform at location '33': the uniform's type, component size, or matrix dimensions are incompatible with the function variant (GL_INVALID_OPERATION)
[f=0001669] Error: OpenGL: source<API> type<error> id<2269> severity<high>:
glUniformMatrix4fv has failed to set the uniform at location '39': the uniform's type, component size, or matrix dimensions are incompatible with the function variant (GL_INVALID_OPERATION)
[f=0001669] Error: Spring 98.0.1-258-gab1948e develop has crashed.

I will try to get a full infolog.

~0013906

abma (administrator)

translated:

C:\Windows\system32\atioglxx.dll 0x0432E3EF ??:0
C:\Windows\system32\atioglxx.dll 0x042FAFE1 ??:0
C:\Windows\system32\atioglxx.dll 0x03D8AEA6 ??:0
E:\Games\Spring\engine\98.0.1-258-gab1948e\spring.exe 0x006CBE01 /opt/mxe/usr/lib/gcc/i686-w64-mingw32/4.8.1/include/c++/bits/stl_vector.h:646
E:\Games\Spring\engine\98.0.1-258-gab1948e\spring.exe 0x006D0AAE rts/Rendering/UnitDrawerState.cpp:105

~0013907

abma (administrator)

with the config settings from InvisibleUnitsOpenGLerror.txt i can reproduce the invisible building, but i get A LOT of opengl errors. with default settings it works fine. but i'm using the open-source opengl driver, so not sure if the errors are the same but regardingless of that, they should be fixed.

~0013908

abma (administrator)

Last edited: 2015-01-09 19:34

View 2 revisions

in 0004645 i've set DebugGLStacktraces = 1 (this makes spring crash/create a stacktrace when an opengl error happens)

~0013924

jK (developer)

1. lua bug in zerok-k not engine
2. not my fault cause zk doesn't use my code: https://github.com/jk3064/Custom-Unit-Shader-Framework


bug is here:
https://github.com/ZeroK-RTS/Zero-K/blob/master/LuaRules/Gadgets/CustomUnitShaders/main.lua#L346

(tip: the zk version of the gadget doesn't got any synced part)
+Notes

-Issue History
Date Modified Username Field Change
2015-01-08 15:17 Google_Frog New Issue
2015-01-08 20:41 abma Note Added: 0013901
2015-01-08 20:41 abma Status new => feedback
2015-01-09 02:28 Google_Frog Note Added: 0013902
2015-01-09 02:28 Google_Frog Status feedback => new
2015-01-09 06:43 Google_Frog File Added: InvisibleUnitsOpenGLerror.txt
2015-01-09 06:50 Google_Frog Note Added: 0013903
2015-01-09 07:54 cleanrock Note Added: 0013904
2015-01-09 09:40 Google_Frog Note Added: 0013905
2015-01-09 11:47 abma Note Added: 0013906
2015-01-09 12:06 abma File Added: infolog.txt
2015-01-09 12:08 abma Note Added: 0013907
2015-01-09 12:13 abma Relationship added related to 0004645
2015-01-09 12:15 abma Note Added: 0013908
2015-01-09 19:34 abma Note Edited: 0013908 View Revisions
2015-01-14 22:44 jK Note Added: 0013924
2015-01-14 22:44 jK Status new => closed
2015-01-14 22:44 jK Assigned To => jK
2015-01-14 22:44 jK Resolution open => no change required
+Issue History