Commit Graph

1595 Commits

Author SHA1 Message Date
Rémi Verschelde
3f276033c1
Merge pull request #41536 from Chaosus/vs_fix_specular_3.2
[3.2] Fix specular render_mode for visual shaders
2020-09-08 09:46:12 +02:00
Fredia Huya-Kouadio
0af5cded1e Fix the update logic for user-added custom defines.
The previous logic was causing the (unintentional) removal of custom defines automatically added by the engine.
2020-09-06 21:31:09 -07:00
Andrii Doroshenko (Xrayez)
7493bc5530
Make AnimatedTexture.MAX_FRAMES public
The constant is already exposed in GDScript, but not in C++.
This information is useful for implementing animated texture
resource importers via modules.

(cherry picked from commit 528056a3c5)
2020-08-31 15:29:43 +02:00
Yuri Roubinsky
7facd00ace [3.2] Fix specular render_mode for visual shaders 2020-08-28 13:06:55 +03:00
Yuri Roubinsky
d0c705781c [3.2] Added UniformRef visual shader node 2020-08-11 15:04:06 +03:00
Tomasz Chabora
307bac0757 Keep transition value when replacing key
(cherry picked from commit e1a1bb0a6e)
2020-07-24 10:31:57 +02:00
Pedro J. Estébanez
06904ac215 Add DynamicFont::get_available_chars() 2020-07-20 17:45:04 +02:00
Patrick Dawson
8218170b3c Avoid overflow when calculating visible_cells
(cherry picked from commit 9e28df22a0)
2020-07-15 12:11:31 +02:00
Rémi Verschelde
1f886d1f31
Merge pull request #39867 from clayjohn/Sprite3D-mesh
Use mesh instead of immediate for drawing Sprite3D
2020-07-06 16:36:27 +02:00
Rémi Verschelde
037571d08e
Merge pull request #40087 from akien-mga/3.2-cherrypicks
Cherry-picks for the 3.2 branch (future 3.2.3) - 1st batch
2020-07-04 01:37:52 +02:00
clayjohn
6c0ff26f35 Use mesh instead of immediate for drawing Sprite3D 2020-07-03 12:19:26 -06:00
Rémi Verschelde
d004188348 Environment: Fix glow hdr bleed scale being unused
The glow hdr bleed threshold was passed in its stead.

Fixed in master too with #40016.
2020-07-03 14:27:42 +02:00
Hugo Locurcio
89421c58cd Write "Aces" tonemapping in uppercase as it's an acronym
(cherry picked from commit a31fc59ff3)
2020-07-03 13:17:57 +02:00
lordkettune
c68ef4d754 Fix issues with custom tracks on reimport
(cherry picked from commit 4313a7bdc8)
2020-07-03 13:17:57 +02:00
Andrii Doroshenko (Xrayez)
5084043373 Bind Shape2D draw method
(cherry picked from commit 430d1fd795)
2020-06-18 10:51:44 +02:00
Yuri Roubinsky
87ebc29d8e Use path instead classname to prevent errors for exported visual shaders 2020-06-15 21:33:32 +03:00
Rémi Verschelde
7bf9787921 SCons: Format buildsystem files with psf/black
Configured for a max line length of 120 characters.

psf/black is very opinionated and purposely doesn't leave much room for
configuration. The output is mostly OK so that should be fine for us,
but some things worth noting:

- Manually wrapped strings will be reflowed, so by using a line length
  of 120 for the sake of preserving readability for our long command
  calls, it also means that some manually wrapped strings are back on
  the same line and should be manually merged again.

- Code generators using string concatenation extensively look awful,
  since black puts each operand on a single line. We need to refactor
  these generators to use more pythonic string formatting, for which
  many options are available (`%`, `format` or f-strings).

- CI checks and a pre-commit hook will be added to ensure that future
  buildsystem changes are well-formatted.

(cherry picked from commit cd4e46ee65)
2020-06-10 15:30:52 +02:00
Michael Alexsander
2652a2d184 Add generic file icon and its modulation to the 'FileDialog'
(cherry picked from commit 637927f803)
2020-06-10 15:30:52 +02:00
Rémi Verschelde
f3fcdfbdd0 PackedScene: Prevent crash when root node has parent attribute
The crash happens further down when setting an invalid owner in
`Node::_set_owner_nocheck` but I couldn't figure out how to fix it.

