Commit graph

6178 commits

Author SHA1 Message Date
JFonS 112b416056 Implement new CPU lightmapper
Completely re-write the lightmap generation code:
- Follow the general lightmapper code structure from 4.0.
- Use proper path tracing to compute the global illumination.
- Use atlassing to merge all lightmaps into a single texture (done by @RandomShaper)
- Use OpenImageDenoiser to improve the generated lightmaps.
- Take into account alpha transparency in material textures.
- Allow baking environment lighting.
- Add bicubic lightmap filtering.

There is some minor compatibility breakage in some properties and methods
in BakedLightmap, but lightmaps generated in previous engine versions
should work fine out of the box.

The scene importer has been changed to generate `.unwrap_cache` files
next to the imported scene files. These files *SHOULD* be added to any
version control system as they guarantee there won't be differences when
re-importing the scene from other OSes or engine versions.

This work started as a Google Summer of Code project; Was later funded by IMVU for a good amount of progress;
Was then finished and polished by me on my free time.

Co-authored-by: Pedro J. Estébanez <pedrojrulez@gmail.com>
2021-01-14 18:05:56 +01:00
kobewi 8386aa4601 Fix wrong signal in EditorPropertyColor 2021-01-14 14:55:08 +01:00
Michael Alexsander 975a6194e7
Fix script list only showing their names regardless of display option
(cherry picked from commit 4194447a21)
2021-01-13 16:17:10 +01:00
Filip 12a7ff5ad2
Add all AutoLoad resources when exporting the project
(cherry picked from commit 4383c5026a)
2021-01-13 16:17:09 +01:00
kobewi 3873a1331b
Emit changed signal from Color Picker when changed
(cherry picked from commit a00ac12ae9)
2021-01-13 16:17:09 +01:00
Hugo Locurcio 952a089551
Don't allow adding Objects to the project settings
Godot doesn't support serializing objects.

This closes #33667.

(cherry picked from commit 7b84f4fc31)
2021-01-13 16:17:08 +01:00
PouleyKetchoupp dad3f27e9f
Update String property field only when text has changed
Avoids resetting the cursor position when the inspector updates while
editing a string property.

Fixes #42488

(cherry picked from commit c064378f95)
2021-01-13 16:17:07 +01:00
Eric M db3e18b9c6
Made save dialog open immediately when running unsaved scene.
Previously there was an unneeded confirmation dialog.

(cherry picked from commit a54110ba60)
2021-01-13 16:17:07 +01:00
jeffuntildeath 64cbff7e7d
Snap To Floor improperly offsets node
fix for issue #44282

AABB for collision geometry was being calculated based on parent nodes transform without consideration for collision geometries translation.
Also hopefully clarified logic for selecting starting point for ray cast

(cherry picked from commit 4f171afecc)
2021-01-13 16:17:07 +01:00
Rémi Verschelde 49646383f1
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆

(cherry picked from commit b5334d14f7)
2021-01-13 16:17:06 +01:00
Rémi Verschelde 188609e5ab
CI: Update to clang-format 11 and apply ternary operator changes
(cherry picked from commit af878716f2)
2021-01-13 16:14:35 +01:00
Andrii Doroshenko (Xrayez) acd9abe507 Add AspectRatioContainer class
Backported from ba68383706.

Co-authored-by: Ugis Brekis <ugis.brekis@productmadness.com>
2021-01-12 16:25:26 +02:00
Leleat 5bda8fae38
creater user-dir, if non-existant and pressing 'Open Project Data Folder'
(cherry picked from commit 8cf9d09d61)
2021-01-08 10:26:30 +01:00
Rémi Verschelde 7bfb8446d3
Merge pull request #44970 from Calinou/doc-particles-visibility
Document the requirement to update GPU particle visibility
2021-01-07 14:26:18 +01:00
Pedro J. Estébanez 2997a3aa23 Fix cases of resources destroyed too early 2021-01-06 20:25:05 +01:00
Hugo Locurcio cec16357ef
Document the requirement to update GPU particle visibility
This also updates some option names in the editor for consistency
and accuracy.

