summaryrefslogtreecommitdiff
path: root/servers
AgeCommit message (Collapse)Author
2022-07-31Tweak VoxelGI defaults for better qualityHugo Locurcio
Overall brightness is similar to the previous settings, but lighting now fades off more naturally and reflections feature indirect lighting. Performance is identical. - Enable Use Two Bounces by default. - Decrease Propagation to 0.5 to compensate for the second bounce.
2022-07-31Fix Navigation Debug always enabledsmix8
Fixes that Navigation Debug is always enabled in debug builds even while "Visible Navigation" is turned off.
2022-07-30Make Decal's `modulate` property affect emission color as wellHugo Locurcio
This can be used to recolor special effects such as fake area fog without having to create separate textures for each color. - Improve the Decal class documentation.
2022-07-29fix 'Comparison result is always the same' warningsLinuxUserGD
2022-07-29Merge pull request #63595 from reduz/remove-signal-connect-bindsRémi Verschelde
Remove Signal connect binds
2022-07-29Merge pull request #46557 from asmaloney/remove-impossible-conditionRémi Verschelde
Remove impossible condition in RenderingServer::mesh_surface_make_offsets_from_format
2022-07-29Remove Signal connect bindsJuan Linietsky
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
2022-07-29Merge pull request #62601 from smix8/navigation_3d_debug_4.xRémi Verschelde
2022-07-29Add more detailed Navigation Debug Visualizationsmix8
- Adds more customization options to ProjectSettings. - Displays navregion edge connections and navigation polygon edges in editor and at runtime. - Majority of debug code moved from SceneTree to NavigationServer. - Removes the irritating debug MeshInstance child node from NavigationRegion3D and replaces it with direct RenderingServer API.
2022-07-29Merge pull request #63527 from BastiaanOlij/rework_environmentRémi Verschelde
Restructure environment in render implementation
2022-07-29Restructure environment in render implementationBastiaan Olij
2022-07-28Merge pull request #59840 from Calinou/renderingserver-global-uniform-renameRémi Verschelde
2022-07-28Merge pull request #60957 from DeeJayLSP/sample_pcmRémi Verschelde
2022-07-28Rename AudioStreamSample to a more discoverable nameDeeJayLSP
2022-07-28Rename RenderingServer global shader uniform methods to be more explicitHugo Locurcio
The `global_shader_uniform` name is longer, but it makes it much easier to find the methods when searching in the class reference.
2022-07-28Allow changing mipmap LOD bias when FSR 1.0 scaling is not usedHugo Locurcio
Mipmap LOD bias can be useful to improve the appearance of distant textures without increasing anisotropic filtering (or in situations where anisotropic filtering is not effective). `fsr_mipmap_bias` was renamed to `texture_mipmap_bias` accordingly. The property hint now allows for greater precision as well.
2022-07-28Merge pull request #63571 from RandomShaper/conservative_validate_vrsRémi Verschelde
2022-07-28Improve handling of the format of the VRS imagePedro J. Estébanez
- Validate format conservatively. (This is to have VRS images created regardless whether VRS attachments are supported, which avoids errors in places where the code assumes such images were created on low-spec GPUs.) - Create a non-layered default VRS image, which is what Vulkan (and D3D12, by the way) expect.
2022-07-28Merge pull request #57698 from ↵Rémi Verschelde
bluenote10/feature/rename_translated_to_translated_local
2022-07-28Add startup flag to override XR mode settingsBastiaan Olij
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 #63406 from Zylann/init_viewport_fieldsRémi Verschelde
2022-07-27Merge pull request #62362 from clayjohn/VULKAN-haloRémi Verschelde
2022-07-27Merge pull request #58296 from Calinou/decal-distance-fade-tweak-defaultsRémi Verschelde
2022-07-27Merge pull request #63477 from Chaosus/shader_fix_fogRémi Verschelde
2022-07-26Use full size mipmaps for reflections when in high-quality modeclayjohn
2022-07-27Merge pull request #63522 from Chaosus/shader_fix_projectionYuri Rubinsky
2022-07-27Merge pull request #63345 from BastiaanOlij/split_geometry_instanceRémi Verschelde
Cleanup RendererSceneRender::GeometryInstance
2022-07-27Fix incorrect conversion of default value for mat4 uniform in shadersYuri Rubinsky
2022-07-27Fix `FOG` built-in in spatial/fragment shaderYuri Rubinsky
2022-07-27Change RendererSceneRender::GeometryInstance so more code is shared among ↵Bastiaan Olij
renderers
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-26Change window title in Movie Maker mode to display useful informationHugo Locurcio
The frame number and movie time is now displayed in the window title. This way, you can see how quickly the video recording is advancing in real-time (and perhaps tweak your settings if it's going too slow).
2022-07-26Merge pull request #62972 from Chaosus/shader_groupsRémi Verschelde
Implement shader uniform groups/subgroups
2022-07-26Merge pull request #63236 from halgriffiths/fix-texture-rect-transposeRémi Verschelde
send FLAGS_TRANSPOSE_RECT to Vulkan
2022-07-26Implement shader uniform groups/subgroupsYuri Rubinsky
2022-07-26Move Sky(RD) into environmentBastiaan Olij
Move Fog logic from render scene render to fog
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 #63424 from Chaosus/shader_preprocessor_inc_fixRémi Verschelde
2022-07-25Fix errors when using built-ins in shaderincYuri Rubinsky
2022-07-25Code quality: Fix header guards consistencyRémi Verschelde
Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
2022-07-25Merge pull request #63219 from reduz/implement-vector4-projectionRémi Verschelde
2022-07-24Initialize default values for viewports in rendering server.Marc Gilleron
Example with TAA: by default it is `false` in project settings and in the Viewport node. When the scene tree is created, Viewport.set_use_taa() is called with the value from ProjectSettings. But because the default values are already the same, RenderingServer isn't called. The Viewport struct in the RenderingServer does not initialize this field, so TAA gets randomly enabled when the game starts with default settings.
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-23Fix some errors after shader preprocessor PRYuri Rubinsky
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 #62478 from BastiaanOlij/split_effects_20220628Ré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.