summaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
2022-07-28Patch the make_rst.py utility to handle specially operators with '<'Jcrespo
When generating rst files from xml class reference, unknown references to operators were generated, as something like: :ref:`operator <<class_Vector2_operator_lt_bool>` was rendered in html as: operator ( Vector2 right ) -it just needed escaping. The small addendum checks for operator names containing '<' and substitutes it with '\<', escaping at rst level and generating instead the right rendered html: operator < ( Vector2 right ) This affected mostly the reference pages of the VectorX family of classes. If in the future more types need escaping, a more general solution will be needed.
2022-07-28Merge pull request #63532 from TokageItLab/rename-cubic-slerpRémi Verschelde
2022-07-28Merge pull request #57698 from ↵Rémi Verschelde
bluenote10/feature/rename_translated_to_translated_local
2022-07-28Merge pull request #62414 from Calinou/movie-maker-add-quit-on-endRémi Verschelde
2022-07-27HTML5: Add support for `Input.vibrate_handheld()`pattlebass
2022-07-27Add a Movie Quit On Finish property to AnimationPlayerHugo Locurcio
This quits the project when an animation is done playing in the given AnimationPlayer, but only in Movie Maker mode. When this happens, a message is printed with the absolute path of the AnimationPlayer node that caused the engine to quit. This can be used to create videos that stop at a specified time without having to write any script. A report is now also printed to the console when the video is done recording (as long as the engine was exited properly). This report is unfortunately not always visible in the editor's Output panel, as it's printed too late. A method was also added to get the path to the output file from the scripting API.
2022-07-27Merge pull request #63138 from TokageItLab/normalize-position-trackRémi Verschelde
Add position track normalization to importer retarget
2022-07-27rename and unify notation for spherical interpolationSilc Renew
2022-07-27i18n: Sync classref translations with WeblateRémi Verschelde
(cherry picked from commit 516d6b6bad68d506391a4262ba40cbceeea8be22)
2022-07-27doc: Fix relative paths in `make_rst.py` generated commentRémi Verschelde
Follow-up to #63495.
2022-07-27Merge pull request #62973 from bruvzg/sysfont_supportRémi Verschelde
2022-07-27Merge pull request #63495 from YuriSizov/docs-improve-autogen-noteRémi Verschelde
2022-07-27Improve the autogenerated note in RST docs for class referenceYuri Sizov
2022-07-27Merge pull request #63463 from KoBeWi/Vector5Rémi Verschelde
Add some missing Vector4 methods
2022-07-27Merge pull request #63510 from asmaloney/add-missing-type-hintsRémi Verschelde
2022-07-27Tweak Decal distance fade defaults and add property hintsHugo Locurcio
The new default values are more usable in real world scenarios when smooth fading of distant decals is desired for performance reasons. The Decal distance fade property hints were adjusted based on the GeometryInstance3D visibility range fade property hints. `or_greater` was also added to allow specifying larger values if needed.
2022-07-26Add Vector4 documentationkobewi
2022-07-26Add missing Python type hints in tools/make_rst.pyAndy Maloney
2022-07-26Fix unnamed arguments in XML docsRedMser
2022-07-26add position track normalization & post process key value for retargetSilc Renew
2022-07-26[RichTextLabel] Fix theme bold / italics / bold italics and mono font size ↵bruvzg
not applied correctly.
2022-07-26Implement support for loading system fonts on Linux, macOS / iOS and Windows.bruvzg
2022-07-26Add some missing Vector4 methodskobewi
2022-07-25Remove ThreadWorkPool, replace by WorkerThreadPoolJuan Linietsky
The former needs to be allocated once per usage. The later is shared for all threads, which is more efficient. It can also be better debugged.
2022-07-25Merge pull request #63219 from reduz/implement-vector4-projectionRémi Verschelde
2022-07-24Merge pull request #63381 from jynus/masterRémi Verschelde
Solve discrepancy between code and class reference for Plane
2022-07-24Merge pull request #62892 from KoBeWi/hey,group!Rémi Verschelde
Remove outdated line in call_group() description
2022-07-24Solve discrepancy between code and class reference for PlaneJcrespo
On #43310, class reference was automatically updated from source, causing xml documentation to disagree with parameter naming description on Plane.intersects_segment(). Weirdly, it also changed the parameter for Plane.is_point_over() from point to plane, when only the first has sense (and it is defined on math.Plane as "const Vector3 &p_point"). Manual mistake? * Update begin/end to from/to on Plane.intersects_segment(...) docs description to match source * Update Plane bindings to use points instread of plane for is_point_over(...) * Change Plane.is_point_over(plane) to Plane.is_point_over(point) AND its description on docs Fixes godotengine/godot-docs#5976
2022-07-23Document what the Z component is used for in BaseMaterial3D UV coordsAaron Franke
2022-07-24Merge pull request #63262 from dsnopek/multiplayer-peer-custom-4.xFabio Alessandrelli
[4.x] Allow extending MultiplayerPeerExtension from GDScript
2022-07-23Implement Vector4, Vector4i, Projectionreduz
Implement built-in classes Vector4, Vector4i and Projection. * Two versions of Vector4 (float and integer). * A Projection class, which is a 4x4 matrix specialized in projection types. These types have been requested for a long time, but given they were very corner case they were not added before. Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity. **Q**: Why Projection and not Matrix4? **A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-23Merge pull request #63265 from reduz/stream-bpm-supportRémi Verschelde
Implement BPM support in AudioStream files.
2022-07-23Implement BPM supportreduz
Based on #62896, only implements the BPM support part. * Implements BPM support in the AudioStreamOGG/MP3 importers. * Can select BPM/Bar Size and total beats in a song file, as well as edit looping points. * Looping is now BPM aware * Added a special importer UI for configuring this. * Added a special preview showing the audio waveform as well as the playback position in the resource picker. * Renamed `AudioStream::instance` to `instantiate` for correctness.
2022-07-23Merge pull request #62513 from reduz/shader_preprocessor_remakeRémi Verschelde
2022-07-22Merge pull request #63313 from python273/fix-xr-doc-linksRémi Verschelde
2022-07-22Clean up Shader Preprocessorreduz
* Moved preprocessor to Shader and ShaderInclude * Clean up RenderingServer side * Preprocessor is separate from parser now, but it emits tokens with include location hints. * Improved ShaderEditor validation code * Added include file code completion * Added notification for all files affected by a broken include.
2022-07-22Adding shader preprocessor supportYuri Roubinsky
Co-authored-by: TheOrangeDay <6472143+TheOrangeDay@users.noreply.github.com>
2022-07-22Add example usage for `Font.get_string_size()`Hugo Locurcio
The font size is now separated from the font itself, so it makes sense to have an example for people coming from Godot 3.x.
2022-07-22Fix tutorial links in XR classes docspython273
2022-07-22Merge pull request #63141 from reduz/implement-thread-runnerRémi Verschelde
2022-07-22Merge pull request #62996 from reduz/feature-build-profilesRémi Verschelde
2022-07-22Implement a Worker ThreadPoolreduz
This PR implements a worked thread pool. It uses a fixed amount of threads in a pool and allows scheduling tasks that can be run on threads (and then waited for). It satisfies the following use cases: * HTML5 thread count is fixed (and similar restrictions are known in consoles) so we need to reuse threads. * Thread spawning is slow in general, so reusing threads is faster anyway. * This implementation supports recursive waiting for tasks, making it less prone to deadlocks if threads from the pool also run tasks. After this is approved and merged, subsequent PRs will be needed to replace the ThreadWorkPool usage by this class.
2022-07-22Implement Feature Build Profilesreduz
This PR is a continuation of #50381 (which was implemented exactly a year ago!) * Add a visual interface to select which classes should not be built into Godot (well, they are built if something else uses them, but if not used the optimizer will remove them out). * Add a detection system to scan the project and figure out the actual classes used. * Added the ability for SCons to load build profiles. Obligatory Screen: A simple test with a couple of nodes in the scene resulted in a 25% reduction for the final binary size TODO: * Script languages need to implement used class detection (left for another PR). * Options to disable servers or server functionalities (like 2D or 3D physics, navigation, etc). Are missing, that should also greatly aid in reducing binary size. * Options to disable some modules would be desired. * More options to disable drivers (OpenGL, Vulkan, etc) would be desired. In general this PR is a starting point for more contributors to improve and enhance this functionality.
2022-07-21Rename `epsilon` to `tolerance` in the `Plane::has_point` methodYuri Rubinsky
2022-07-21Fix various typos not caught by codespellluz paz
Revert upstream `core/input/gamecontrollerdb.txt`. Upstream fix: https://github.com/gabomdq/SDL_GameControllerDB/pull/600
2022-07-21Rename OSX to macOS and iPhoneOS to iOS.bruvzg
2022-07-20Allow extending MultiplayerPeerExtension from GDScriptDavid Snopek
2022-07-20Merge pull request #63127 from KoBeWi/raise_from_pictureRémi Verschelde
2022-07-20Merge pull request #47935 from HaSa1002/doc-loading-run-timeRémi Verschelde
2022-07-20Add peer visibility to MultiplayerSynchronizer.Fabio Alessandrelli
MultiplayerSynchronizers can now be configured to limit their visibility to a subset of the connected peers, if the synchronized node was spawned by a MultiplayerSpawner (either automatically or via custom spawn) the given node will also be despawned remotely. The replication system doesn't have the logic to handle subspawn directly, but it is possible to handle them appropriately by manually updating the visibility of the parent before changing the one of the nested spawns via the "update_visibility" function. The visibility of each MultiplayerSynchronizer can be controlled by adding or remove filters via "[add|remove]_visibility_filter(callable)". To further optimize the network code, visibility filters can be configured to be automatically updated during idle or physics frame, or set to always require manual update (via the "update_visibility" function).