Commit Graph

6372 Commits

Author SHA1 Message Date
Rémi Verschelde a800048071
Merge pull request #38109 from nekomatata/mesh-instance-active-material
Fix get_active_material when a material is directly set on the mesh
2020-04-23 12:42:11 +02:00
JFonS f7dadc4796 Add caching the lightmap unwrapping on import
This commit adds caching to the lightmap mesh unwraps generated on
import. This speeds up re-imports of meshes that haven't changed and
also makes sure that the unwraps are consistent across imports.

The unwrapping process is not deterministic, so one could end up with
a different mapping every time the scene was imported, breaking any
previously baked lightmaps. The changes in this commit prevent that
from happening.
2020-04-22 15:34:00 +02:00
PouleyKetchoupp 72ee09082c Fix get_active_material when a material is directly set on the mesh
Makes MeshInstance3D::get_active_material consistent with the logic
in the rendering system.

Fixes #38108
2020-04-22 14:35:25 +02:00
Rémi Verschelde f989a43135
Merge pull request #38086 from volzhs/seek-animation-finished
Emit signal when animation ends by seek
2020-04-22 10:07:29 +02:00
volzhs bf1cc116e1 Emit signal when animation ends by seek 2020-04-22 00:45:44 +09:00
Juan Linietsky f8ef38efed Add proper type to most public API uses of Array 2020-04-21 12:16:45 -03:00
Juan Linietsky 5d4dc2d45c Add ability to bind typed arrays to script API
Note: Only replaced 2 instances to test, Node.get_children and TileMap.get_used_cells
Note: Will do a mass replace on later PRs of whathever I can find, but probably need
a tool to grep through doc.
Warning: Mono will break, needs to be fixed (and so do TypeScript and NativeScript, need to ask respective maintainers)
2020-04-21 10:15:40 +02:00
Juan Linietsky ae09b55a19 Exposed RenderingDevice to script API
Also added an easier way to load native GLSL shaders.

Extras:

Had to fix no-cache for subresources in resource loader, it was not properly working, making shaders not properly reload.

Note:

The precommit hooks are broken because they don't seem to support enums from one class being used in another.
Feel free to fix this after merging this PR.
2020-04-20 21:21:58 -03:00
Rémi Verschelde 94f0c62789 Fix more GCC -Wmaybe-uninitialized warnings
Fixes #38005.
2020-04-20 22:34:20 +02:00
Rémi Verschelde 9cf48b3e99
Merge pull request #38039 from akien-mga/docdata-skip-unexposed
DocData: Skip unexposed classes
2020-04-20 15:21:49 +02:00
Rémi Verschelde 0ef8bcac4d DocData: Skip unexposed classes
Properly expose classes that we actually want accessible.
2020-04-20 12:51:10 +02:00
Rémi Verschelde b7b46093d8 doc: Sync classref with current source
Add missing enum bindings.
2020-04-20 11:48:00 +02:00
Rémi Verschelde 088c2a0870
Merge pull request #37947 from clayjohn/DOCS-rendering-update
Update many docs with recent rendering changes
2020-04-20 11:16:12 +02:00
qarmin 559bc3ca87 Change non-existent World to World3D 2020-04-18 11:00:51 +02:00
clayjohn b50d954cb0 Update many docs with recent rendering changes 2020-04-17 09:47:59 -07:00
Rémi Verschelde 17304f1aae
Merge pull request #37949 from reduz/implement-global-shader-uniforms
Implement global and per instance shader uniforms.
2020-04-17 18:36:06 +02:00
Rémi Verschelde cfda0e3770
Merge pull request #37953 from clayjohn/VULKAN-sky-sun-size
Add light size to Sky Shaders
2020-04-17 18:35:45 +02:00
clayjohn 7cd2ff309c Add light size to Sky Shaders 2020-04-17 09:32:24 -07:00
Rémi Verschelde 077dbdf246
Merge pull request #37964 from AndreaCatania/AndreaCatania-patch-2
Activate Physics Process in SpringArm3D.
2020-04-17 17:38:22 +02:00
Juan Linietsky 0e1c66d9fc Implement global and per instance shader uniforms.
Adds two keywords to shader language for uniforms:
-'global'
-'instance'

