summaryrefslogtreecommitdiff
path: root/drivers/gles2
AgeCommit message (Collapse)Author
2018-08-27Merge pull request #21387 from hpvb/fix-15324Rémi Verschelde
Fall back to GLES2 if GLES3 is not working
2018-08-27Revert "Fix some 3D texture issues"Juan Linietsky
2018-08-27Merge pull request #21469 from akien-mga/glsl-clang-formatRémi Verschelde
Style: Enable clang-format on GLSL shaders
2018-08-27Style: Enable clang-format on GLSL shadersRémi Verschelde
As of clang-format 6.0.1, putting the `/* clang-format off */` hint around our "invalid" `[vertex]` and `[shader]` statements isn't enough to prevent a bogus indent of the next comments and first valid statement, so we need to enclose that first valid statement in the unformatted chunk.
2018-08-26Partial fixes for 3D texture issueselasota
2018-08-26Fall back to GLES2 if GLES3 is not workingHein-Pieter van Braam
This adds a static is_viable() method to all rasterizers which has to be called before initializing the rasterizer. This allows us to check what rasterizer to use in OS::initialize together with the GL context initialization. This commit also adds a new project setting "rendering/quality/driver/driver_fallback" which allows the creator of a project to specify whether or not fallback to GLES2 is allowed. This setting is ignored for the editor so the editor will always open even if the project itself cannot run. This will hopefully reduce confusion for users downloading projects from the internet. We also no longer crash when GLES3 is not functioning on a platform. This fixes #15324
2018-08-24Fix generation of env map, closes #18880Juan Linietsky
2018-08-24Merge pull request #21364 from akien-mga/shaders-styleRémi Verschelde
Style: Fix code formatting in GLSL shaders
2018-08-24Make some debug prints verbose-only, remove othersRémi Verschelde
2018-08-24Merge pull request #21351 from akien-mga/print_verboseRémi Verschelde
Add print_verbose to print to stdout only in verbose mode
2018-08-24Style: Fix code formatting in GLES2 shadersRémi Verschelde
2018-08-24Merge pull request #21357 from karroffel/gles2-shader-language-f-to-pay-respectsThomas Herzog
[GLES2] fix wrong shader compiler output
2018-08-24Merge pull request #21318 from karroffel/gles2-shader-fixesThomas Herzog
[GLES2] attempt to fix some android problems
2018-08-24[GLES2] fix wrong shader compiler outputThomas Herzog
The `f` postfix was working fine on dekstop GL but not on some mobile drivers.
2018-08-24[GLES2] fix multimesh byte colorsThomas Herzog
When using float colors, everything works fine, but when using the byte format, the colors were read incorrectly.
2018-08-24Add print_verbose to print to stdout only in verbose modeRémi Verschelde
Equivalent of the cumbersome: if (OS::get_singleton()->is_stdout_verbose()) print_line(msg);
2018-08-23Merge pull request #21325 from karroffel/gles2-texture-flagsRémi Verschelde
[GLES2] fix texture flags not having an effect
2018-08-23[GLES2] fix texture flags not having an effectThomas Herzog
2018-08-23Merge pull request #21321 from karroffel/gles2-canvas-modulateThomas Herzog
[GLES2] fix CanvasModulate not working
2018-08-23[GLES2] fix CanvasModulate not workingThomas Herzog
That's what happens when you forget about your debug shortcuts. Fixes #21025
2018-08-23[GLES2] fix depth for alpha passThomas Herzog
2018-08-23Merge pull request #21317 from ↵Thomas Herzog
karroffel/gles2-canvas-texture-sampler-long-branch-name [GLES2] fix canvas_item sampler allocation
2018-08-23[GLES2] attempt to fix some android problemsThomas Herzog
2018-08-23[GLES2] fix canvas_item sampler allocationThomas Herzog
2018-08-23enable hardware skeletonsThomas Herzog
2018-08-21BPTC supportelasota
2018-08-20Revert "Batch GLES2 draw calls"Marcin Zawiejski
This reverts commit f55039b194bbbd8d797b667d67e5677fb429d356. The GLES2 batching seems to require more testing and tweaking in order to actually make the performance better on Android devices. It's been proved with #21184 that the current implementation has it's drawbacks therefore I suggest reverting the commit for now.
2018-08-18Merge pull request #20965 from dragmz/gles2_batchingThomas Herzog
Batch GLES2 draw calls
2018-08-17Removed the lines forcing black screen on android GLES2dumitru.stama
2018-08-15[gles2] fix black bar artifactsThomas Herzog
2018-08-15Merge pull request #20941 from codingHahn/fix-normals-on-shaderRémi Verschelde
Fix handling of normals that approach 1
2018-08-14Reduce verbosity for unsupported GLES2 bg modesMarcin Zawiejski
2018-08-14Batch GLES2 draw callsMarcin Zawiejski
Adds GLES2 draw calls batching for the same render list item that uses multiple rasterizer commands (e.g. Label node; a node with multiple GDScript draw_* calls).
2018-08-13[gles2] added ImmediateGeometry renderingThomas Herzog
2018-08-12Fix handling of normals that approach 1Nick Hahn
2018-08-08Fix mat4 uniform writesMarcin Zawiejski
2018-08-08Merge pull request #20805 from karroffel/gles2-misc-fixesThomas Herzog
unhacking some GLES2 code
2018-08-08GLES2 refactorsThomas Herzog
This commit unhacks some parts of the 3D rendering. Most notably: - possibility to use negative texture units (no longer weird manual index allocation for user samplers) - refactoring of light code, now sorts in a different way, should yield better performance - fixes a crash while saving (because of "Illegal instruction" execution) when using a decent compiler (clang, it's clang. Thanks GCC for not telling me about UB).
2018-08-08Merge pull request #20681 from DavidSichma/masterJuan Linietsky
Keeping track of discard
2018-08-07Tweak the default SpatialMaterial propertiesHugo Locurcio
Roughness is now set to 1 by default and albedo is now white, even on meshes that do not have any materials defined. This means there is no longer a visual difference between a mesh with no materials defined and a mesh with a default SpatialMaterial defined.
2018-08-06Added proper import support for 3D and Array texturesJuan Linietsky
2018-08-06Merge pull request #20597 from karroffel/tex3dJuan Linietsky
add 3D textures
2018-08-04Fix uniform set for mat3 and mat4Marcin Zawiejski
2018-08-02Keeping track of discardDavid Sichma
Shader compilation now keeps track of the discard key word. Previously only variables were monitored. But discard, which needs special treatment in some cases, went unnoticed by the compiler as discard is not a variable but a flow control. This commit adds monitoring for discard.
2018-07-30add 3D texturesThomas Herzog
2018-07-27add initial GLES2 3D rendererkarroffel
2018-07-26Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam
This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
2018-07-25Merge pull request #20448 from volzhs/duplicated-codeRémi Verschelde
Remove duplicated codes
2018-07-25Merge pull request #18368 from Gamblify/RasterizerEngineSyncRémi Verschelde
sync rasterizers with engine
2018-07-25Remove duplicated codesvolzhs