Overblob
e6ad5e23b4
* Small hex/float/integer parsing refactoring
...
* Potential bug fix on hex (cannot be used atm)
* Added optional typing for floats, eg:
"1f" -> "1.0"
"1.f" -> "1.0"
"1.99f" -> "1.99"
"1." -> "1.0"
2018-07-15 14:58:23 +02:00
Juan Linietsky
f6ce73f724
Visual Shaders are back.
2018-07-14 18:16:18 -03:00
Overblob
7a74d310aa
Fixed error due to bad cursor handling when parsing shader code
...
Fixed completion error log thrown on "no auto-completion found" for typings with no completion.
2018-07-14 19:59:11 +02:00
Josh Taylor
892a4b175a
Changed minimum visible viewport size
...
When the viewport's size.y becomes lower than 2, the storage->frame.current_rt->effects.mip_maps[0].sizes Vector during rendering becomes empty, resulting in crashes in at least GLES3. This is a temporary fix to stop rendering a viewport when its size is below 2 rather than below 1.
2018-07-07 17:10:32 -05:00
Juan Linietsky
7dcaabaf19
Support for CPU based particles, which aids compatibility with OpenGL ES 2.0
2018-07-06 20:21:42 -03:00
Rémi Verschelde
92bfde531c
Merge pull request #19786 from JFonS/correct_normal_scaling
...
Add render mode to ensure correct normals when using non-uniform scaling
2018-07-04 15:09:59 +02:00
Juan Linietsky
d280b14e6e
Hacked around duplication bug. I think duplicate needs to be even smarter, maybe pass two bools? (containers and/or resources)
2018-07-03 08:34:06 -03:00
Juan Linietsky
7fc2367508
Added ability for SSAO to affect AO textures too
2018-07-02 16:50:52 -03:00
malbach
cef8d355d2
Fix #19507 Not emitted particles affects performance
2018-06-25 18:17:28 +02:00
Bastiaan Olij
ddc40e5115
Fix typo in y shift
2018-06-23 22:41:29 +10:00
JFonS
c8cf71753c
Add render mode to ensure correct normals when using non-uniform scaling
2018-06-21 00:12:12 +02:00
Bastiaan Olij
3fc9b5d93f
Moved culling, updated lights and shadows into a prepare function so it is only called once for stereo rendering
2018-06-11 21:51:30 +10:00
Gustav Lund
35eb7f2d6a
Rasterizers are now in sync with engine
...
The rasterisers (both GLES3 and GLES2) were calculating their own frame delta time
This fix lets the rasterizers get the frame delta through the draw call
That way any regulations to the frame step from the main script will not cause particle systems to process at a different step than the rest of the Engine.
Remove unused rasterizer storage variable
frame.prev_tick variable were not used anywhere and has been removed
2018-06-05 16:33:02 +02:00
Oliver Rausch
2368b31e1e
Fix return type of isnan and isinf in the shader language
2018-06-01 01:34:32 +02:00
nemerle
f2ba9a1f65
Fix bad operator check in ShaderLanguage::_validate_assign
2018-05-16 21:28:12 +02:00
Juan Linietsky
3051bb8a81
Merge pull request #17845 from JFonS/disable_spatial_shadows
...
Added flag on SpatialMaterial to disable shadows
2018-05-07 16:18:25 -03:00
Juan Linietsky
0db4c576f1
Merge pull request #18533 from JFonS/fix_shader_compile
...
Fix vector reduction in shader language
2018-05-07 14:30:44 -03:00
JFonS
5b50685b38
Fix vector reduction in shader language
2018-05-07 19:25:31 +02:00
Juan Linietsky
b96cd25305
Merge pull request #18495 from Zylann/partial_texture_update
...
Added partial texture update to VisualServer
2018-05-07 13:20:38 -03:00
Juan Linietsky
35322c0678
Merge pull request #18677 from BastiaanOlij/add_no_blend
...
Add no-blend canvas item render_mode
2018-05-07 09:44:17 -03:00
Bastiaan Olij
6103c8d7a3
Add no-blend canvas item render_mode
2018-05-07 22:41:12 +10:00
Bastiaan Olij
6f7fefa489
Added option to viewport to keep linear color
2018-05-06 19:28:09 +10:00
Juan Linietsky
b3e4bc562c
Skeleton for 2D WIP
2018-05-03 17:29:56 -03:00
Rémi Verschelde
de97339a2d
Merge pull request #18291 from akien-mga/coverity-uninitialized-scalar-var
...
Fix Coverity reports of uninitialized scalar variable
2018-05-01 19:14:07 +02:00
Rémi Verschelde
4cce6f3417
Merge pull request #18321 from Crazy-P/Fixes-logically-dead-code
...
Fixes logically dead code (Coverity)
2018-05-01 08:35:10 +02:00
Marc Gilleron
c755cced83
Added partial texture update to VisualServer
2018-04-29 03:09:49 +02:00
Hugo Locurcio
1c419531a0
Change ".." punctuation for "..." in editor strings ( #16507 )
2018-04-22 19:36:01 +02:00
Crazy-P
e6deba8d19
Fixes logically dead code (Coverity)
...
Fixes reported logically dead codes by Coverity
* image.cpp: Doesn't really need any modification. But to remove the bug
report then we have to move the MAX call away from the for loop
statement.
* rasterizer_gles3.cpp: Removes unnecessary elif condition since it is
checked earlier in the function
* collada.cpp: If stamement never reached due to macro ERR_CONTINUE does
the same.
* navigation_mesh.cpp: Variables should always be null - however, also
checked for the very same condition in their function call. Leaving this
for review (whether the function call is necessary or not)
* path_editor_plugin.cpp: If cancel is true, then it should restore the
edited value to the original provided.
http://docs.godotengine.org/en/3.0/classes/class_editorspatialgizmo.html#class-editorspatialgizmo-commit-handle
* spatial_editor_gizmos.cpp: the very condition of i >= 3 is
predetermined in the if case right before it. Thus case 1 is always '1'
and case 2 is always '-1'
* grid_map_editor.cpp: Same as above in spatial_editor_gizmos.cpp
* voxel_light_baker.cpp: Same as above in spatial_editor_gizmos.cpp
* visual_server.cpp: Same as above in spatial_editor_gizmos.cpp
* visual_script_expression.cpp: char '-' is already true in the switch
case mechanism. Thus it can never reach to default case.
* particles.cpp: Case 'PARAM_MAX' is unreachable due to index checking
right before the switch execution.
* shader_language.cpp: Invalid index is handled in switch default case.
`type < TYPE_FLOAT && type > TYPE_VEC4` -> `(type < TYPE_FLOAT || type > TYPE_VEC4`)
Fixes the "always false problem" in TODO comment.
2018-04-21 22:35:23 +08:00
Rémi Verschelde
bf7ca623a6
Fix Coverity reports of uninitialized scalar variable
...
Fixes most current reports on Coverity Scan of uninitialized scalar
variable (CWE-457): https://cwe.mitre.org/data/definitions/457.html
These happen most of the time (in our code) when instanciating structs
without a constructor (or with an incomplete one), and later returning
the instance. This is sometimes intended though, as some parameters are
only used in some situations and should not be double-initialized for
performance reasons (e.g. `constant` in ShaderLanguage::Token).
2018-04-19 15:20:45 +02:00
Rémi Verschelde
9a4110a451
Merge pull request #17391 from PJB3005/18-03-09-fix-canvas-light-shaders
...
Fixes canvas light shaders.
2018-04-18 13:31:28 +02:00
Poommetee Ketson
59b816679e
Fix typos in shader_language.cpp
2018-04-17 19:21:00 +07:00
Pieter-Jan Briers
25ba49fd88
Fixes canvas light shaders.
...
Fixes #16904
Restore more out functionality, fix built-ins.
Requested changes, I think?
2018-04-13 15:18:28 +02:00
Juan Linietsky
8a5fb669ae
Merge pull request #17421 from Chaosus/fixshaderbugs
...
Fix few bugs in shader definitions
2018-04-08 09:33:12 -03:00
JFonS
9c307d4b6c
Added flag on SpatialMaterial to disable shadows
2018-03-29 18:46:42 +02:00
Chaosus
d974fa1780
Removed redundant abs shader builtin
2018-03-28 12:50:55 +03:00
Rémi Verschelde
aebe55210a
Merge pull request #17532 from BastiaanOlij/arvr_enhancements
...
A few enhancements on the ARVR Server
2018-03-23 10:15:15 +01:00
robfram
8eedb2afe2
Fix crash in canvas_item_add_polyline
when passing more points than colors
...
When `p_points.size() > p_colors.size()`, it crashed with invalid
array access to `p_colors`. Also, when `p_colors` was an empty
`Vector` it crashed due a missing `else` checking the `size`
condition, as the code handling that special case exists.
This PR fixes the missing `else` for `p_colors.size == 0` and,
following the `canvas_item_add_multiline` spirit, it only uses the
first color for the whole polyline if points and colors differ in
size.
Fix #17621 .
2018-03-19 19:22:38 +01:00
Hein-Pieter van Braam
009b0bab49
Merge pull request #17248 from Cygon/implement-extra-culling-margin
...
Apply culling margin (fixes issue #16115 )
2018-03-15 23:45:59 +01:00
JFonS
479f531635
Hinted shader uniforms can have a default value
2018-03-15 15:23:40 +01:00
Bastiaan Olij
5356423377
A few fixes on the ARVR Server
2018-03-15 23:31:02 +11:00
Rémi Verschelde
27a3447790
Merge pull request #17402 from Chaosus/fixmix
...
Fix invalid mix function overload
2018-03-13 08:43:07 +01:00
Wilson E. Alvarez
e9ac87390c
Fixed several leaks in VisualServerScene, RasterizerSceneGLES3 and RasterizerGLES3
2018-03-13 00:22:08 -04:00
Chaosus
2d428a350e
Fix few bugs in shader definitions
2018-03-10 21:00:18 +03:00
Chaosus
97bef8d908
Fix invalid mix function overload
2018-03-10 12:56:43 +03:00
Saracen
b095e21d91
Make the shader token names consistent.
2018-03-07 23:56:47 +00:00
Markus Ewald
fc166f3ee1
Implement VisualServerScene::instance_set_extra_visibility_margin() method to actually apply extra culling margin and mark instance AABB dirty
2018-03-04 14:20:59 +01:00
Chaosus
c6b6af7bb5
Fix floatBitsToUint function
2018-03-03 16:22:36 +03:00
Juan Linietsky
7cd867c3fe
2D Skeletons WORK IN PROGRESS
2018-02-21 17:24:00 -03:00
Juan Linietsky
9e3a1e5401
Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion.
2018-02-21 09:39:09 -03:00
Juan Linietsky
4c56edfb83
Revert "Handle single-argument constructors in uniform default values"
2018-02-20 07:28:22 -03:00
Rémi Verschelde
05a8675f82
Merge pull request #15985 from Nallebeorn/uniforms-single-argument-constructors
...
Handle single-argument constructors in uniform default values
2018-02-20 11:26:26 +01:00
Chaosus
8f04a13c98
Added missing shader functions
2018-02-18 18:08:18 +03:00
Paolo Perkovic
08d4bfacaf
Fix inconsistencies and typos in argument names
2018-02-01 16:47:20 +01:00
Benjamin
311e69aa1e
Handle single-argument constructors in shaders.
...
Expand these (fill vectors, fill matrix diagonals) in _reduce_expression() so they're handled properly even as uniform default values (where they previously caused a crash).
2018-01-22 22:32:35 +01:00
Rémi Verschelde
9f479f096c
Fix typos in code and docs with codespell
...
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
binbitten
bccb4840c8
Fix wrong viewport transparent-bg
2018-01-18 19:11:07 +01:00
Juan Linietsky
bfeaf27a3e
Properly dispose of instance capture data, fixes #14795
2018-01-06 19:06:04 -03:00
Rémi Verschelde
e4213e66b2
Add missing copyright headers and fix formatting
...
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
0b07d453f7
Merge pull request #15251 from binbitten/fix-assign-vardecl
...
Fix premature declaration of shader variables created with assignment
2018-01-04 15:17:10 +01:00
Rémi Verschelde
f9f6f250e6
Merge pull request #15191 from Jerome67000/z_renaming
...
renames "z" Node2D property to "z_index"
2018-01-04 00:41:45 +01:00
Razah
e3c9a7ed4f
Fix broken Info.plist after copyright update
...
Fixes #15293 .
+ related misc fixes by @akien-mga.
2018-01-03 17:10:07 +01:00
Jerome67000
42ae3525a3
#15078 renamed "z" -> "z_index" property in Node2D
2018-01-03 13:02:26 +01:00
binbitten
f141bafba3
Fix premature declaration of shader variables created with assignment
2018-01-03 07:23:04 +01:00
Rémi Verschelde
b50a9114b1
Update copyright statements to 2018
...
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
binbitten
9b2283382e
Fixed wrong highlighted line when erroring and using single-line comments, fixes #15167
2017-12-29 19:32:21 +01:00
Noshyaar
5c636875e4
Merge pull request #14971 from mrcdk/particles_emitting
...
Set particles emitting to false when particles finish emitting with one-shot enabled
2017-12-27 10:45:36 +07:00
Juan Linietsky
2b31155baa
Fix sidedness check in material. Also remove SIDE built-in.
2017-12-26 11:09:52 -03:00
MrCdK
1f609b7a82
Set particles emitting to false when particles finish emitting with one-shot enabled
2017-12-23 05:23:41 +01:00
Rémi Verschelde
8f25a2dc11
Cleanup some #if 0'd code
2017-12-17 15:40:24 +01:00
Enzo Nocera
8e2a1ffd6e
Shader Language: Add in-for declared variables within for-block scope.
2017-12-17 01:43:59 +01:00
Juan Linietsky
652c98a7be
Add epic hack so vsync can be toggled in run-time from script. Fixes #14458 .
...
Call needs to be routed via visual server to reach the proper thread.
2017-12-16 17:11:02 -03:00
Juan Linietsky
e946fb8cb0
Made built-in identifiers properly constant in shaders. Fixes #14449 , closes #14629
2017-12-15 18:24:30 -03:00
Juan Linietsky
f3ad14224e
-Add lightmapper
...
-Fixes to unwrapper (remove degenerates), makes Thekla not crash
-Added optional cancel button in EditorProgress
-Added function to force processing of events (needed for cancel button)
2017-12-14 09:01:27 -03:00
Przemyslaw Czarnota
c3c1d119ec
Fix #14429 GIProbe does not work with SpotLights
2017-12-09 20:57:28 +01:00
Juan Linietsky
65fb961b8b
-Ability to and unwrap lightmap coordinates on import
...
-Added unwrap functionality to Mesh
-Ability to display and debug mesh UVs
-Added multiline draw, so it's easier and faster to draw UVs
-Many fixes to SurfaceTool
-Fixes to Thekla Unwrap, but it's a piece of ass and it keeps crashing. Will have to go away
2017-12-09 14:18:14 -03:00
Rémi Verschelde
ccef401700
Merge pull request #13341 from scayze/interp_v2
...
Added interpolation qualifiers to shaderlang
2017-12-09 18:12:14 +01:00
Rémi Verschelde
13c2ff9320
Style: Apply new clang-format 5.0 style to all files
2017-12-07 08:02:00 +01:00
Juan Linietsky
0bc573635c
Fixes to some thread safety situations to avoid GIProbe from freezing on save. Fixes #13338
2017-12-06 18:06:34 -03:00
Juan Linietsky
431dfc1458
Attempt to see if this can solve the problem with #13338
2017-12-06 16:41:19 -03:00
Juan Linietsky
d438ac0aed
-Implemented Proxy Textures (needed to solve the problem with ViewportTexture)
...
-Properly use hierarchy to initialize resources local to scene (solves problem of GUI in 3D)
2017-12-04 15:56:17 -03:00
Scayze
b0fb6b1380
Added interpolation modifiers to shaderlang
2017-11-27 16:47:46 +01:00
Rémi Verschelde
8dc89e787c
Merge pull request #13294 from RaXaR/master
...
Added overloads of vector parameters for shader Trig functions.
2017-11-27 00:58:14 +01:00
RaXaR
b932d8c37a
Added overloads of vector parameters for shader Trig functions.
...
Ammend: Removed whitespace from blank lines.
Ammend2: Removed extra spaces in an attempt to make Clang happy. :)
2017-11-27 01:18:45 +02:00
Juan Linietsky
22415e5a31
Merge pull request #12572 from RandomShaper/onion-skinning
...
Onion skinning
2017-11-26 15:13:35 -03:00
Rémi Verschelde
b0e556d1a7
Merge pull request #13289 from sketchyfun/3d_selection_fix
...
Fixed issue with 3D selections
2017-11-26 14:55:56 +01:00
Hugo Locurcio
541df26184
Tweak the default camera node settings
...
- Increase FOV to 70
- Put the Z-near plane at 0.05 meters
2017-11-25 23:48:30 +01:00
BenH
dd5037ba82
Fixed issue with 3D selections losing precsion due to an offset bug
2017-11-25 20:14:54 +00:00
Juan Linietsky
bc2e8d99e5
Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
...
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Pedro J. Estébanez
81c49fb536
Update clang-format in modified files
2017-11-25 02:18:28 +01:00
Pedro J. Estébanez
3aa79fc1a3
Add ability to opt-out buffer swapping in VS::draw()
2017-11-25 02:18:28 +01:00
Ferenc Arn
0ca9181ee8
Rename two-parameter arc-tangent function to atan in shader language, as it is in GLSL.
...
Fixes #13214 .
2017-11-23 21:19:11 -05:00
Juan Linietsky
640856f4d4
Merge pull request #11895 from m4nu3lf/rendering/separate_thread
...
Restore rendering on a separate thread
2017-11-21 14:31:14 -03:00
Marc Gilleron
17b9accd0c
Implement per-instance custom bounding box
...
# Conflicts:
# servers/visual/visual_server_scene.h
2017-11-20 20:54:26 +01:00
Juan Linietsky
98cb49283d
Ability to change indirect light energy.
2017-11-19 21:46:00 -03:00
m4nu3lf
871c47a2bb
Restore rendering on a separate thread
2017-11-18 18:35:25 +00:00
Ferenc Arn
d28763a4c1
Rename Rect3 to AABB.
...
Fixes #12973 .
2017-11-17 11:01:41 -05:00
Juan Linietsky
6277e6d40a
Ability to update parts of an array, and set arrays as dynamic draw
2017-11-14 17:26:35 -03:00
BastiaanOlij
9d3f8418ca
Removed add/remove interface bindings and added get_interfaces
2017-11-13 22:08:43 +11:00
Juan Linietsky
19b1ff0fc5
Disabled filter clip by default and made it optional, fixes #12368 , likely others too
2017-11-10 09:22:25 -03:00
Juan Linietsky
192a4d7de5
Reworked how servers preallocate RIDs, should fix #10970
2017-11-09 23:35:34 -03:00