Commit graph

3483 commits

Author SHA1 Message Date
N8n5h c01b079cf1 Add custom highlighting for debug console
And use it to highlight "not enough lights" with a different color to
bring attention to it.
2021-04-14 01:06:14 -03:00
N8n5h e1cfa2f1da Add shadow map atlases info to the debug console
Display information like tile size, current size, max size, free tiles,
etc. to help debug atlases.
2021-04-14 00:32:54 -03:00
Lubos Lenco 6fbee167ab
Merge pull request #2155 from MoritzBrueckner/fcurve-datapath-warnings
Improve warning message for unsupported/unknown fcurve data paths
2021-04-10 08:32:02 +02:00
Moritz Brückner 78e266f77b Improve warning message for unsupported/unknown fcurve data paths 2021-04-09 20:55:17 +02:00
Lubos Lenco 1df882cad1
Merge pull request #2154 from MoritzBrueckner/fix-system-name-node
Fix GetSystemName node
2021-04-08 19:02:45 +02:00
Moritz Brückner cf56c4f1d8 Fix GetSystemName node 2021-04-08 15:44:18 +02:00
Lubos Lenco a3ca487183
Merge pull request #2152 from N8n5h/light-fix
Fix detection of removed lights by shadow map atlas
2021-04-07 20:47:10 +02:00
N8n5h 63716eea17 Modifications around addLight from Inc
* Removed redundant checks at the start of the function.
* changed the return value to void because the "return false" were
redundant, and simply made it so the lightInAtlas is set at the end of
the function.
* Removed unused variable
2021-04-07 12:44:54 -03:00
N8n5h 614385ea7b Setup callbacks so tiles are notified when a light is removed
A secondary callback is setup so the tile it's also removed from the
activeTiles, because it's freed in a "non standard" way.
2021-04-07 12:44:54 -03:00
Lubos Lenco 69207a6289
Merge pull request #2151 from N8n5h/coll-mask
Expose collision filter mask as integer to the UI
2021-04-04 10:49:13 +02:00
N8n5h 766e26a7df Expose collision filter mask as integer to the UI 2021-04-03 20:49:33 -03:00
Lubos Lenco b930b87bc9 Bump version 2021-04-02 13:34:08 +02:00
Lubos Lenco 67110c15a9
Merge pull request #2147 from N8n5h/light-fix
Fix case where sun shadows are not working if there are other type of lights present
2021-03-30 09:08:25 +02:00
N8n5h ead7dc9d32 Moved biasLWVP matrix uniform reference to a new one for sun
This was done because the original "_biasLightWorldViewProjectionMatrix"
relies on renderpath.light, which is problematic when rendering the
deferred light pass and there is a sun and other lights of different
type on the scene. Which would result on the wrong light being picked up
for the calculation of the uniform value.
2021-03-29 10:55:58 -03:00
Lubos Lenco 4a784c70a8
Merge pull request #2144 from MoritzBrueckner/fix-matnames
Replace ' and " characters in asset names
2021-03-27 09:04:25 +01:00
Lubos Lenco 44f08a16ae
Merge pull request #2141 from MoritzBrueckner/instancing-fix
Fix writing to gl_Position before instancing code
2021-03-27 09:03:08 +01:00
Moritz Brückner de8073732a Replace ' and " characters in asset names 2021-03-27 00:30:05 +01:00
Lubos Lenco 8118733474
Merge pull request #2139 from Naxela/master
Add map range node, vector rotate node, missing math operations and blackbody node
2021-03-26 08:24:41 +01:00
Moritz Brückner 24093d15df Fix writing to gl_Position before instancing code 2021-03-25 22:02:59 +01:00
Alexander Kleemann 930b2968fa
Include cycles glsl functions for vector rotation 2021-03-24 10:20:05 +01:00
Alexander Kleemann 6e0bfa272c
Remove float parsing 2021-03-24 10:13:46 +01:00
Alexander Kleemann dfe1a49f85 Implement the remaining 16 math node operations
Math node is now fully supported
2021-03-23 22:02:25 +01:00
Alexander Kleemann 0cc2ea4491 Add map range and vector rotate to node parser dictionary 2021-03-23 21:58:46 +01:00
Alexander Kleemann 5c1f8fe128 Implement vector rotate node
Should now be fully supported
2021-03-23 21:56:14 +01:00
Alexander Kleemann 07741abc55 Implement map range node
Map range node should now be fully supported
2021-03-23 21:53:24 +01:00
Alexander Kleemann 362fffa408 Reimplement blackbody node from python to GLSL
Should now work with changing values
2021-03-23 21:51:28 +01:00
Lubos Lenco dc81aca823
Merge pull request #2137 from N8n5h/tangent-error
Show error in the UI for tangent calculation error instead of just crashing to blender UI
2021-03-22 08:39:12 +01:00
Lubos Lenco d88d2320ed
Merge pull request #2135 from N8n5h/physics-2
Expose the exported rigid body type to the UI to make rb less confusing
2021-03-21 13:03:34 +01:00
N8n5h 7851abc491 Clear error count after building again 2021-03-20 21:26:05 -03:00
Lubos Lenco 54fcd49c27
Merge pull request #2134 from QuantumCoderQC/patch-1
Make description of logic node more precise
2021-03-20 09:58:36 +01:00
Lubos Lenco 8df7f66872
Merge pull request #2131 from N8n5h/physics
Modified UI for collision filter props_collision_filter_mask
2021-03-19 19:07:33 +01:00
N8n5h 57660631b5 Log errors and show them in the blender UI 2021-03-19 11:39:06 -03:00
N8n5h d4463a3611 Catch tangent n-gon error to properly show it to the user
Instead of just letting it crash whenever the users hits play.
2021-03-19 10:22:01 -03:00
N8n5h a778460d28 Expose the exported rigid body type to the UI to make rb less confusing 2021-03-18 22:52:08 -03:00
QuantumCoderQC 255921b9ee
Make description of logic node more precise
The OnVolumeTrigger node does not required a RigidBody.
2021-03-18 21:34:59 +01:00
Lubos Lenco 4b593af4ee
Merge pull request #2129 from knowledgenude/master
Fix clamp node
2021-03-18 11:49:15 +01:00
N8n5h ca2c3e151a Modified UI for collision filter props_collision_filter_mask
* Moved to collision filter mask panel under armory props to keep UI
more tidy.
* Moved the `arm_rb_collision_filter_mask` property out of the
props_collision_filter_mask to be with the rest of the properties.
* Changed name and description of collision filter mask to be more
consistent with the existing rigid body UI.
2021-03-17 20:28:26 -03:00
knowledgenude 1ad1d564bd
Fix clamp node 2021-03-16 18:27:42 -03:00
Lubos Lenco 7d78e01bb4
Merge pull request #2128 from N8n5h/light-fix-2
Fix shadows not working when there are lights present with cast_shadow=false
2021-03-16 08:28:19 +01:00
Lubos Lenco 95af8f2f77
Merge pull request #2127 from N8n5h/light-fix-mobile
Fix shadow rendering for point and spot lights for deferred and forward mobile
2021-03-16 08:24:49 +01:00
Lubos Lenco 71a5ac6f6e
Merge pull request #2126 from MoritzBrueckner/trait-props
Make `@prop` recognition more robust
2021-03-15 13:45:02 +01:00
N8n5h c7211542b4 Make pointLightData work with lights with cast_shadow=false 2021-03-14 23:21:02 -03:00
N8n5h 7463de6140 Add cast_shadow to lightArray data
This was done to undo the hardcoded nature of "receiveShadows", which
doesn't play nice when you have multiple lights of the same type and
one or several have cast_shadow set to false.