But here the proper fix is to catch the invalid scene file early on
and fail loading it.

Part of #17372.

(cherry picked from commit c080ec5da2)
2020-06-10 15:30:52 +02:00
Marcus Brummer
ae67ec3ece Set "shader_param/" prefix in Shader::has_param()
(cherry picked from commit ffbb211bbe)
2020-06-05 12:47:01 +02:00
Hugo Locurcio
d56b9d5ebf Disable antialiasing on the DynamicFont outline as well when requested
This partially addresses
https://github.com/godotengine/godot-proposals/issues/943.

(cherry picked from commit 2919fc7317)
2020-06-04 12:09:40 +02:00
Maganty Rushyendra
25af738762 Expose get_char_size() from Font instead of BitmapFont
`get_char_size()` is a public virtual function defined in the `Font`
class. Implementations exist for both `BitmapFont` and `Dynamic Font`.
However, it was only exposed to the GDScript API through the Bitmap
Font, and not for Dynamic Font.

This commit exposes the function through `Font` instead.

Fixes #23967

(cherry picked from commit a4413710f9)
2020-06-04 12:09:39 +02:00
Fredia Huya-Kouadio
4db8ade565 Remove the custom_defines section from the editor 2020-05-18 01:07:38 -07:00
Marcel Admiraal
4c9ccffad2 Prevent CapsuleShape2D height from being less than zero.
(cherry picked from commit 68eaaa6d6b)
2020-05-11 11:01:13 +02:00
Yuri Roubinsky
1f89c3bfeb (3.2) Some fixes for canvas item visual shader inputs 2020-05-05 12:21:25 +03:00
Pedro J. Estébanez
d8be5a9986 Add MODULATE builtin to canvas item shaders 2020-05-04 00:10:24 +02:00
Revan Ji
6a7d50403a Add set_frame, pause, and oneshot to AnimatedTexture
Add API documentation for said changes.

(cherry picked from commit f5029e18ca)
2020-05-01 11:00:10 +02:00
Bojidar Marinov
4b58d453d4 Expose the cell_size affecting VisibilityNotifier2D precision
Refs: #4803
(cherry picked from commit d49ff7aff7)
2020-05-01 10:56:58 +02:00
Rémi Verschelde
a9def52225
Merge pull request #38156 from Calinou/tweak-ssao-property-hints-3.2
Tweak SSAO property hints to allow setting more precise values (3.2)
2020-04-25 12:55:33 +02:00
Hugo Locurcio
464fe67e96
Tweak SSAO property hints to allow setting more precise values
This was requested by an user on Twitter who was working on a game with a very small-scale world.
2020-04-23 21:59:53 +02:00
PouleyKetchoupp
18c5ef5473 Add style for highlighted Slider grab area
(cherry picked from commit 4c8173af0f)
2020-04-16 12:47:17 +02:00
Rémi Verschelde
acd14e645a Remove unused classes and stray headers
Found by reviewing headers with 1 or less matching includes:
```
find -name thirdparty -prune -o -name "*.h" -exec basename {} \; | sort -u > headers
for header in $(cat headers); do echo "$header: "; rg -l "#include \"(.*/)?$header\"" | wc -l; done > list-includes
```

(cherry picked from commit 9d24541597)
2020-03-25 11:38:54 +01:00
Dominik 'dreamsComeTrue' Jasiński
e97d9c7bfc Remove unreferenced & undocumented class Space2D
(cherry picked from commit f530c38174)
2020-03-25 11:38:54 +01:00
Ev1lbl0w
b9b53966a3 Fix divison by zero issue
(cherry picked from commit 380b8039ec)
2020-03-25 11:38:53 +01:00
lupoDharkael
536c2fc0c0 Loop over faces in create_trimesh_shape()
(cherry picked from commit ee0262977e)
2020-03-25 11:38:53 +01:00
fhuya
30d738eda7 Add support for opengl external textures as defined by https://www.khronos.org/registry/OpenGL/extensions/OES/OES_EGL_image_external.txt 2020-03-05 13:09:49 -08:00
Juan Linietsky
03c8e12d54 Add support for named binds in Skin.
Helps better reutilization of skeletons from Maya exported files.