This allows them to reference values outside the material.
2020-04-17 12:35:41 -03:00
Andrea Catania 152303bf51
Activate Physics Process in SpringArm3D. 2020-04-17 16:22:24 +02:00
Rémi Verschelde 51d86c9112
Merge pull request #37047 from YeldhamDev/tabcontainer_doc_control_fix
Fix incorrect TabContainer documentation for 'get_tab_control()'
2020-04-16 12:36:42 +02:00
Rémi Verschelde 3c1218a39a
Merge pull request #37914 from clayjohn/VULKAN-decal-fix
Fix texture check in decal setup
2020-04-15 21:26:08 +02:00
Rémi Verschelde 9c80674aee
Merge pull request #37911 from madmiraal/fix-32876
Run SpringArm3D's process within physics.
2020-04-15 21:21:09 +02:00
clayjohn 61d86190e0 Fix texture check in decal setup 2020-04-15 12:06:02 -07:00
Marcel Admiraal 188bb6f867 Run SpringArm3D's process within physics. 2020-04-15 17:48:46 +01:00
asheraryam 67c98cb438 Add "node_unselected" signal for GraphEdit 2020-04-15 18:06:21 +03:00
Rémi Verschelde 5b4ea6529a
Merge pull request #37896 from NutmegStudio/decal-enum-constant-fix
Change DecalTexture bind from BIND_CONSTANT to BIND_ENUM_CONSTANT
2020-04-15 12:02:19 +02:00
NutmegStudio fa6d9e0c01 Change DecalTexture bind from BIND_CONSTANT to BIND_ENUM_CONSTANT 2020-04-15 15:00:48 +07:00
NutmegStudio df863cf7ee Fix typo in light3d (Texture -> Texture2D) 2020-04-15 14:09:48 +07:00
Rémi Verschelde 9db525941f
Merge pull request #37887 from reduz/implement-projectors
Add support for projectors in spot and omni lights.
2020-04-14 23:03:32 +02:00
Juan Linietsky 6f293ed795 Add support for projectors in spot and omni lights. 2020-04-14 17:05:45 -03:00
Rémi Verschelde 59a8af2106
Merge pull request #37316 from nekomatata/physical-bone-settings
Add PhysicalBone rotation, damping, axis lock & can sleep
2020-04-14 18:33:43 +02:00
Rémi Verschelde 5e5103f460
Merge pull request #37861 from reduz/implement-decals
Implement decals
2020-04-14 17:13:20 +02:00
Juan Linietsky 5944eb6e7f Implement decals
Also implemented decal atlas, so projectors and other stuff can be added.
Sidenote: Had to make RID hashable, so some unrelated includes changed
in order to include it in hashfuncs.h
2020-04-14 11:13:34 -03:00
PouleyKetchoupp 5c1c03f29a Add PhysicalBone rotation, damping, axis lock & can sleep 2020-04-14 11:55:46 +02:00
janglee 5e64c146bc Fixed 0 width issue of rich text label
Fixes #37746
2020-04-13 14:59:38 +05:30
MickeMakaron 2edb59ec88 Handle huge offset values in Path2D and Path3D set_offset 2020-04-13 07:42:47 +02:00
Rémi Verschelde 06748a2b5f
Merge pull request #37749 from clayjohn/Vulkan-improved-ss
Add vogel filter and settings to soft shadows
2020-04-13 00:39:37 +02:00
Juan Linietsky a57dc398db Implement MSAA 2020-04-12 15:33:57 -03:00
Juan Linietsky 16ae2cc1bf Add screen space AA option, with FXAA implementation. 2020-04-12 10:57:18 -03:00
clayjohn 621f6f09a8 Add proper quality settings to soft shadows 2020-04-10 23:09:17 -07:00
Zak Grumbles a8de034f78 Fix OptionButton docs godotengine#36803
* item_selected and item_focused docs incorrectly had 'id' as the parameter. Changed to
'index'.
* Fix parameter name in ADD_SIGNAL callin code.
2020-04-10 20:35:40 -05:00
Rémi Verschelde 5566c5eb8d
Merge pull request #37517 from nekomatata/slider-grab-area-highlight
Add style for highlighted Slider grab area
2020-04-10 12:08:02 +02:00
Rémi Verschelde 9ab08f06c8
Merge pull request #37688 from theludovyc/dev
Remove unused ofs variable in Tree::_draw
2020-04-10 11:44:11 +02:00
Rémi Verschelde c2f0d58c36
Merge pull request #37722 from reduz/implement-softshadows
Support light size and soft shadows
2020-04-10 10:24:57 +02:00
Juan Linietsky 6a730ffeab Support light size and soft shadows 2020-04-09 15:11:15 -03:00
Bastiaan Olij afc8c6391c Renaming all ARVR nodes to XR 2020-04-09 15:33:01 +10:00
theludovyc 875c994109 Remove unused ofs variable 2020-04-08 20:00:43 +02:00
Juan Linietsky 26ecd924cc
Merge pull request #37678 from reduz/refactor-shadowmapping
Refactored shadowmapping.
2020-04-08 13:59:10 -03:00
Juan Linietsky 4ffc0d6b3f Refactored shadowmapping.
- Made shadow bias size independent, so it will remain when changing light or camera size.
- Implemented normal offset bias, which greatly enhances quality.
- Added transmission to subsurface scattering
- Reimplemented shadow filter modes