See #44955.
2021-01-06 19:17:57 +01:00
Rémi Verschelde 9d916b8540
glTF: Fix loading external images as buffer
We should first attempt loading as external files, thus creating a dependency.
Loading as a buffer should only be used as fallback to support manually loading
as PNG or JPEG depending on the defined mimeType.

Fixes #44309, was a regression from #42504.

(cherry picked from commit e268a8e523)
2021-01-05 21:33:34 +01:00
kobewi c588ba0b6a
Properly edit the instanced node in the inspector
(cherry picked from commit f5d51288b8)
2021-01-05 21:33:33 +01:00
kobewi 3785b091e4
Commit CanvasItem state only if it changed
(cherry picked from commit 036f6a3fa8)
2021-01-05 21:33:33 +01:00
kobewi f78937a394
Don't emit changed signal on Color Picker close
(cherry picked from commit a22b2f86e7)
2021-01-05 21:33:33 +01:00
Rémi Verschelde 58a1ed63bd
Revert "Fixed EditorPropertyText change signal emission."
This reverts commit 9a3cd08122.

This caused a regression: #44854.
2021-01-05 21:33:32 +01:00
Danil Alexeev 3002f57e1b
Fix odd newline in EditorLog::add_message()
(cherry picked from commit a8dce9c377)
2021-01-05 21:33:32 +01:00
volzhs bd3c2e96c3
Enhance editor file dialog
1. show valid directory path when opening editor file dialog
2. keep file name when changing path by entering path
3. add first extension in filter automatically if not given
4. remove directory in recent list if it's not valid anymore

(cherry picked from commit 1f4b1e1488)
2021-01-05 20:49:00 +01:00
Rémi Verschelde caa7c6a930
i18n: Sync translations with Weblate 2020-12-29 16:14:22 +01:00
Pedro J. Estébanez d84a303df4
Fix instantiation of resource as property value
(cherry picked from commit d2d29c42f2)
2020-12-29 16:02:03 +01:00
Hugo Locurcio 1062bedaaa
Add an editor setting for the 3D selection box color
A restart is required to apply the setting change.

(cherry picked from commit 8221037be0)
2020-12-29 16:02:03 +01:00
Michael Alexsander 58b2d669a0
Fix filename disambiguation on scripts in certain occasions
(cherry picked from commit ed488b72a6)
2020-12-29 16:02:01 +01:00
Hugo Locurcio d0abf5b0f5
Tweak the editor CheckButton "presed" appearance to be more recognizable
The blue accent color is now used, which matches the default editor
accent color.

It doesn't change to match the currently configured accent color
automatically, but doing so would require modifying the CheckButton
class a lot for little benefit.

(cherry picked from commit 114c1a78d9)
2020-12-29 16:02:01 +01:00
Michael Alexsander 01e1369ab7
Disable "Commit" button in VCS plugin if there's no commit message
(cherry picked from commit 221738fb81)
2020-12-29 16:02:01 +01:00
janglee 23280293d4
Removed default commit message
(cherry picked from commit 718227df6b)
2020-12-29 16:02:01 +01:00
Hugo Locurcio 3addea0057
Move the brightness factor for highlighted 3D gizmos to a variable
See
8522ac7711 (r45230326).

(cherry picked from commit 507e9b12a4)
2020-12-29 16:02:00 +01:00
Marcus Brummer 9248ee39ca
Changed the rotation gizmo handle to use the active axis color
(cherry picked from commit ec97962261)
2020-12-29 16:02:00 +01:00
Hugo Locurcio 2753cc5264
Increase the default 3D manipulator gizmo opacity for better visibility
- Brighten gizmos when highlighted to make the difference between a
  non-highlighted and a highlighted gizmo more visible.
- Tweak the manipulator gizmo size property hint.