(cherry picked from commit 9a34f39d32)
2020-03-04 12:40:14 +01:00
Hugo Locurcio
b80190721b Allow using MeshLibrary.get_item_preview() in non-editor builds again
This closes #36268.

(cherry picked from commit 64fac9dd5d)
2020-03-04 12:40:13 +01:00
Yuri Roubinsky
e10b0c9eaa Added missing '\n' in visual shader expression node code generation
(cherry picked from commit 6e1187ad2f)
2020-02-14 16:13:44 +01:00
Yuri Roubinsky
1930c79364 Added missing '\n' in visual shader fresnel node code generation
(cherry picked from commit c8639a0013)
2020-02-14 16:13:44 +01:00
Yuri Roubinsky
5579eb823b Few extra formatting fixes for visual shader node generation
For 'If' and 'Switch' nodes

(cherry picked from commit b0f166f0c5)
2020-02-14 16:13:44 +01:00
Yuri Roubinsky
1f4885fe49 Added missing '\n' in visual shader custom node code generation
(cherry picked from commit 9d8b59e86a)
2020-02-14 16:13:44 +01:00
Yuri Roubinsky
fb56d93163 Better visual shader code generation
(cherry picked from commit bfec48abf1)
2020-02-14 16:13:44 +01:00
zxcvdev
6380943831 Fix GPU Particles
The special case atan(y,0) of the built-in shader function atan(y,x)
returns different results on different devices. So this commit will add
checks when the atan(y,x) function is used in ParticlesMaterial to set
the direction of GPU Particles to make sure the desired values are
returned (act as atan2(y,x)).

(cherry picked from commit 3580ad6005)
2020-02-14 16:04:07 +01:00
Haoyu Qiu
7cfcf1824b Completes doc for ItemList and Tree
(cherry picked from commit 7a41c44be2)
2020-02-12 15:05:02 +01:00
Michael Alexsander
a779774c86 Hide TileSet's properties from the inspector
(cherry picked from commit 5452028d55)
2020-02-06 13:02:07 +01:00
Yuri Roubinsky
72f7e4efe0 Fix canvas_item light alpha output in visual shaders
(cherry picked from commit b822da00f8)
2020-02-06 13:02:07 +01:00
Rémi Verschelde
8d00dcb421
Merge pull request #35670 from clayjohn/material-flag-cache
Add an extra bit to material flag cache
2020-01-28 20:59:49 +01:00
clayjohn
ec4d606e07 Add an extra bit to material flag cache 2020-01-28 10:38:54 -08:00
Rémi Verschelde
50830632c9
Merge pull request #35620 from TrevorPeyton/bind-autotile-center
Added binding for Autotile Center
2020-01-28 10:50:09 +01:00
Yuri Roubinsky
9705d5587e Hide "control" methods from VisualShaderNodeGroupBase 2020-01-28 10:24:59 +03:00
Yuri Roubinsky
274f1d8610 Hide "editable" property from VisualShaderNodeGroupBase public interface 2020-01-28 09:43:07 +03:00
Yuri Roubinsky
796484d761 Added missing property "size" to VisualShaderNodeGroupBase 2020-01-27 19:18:48 +03:00
Yuri Roubinsky
3479cf4b42 Removed unused method "build" from VisualShaderNodeExpression 2020-01-27 18:24:39 +03:00
TrevorPeyton
ae4fee52d5
Added binding for Autotile Center 2020-01-27 09:07:32 -05:00
Yuri Roubinsky
4912d4c6e4 Added missed bracket to VisualShaderNodeCubeMap 2020-01-27 13:09:15 +03:00
Yuri Roubinsky
4445f892d2 Fix VisualShaderNodeCubeMap generation 2020-01-27 12:17:06 +03:00
Rémi Verschelde
bb6c0d3e8b doc: Complete documentation for VideoStreams
Also quick clean up of the matching C++ files.
2020-01-26 11:29:07 +01:00
Yuri Roubinsky
ce43c92208 Docs for some nodes in visual shader
Fix typo in `VisualShaderNodeCompare.ComparisonType` name.
2020-01-23 22:39:00 +01:00
Michael Alexsander
151f33111b Fix TileSet shape data not updating when being set via code 2020-01-23 11:48:38 -03:00
Yuri Roubinsky
86cdccebe6 Hide "default_input_values" property in VisualShaderNode. 2020-01-23 11:18:51 +03:00
Rémi Verschelde
5127afa812
Merge pull request #35413 from akien-mga/if-0-means-couperet
Remove unused #if 0'ed code
2020-01-21 22:27:50 +01:00
Rémi Verschelde
4faaf6089a Remove unused #if 0'ed code 2020-01-21 21:41:54 +01:00
Rémi Verschelde
0be64da008 Allow greater values for DynamicFont size property
See https://github.com/godotengine/godot/issues/22581#issuecomment-576836691.

