Commit Graph

66 Commits

Author SHA1 Message Date
94e9860b82 Merge pull request #65836 from Calinou/add-max-physics-steps-per-frame-setting
Implement adjusting the maximum number of physics steps per rendered frame
2022-11-15 16:24:56 +01:00
66f7c48e39 Implement adjusting the maximum number of physics steps per rendered frame
When using high physics FPS (which is a requirement to minimize input
lag and improve precision in simulation racing games), a higher value
prevents the game from slowing down at low rendering FPS.

This can be done via an Engine property for run-time changes,
or a project setting for initial changes.
2022-10-09 23:00:09 +02:00
1b7aee3c8d Fill random docs 2022-10-07 20:10:18 +02:00
1c6c72caf1 Rename Engine.target_fps and associated project setting to max_fps
This makes the setting easier to find, as research has found there are
numerous use cases to limiting FPS. This also improves documentation
related to the Engine property and project setting.

The project setting also works in projects exported in release mode,
so its location in the `debug/` section was misleading.
2022-10-03 23:54:36 +02:00
2316c3a3a9 Add new C# code blocks to class ref pages
- AStarGrid2D
- Engine
- Font
- Node
- OS
- Tweens
2022-09-19 19:38:29 +02:00
8be27dc59e Replace Array return types with TypedArray 2022-08-22 22:42:36 +02:00
ea2192b99e [doc] Use "param" instead of "code" to refer to parameters (6) 2022-08-12 12:07:53 -04:00
682dbe5d00 Merge pull request #64008 from YuriSizov/doctool-add-param-reference-syntax 2022-08-08 22:50:35 +02:00
c5d7115038 Rename the argument tag to param in XML documentation 2022-08-08 22:34:31 +03:00
27a072c884 Print expected os.arch tuple for current platform in GDExtension error
This also adds `Engine.get_architecture_name()` to get the name of the
CPU architecture the Godot binary was built for.
2022-08-08 19:30:34 +02:00
aaeb60eafc Add a Movie Quit On Finish property to AnimationPlayer
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-27 18:50:28 +02:00
360dea5348 Add GDExtension support to Script
* Ability to create script languages from GDExtension
* Some additions to gdnative_extension.h to make this happen
* Moved the GDExtension binder to core

