Commit Graph

14 Commits

Author SHA1 Message Date
Rémi Verschelde 1c1524a651
Bump version to 4.1-dev
Can't stop, won't stop, they said, huh?
2023-03-01 01:44:37 +01:00
Yuri Sizov 15a97a2e84
Merge pull request #56490 from Calinou/light-3d-high-attenuation-warning
Document caveats of high attenuation in OmniLight3D and SpotLight3D
2023-02-16 23:41:08 +03:00
Hugo Locurcio 42b7739321
Document unsupported features in Mobile and Compatibility rendering methods 2023-02-13 22:17:02 +01:00
Hugo Locurcio eb52b95997
Document visibility AABB caveats with decals, reflection probes and lights
This is required in rendering methods that don't use clustering
to check which meshes should be affected by decals, reflection probes
and lights.
2023-02-04 00:59:40 +01:00
Hugo Locurcio e560971bf2
Tweak shadow bias defaults for DirectionalLight3D and OmniLight3D
- Increase DirectionalLight3D normal bias to 2.0 to reduce shadow acne
  at grazing angles.
- Decrease OmniLight3D bias to 0.1 to reduce shadow peter-panning.
2022-12-05 21:53:29 +01:00
Hugo Locurcio 185695dda9
Document (Omni/Spot)Light3D ignoring Node3D's `scale` property 2022-10-24 18:49:15 +02:00
Hugo Locurcio 92fa8fd54a
Document caveats of high attenuation in OmniLight3D and SpotLight3D
High attenuation values will negatively impact performance for 2 reasons:

- The light won't be culled as often.
- The light will cover more pixels, which have to be shaded individually.

Therefore, lower attenuation values (with a lower range to compensate)
should be preferred whenever possible.
2022-08-02 22:59:06 +02:00
reduz 8b7c7f5a75 Add a new HashMap implementation
Adds a new, cleaned up, HashMap implementation.

* Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing).
* Keeps elements in a double linked list for simpler, ordered, iteration.
* Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much
  for performance vs keeping the key, but helps replace old code).
* Uses a more modern C++ iterator API, deprecates the old one.
* Supports custom allocator (in case there is a wish to use a paged one).

This class aims to unify all the associative template usage and replace it by this one:
* Map<> (whereas key order does not matter, which is 99% of cases)
* HashMap<>
* OrderedHashMap<>
* OAHashMap<>
2022-05-12 11:21:29 +02:00
Hugo Locurcio b68dd2e189
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00
Rémi Verschelde 6c1bd4d227
Replace Godot docs URL with `$DOCS_URL` in XML class reference 2021-11-15 13:02:21 +01:00
Aaron Franke d54f2ad7ca
Don't generate empty doc sections and reduce code duplication 2021-09-20 20:59:33 -05:00
Hugo Locurcio c4903a603b
Add link titles for all links in the class reference
This makes them display in a nicer way in the editor help.
(The title will display instead of the full URL.)
2020-08-31 14:22:07 +02:00
Hugo Locurcio f7e21d8e88 Improve the 3D light documentations
See https://github.com/godotengine/godot-docs/issues/3670.
2020-06-10 11:19:11 +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