summaryrefslogtreecommitdiff
path: root/servers
AgeCommit message (Collapse)Author
2020-06-03Fix shader's length() function parsing in expressionsYuri Roubinsky
2020-06-02Light2D shadow mask construction fixlawnjelly
When using the default setting (layer 1 set only) nothing is stored in the tscn file for a Light2D, hence it relies on the value in the constructor. The problem is the constructed value is 1 in Light2D, and -1 in RasterizerCanvas::Light. -1 results in all bits being set so all occluders are shown, rather than just those in layer 1. This PR changes Rasterizer::Canvas constructor to set to 1. An alternative is to have -1 as the value for layer 1 throughout. (cherry picked from commit bf54fa5a62a980f5c4339137f9e2c6147642962c)
2020-05-27Split `Geometry` singleton into `Geometry2D` and `Geometry3D`Andrii Doroshenko (Xrayez)
Extra `_2d` suffixes are removed from 2D methods accoringly.
2020-05-20doc: Sync classref with current sourceRémi Verschelde
2020-05-20Merge pull request #38309 from SkyLucilfer/AndroidLineEditRémi Verschelde
Fix Android LineEdit editing bugs
2020-05-19Style: Fix unnecessary semicolons that confused clang-formatRémi Verschelde
2020-05-18Merge pull request #38816 from Faless/js/fix_audio_driver_4.0Rémi Verschelde
AudioDriverJavaScript buffer size calculation.
2020-05-18Move mix_rate, ouput_latency to AudioDriverManagerFabio Alessandrelli
Each driver used to define the (same) project settings values `audio/mix_rate` and `audio/output_latency`, but the setting names are not driver specific. Overriding is still possible via platform tags.
2020-05-18GLSL: Change shader type specifier from [vertex] to #[vertex]Rémi Verschelde
The added `#` prevents clang-format from misinterpreting the meaning of this statement and thus messing up the formatting of the next lines up until the first `layout` statement. Similarly, a semicolon is now enforced on `versions` defines to prevent clang-format from messing up formatting and putting them all on a single line. Note: In its current state the code will ignore chained statements on a single line separated by a semicolon. Also removed some extraneous lines missed in previous style changes or added by mistake with said changes (e.g. after uniform definitions that clang-format messes up somewhat too, but we live with it).
2020-05-16Fix Android LineEdit editing bugsSkyJJ
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: Enforce separation line between function definitionsRémi Verschelde
I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-14Remove redundant void argument listsRémi Verschelde
Using clang-tidy's `modernize-redundant-void-arg`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-redundant-void-arg.html
2020-05-14Enforce use of bool literals instead of integersRémi Verschelde
Using clang-tidy's `modernize-use-bool-literals`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2020-05-14Modernize remaining uses of 0/NULL instead of nullptr (C++11)Rémi Verschelde
Using clang-tidy's `modernize-use-nullptr`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2020-05-14Port member initialization from constructor to declaration (C++11)Rémi Verschelde
Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
2020-05-12Merge pull request #38691 from madmiraal/fix-eq-uninitialised-warningRémi Verschelde
Silence EQ::Band::c1, c2 and c3 may be used uninitialized warnings.
2020-05-12Silence EQ::Band::c1, c2 and c3 may be used uninitialized warnings.Marcel Admiraal
2020-05-12Fixes memory leak with lightmap part 2qarmin
2020-05-11Fix memory leak with light mapsqarmin
2020-05-10New lightmapperJuan Linietsky
-Added LocalVector (needed it) -Added stb_rect_pack (It's pretty cool, we could probably use it for other stuff too) -Fixes and changes all around the place -Added library for 128 bits fixed point (required for Delaunay3D)
2020-05-10Revert "Renamed plane's d to distance"Rémi Verschelde
This reverts commit ec7b481170dcd6a7b4cf0e6c1221e204ff7945f3. This was wrong, `d` is not a distance but the `d` constant in the parametric equation `ax + by + cz = d` describing the plane.
2020-05-10Style: clang-format: Disable AllowShortCaseLabelsOnASingleLineRémi Verschelde
Part of #33027.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
Part of #33027, also discussed in #29848. Enforcing the use of brackets even on single line statements would be preferred, but `clang-format` doesn't have this functionality yet.
2020-05-10Style: Add missing copyright headersRémi Verschelde
2020-05-10Renamed plane's d to distanceMarcus Elg
2020-05-09Revert "register RenderingDevice as gdscript singleton"Rémi Verschelde
This reverts commit 1058a57666cafadbbeeed5a42a72f0e4f627a389. RenderingDevice is meant to be instantiated in scripts, not a singleton. This actually doesn't work properly right now, but reduz will fix it.
2020-05-08Turn the anisotropic filtering setting into an enumHugo Locurcio
Since it only accepts power-of-two values, exposing it as an enum makes more sense. This also allows for adding property hints to indicate the performance cost of each value. This also improves property hints for MSAA and FXAA.
2020-05-07Merge pull request #38226 from Calinou/increase-camera3d-fovRémi Verschelde
Increase the default Camera3D field of view to 75
2020-05-03Merge pull request #38406 from clayjohn/VULKAN-sun-diameterRémi Verschelde
Calculate sun diameter even when not using shadows
2020-05-03register RenderingDevice as gdscript singletonPhilip Whitfield
2020-05-01Calculate sun diameter even when not using shadowsclayjohn
2020-05-01Increase the default Camera3D field of view to 75Hugo Locurcio
A vertical FOV of 75 degrees is roughly equivalent to a 91 degree horizontal FOV on a 4:3 display (~107.51 degrees on 16:9), which is close to the typical default FOV used in PC games. Note that this doesn't apply to the in-editor camera which keeps its FOV to 70. This is because it doesn't display in fullscreen; its viewport only displays in the center of the editor (roughly). This means the viewport won't cover the viewer's eyes as much. Therefore, the editor camera FOV should be slightly lower to account for this. Since this changes the default value, this may break existing projects slightly. For the record, this was already done in https://github.com/godotengine/godot-demo-projects/pull/260 for the official demo projects.
2020-04-30Merge pull request #38337 from RandomShaper/time_rollbackRémi Verschelde
Improve shader time roll over
2020-04-30Improve shader time roll overPedro J. Estébanez
- Resurrect it for GL ES 2 - Add it to the Vulkan rasterizer - Expose the setting from the `RenderingServer`, since it does not belong in any specific rasterizer
2020-04-29Fixed unbounded dual-paraboloid shadow map culling.Kiri Jolly
Dual paraboloid shadowmaps were ending up with infinitely large volumes of area behind the hemisphere un-culled. This change just adds a back plane to the convex shape used for the culling volume.
2020-04-29Merge pull request #20371 from aaronfranke/vector-lerpRémi Verschelde
[Core] [Mono] [GDNative] Rename "linear_interpolate" methods to "lerp"
2020-04-29Merge pull request #38302 from qarmin/format_setRémi Verschelde
RasterizerStorageRD: Don't override format value
2020-04-29[Core] Rename linear_interpolate to lerpAaron Franke
2020-04-29Merge pull request #37795 from Chaosus/shader_fix_const_order2Rémi Verschelde
Fix shader constant sorting
2020-04-28Don't override format valueqarmin
2020-04-28Fix copy paste array index bugqarmin
2020-04-28Rename InputFilter back to InputRémi Verschelde
It changed name as part of the DisplayServer and input refactoring in #37317, with the rationale that input no longer goes through the main loop, so the previous Input singleton now only does filtering. But the gains in consistency are quite limited in the renaming, and it breaks compatibility for all scripts and tutorials that access the Input singleton via the scripting language. A temporary option was suggested to keep the scripting singleton named `Input` even if its type is `InputFilter`, but that adds inconsistency and breaks C#. Fixes godotengine/godot-proposals#639. Fixes #37319. Fixes #37690.
2020-04-23Fix "redefinition of 'ssr' with a different type" shader compile error.bruvzg
2020-04-22Merge pull request #38116 from neikeq/index_buffer_create-defvalIgnacio Roldán Etcheverry
Fix missing DEFVAL for RenderingDevice.index_buffer_create
2020-04-22Fix missing DEFVAL for RenderingDevice.index_buffer_createIgnacio Etcheverry
2020-04-21Register the DisplayServer Singletonmuiroc
2020-04-21Add proper type to most public API uses of ArrayJuan Linietsky
2020-04-20Exposed RenderingDevice to script APIJuan Linietsky
Also added an easier way to load native GLSL shaders. Extras: Had to fix no-cache for subresources in resource loader, it was not properly working, making shaders not properly reload. Note: The precommit hooks are broken because they don't seem to support enums from one class being used in another. Feel free to fix this after merging this PR.