Closes #17260
2020-04-08 11:19:43 -03:00
theludovyc 7e2de76236 erase : if ( i < offset ) { continue;} in for loops 2020-04-08 11:14:46 +02:00
janglee 9c2c2ab2b0 Fixed underlines and striketrough not respecting visible character 2020-04-07 19:04:13 +05:30
Rémi Verschelde 026ec44b02
Merge pull request #37551 from KoBeWi/found_your_screen
Add the missing argument in files_dropped signal
2020-04-07 09:18:38 +02:00
Rémi Verschelde 3586f21519
Merge pull request #37591 from Anutrix/remove_reduntant_class
Removed redundant class LineEditFileChooser from file_dialog
2020-04-07 09:14:53 +02:00
Rémi Verschelde 2c6affe084
Merge pull request #37642 from dreamsComeTrue/rich-text-strike-fix
Calculate strike-through y-position correctly (RichTexteLabel)
2020-04-07 09:14:29 +02:00
Rémi Verschelde 5d82fa74d9
Merge pull request #37615 from guilhermefelipecgs/fix_37526
Fix TextureRect::flip_* when used with atlas texture
2020-04-07 09:10:44 +02:00
Dominik 'dreamsComeTrue' Jasiński 06a79f260c Calculate strike-through position correctly
Fixes: #37637
2020-04-06 22:26:58 +02:00
Rémi Verschelde 0d4d96d4b0
Merge pull request #37639 from qarmin/no_more_leaks
Fixes leaks when running editor
2020-04-06 21:25:36 +02:00
qarmin 5cbab81564 Fixes leaks when running editor 2020-04-06 20:07:08 +02:00
Guilherme Felipe fb2d2dd5d0 Fix TextureRect::flip_* when used with atlas texture
Fix #37526
2020-04-06 08:36:36 -03:00
Yuri Roubinsky e0a9879ce4
Merge pull request #37623 from Chaosus/vs_fix_keyword_name
Adds warning to the uniform name in visual shader if its equal to keyword
2020-04-06 14:15:20 +03:00
Yuri Roubinsky 8dfe6716ec Adds warning to the uniform name in visual shader if its equal to keyword 2020-04-06 12:29:50 +03:00
Rémi Verschelde 6b07c72d76
Merge pull request #37556 from KoBeWi/kill_get_index
Remove Node.get_position_in_parent()
2020-04-06 09:44:38 +02:00
Tomasz Chabora c1023157eb Remove Node.get_position_in_parent() 2020-04-06 01:19:20 +02:00
Rémi Verschelde de1d021574
Merge pull request #37397 from Eoin-ONeill-Yokai/Bug37081
Correction to RichTextLabel Tabulation (Bug 37081)
2020-04-05 10:07:47 +02:00
unknown 0fa7703565 Removed reduntant class LineEditFileChooser. 2020-04-05 02:50:32 +05:30
Rémi Verschelde da887714be
Merge pull request #37570 from reduz/implement-sss
Re-implement subsurface scattering.
2020-04-04 17:14:48 +02:00
Juan Linietsky c54f80d35c Re-implement subsurface scattering.
The size settings are more "just works", with default scale and depth scale
values that don't need much tweaking.

