Age | Commit message (Collapse) | Author |
|
|
|
Changed some code reported by LGTM and Coverity
|
|
|
|
Fix inconsistent lighting in GLES2
|
|
|
|
|
|
Issue was possibily being caused by duplicating a light even when that
light was not in the render_light_instances array.
|
|
This is a straight copy-paste of the code from
`drivers/gles3/rasterizer_canvas_gles3.cpp`. It is subject to the
same restrictions as the GLES3 implementation: it only works
on desktop platforms as they use OpenGL instead of OpenGL ES.
|
|
For clarity, assign-to-release idiom for PoolVector::Read/Write
replaced with a function call.
Existing uses replaced (or removed if already handled by scope)
|
|
When setting the default precision type for uniforms (before compiling
the shader) prevent boolean uniforms from having one set. Booleans can't
have a precision type and on some Android devices this caused a
compilation failure.
Fixes #30317
|
|
Scale vertex lit lights by environment scale
|
|
|
|
Remove always true/false values
|
|
|
|
|
|
|
|
Fixes crash with rigged meshes on some OpenGLES2 devices
|
|
Non-tools OpenGLES2 devices that use the USE_SKELETON_SOFTWARE path (i.e. do not support float texture) depend on surface->data being set containing the bone IDs and weights (rasterizer_scene_gles2.cpp, line 1456, RasterizerSceneGLES2::_setup_geometry). However currently if TOOLS_ENABLED is not defined, surface->data is not stored in main memory in rasterizer_storage_gles2.cpp. This causes a crash in rasterizer_scene_gles2.cpp when a rigged object comes into view.
This fix addresses the specific case of skinned objects when USE_SKELETON_SOFTWARE is active, and stores a copy of the bone data, as is done when TOOLS_ENABLED is defined. This fixes the crash by allowing the same mechanism as on desktop, without adding the memory overhead of storing all vertex data where not required.
Fixes #28298
|
|
Add an option to disable boot splash filtering
|
|
Disabling filtering is usually desired in projects using a pixel art style.
This closes #19415.
|
|
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.
|
|
|
|
Added constant support to shaders
|
|
Small fixes to unrechable code, possibly overflows, using NULL pointers
|
|
Make `fix_headers.py` script compatible with Python 3.
|
|
Use def ANDROID_ENABLED so android features are not included in web builds
|
|
builds
|
|
|
|
|
|
Co-authored-by: DavidSichma <sichmada@gmail.com>
|
|
Separate culling state management from material state in GLES2
|
|
Issue introduced in #28796.
|
|
|
|
Use highp precision in the gles2 fragment shader if available
|
|
The use of different default precision values (highp in vertex; mediump
in fragment) for uniform variables caused the shader program to not link properly on some android
devices/emulators.
|
|
Fix "no depth test" and render_priority sorting
|
|
GLES2: Allow Viewports to render directly to screen
|
|
|
|
|
|
|
|
Using codespell 1.15.0.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
doubleclick
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
|
|
Added radiance when using clear color
|
|
|
|
|
|
Fixes bug when setting projection matrix in shader GLES2
|
|
Added MSAA to GLES2 backend
|
|
Fix SHADOWS_DISABLED flag in GLES2
|
|
If a non-imported texture resource file (e.g. DDS) gets updated the editor
doesn't reload it. The cause of the problem is two-fold:
First, the code of ImageTexture assumes that textures are always imported
from an image, but that's not the case for e.g. DDS. This change thus adds
code to issue a resource reload in case an image reload is not possible
(which is the case for non-imported texture resources).
Second, the code is filled with bogus calls to Image::get_image_data_size()
to determine the mipmap offset when that should be done using
Image::get_image_mipmap_offset(). Previous code literally passed the integer
mip level value to Image::get_image_data_size() where that actually expects
a boolean. Thus this part of the change might actually solve some other
issues as well.
To be pedantic, the texture_get_data() funciton of the rasterizer drivers is
still quite a mess, as it only ever returns the whole mipchain when
GLES_OVER_GL is set (practically only on desktop builds) but this change does
not attempt to resolve that.
|
|
Signed-off-by: Guilherme Souza <gdsdsilva@inf.ufpel.edu.br>
|
|
|