By simply "passing" the cast_shadow parameter within the lightArray it
was possible to detect lights that don't cast shadows before actually
wasting gpu cycles to render shadows with garbage data.

Support for deferred desktop and mobile, and forward was added.
2021-03-14 23:20:57 -03:00
N8n5h efcef7dd25 Fix shadow rendering for deferred and forward mobile 2021-03-14 22:04:47 -03:00
Lubos Lenco 26c29fe15e
Merge pull request #2125 from N8n5h/light-fix-2
Fix light visual artifact when close to the camera
2021-03-14 16:44:43 +01:00
Moritz Brückner b7fef30b70 Further improve handling of final trait props 2021-03-14 15:50:27 +01:00
Moritz Brückner 4ad68304e5 Improve @prop warning messages 2021-03-13 21:22:42 +01:00
Moritz Brückner 7d9c6ce7c7 Make @prop recognition much more robust 2021-03-13 21:12:12 +01:00
N8n5h 404a1248a1 Make clusterNear be the same as in LightObject 2021-03-13 13:30:25 -03:00
N8n5h 8e972f75fd Fix light visual artifact when close to the camera
This fixes a current problem with lights that occurs when getting too
close to the camera. The issue is related to the clustering algorithm
and cluster near.

Cluster near explanation:

Because of the logarithmic nature of how the Z slice is calculated,
clusters slices get "burned" too quickly at the start of the frustum,
which is not ideal. To aid this, and offset is applied to the start of
the cluster frustum, and that is clusterNear.

Cluster near solves that problem but creates another one: There is a gap
between the near plane and the cluster near offset that gets completely
ignored when calculating. And this results in the visual artifact of
slices not being affected by light whatsoever.

The proposed solution is make the gap resolve to the first slice of Z
clusters.
2021-03-13 13:30:19 -03:00