(cherry picked from commit 8522ac7711)
2020-12-29 16:01:59 +01:00
Andrea Catania 9a3cd08122
Fixed EditorPropertyText change signal emission.
(cherry picked from commit ed1f208ec4)
2020-12-29 16:01:59 +01:00
Yuri Sizov 4d66d2aebd
Display the number of results for global search
(cherry picked from commit 7c0d682951)
2020-12-29 16:01:59 +01:00
Rémi Verschelde 688d422554
PVRTC: Move compress func to modules/pvr, drop obsolete PVRTexTool code
The code we had for PVRTexTool doesn't work as it's not compatible with current
PVRTexTool CLI options, and likely hasn't been for years.

Instead, we have our own vendored pvrtccompressor thirdparty library which all
users have thus de-facto been using. This commit moves the compress code to
`modules/pvr` where it belongs.

There's no proper compress function for PVRTC 2-bit format, that's a bug that
will need to be fixed (currently it's compressed as 4-bit format even if you
use Image::FORMAT_PVRTC2).

Fixes #28669.

(cherry picked from commit 1a31274855)
2020-12-29 15:12:06 +01:00
Yuri Roubinsky 8f5bdf6a63
Changes 'always show grid' hotkey to prevent conflict with 'pan mode'
(cherry picked from commit 1c546fdaea)
2020-12-29 13:49:59 +01:00
Adam Scott d96fdcd45e Add missing "normalized" accessor property to glTF document for the 3.2 branch 2020-12-28 03:17:37 -05:00
Yuri Sizov 816fef21f9 Add a minimap to the GraphEdit 2020-12-18 01:31:17 +03:00
Rémi Verschelde 36662f3b4d
Don't force GLES2 in Project Manager, causes issues on macOS.
This partially reverts #44041.

Also fix the bogus label about lack of GLES3 support being always shown...
It was meant to be behind a check but I had left it out while testing, and
forgot to put it back.
2020-12-11 22:32:41 +01:00
Rémi Verschelde 3e20a98503
i18n: Sync translations with Weblate 2020-12-10 14:12:35 +01:00
Rémi Verschelde c509ba9ff7
FileSystemDock: List conflicting files on move
Fixes #24167.

(cherry picked from commit 7dc41ff310)
2020-12-10 13:14:30 +01:00
Nick Swoboda e08af90c90
Fix scene being modified when arrows are pressed with no node selected
(cherry picked from commit 66827337fd)
2020-12-10 13:13:18 +01:00
jeffuntildeath de7b5006cc
fix for snap to floor editor crash bug
fix for issue #44231: snap_selected_nodes_to_floor() results in an editor
crash when a child collisionshape has invalid shape object

(cherry picked from commit 52f6e0b5ad)
2020-12-10 13:12:39 +01:00
Michael Alexsander 979e5b36da
Add icon for 'AudioStreamMP3' resource
(cherry picked from commit 49ae1cba0c)
2020-12-10 13:10:06 +01:00
Marcus Brummer 8ad61f6669
Asset Library: Scroll up the ScrollContainer after page load
(cherry picked from commit 0e4f2ca860)
2020-12-10 13:09:02 +01:00
Michael Alexsander 32da9dc1e9
Add "font_color_separator" theme property to 'PopupMenu'
(cherry picked from commit 383e8919e0)
2020-12-10 13:06:15 +01:00
Aaron Franke 4267f40e88
Fix trying to set grid visibility on an invalid instance
(cherry picked from commit 8c1d94ebae)
2020-12-09 13:04:07 +01:00
Nick Swoboda 956477f4a2
Change minimum snap step of Tile Set to 1
(cherry picked from commit 70c946f82d)
2020-12-09 11:22:05 +01:00
Eric M 0f279794c5
Made keyboard shortcuts for FileSystemDock visible in popup
(cherry picked from commit ef5c720b73)
2020-12-09 11:22:04 +01:00