Commit graph

3472 commits

Author SHA1 Message Date
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
Lubos Lenco b1a412cfc7
Merge pull request #2124 from Naxela/master
Fix for material NoneType and fix for Blender exit error
2021-03-11 14:03:49 +01:00
Alexander Kleemann e5d6c47e3e Fix Blender exit error (Keymap winman hangs) 2021-03-10 20:49:51 +01:00
Alexander Kleemann 4009d9d3fe Fix for an error with NoneType materials
Solves an error where an unallocated material slot caused a bug
2021-03-10 20:48:46 +01:00
Lubos Lenco 7c56ee9304
Merge pull request #2122 from N8n5h/light-fix
Fix forward+single atlas failing to compile with just 1 light
2021-03-03 08:26:38 +01:00
Lubos Lenco 70c46407c3
Merge pull request #2120 from N8n5h/light-fix-2
Fix shadow artifacts for HTML5 with shadow map atlas
2021-03-03 08:24:04 +01:00
N8n5h 72dde10fb0 Fix forward+single atlas failing to compile with just 1 light
This should fix an issue where the uniform for shadowMapAtlas used with the single atlas option was not added when having just 1 light.
2021-03-02 20:20:31 -03:00
N8n5h cf99e5a382 Fixed point lights breaking for Krom Windows with shadow map atlas
https://github.com/armory3d/armory/issues/2110#issuecomment-787913813
2021-03-01 18:39:32 -03:00
N8n5h 5f8b92f9c3 Applied flip workaround for point light too for html5 and atlas
The same concept for spot lights was applied for point lights;
the difference is that because point lights require to do the projection in the shader, the first inversion was applied in sampleCube() when returning the uv coordinates.
"_FlipY" was added to replace "_InvY" in "PCFFakeCube()" because the inversion is only necessary for shaders and not anything else, otherwise it would break rendering of other parts.
2021-03-01 18:39:32 -03:00
N8n5h c07de1cc25 Remove the inversion in shader of spot light uv for atlas
With the change in iron, there is no longer a need to do this in the shader.
2021-03-01 18:39:32 -03:00
luboslenco 4dbf8a3b2a Bump version 2021-03-01 09:07:33 +01:00
Lubos Lenco 4ea5156f1e
Merge pull request #2116 from tong/debug-param
Write debug param by default
2021-02-27 09:31:08 +01:00