2024-04-25 02:00 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0005637Spring engineGeneralpublic2020-05-14 15:24
ReporterGoogle_Frog 
Assigned ToKloot 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionreopened 
Product Version103.0 +git 
Target VersionFixed in Version 
Summary0005637: 103.0.1-1166 no shadows or dynlights with win64
DescriptionWorks with 32 bit spring.
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
related to 0006394resolvedabma get rid of 32 bit engine builds 
+Relationships

-Notes

~0017955

Kloot (developer)

win64 buildbot GLEW (1.13.0) should be updated; it pretends to support clipctrl whereas the more recent win32 1.5.8 does not.

~0017956

hokomoko (developer)

I wonder why the win32 one used is so old

~0017957

hokomoko (developer)

I think there was some header-binary inconsistency, tried to fix that, will see.

~0017958

Kloot (developer)

ah, nasty.

I think win32 glew wasn't touched since the static builds were introduced.

~0017959

hokomoko (developer)

Last edited: 2017-07-09 00:30

View 2 revisions

Should be fixed in 103.0.1-1168-g70c3340

I'm going to update win32 glew as well and see what happens

~0017962

hokomoko (developer)

This didn't help it seems.
I'm starting to suspect it's not glew lying but something else.
Any ideas of how to test?

~0017964

Kloot (developer)

what's in the infolog?

one other possibility is that ENABLE_CLIP_CONTROL isn't defined in Camera.cpp which would be weird.

~0017965

hokomoko (developer)

It's worth mentioning that on my machine I have lights and shadows and clip control in infolog

~0017966

Kloot (developer)

could there be a similar header-binary mismatch with buildbot's GL version?

~0017967

hokomoko (developer)

what headers/binaries do you mean?
https://github.com/spring/mingwlibs64

~0017968

Kloot (developer)

nm, mingwlibs doesn't include custom GL headers.

it would be useful to know the actual GL version installed.

~0017969

hokomoko (developer)

I still don't understand why it works on my machine and not on GoogleFrog's
I'll attach my infolog.

~0017970

hokomoko (developer)

Also attached an infolog given by google on latest engine

~0017971

Kloot (developer)

think I see the problem now, standby

~0017972

Kloot (developer)

Last edited: 2017-07-09 13:34

View 2 revisions

to be absolutely sure my hypothesis is correct: does it still not work for GF with the 1169 build from which infolog_google64.txt was generated?

~0017973

hokomoko (developer)

http://paste.springfiles.com/view/c95a43eb

~0017974

Google_Frog (reporter)

Also, the dynlights patch breaks them for me with win64. Patch: https://github.com/ZeroK-RTS/Zero-K/commit/0693d9c187f5b544a881de9975731ea0200511d8

~0017975

Kloot (developer)

Fix 0c38a9bce3144895a117f18fe66699f53d3e10e3 committed to develop branch: fix 0005637 ext-check issues, repo: spring changeset id: 8477

~0017977

Kloot (developer)

GoogleFrog: please test https://springrts.com/dl/buildbot/default/develop/103.0.1-1170-g0c38a9b/win64/

~0017979

Google_Frog (reporter)

No shadows or dynlights with 103.0.1-1170-g0c38a9b.

~0017980

Kloot (developer)

Last edited: 2017-07-10 03:10

View 3 revisions

I'm out of ideas for a while; in the meantime there is a ForceDisableClipCtrl option in bce9931d. if you feel like it you might also try changing to hokomoko's driver version (384.76).

just out of curiosity, why did you set Shadows=4?

~0017981

Google_Frog (reporter)

I was toggling through the shadows options.

~0017982

Google_Frog (reporter)

Setting ForceDisableClipCtrl = 1 works for both dynlights and shadows.

~0017985

hokomoko (developer)

Can you try running with DebugGL=1 and ForceDisableClipCtrl=0 and posting your infolog?

~0017990

Kloot (developer)

hmm, "GLEW version: 1.12.0"?

~0017991

hokomoko (developer)

It shouldn't be the issue IMO. GoogleFrog has a more recent card than I do and everything works on my machine.

Maybe it's related to some ZK settings which are different for me and for GoogleFrog?
different widgets?

~0017992

Kloot (developer)

Last edited: 2017-07-10 14:43

View 2 revisions

IMO it's either a library or a driver difference at this point, no shader errors (or any relevant GL debug output) and afaik there are no widgets in ZK that could be of influence. also, the 32-bit build shouldn't work for GF either in case of a game-related setting.

~0017993

hokomoko (developer)

Last edited: 2017-07-10 14:47

View 2 revisions

btw, I'm not entirely sure how clip control affects deferred rendering and/or shadows.
Also, I think that GF had dynamic lights (but not shadows) working when using a ZK version from before https://github.com/ZeroK-RTS/Zero-K/commit/0693d9c187f5b544a881de9975731ea0200511d8
(v1.5.7.1 I think?)
GoogleFrog can you verify this?

~0017994

Google_Frog (reporter)

Yes, the dynlights patch for ZK breaks dynlights.

~0017995

Kloot (developer)

Last edited: 2017-07-10 15:56

View 3 revisions

correction: it fixes them based on the assumption clipctrl works.

