Commit Graph

23 Commits

Author SHA1 Message Date
81f5f0d0de Add missing include. 2022-07-29 23:00:39 +02:00
lawnjelly
8726cccd56 Portals - Allow more logging to be disabled
Some logging messages were still being issued when portals/debug/logging was false. This could be annoying in games that stream in parts of levels and repeatedly call `rooms_convert()`.

This PR allows all but essential logging to be disabled.
2022-07-29 22:37:46 +02:00
lawnjelly
50d5be10f8 Portals - Fix invalid room hint when reconverting room graph
In situations where rooms are converted multiple times, the previous room hint ID can reference a room number that is out of range of the new number of rooms. This fixes the bug by checking the room hint ID is within range.
2022-07-29 22:37:29 +02:00
7ad35d62ea Ported: Physics Interpolation - fix stale interpolation data when unhiding
A previous optimization prevented instances being added to the interpolation lists when hidden to save processing. This caused a regression when unhiding nodes outside of the physics tick - the interpolated transforms would be stale until the next physics tick, causing a glitch.
This PR readds instances immediately to the interpolation lists when they are unhidden, preventing this glitch.
- lawnjelly

and

 Physics Interpolation - fix continuous updating in unmoving objects
Adds instances to the transform update list as well as the interpolate update list when unhiding them. This ensures that the system auto-detects non-moving objects, and removes them from the interpolate update list on the next tick, preventing unnecessary updates.
- lawnjelly

991687cc10
e4f252d94f

Properly this time.
2022-07-29 10:59:58 +02:00
bb5acfd745 Ported: [3.5] Update NavigationServer backport
Backports features and bugfixes from current Godot 4.0 to 3.5 and brings functions and codebase of both version largely in sync to make tutorials more compatible and future backports easier.
- smix8
8bd7c6188b
2022-07-28 22:34:28 +02:00
lawnjelly
739b0c0c3f Physics Interpolation - fix stale interpolation data when unhiding
A previous optimization prevented instances being added to the interpolation lists when hidden to save processing. This caused a regression when unhiding nodes outside of the physics tick - the interpolated transforms would be stale until the next physics tick, causing a glitch.

This PR readds instances immediately to the interpolation lists when they are unhidden, preventing this glitch.
2022-07-28 19:23:13 +02:00
lawnjelly
d6a677f878 Portals - force full check on adding moving object
Moving objects being added during instance_moving_create() were incorrectly not forcing a full check to find which room they were within. This could result in moving objects being re-added not correctly identifying their current room, and thus culling incorrectly. This PR forces a full check on calling instance_moving_create.
2022-07-28 11:39:14 +02:00
24eccc4281 Ported: Fix warnings found by Emscripten 3.1.10
Fix `-Wunused-but-set-variable`, `-Wunqualified-std-cast-call`, and
`-Wliteral-range` warnings.
- akien-mga
5e693b6d84
2022-07-27 18:39:35 +02:00
4781f146fb Ported: Physics Interpolation - optimize hidden nodes
In order to prevent glitches when unhiding nodes, set_transform() is still called to the VisualServer even for hidden nodes when the node is interpolated. This activates a lot of logic which is not necessary just to keep the previous transform updated.
This PR adds an early out which misses out on the unnecessary logic when instances are invisible.
- lawnjelly
ec9a17cfad
2022-07-27 17:43:40 +02:00
Rémi Verschelde
0fa5feae1a MultiMesh: Fix potential crash found by fuzzing
Fixes #58293.
2022-07-26 15:55:28 +02:00
clayjohn
ebe72ade75 Sort based on camera position when using perspective camera 2022-07-26 15:04:35 +02:00
Yuri Roubinsky
e77e34db8e Fix shader crashing when attempting to access length() at global space 2022-07-25 18:01:12 +02:00
32f148ac0c Mass replaced godot to pandemonium. 2022-03-23 20:46:05 +01:00
4d7df62b8e Clang format all files. 2022-03-18 19:00:13 +01:00
97661b2af5 Ran the c++ header script on the servers directory. 2022-03-17 23:18:28 +01:00
e85cef1745 Run godot's formatting script. 2022-03-16 09:02:48 +01:00
23c332974a Removed the arvr server. 2022-03-16 02:39:55 +01:00
938f72432e Removed the camera server. 2022-03-16 02:16:15 +01:00
a9fca142bc Fully removed Particles and Particles2D, as they were not implemented in gles2. 2022-03-16 00:06:53 +01:00
e111edf4f2 Cleaned up (hopefully all remaining) light baking things. 2022-03-15 21:07:14 +01:00
6fac6ba7f7 Removed lightmap captures, and also cleaned up almost all lightmap stuff. 2022-03-15 19:57:34 +01:00
03890f9e38 Removed GIProbes. 2022-03-15 19:03:03 +01:00
49f8e8c398 Added godot with all my currently used engine modules. 2022-03-15 13:29:32 +01:00