Not using `or_greater` as there *is* a max size value that the current
implementation can accept. If using e.g. size 6000 with
FiraSans-Regular.ttf, errors are printed due to failing asserts on a
glyph size that should be within 4096x4096 px.
2020-01-21 20:59:16 +01:00
Yuri Roubinsky
a8ab4e3357 Forbid recursive connections in visual shader 2020-01-20 18:15:45 +03:00
Haoyu Qiu
0eab15a5a9 Destroys FreeType library on load error 2020-01-20 11:00:51 +08:00
Rémi Verschelde
1de633205f Validate input in (CPU)Particles set_emission_shape()
Fixes #29777.

Co-authored-by: Cameron Reikes <cameronreikes@gmail.com>
2020-01-16 11:08:51 +01:00
Rémi Verschelde
40f0649e5b Fix typos with codespell
Using codespell 1.16.0.

See ab3bccdb78 for procedure.
2020-01-15 00:49:52 +01:00
Yuri Roubinsky
ed22a4c454
Merge pull request #33817 from Chaosus/vs_fresnel
Make Fresnel node in visual shaders to use default NORMAL/VIEW
2020-01-08 12:15:46 +03:00
Michael Alexsander
8b5992f665 Make possible to edit the GraphEdit's selection rect colors 2020-01-07 23:20:48 -03:00
Haoyu Qiu
3df9d187a3 Fixes crash when using Mesh::create_outline and Mesh::create_convex_shape
Adds a size check to the array returned by `surface_get_arrays`.

During debugging, `create_outline` also crashes when the indices size is
one (not a multiple of three). For now, just reports the error and fail
the function.
2020-01-07 16:15:14 +08:00
Haoyu Qiu
d43ad46e42 Fixes import of models as PackedScene 2020-01-07 07:21:17 +08:00
Rémi Verschelde
24281cd9c9
Merge pull request #34865 from volzhs/oversampling-emoji
Update size and position for colored font with oversampling
2020-01-06 18:32:24 +01:00
volzhs
e03ac8c618 Update size and position for colored font with oversampling 2020-01-07 02:15:23 +09:00
Rémi Verschelde
ce75a2f33d
Merge pull request #33987 from nekomatata/own-world-environment
Viewport environment is updated properly when set to own world
2020-01-06 15:26:52 +01:00
Rémi Verschelde
f5d1177fcb
Merge pull request #34303 from Chaosus/fix_texture_crash
Fixed crash if passing invalid image ref to TextureLayered
2020-01-06 14:21:20 +01:00
Rémi Verschelde
8aea5decc6
Merge pull request #34020 from gytsen/unify-pack-version
PCK: Set VERSION_PATCH in header, factor out header magic
2020-01-06 14:04:55 +01:00
Rémi Verschelde
080e6e48ad
Merge pull request #34829 from timothyqiu/checks-bundle
Fixes crash for bad property of PackedScene
2020-01-06 13:43:38 +01:00
Joost Heitbrink
dc61323b2c PCK: Set VERSION_PATCH in header, factor out header magic
Unify pack file version and magic to avoid hardcoded literals.