This now allows creating scripting languages from GDExtension, with the same ease as if it was a module. It replaces the old PluginScript from Godot 3.x.
Warning: GodotCPP will need to be updated to support this (it may be a bit of work as ScriptInstance needs to be created over there again).
2022-03-27 16:13:00 +02:00
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
9e6b1b16c6 Document physics simulation being limited to 8 ticks per rendered frame 2021-12-06 16:39:33 +01:00
6c1bd4d227 Replace Godot docs URL with $DOCS_URL in XML class reference 2021-11-15 13:02:21 +01:00
c7f67daccd Merge pull request #52855 from Calinou/engine-editor-hint-getter-only 2021-09-25 22:09:51 +02:00
d54f2ad7ca Don't generate empty doc sections and reduce code duplication 2021-09-20 20:59:33 -05:00
2560070c0a Remove Engine.editor_hint in favor of Engine.is_editor_hint()
The `Engine.set_editor_hint()` setter method is no longer exposed
to scripting, which makes the property effectively read-only from
an user perspective.
2021-09-20 14:24:39 +02:00
4a745aa0b8 Improve documentation for Engine.get_process_frames/get_physics_frames() 2021-09-12 23:07:40 +02:00
e2f8df8c5b Add ability to register singletons from engine API
* Exposed functions in Engine to register and unregister singletons.
* Added the concept of user singletons, which can be removed (the system ones can't).
2021-08-25 08:32:25 -03:00
937c1a716c Rename iterations_per_second to physics_ticks_per_second
This makes it clearer that this property is only about physics FPS,
not rendering FPS.

The `physics_fps` project setting was also renamed to
`physics_ticks_per_second` for consistency.
2021-08-11 02:37:02 +02:00
7adf4cc9b5 doc: Use self-closing tags for return and argument
For the time being we don't support writing a description for those, preferring
having all details in the method's description.

Using self-closing tags saves half the lines, and prevents contributors from
thinking that they should write the argument or return documentation there.
2021-07-30 15:29:52 +02:00
9a72b0d3d0 Fix doc typos
This pull request fixes an assortment of typos and improves conciseness in `Animation`, `Area2D`,  `Array`, `ArrayMesh`, `Control`, `Directory`, `EditorPlugin`, `Engine`, and `OS`.
2021-07-23 12:15:15 -04:00
cca29b78b9 Merge pull request #48359 from Calinou/add-engine-print-error-property 2021-06-20 13:22:08 +02:00
8f4ac7bc4a Tweak the physics FPS property hint to only allow reasonable values
Physics FPS above 1000 cause the whole project to slow down
and are not very practical in the first place (since no CPU currently
available can keep up).
2021-06-08 19:52:48 +02:00
0eb9b414c1 Add Engine.print_error_messages property to disable printing errors
This can be used during unit test suite runs to hide error and warning
messages.

Care should be taken when using this feature, as it can hide important
information if used wrongly.
2021-05-01 23:11:08 +02:00
17591fc6a1 Improve the Engine.editor_hint property documentation 2021-04-20 22:56:44 +02:00
8455e901f3 class reference proofreading 2021-03-19 13:21:20 +01:00
215d18814e doc: Sync classref with current source 2021-01-04 14:33:44 +01:00
d9e9eb8d04 Rename MainLoop methods to match Node methods 2020-12-22 12:34:57 +00:00
8fb113bb4c Port code examples to C# (D)
Includes:
 * Decal
 * Dictionary
 * Directory
 * DisplayServer
 * DTLSServer
 * DynamicFont
 * EditorImportPlugin
 * EditorPlugin
 * EditorScenePostImport
 * EditorScript
 * EditorSettings
 * EditorTranslationParserPlugin
 * Engine
 * Expression

Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
2020-11-01 09:05:17 +01:00
d2d4c1c957 Update AUTHORS and DONORS list
New contributors added to AUTHORS:
@hinlopen, @naithar, @rrcore, @SkyLucilfer, @TwistedTwigleg

Thanks to all contributors and donors for making Godot possible!

---

Also changes to relevant code that parses the DONORS.md to match
the new tiers.
2020-08-14 00:06:51 +02:00
975ed93794 [DOCS] minor description changes 2020-05-09 18:56:14 -07:00
b89a37269b Improve documentation related to fixed physics processing 2020-02-27 22:23:46 +01:00
57e27683ba Update docs to version 4.0 2020-01-31 17:15:41 -08:00
2d20fc39aa doc: Drop unused 'category' property from header
We already removed it from the online docs with #35132.

Currently it can only be "Built-In Types" (Variant types) or "Core"
(everything else), which is of limited use.

We might also want to consider dropping it from `ClassDB` altogether
in Godot 4.0.
2020-01-26 16:02:39 +01:00
42567bffb9 Document Engine.get_idle/physics_frames methods 2020-01-14 22:32:32 +02:00
508e624b87 Complete documentation of various classes 2020-01-10 14:14:07 +01:00
bf6c301b9c Add access to interpolation fraction for fixed timestep interpolation
Addresses #30068

This is a prerequisite for allowing proper support for fixed timestep interpolation, exposing the interpolation fraction to the engine, modules and gdscript.

The interpolation fraction is the fraction through the current physics tick at the time of the current frame.
2019-07-11 08:25:26 +01:00
b9aa13e591 doc: Remove hardcoded default values from descriptions
They are now generated automatically by doctool.
2019-06-30 13:58:07 +02:00
c6cea6e9b3 doc: Add default values to all properties
Thanks to @bojidar-bg's impressive work in #29380.
2019-06-30 13:58:07 +02:00
f7f6115f76 Proofread and improve the whole class reference
- Document a few more properties and methods
- Add more information to many classes
- Fix lots of typos and gramar mistakes
- Use [code] tags for parameters consistently
- Use [b] and [i] tags consistently
- Put "Warning:" and "Note:" on their own line to be more visible,
  and make them always bold
- Tweak formatting in code examples to be more readable
- Use double quotes consistently
- Add more links to third-party technologies
2019-06-27 22:30:19 +02:00
03335e5250 Improve the Engine.get_version_info() documentation
This documents some keys that were missing and improves formatting.
2019-06-21 15:15:55 +02:00
6af69f851a doc: Drop unused <demos> tag 2019-04-19 11:03:46 +02:00
63d3a42f82 Merge pull request #27465 from neikeq/road-to-lang-agnostic-docs-is-going-to-be-tough
EditorHelp: Improve enum ref resolving and add constant ref support
2019-04-05 15:19:21 +02:00
39c868171e doc: Bump version to 3.2 2019-04-01 12:33:56 +02:00
d80bc5cbba ClassRef: Replace [code]CurrentClass[/code] with [CurrentClass]
Modified makerst to generate code tags for these to avoid hyperlinks to the same class.
2019-03-29 23:47:35 +01:00
88a36e20cb doc: Sync classref with current source 2019-02-25 11:22:41 +01:00
2e6501d879 Add hex-encoded version number to Engine singleton for easy comparisons 2019-02-17 13:38:52 +01:00
7927eb6013 doc: Remove extraneous empty lines in descriptions 2018-06-15 08:54:06 +02:00