the math behind CC is trivial: A*B has to map to [0,1], where A is a projected z-value in [-1,1] in standard GL and a value in [0,1] otherwise. B is the part controlled by the driver and equal to *0.5+0.5 in standard GL. Spring adjusts all A's if CC is available by factoring B into them, and tells the driver to set B to 1. this last part fails for reasons unknown.

~0018006

hokomoko (developer)

Yes, I'm familiar with the clipping.
Why does it only affect shadows and dynamic lights though? Are they mapped into [-1,0)? Why is everything else rendered correctly?

~0018007

Kloot (developer)

because those two techniques involve inverse-projecting z's which are only in the proper range if the driver sets B as it is told.

I'm putting this in suspended animation until the glew mess is cleared up.
+Notes

-Issue History
Date Modified Username Field Change
2017-07-08 06:00 Google_Frog New Issue
2017-07-08 06:00 Google_Frog File Added: infolog32.txt
2017-07-08 06:00 Google_Frog File Added: infolog64.txt
2017-07-08 14:08 Kloot Note Added: 0017955
2017-07-08 20:56 hokomoko Note Added: 0017956
2017-07-08 21:11 hokomoko Note Added: 0017957
2017-07-08 21:40 Kloot Note Added: 0017958
2017-07-08 23:33 hokomoko Assigned To => hokomoko
2017-07-08 23:33 hokomoko Status new => resolved
2017-07-08 23:33 hokomoko Resolution open => fixed
2017-07-09 00:30 hokomoko Note Added: 0017959
2017-07-09 00:30 hokomoko Note Edited: 0017959 View Revisions
2017-07-09 11:37 hokomoko Assigned To hokomoko =>
2017-07-09 11:37 hokomoko Status resolved => new
2017-07-09 11:37 hokomoko Resolution fixed => reopened
2017-07-09 11:37 hokomoko Note Added: 0017962
2017-07-09 12:14 Kloot Note Added: 0017964
2017-07-09 12:16 hokomoko Note Added: 0017965
2017-07-09 12:32 Kloot Note Added: 0017966
2017-07-09 12:43 hokomoko Note Added: 0017967
2017-07-09 13:01 Kloot Note Added: 0017968
2017-07-09 13:07 hokomoko Note Added: 0017969
2017-07-09 13:10 hokomoko File Added: infolog_hoko64.txt
2017-07-09 13:11 hokomoko File Added: infolog_google64.txt
2017-07-09 13:12 hokomoko Note Added: 0017970
2017-07-09 13:26 Kloot Note Added: 0017971
2017-07-09 13:33 Kloot Note Added: 0017972
2017-07-09 13:34 Kloot Note Edited: 0017972 View Revisions
2017-07-09 13:51 hokomoko Note Added: 0017973
2017-07-09 14:01 Kloot Assigned To => Kloot
2017-07-09 14:01 Kloot Status new => assigned
2017-07-09 15:20 Google_Frog File Added: infolog_1169_win64.txt
2017-07-09 15:20 Google_Frog Note Added: 0017974
2017-07-09 15:28 Kloot Changeset attached => spring develop 0c38a9bc
2017-07-09 15:28 Kloot Note Added: 0017975
2017-07-09 15:28 Kloot Status assigned => resolved
2017-07-09 15:28 Kloot Resolution reopened => fixed
2017-07-09 17:06 Kloot Note Added: 0017977
2017-07-09 17:10 Kloot Status resolved => feedback
2017-07-09 17:10 Kloot Resolution fixed => reopened
2017-07-10 01:58 Google_Frog File Added: infolog.txt
2017-07-10 01:58 Google_Frog Note Added: 0017979
2017-07-10 01:58 Google_Frog Status feedback => assigned
2017-07-10 02:14 Kloot Note Added: 0017980
2017-07-10 02:27 Kloot Note Edited: 0017980 View Revisions
2017-07-10 02:35 Google_Frog Note Added: 0017981
2017-07-10 03:10 Kloot Note Edited: 0017980 View Revisions
2017-07-10 07:37 Google_Frog Note Added: 0017982
2017-07-10 10:09 hokomoko Note Added: 0017985
2017-07-10 10:35 Google_Frog File Added: infologDebugGL.txt
2017-07-10 14:34 Kloot Note Added: 0017990
2017-07-10 14:36 hokomoko Note Added: 0017991
2017-07-10 14:41 Kloot Note Added: 0017992
2017-07-10 14:43 Kloot Note Edited: 0017992 View Revisions
2017-07-10 14:47 hokomoko Note Added: 0017993
2017-07-10 14:47 hokomoko Note Edited: 0017993 View Revisions
2017-07-10 15:11 Google_Frog Note Added: 0017994
2017-07-10 15:51 Kloot Note Added: 0017995
2017-07-10 15:53 Kloot Note Edited: 0017995 View Revisions
2017-07-10 15:56 Kloot Note Edited: 0017995 View Revisions
2017-07-10 22:09 hokomoko Note Added: 0018006
2017-07-11 01:45 Kloot Status assigned => closed
2017-07-11 01:45 Kloot Note Added: 0018007
2020-05-14 15:24 abma Relationship added related to 0006394
+Issue History