Additionally, a "skin" mode was added so skin looks better.
EDIT: Cleaned up SSR filter shader a bit.
2020-04-04 11:44:28 -03:00
unknown 4413c562d6 Fix file dialog not showing icons 2020-04-04 17:18:43 +05:30
unknown 7e4db6174d Remove redundant vbx variable in FileDialog 2020-04-04 14:58:57 +05:30
Michael Alexsander a9e43ac73c Re-expose a simplified version of the stretch properties in SubViewport 2020-04-03 14:11:22 -03:00
Tomasz Chabora 16cbfcf0de Add the missing argument in files_dropped signal 2020-04-03 17:33:53 +02:00
Rémi Verschelde 59d44ee872
Merge pull request #37505 from YeldhamDev/viewcont_rename
Rename ViewportContainer to SubViewportContainer
2020-04-03 15:53:35 +02:00
Rémi Verschelde b50387c8bf
Merge pull request #37521 from akien-mga/more-nullptr
Replace more occurrences of NULL with nullptr
2020-04-02 17:37:09 +02:00
Rémi Verschelde 6a38ce1b31
Merge pull request #37512 from reduz/implement-ssr
Re-Added screen space reflection.
2020-04-02 17:17:27 +02:00
Juan Linietsky 87c658b304 Re-Added screen space reflection. 2020-04-02 11:25:21 -03:00
PouleyKetchoupp 4c8173af0f Add style for highlighted Slider grab area 2020-04-02 15:05:46 +02:00
Rémi Verschelde ea7b497065 Replace more occurrences of NULL with nullptr 2020-04-02 14:56:01 +02:00
lupoDharkael 95a1400a2a Replace NULL with nullptr 2020-04-02 13:38:00 +02:00
Rémi Verschelde 5f11e15571
Merge pull request #37504 from qarmin/out_of_bound_cursor
Fix array out of bounds access caused by uninitialised variables
2020-04-02 13:07:55 +02:00
Michael Alexsander 0c6851ae53 Rename ViewportContainer to SubViewportContainer 2020-04-01 16:11:44 -03:00
Rafał Mikrut 359bebd8c0 Fix out of bound array access caused by unassigned variable 2020-04-01 19:29:35 +02:00
Rémi Verschelde 2e84b7b916
Merge pull request #37443 from Leleat/master
Fix PopupMenu's letter jumping on any InputEventKey (instead of just a press)
2020-04-01 16:51:10 +02:00
Rémi Verschelde 96e654335a
Merge pull request #37481 from ThakeeNathees/bind-method-typo
some typo in method binds fixed
2020-04-01 12:57:26 +02:00
Thakee Nathees cb53b1d88e some typo in method binds fixed 2020-04-01 14:01:18 +05:30
Rémi Verschelde a30bfe5176
Merge pull request #35765 from clayjohn/master
Add a method to retrieve active material from MeshInstance
2020-03-31 18:03:11 +02:00
Rémi Verschelde 3a996faeed
Merge pull request #37442 from YeldhamDev/subviewport_register
Register SubViewport class
2020-03-31 16:29:41 +02:00
Rémi Verschelde e5033d3952 doc: Sync classref with DisplayServer/Window changes 2020-03-31 11:56:58 +02:00
clayjohn 3362e81674 Add a method to retrieve active material from MeshInstance 2020-03-30 16:53:07 -07:00
Leleat 8a5660f3d1 fixed PopupMenus letterjumping on any InputEvent 2020-03-30 21:45:56 +02:00
Michael Alexsander 46a6751302 Register SubViewport class 2020-03-30 16:43:55 -03:00
Rémi Verschelde f3c74afd28
Merge pull request #37436 from akien-mga/doc-node-renames
doc: Update classref with node renames
2020-03-30 20:32:11 +02:00
Rémi Verschelde 6fed21c7cb
Merge pull request #37356 from akien-mga/scons-enable-werror
SCons: Treat all warnings as errors
2020-03-30 20:30:54 +02:00
Rémi Verschelde f097511b96 Fix another batch of -Wmaybe-uninitialized warnings
And simplify code in CSGShape.
2020-03-30 18:27:36 +02:00
Rémi Verschelde eaaee63b62 doc: Update classref with node renames
A few extra renames for classes which were missed in last week's PRs.
2020-03-30 18:23:02 +02:00
Juan Linietsky 89e1263117 Move glow upscale quality to a global setting, for consistency 2020-03-30 10:46:03 -03:00
Rémi Verschelde cd4e46ee65 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.
2020-03-30 09:05:53 +02:00
Eoin O'Neill 2000e110a9 Correction to RichTextLabel Tabulation
Correct backtrack assignment to prevent excessive tabulation. Worth
noting that tabulation is treated differently in RichTextLabel because
of custom user-asignable tab variable which creates problems with
dynamic fonts specifically.
2020-03-29 14:33:17 -07:00
Rémi Verschelde 3f7fa93179
Merge pull request #37362 from reduz/audioserver-memory-cleanup
Remove the audio memory allocator, use regular one instead.
2020-03-28 15:49:48 +01:00