summaryrefslogtreecommitdiff
path: root/servers/rendering/dummy
AgeCommit message (Collapse)Author
2023-02-06Implement cull_mask for decals and lights in mobile and compatibility backendsclayjohn
2023-02-01Merge pull request #72075 from Maran23/extents-to-sizeRémi Verschelde
Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal and GPUParticles*3D
2023-01-31Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal and ↵Marius Hanl
GPUParticles*3D - Extents are replaced by Size (Size is Extents * 2) - The UI text displays 'Size' - Snapping is adjusted to work with Size - _set and _get handle extents for compatibility Co-authored-by: ator-dev <dominic.codedeveloper@gmail.com>
2023-01-27Automatically transform Skeleton2D calculations so pivots are not neededclayjohn
2023-01-20Sort decals and lights based on camera originclayjohn
Also implement sort_offset for decals Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-01-05One Copyright Update to rule them allRémi Verschelde
As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
2022-12-23Merge pull request #70253 from BastiaanOlij/cleanup_sky_renderRémi Verschelde
Cleanup and improve sky render
2022-12-23Cleanup and improve sky renderBastiaan Olij
2022-12-23Added options for sorting transparent objects (port of PR 63040)Bastiaan Olij
2022-12-13Remove high quality glow as it is not any higher quality than regular glowclayjohn
2022-11-18RenderDummy::TextureStorage::texture_replace add missing null checkdzil123
2022-11-17RendererDummy fix buffer overflow due to mesh_get_surfacedzil123
2022-11-14Add GPUParticles to the OpenGL3 renderer.clayjohn
This includes collision (2D SDF, Box, Sphere, Heightmap), attraction (Box, Sphere), and all sorting modes. This does not include 3D SDF collisions, trails, or manual emission.
2022-11-11Merge pull request #68186 from pkdawson/expose-texture-rdRémi Verschelde
Expose texture_get_rd_texture for scripts
2022-11-07Surface AABBs are now set for mesh surfaces even in headless mode. Sponsored ↵Gábor Pál Korom
by Migeran (https://migeran.com).
2022-11-03Collapse three seperate texture storage methods into ↵David Snopek
render_target_set_override()
2022-11-03Expose texture_get_rd_texturePatrick Dawson
2022-11-02Merge pull request #67639 from clayjohn/GLES3-2d-shadowsRémi Verschelde
Add 2D shadows and canvas SDF to OpenGL3 renderer
2022-10-28Merge pull request #67112 from Chaosus/fix_boolean_uniform_instancesYuri Rubinsky
2022-10-28Add 2D shadows and canvas SDF to OpenGL3 rendererclayjohn
This is an initial implementation based on the current RD implementation Performance will improve later
2022-10-27Merge pull request #64710 from MinusKube/window-size-crashClay John
Prevent windows from having a size greater than device limit
2022-10-09Fix incorrect setup of boolean uniform instancesYuri Rubinsky
2022-10-06Use a giant UBO to optimize performance in 2Dclayjohn
This removes the countless small UBO writes we had before and replaces them with a single large write per render pass. This results in much faster rendering on low-end devices but improves speed on all devices.
2022-10-05Adding getters to RenderTarget and implementing override functionality for XRBastiaan Olij
2022-10-04Move cluster builder, sdfgi and gi structures to clustered renderer, move ↵Bastiaan Olij
light and probe elements into storage and reorganise our render_scene method.
2022-09-19Split rendering driver project setting into renderer_name and ↵clayjohn
rendering_driver. To differentiate between a driver (e.g. Vulkan or D3D12) and a renderer (e.g. clustered or mobile renderer).
2022-09-07Fix crash when executing `VisualShaderNodeParticleMeshEmitter.set_mesh` with ↵Haoyu Qiu
headless Godot
2022-09-05Fix crash when executing `CSGMesh3D.set_mesh` with headless GodotHaoyu Qiu
2022-09-04Prevent windows from having a size greater than device limitMinusKube
2022-09-02Merge pull request #65170 from KoBeWi/your_argument_is_TypedArrayRémi Verschelde
2022-09-02Merge pull request #64952 from Chaosus/vs_rename_uniform_to_paramRémi Verschelde
2022-09-01Change Array arguments to TypedArraykobewi
2022-09-01Extracting render buffers and changing it to a more generic solutionBastiaan Olij
2022-09-01Rename `uniform` to `parameter` across the engineYuri Rubinsky
2022-08-31Implement Physical Light Units as an optional setting.clayjohn
This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value. In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
2022-08-31Remove unnecessary `print_line` in RendererDummyHaoyu Qiu
2022-08-30Merge pull request #65068 from BastiaanOlij/fix_dummy_mesh_allocationRémi Verschelde
2022-08-30Dummy mesh support was added to the dummy renderer but incomplete. This ↵Bastiaan Olij
completes it
2022-08-13Implement MSAA for 2D [Vulkan only]Hendrik Brucker
2022-08-04Rename shader parameter uniform setter/getter methods for consistencyHugo Locurcio
`shader_uniform` is now consistenly used across both per-shader and per-instance shader uniform methods. This makes methods easier to find in the class reference when looking for them.
2022-08-01fix for headless collision shape generationJakub Grzesik
this commit implements just enough of dummy mesh_storage so collision shapes are still generated in the headless mode implementation was inspired by rasterizer_dummy.h from Godot3
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-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-27Change RendererSceneRender::GeometryInstance so more code is shared among ↵Bastiaan Olij
renderers
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-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-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.