`version.py` now always includes `patch` even for the first release in
a new stable branch (e.g. 3.2). The public name stays without the patch
number, but `Engine.get_version_info()` already included `patch == 0`,
and we can remove some extra handling of undefined `VERSION_PATCH` this
way.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-01-06 13:13:17 +01:00
PouleyKetchoupp
a7a025531b Fixed StyleBoxFlat antialiasing with aa size of 1
Also made aa size consistent when computing uv coordinates and fixed a warning about aa_border_width not initialized in some cases.

fixes #34830
2020-01-05 10:54:24 +01:00
Haoyu Qiu
4b660a87d8 Fixes crash for bad property of PackedScene 2020-01-05 11:13:29 +08:00
Hugo Locurcio
ac3087eb4b
Don't connect ShaderMaterial's changed signal when not in the editor
This closes #34741.
2020-01-02 17:20:54 +01:00
Rémi Verschelde
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Michael Alexsander
fd2c181a35 Revert "Merge pull request #34315 from YeldhamDev/editor_theme_optionbutton_arrow"
This reverts commit 0da0eec6cc, reversing
changes made to ec97535ea3.
2019-12-28 14:16:51 -03:00
Rémi Verschelde
0df1122acc
Merge pull request #34488 from nekomatata/style_box_flat_aa
Fixed StyleBoxFlat border size with aa on
2019-12-22 12:31:19 +01:00
PouleyKetchoupp
6ffbd36e3d Fixed StyleBoxFlat border size with aa on
The different Rect used to draw rings were wrongly calculated when anti-aliasing was enabled. Also getting rid of some overlapping glitches when using transparent colors for the filling or borders.

Fixes #34104
2019-12-20 13:29:43 +01:00
Haoyu Qiu
e7e095da3f Encodes property names properly in project.godot 2019-12-20 10:42:08 +08:00
Rémi Verschelde
389b7939bf
Merge pull request #34356 from Calinou/styleboxflat-lower-max-corner-detail
Lower the maximum StyleBoxFlat corner detail to 20
2019-12-15 11:41:00 +01:00
Hugo Locurcio
324e02596f
Lower the maximum StyleBoxFlat corner detail to 20
This value should be sufficient even for very large corner radii.

This closes #34354.
2019-12-14 23:35:01 +01:00
Michael Alexsander
af67e97445 Remove unused theme elements in H/VSlider 2019-12-13 21:17:51 -03:00
Rémi Verschelde
1cd736951a
Merge pull request #34189 from aaronfranke/mesh-aabb
Expose Mesh get_aabb
2019-12-13 09:14:16 +01:00
Yuri Roubinsky
f3ea2a0267 Fixed crash if passing invalid image ref to TextureLayered 2019-12-12 14:15:39 +03:00
Yuri Roubinsky
57441ab2c6 Added missed enum constant VisualShaderNodeTexture::SOURCE_PORT 2019-12-12 12:05:54 +03:00
Aaron Franke
a139104646
Expose Mesh get_aabb 2019-12-11 08:25:36 -05:00
Rémi Verschelde
30cf60bb89
Merge pull request #34259 from timothyqiu/validate-texture-32982
Fixes crash after set_piece_texture with invalid texture
2019-12-11 08:41:29 +01:00
Rémi Verschelde
ea865d0e7e
Merge pull request #34241 from timothyqiu/sync-fallbacks-size-32701
Fixes crash when using DynamicFont::set_font_data
2019-12-11 08:34:21 +01:00
Rémi Verschelde
74381c380b
Merge pull request #34240 from timothyqiu/invalid-shader-io-29985
Fixes crash when shader inputs/outputs is invalid string
2019-12-11 08:33:54 +01:00
Haoyu Qiu
5586103a94 Validates texture in set_piece_texture 2019-12-11 11:24:42 +08:00
Haoyu Qiu
5deb6497a1 Fixes crash when using DynamicFont::set_font_data 2019-12-10 21:26:42 +08:00
Haoyu Qiu
024c25426b Fixes crash when shader inputs/outputs is invalid string 2019-12-10 17:04:18 +08:00