summaryrefslogtreecommitdiff
path: root/drivers/gles3
AgeCommit message (Collapse)Author
2022-09-12Fix multiwindow support in GLES3 for X11, Windows, and MacOS.clayjohn
Instead of updating all viewports, then blitting all viewports to the backbuffer, then swapping all buffers, we run through all viewports and render, blit, and swap backbuffer before going to the next viewport.
2022-09-12Merge pull request #65544 from clayjohn/lambert-wrapRémi Verschelde
Apply energy conservation to LAMBERT_WRAP diffuse mode by dividing by PI
2022-09-12Apply energy conservation to LAMBERT_WRAP and TOON diffuse modes by dividing ↵clayjohn
by PI
2022-09-12Use proper color type for transparent render targets in GLES3clayjohn
2022-09-07Merge pull request #65016 from timothyqiu/skin-dataRémi Verschelde
Fix crash when executing `TubeTrailMesh.get_faces()` with GLES3
2022-09-06Fix rendering when using WebGL2.clayjohn
Fixes include using proper depth buffer format in 3D (this had previously been fixed already but the changes were lost in a rebase), Remove unused lighting and shadowing code in 2D, and update 2D UBOs using glBufferSubData so that they remain the appropriate size.
2022-09-06Merge pull request #64417 from aaronfranke/has-spaceRémi Verschelde
Replace AABB/Rect2/Rect2i has_no_* methods with has_* methods
2022-09-06Fix various uninitialized member pointersRémi Verschelde
Using this command: ``` find -name "thirdparty" -prune -o -name "*.h" -exec sed -i {} -e '/return /! s/\t\([A-Za-z0-9_]* \*[A-Za-z0-9_]*\)\;/\t\1 = nullptr;/g' \; ``` And then reviewing the changes manually to discard the ones that don't seem correct/safe/good (notably changes to `core` unions).
2022-09-04Replace AABB has_no_volume with has_volumeAaron Franke
Also replace has_no_surface with has_surface
2022-09-03Re-enable per-pixel transparency support on Linux, macOS, and Windows (for ↵bruvzg
Vulkan and OpenGL rendering drivers).
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-30Add a per-light volumetric fog energy propertyHugo Locurcio
Per-light energy gives more control to the user on the final result of volumetric fog. Specific lights can be fully excluded from volumetric fog by setting their volumetric fog energy to 0, which improves performance slightly. This can also be used to prevent short-lived dynamic effects from poorly interacting with volumetric fog, as it's updated over several frames by default unless temporal reprojection is disabled. Volumetric fog shadows now obey Light3D's Shadow Opacity property as well. The shadow fog fade property was removed as it had little visible impact on the final scene's rendering.
2022-08-30Merge pull request #63003 from Geometror/msaa-2dRémi Verschelde
2022-08-29Rename String `plus_file` to `path_join`Aaron Franke
2022-08-29[Web] Rename JavaScript platform to Web.Fabio Alessandrelli
Also rename export name from "HTML5" to "Web".
2022-08-29Fix crash when executing `TubeTrailMesh.get_faces()` with GLES3Haoyu Qiu
2022-08-26Merge pull request #64367 from Mickeon/rename-var-to-strRémi Verschelde
Rename `str2var` to `str_to_var` and similar
2022-08-26Rename `str2var` to `str_to_var` and similarMicky
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too. - `var2str` -> `var_to_str` - `str2var` -> `str_to_var` - `bytes2var` -> `bytes_to_var` - `bytes2var_with_objects` -> `bytes_to_var_with_objects` - `var2bytes` -> `var_to_bytes` - `var2bytes_with_objects` -> `var_to_bytes_with_objects` - `linear2db` -> `linear_to_db` - `db2linear` -> `db_to_linear` - `deg2rad` -> `deg_to_rad` - `rad2deg` -> `rad_to_deg` - `dict2inst` -> `dict_to_inst` - `inst2dict` -> `inst_to_dict`
2022-08-23Add font LCD sub-pixel anti-aliasing support.bruvzg
2022-08-22Merge pull request #60309 from The-O-King/octRémi Verschelde
2022-08-20Merge pull request #62046 from clayjohn/vertexless-drawMax Hilbrunner
Allow creating meshes without vertex positions
2022-08-19Remove requirement to have vertex positions when creating a mesh. Meshes can ↵clayjohn
now be constructed from an index buffer alone
2022-08-19Merge pull request #64167 from clayjohn/screen-texture-hintMax Hilbrunner
Add shader uniform hints for screen textures
2022-08-18Use a const ref for the bone AABB in rendering codeAaron Franke
2022-08-17Merge pull request #64416 from aaronfranke/aabbClay John
Don't try to merge unused bone AABBs in the rendering server
2022-08-14Don't try to merge unused bone AABBs in the rendering serverAaron Franke
2022-08-13Implement Octahedral on OpenGL3Omar El Sheikh
2022-08-13Implement MSAA for 2D [Vulkan only]Hendrik Brucker
2022-08-12Bind uniform buffer locations for lights even when no lights present to ↵clayjohn
comply with strict webGL drivers
2022-08-09Add shader uniform hints for screen textures so users can specify custom ↵clayjohn
filter and repeat modes. At this time, it works best in the Vulkan Renderers as they support using multiple samplers with the same texture. In GLES3 this feature really only allows you to use the screen texture without mipmaps if you want to save the cost of generating them.
2022-08-08Fix macOS and iOS defines in the rendering code.bruvzg
2022-08-08Merge pull request #62547 from clayjohn/ref_vec_pbrRémi Verschelde
2022-08-07Add a shadow opacity property to Light3DHugo Locurcio
This can be used to make shadows translucent for a specific light. The light distance fade system also uses this to smoothly fade the shadow when the light fade transition distance is greater than 0.
2022-08-06Check also GLES3 in CIRafał Mikrut
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-04Force disable S3TC support on Android/iOS since we don't handle itRémi Verschelde
Fixes #63909 for now. This could be improved in the future if we want to properly support S3TC on mobile.
2022-08-02Add spatial built-ins (camera-pos, object-pos, camera-eye etc.)Patrick Exner
2022-08-02Merge pull request #51672 from Calinou/shader-add-hint-transparent-textureRémi Verschelde
Add `hint_transparent` to use a transparent black placeholder texture
2022-08-01Add `hint_transparent` to use a transparent black placeholder textureHugo Locurcio
This can be used in shaders to avoid the need to supply a transparent placeholder texture manually.
2022-08-01Fix various bugs in GLES3 renderer that stopped it from running on webclayjohn
2022-08-01Merge pull request #63766 from Chaosus/fix_shader_instance_uniformYuri Rubinsky
2022-08-01Fix passing values to the instance uniforms in the shaderYuri Rubinsky
2022-08-01Merge pull request #63761 from BastiaanOlij/gles3_scene_singleton_initRémi Verschelde
2022-08-01Initialise singleton in RendererSceneGLES3Bastiaan Olij
2022-08-01Merge pull request #63587 from clayjohn/specular-occlusionRémi Verschelde
Treat specular less than 0.02 as occlusion