question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Only one pointlight at a time possible

See original GitHub issue

Links to #1140 #1429, reposting because these issues don’t have the error posted and don’t get the attention they really need.

Description When using more than one pointlamp this error occurs: When using Deferred rendering:

Compiling shader 20 of 20 (World_World.vert.glsl).
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\deferred_light.frag.hlsl(152,20-84): warning X3570: gradient instruction used in a loop with varying iteration, attempting to unroll the loop
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\deferred_light.frag.hlsl(5,14-30): error X4500: overlapping register semantics not yet implemented 's1'
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\deferred_light.frag.hlsl(7,14-30): error X4500: overlapping register semantics not yet implemented 's2'
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\deferred_light.frag.hlsl(9,14-30): error X4500: overlapping register semantics not yet implemented 's3'
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\deferred_light.frag.hlsl(4,19-26): error X4500: overlapping register semantics not yet implemented 't1'
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\deferred_light.frag.hlsl(6,19-26): error X4500: overlapping register semantics not yet implemented 't2'
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\deferred_light.frag.hlsl(8,19-26): error X4500: overlapping register semantics not yet implemented 't3'

Compiling shader 8 of 20 (deferred_light.frag.glsl) failed:
Shader compiler error.
(node:8276) UnhandledPromiseRejectionWarning: Shader compiler error.
(node:8276) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:8276) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
ERROR: Build failed, check console

When using Forward rendering:

Compiling shader 19 of 19 (World_World.vert.glsl).
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\armdefault_mesh.frag.hlsl(125,20-84): warning X3570: gradient instruction used in a loop with varying iteration, attempting to unroll the loop
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\armdefault_mesh.frag.hlsl(8,19-30): error X4500: overlapping register semantics not yet implemented 't1'

Compiling shader 1 of 19 (armdefault_mesh.frag.glsl) failed:
Shader compiler error.
(node:12752) UnhandledPromiseRejectionWarning: Shader compiler error.
(node:12752) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:12752) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\Material_mesh.frag.hlsl(125,20-84): warning X3570: gradient instruction used in a loop with varying iteration, attempting to unroll the loop
C:\Users\SK\Desktop\Armory\blends\test\build_test\debug\temp\Material_mesh.frag.hlsl(8,19-30): error X4500: overlapping register semantics not yet implemented 't1'

Compiling shader 8 of 19 (Material_mesh.frag.glsl) failed:
Shader compiler error.
ERROR: Build failed, check console

This makes it impossible to build bigger scenes in Armory.

To Reproduce Place more than one pointlamp

System Blender: 2.82/2.83 Armory: latest git OS: Win 10 Graphics card: Gtx 1060

lampbug.zip

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:3
  • Comments:12 (4 by maintainers)

github_iconTop GitHub Comments

4reactions
e1e5en-gdcommented, Oct 29, 2020

When adding a second light to the scene, various errors occur with the deferred_light.frag.hlsl shader:

  1. Point and Spot (Spot and Spot) use-case-1
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(146,20-75): warning X3570: gradient instruction used in a loop with varying iteration, attempting to unroll the loop
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(290,5): warning X4000: use of potentially uninitialized variable (sampleLight)
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(8,24-46): error X4500: overlapping register semantics not yet implemented 's1'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(8,24-46): error X4500: overlapping register semantics not yet implemented 's2'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(8,24-46): error X4500: overlapping register semantics not yet implemented 's3'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(11,14-30): error X4500: overlapping register semantics not yet implemented 's2'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(13,14-30): error X4500: overlapping register semantics not yet implemented 's3'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(15,14-30): error X4500: overlapping register semantics not yet implemented 's4'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(7,21-34): error X4500: overlapping register semantics not yet implemented 't1'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(7,21-34): error X4500: overlapping register semantics not yet implemented 't2'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(7,21-34): error X4500: overlapping register semantics not yet implemented 't3'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(10,19-26): error X4500: overlapping register semantics not yet implemented 't2'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(12,19-26): error X4500: overlapping register semantics not yet implemented 't3'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(14,19-26): error X4500: overlapping register semantics not yet implemented 't4'

Compiling shader 4 of 19 (deferred_light.frag.glsl) failed:
Shader compiler error.
(node:4596) UnhandledPromiseRejectionWarning: Shader compiler error.
(node:4596) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:4596) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
  1. Point and Point use-case-2
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(152,20-84): warning X3570: gradient instruction used in a loop with varying iteration, attempting to unroll the loop
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(5,14-30): error X4500: overlapping register semantics not yet implemented 's1'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(7,14-30): error X4500: overlapping register semantics not yet implemented 's2'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(9,14-30): error X4500: overlapping register semantics not yet implemented 's3'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(4,19-26): error X4500: overlapping register semantics not yet implemented 't1'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(6,19-26): error X4500: overlapping register semantics not yet implemented 't2'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(8,19-26): error X4500: overlapping register semantics not yet implemented 't3'

Compiling shader 4 of 19 (deferred_light.frag.glsl) failed:
Shader compiler error.
(node:9004) UnhandledPromiseRejectionWarning: Shader compiler error.
(node:9004) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:9004) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
  1. Point and Area use-case-3
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(361,20-75): warning X3570: gradient instruction used in a loop with varying iteration, attempting to unroll the loop
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(19,14-30): error X4500: overlapping register semantics not yet implemented 's4'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(21,14-30): error X4500: overlapping register semantics not yet implemented 's5'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(18,19-26): error X4500: overlapping register semantics not yet implemented 't4'
...\two_lights\build_error_two_lights\debug\temp\deferred_light.frag.hlsl(20,19-26): error X4500: overlapping register semantics not yet implemented 't5'

Compiling shader 4 of 19 (deferred_light.frag.glsl) failed:
Shader compiler error.
(node:9916) UnhandledPromiseRejectionWarning: Shader compiler error.
(node:9916) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:9916) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

When using Sun light source with other sources - no errors. In this case, errors occur even if the light sources are in different scenes of the same project.

System Blender: 2.83.8 Armory: git, master (9e8117e) OS: Windows 10 64-bit Graphics card: NVIDIA GeForce 930M

Test File error_two_lights.zip

4reactions
knowledgenudecommented, Jul 18, 2020

Then the problem is happening in Windows Krom export, as it occurs in Krom and Kromx (not tested in C). I will test other builds here and see what happens

Read more comments on GitHub >

github_iconTop Results From Across the Web

Multiple point lights but only 1 is being as intense as it should be
I'm working on a project in the free version of Unity3 and I'm having a simple issue. I have 2 point lights about...
Read more >
unity - Why do my point lights disappear when another nearby ...
Im pretty sure the problem is caused by one point light being in the range of the other point light so, for lag...
Read more >
Why does my Point Light emit in only one direction like a Spot ...
I have this really strange lighting behavior where point lights emit in one direction (which varies on different objects), spotlights do ...
Read more >
Multiple lights - LearnOpenGL
The actual code will likely differ per implementation, but the general ... works just like setting the uniforms of a single struct, although...
Read more >
Point and Spot Lights - Catlike Coding
We've only worked with directional lights so far because those lights ... Effectively, it's a point light that's enclosed by an occluding ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found