summaryrefslogtreecommitdiffstats
path: root/drivers/gles3/rasterizer_scene_gles3.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Split dependency logicBastiaan Olij2022-06-281-7/+6
| | | | | | Split FOG Split visibility notifier Final cleanup of storage classes
* Introduce eye_offset for correcting stereoscopic reflectionsBastiaan Olij2022-06-171-0/+1
| | | | Use view instead of vertex for reflections.
* Implement MultiMesh in 3D and flesh out MultiMesh functionsclayjohn2022-06-141-1/+1
|
* Initial TAA implementationjfons2022-06-071-2/+2
| | | | | | Initial TAA support based on the implementation in Spartan Engine. Motion vectors are correctly generated for camera and mesh movement, but there is no support for other things like particles or skeleton deformations.
* Add clipping, backbuffer, and CanvasGroups to 2D GLES3 rendererclayjohn2022-05-241-43/+0
| | | | As well as significant consequent cleanup in the RenderTarget, Texture, and Canvas renderer code
* Add basic lighting to GLES3 renderer.clayjohn2022-05-161-89/+197
| | | | This includes all three light types and IBL, but does not include shadows or any form of GI
* Basic 3D renderingclayjohn2022-05-121-5/+347
|
* SceneShader compilingclayjohn2022-05-111-2/+6
|
* SkyShaders workingclayjohn2022-05-111-7/+6
|
* Merge pull request #60503 from clayjohn/OPENGL-3DRémi Verschelde2022-04-281-8/+319
|\
| * Overhaul GLES3: Add basis for 3D renderer, overhaul materials and texturesclayjohn2022-04-261-8/+319
| |
* | Fix "ortogonal" -> "orthogonal" typo in rasterizer codeHugo Locurcio2022-04-261-1/+1
|/
* Enable 16-bit shadow atlas by default in the RenderingServer methodsHugo Locurcio2022-02-041-2/+2
| | | | | | | | | 16-bit shadow atlases are already the default in the project settings, but low-level methods used 24-bit shadows by default. This makes low-level methods more consistent with the default project settings to avoid accidental performance issues when users change the shadow size at run-time.
* add support for glow mapsAnsraer2022-01-201-1/+1
|
* Allow using between 1 and 8 cascades for SDFGIHugo Locurcio2022-01-171-1/+1
| | | | | | This provides more flexibility between performance and quality adjustments, especially when using SDFGI for small-scale levels (which can be useful for procedurally generated scenes).
* New OpenGL batching canvas rendererclayjohn2022-01-111-5/+3
|
* Added material_overlay property to MeshInstance3DFernando Cosentino2022-01-051-0/+1
| | | | | | | | | | | | | | | Applying overlay materials into multi-surface meshes currently requires adding a next pass material to all the surfaces, which might be cumbersome when the material is to be applied to a range of different geometries. This also makes it not trivial to use AnimationPlayer to control the material in case of visual effects. The material_override property is not an option as it works replacing the active material for the surfaces, not adding a new pass. This commit adds the material_overlay property to GeometryInstance3D (and therefore MeshInstance3D), having the same reach as material_override (that is, all surfaces) but adding a new material pass on top of the active materials, instead of replacing them.
* Merge pull request #56305 from Calinou/rename-lod-thresholdRémi Verschelde2022-01-041-1/+1
|\
| * Rename Lod Threshold to Mesh Lod ThresholdHugo Locurcio2021-12-291-1/+1
| | | | | | | | | | This makes it more obvious that the setting only affects mesh LOD, not manual (H)LOD achieved using visibility ranges.
* | Merge pull request #51206 from clayjohn/Vulkan-ASSGIRémi Verschelde2022-01-041-0/+2
|\ \
| * | Added SSIL post processing effectclayjohn2021-11-061-0/+2
| | |
* | | Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| |/ |/| | | | | Happy new year to the wonderful Godot community!
* | Implemented AMD's FSR as a computer shader for upscaling 3D scenesJe06jm2021-11-231-1/+1
|/
* Use OpenGL 3.3 core profile instead of compatibility profileClay John2021-10-311-0/+229
| | | | | | | | | | - Rename OpenGL to GLES3 in the source code per community feedback. - The renderer is still exposed as "OpenGL 3" to the user. - Hide renderer selection dropdown until OpenGL support is more mature. - The renderer can still be changed in the Project Settings or using the `--rendering-driver opengl` command line argument. - Remove commented out exporter code. - Remove some OpenGL/DisplayServer-related debugging prints.
* Remove obsolete GLES3 backendRémi Verschelde2020-02-131-878/+0
| | | | | | | | | | | | | | Due to the port to Vulkan and complete redesign of the rendering backend, the `drivers/gles3` code is no longer usable in this state and is not planned to be ported to the new architecture. The GLES2 backend is kept (while still disabled and non-working) as it will eventually be ported to serve as the low-end renderer for Godot 4.0. Some GLES3 features might be selectively ported to the updated GLES2 backend if there's a need for them, and extensions we can use for that. So long, OpenGL driver bugs!
* doc: Sync classref with current sourceRémi Verschelde2020-02-121-1/+1
| | | | | | | | Lots of internal API changes and some docstrings were lost in the conversion. I manually salvaged many of them but for all the rendering-related ones, an additional pass is needed. Added missing enum bindings in BaseMaterial3D and VisualServer.
* Rewrote large part of rendering, omni and spot shadows now work.Juan Linietsky2020-02-111-8/+7
|
* Refactored RID/RID_Owner to always use O(1) allocation.Juan Linietsky2020-02-111-12/+12
| | | | | * Implements a growing chunked allocator * Removed redudant methods get and getptr, only getornull is supported now.
* Update copyright statements to 2020Rémi Verschelde2020-01-011-2/+2
| | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* Fix issues with environment mappingclayjohn2019-11-191-1/+1
|
* only render depth with alpha prepass on prepassclayjohn2019-10-111-1/+1
|
* Merge pull request #30714 from Calinou/invert-default-fog-heightRémi Verschelde2019-08-081-2/+2
|\ | | | | Invert and adjust the default fog height values
| * Invert and adjust the default fog height valuesHugo Locurcio2019-08-071-2/+2
| | | | | | | | | | | | | | | | | | This makes height fog appear at the bottom of the scene (instead of the top), which is generally the expected result. This also tweaks the fog height setting hint to be more flexible. This closes #30709.
* | add project setting for max lights and reflections in gles3clayjohn2019-07-281-2/+6
|/
* Adding a new Camera Server implementation to Godot.BastiaanOlij2019-06-151-0/+4
| | | | | | This is a new singleton where camera sources such as webcams or cameras on a mobile phone can register themselves with the Server. Other parts of Godot can interact with this to obtain images from the camera as textures. This work includes additions to the Visual Server to use this functionality to present the camera image in the background. This is specifically targetted at AR applications.
* Fixed handling of depth texture so it's resolved and bound when neededDaniel Rakos2019-03-261-1/+7
| | | | | | | | | | - Cleaned up and improved the code determining when we need to use a depth prepass (previously it wasn't executed in certain cases even if it was needed) - Added code to prepare and bind the depth texture even when no depth prepass or MRTs (more precisely effect buffers) are used Fixes #25870, #25535, and #25387.
* Undo #25557 (was not right anyway), fixes #26258Juan Linietsky2019-03-111-1/+1
|
* Many fixes regarding depth buffer clearing, closes #25994, closes #25975Juan Linietsky2019-02-211-1/+2
|
* Allow usage of depth texture when contact shadows are disabledKaadmY2019-02-011-0/+1
|
* Fix #19633 by proper store to &ubo_data.shadow_matrix[1234].marxin2019-01-191-4/+9
| | | | | | | | | It is not valid in C++ to store into shadow_matrix1[16] with shadow_matrix1[16 * j] (for j > 0). Even though there's a valid space in a struct after shadow_matrix1. Knowing that GCC performs aggressive optimizations that eventually lead to a wrong code. Code has been changed into union where one can either use shadow_matrix[4 * 16], or individual shadow_matrix1, shadow_matrix2, etc. GCC pragma is not needed any longer.
* Update copyright statements to 2019Rémi Verschelde2019-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Adding option to re-orient our skyBastiaan Olij2018-12-151-2/+4
|
* Moved member variables to initializer listWilson E. Alvarez2018-12-111-86/+74
|
* Added luminance capping to avoid glitches on small dots. closes #17996Juan Linietsky2018-11-281-1/+3
|
* Add parameter for fog max depth and use alpha as density.Dominique LaSalle2018-11-131-1/+5
|
* Baker fixesJuan Linietsky2018-10-071-1/+1
|
* Removed unused function RasterizerSceneGLES3::_copy_to_front_bufferWilson E. Alvarez2018-09-121-1/+0
|
* transmission was broken, fix was made. Also fixed treshold.Juan Linietsky2018-07-221-1/+1
|
* Fix opaque pre pass not casting shadowsJuan Linietsky2018-07-221-1/+2
|
* Added ability for SSAO to affect AO textures tooJuan Linietsky2018-07-021-1/+5
|