Rémi Verschelde
baab976d0f
Merge pull request #10643 from BastiaanOlij/camera_server
...
CameraServer class
2019-06-16 10:22:26 +02:00
Hugo Locurcio
786a7341a7
Add an option to disable boot splash filtering
...
Disabling filtering is usually desired in projects using a pixel art style.
This closes #19415 .
2019-06-15 23:53:39 +02:00
Rémi Verschelde
68735d2a88
Fix compilation warnings in JS and Windows builds
...
Warnings raised by Emscripten 1.38.0 and MinGW64 5.0.4 / GCC 8.3.0.
JS can now build with `werror=yes warnings=extra`.
MinGW64 still has a few warnings to resolve with `warnings=extra`,
and only one with `warnings=all`.
Part of #29033 and #29801 .
2019-06-15 14:40:45 +02:00
BastiaanOlij
02ea99129e
Adding a new Camera Server implementation to Godot.
...
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.
2019-06-15 21:30:32 +10:00
Fabio Alessandrelli
9773350537
Fix HTML5 build failed due to undefined symbol
2019-06-14 23:32:48 +02:00
Rémi Verschelde
ae6e562bd8
Merge pull request #29628 from qarmin/fix_invalid_write_mesh
...
Fix write outside array in mesh_add_surface
2019-06-13 10:01:20 +02:00
Rémi Verschelde
c8db517993
Merge pull request #29316 from Chaosus/shader_const
...
Added constant support to shaders
2019-06-12 14:26:45 +02:00
Rémi Verschelde
971b5160c6
Merge pull request #29306 from qarmin/small_code_fixes
...
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-12 12:49:21 +02:00
Rémi Verschelde
30e8b53c38
Merge pull request #29680 from akien-mga/fix-headers
...
Add missing license headers
2019-06-11 19:01:40 +02:00
Rémi Verschelde
f18121824c
Add missing license headers
...
Make `fix_headers.py` script compatible with Python 3.
2019-06-11 15:33:32 +02:00
Rémi Verschelde
6d16f2f053
Fix error macro calls not ending with semicolon
...
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
2019-06-11 14:49:34 +02:00
Rémi Verschelde
0677383907
Merge pull request #29496 from clayjohn/dlopen-fix-gles2
...
Use def ANDROID_ENABLED so android features are not included in web builds
2019-06-11 11:48:38 +02:00
qarmin
99ba021404
Fix invalid crash in mesh_add_surface
2019-06-09 14:49:59 +02:00
clayjohn
9af94d650f
use def ANDROID_ENABLED so android features are not included in javascript builds
2019-06-04 23:12:20 -07:00
qarmin
8245db869f
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-03 21:52:50 +02:00
clayjohn
2b8b1d7c46
added MultiMeshInstance2D node for using MultiMesh in 2D
2019-06-03 12:11:54 -07:00
Hugo Locurcio
cbd31d9f0b
Fix errors when attempting to set UNIX permissions when unavailable
...
This makes exporting from Windows to Linux work again.
This closes #29416 .
2019-06-03 14:35:33 +02:00
Chaosus
c2d4abf62e
Added constant support to shaders
...
Co-authored-by: DavidSichma <sichmada@gmail.com>
2019-06-01 13:41:07 +03:00
Rémi Verschelde
c34636cbc4
Merge pull request #24943 from aqnuep/issue-18201
...
Mute errors on surface->index_array_len == 0 in the GLES3 renderer
2019-06-01 12:12:09 +02:00
Rémi Verschelde
bac7e22cb1
Merge pull request #29236 from clayjohn/gles2-mirror
...
Separate culling state management from material state in GLES2
2019-05-30 15:01:50 +02:00
Rémi Verschelde
603bb98340
Merge pull request #29188 from Calinou/improve-ssao-performance-quality
...
Improve SSAO performance and quality
2019-05-30 14:27:25 +02:00
Rémi Verschelde
c2e2bcbca9
Fix -Werror=maybe-uninitialized in GLES2 on release builds
...
Issue introduced in #28796 .
2019-05-29 16:40:06 +02:00
qarmin
66a36ba474
Fix some unincialised variables
2019-05-28 19:12:19 +02:00
clayjohn
2b59bd7695
separate culling state management from material
2019-05-27 11:45:53 -07:00
Rémi Verschelde
9f6eb3882c
Merge pull request #29182 from clayjohn/radiance_map
...
Fix radiance map settings
2019-05-27 17:33:45 +02:00
Rémi Verschelde
b9ee3f3d64
Merge pull request #29014 from mbrlabs/gles2_precision_fix
...
Use highp precision in the gles2 fragment shader if available
2019-05-27 12:18:47 +02:00
Hugo Locurcio
eb0cced3c0
Improve SSAO performance and quality
...
This decreases the number of samples significantly, leading to a
notable performance increase with only a very slight loss in
visual quality.
This also tweaks the default SSAO settings to use 3×3 blurring,
which makes noise patterns much less visible.
2019-05-26 12:01:01 +02:00
clayjohn
4c55a909ad
fix radiance map settings
2019-05-25 18:57:32 -07:00
Marcus Brummer
502dbc7c4a
Use highp precision for gles2 shader uniforms if not explicitly set.
...
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.
2019-05-25 14:26:08 +02:00
Rémi Verschelde
da617b7943
Merge pull request #29132 from clayjohn/sort_depth_fix
...
Fix "no depth test" and render_priority sorting
2019-05-24 17:46:06 +02:00
Rémi Verschelde
01c41c782b
Merge pull request #28796 from clayjohn/GLES2-optimization
...
GLES2: Allow Viewports to render directly to screen
2019-05-24 17:31:44 +02:00
clayjohn
3365595254
do not compute fog when using unshaded in GLES2
2019-05-23 17:17:27 -07:00
clayjohn
2abe7deae8
fix no depth test and render_priority sorting
2019-05-23 09:21:57 -07:00
Rémi Verschelde
2b1c3878f9
Merge pull request #29031 from BastiaanOlij/alpha_shadow
...
Implement shadow to opacity
2019-05-23 13:37:54 +02:00
Rémi Verschelde
26e0cc7aa3
Merge pull request #29041 from hbina/add_const
...
add const to methods that return literals
2019-05-21 15:16:41 +02:00
Bastiaan Olij
3ea778e66e
Implement shadow to opacity
2019-05-21 20:07:46 +10:00
hbina085
f78baa5f93
added a const keyword for a methods that return constant literal...
2019-05-21 02:16:30 -04:00
clayjohn
cc2d862733
Scale environment lighting correctly in GLES3
2019-05-19 17:59:23 -07:00
Rémi Verschelde
e0574e1d98
Fix typos with codespell
...
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
```
2019-05-19 13:10:35 +02:00
clayjohn
55d11330b0
fix lighting bug introduced in clear color changes
2019-05-14 15:04:54 -07:00
Rémi Verschelde
aa3c5f59f2
Merge pull request #27898 from clayjohn/metallic_radiance
...
Added radiance when using clear color
2019-05-14 07:32:01 +02:00
clayjohn
65c211d303
Implement ability to render viewports directly to screen
2019-05-13 15:20:15 -07:00
clayjohn
5c252092e1
added radiance when using clear color and fixed brdf
2019-05-13 12:26:54 -07:00
Rémi Verschelde
86a74e2cb3
Merge pull request #27798 from clayjohn/gles2-proj-mat-bug
...
Fixes bug when setting projection matrix in shader GLES2
2019-05-13 17:59:40 +02:00
Rémi Verschelde
e0517a12c5
Merge pull request #28518 from clayjohn/GLES2-MSAA
...
Added MSAA to GLES2 backend
2019-05-13 17:46:11 +02:00
Rémi Verschelde
a0a5047cfd
Merge pull request #28723 from SouzaGuilherme/fix_shadows
...
Fix SHADOWS_DISABLED flag in GLES2
2019-05-13 17:22:57 +02:00
Daniel Rakos
e34eb5c26c
Fix texture resource reload bug
...
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.
2019-05-08 17:22:40 +02:00
Guilherme Souza
b363125568
Fix SHADOWS_DISABLED flag in GLES2
...
Signed-off-by: Guilherme Souza <gdsdsilva@inf.ufpel.edu.br>
2019-05-07 12:42:28 -03:00
clayjohn
a3d5aec68d
added MSAA to GLES backend
2019-05-02 14:24:20 -07:00
marxin
cdf54d6c5f
Ignore a warning in _get_socket_error (-Wlogical-op).
...
drivers/unix/net_socket_posix.cpp: In member function 'NetSocketPosix::NetError NetSocketPosix::_get_socket_error()':
drivers/unix/net_socket_posix.cpp:197:22: warning: logical 'or' of equal expressions [-Wlogical-op]
197 | if (errno == EAGAIN || errno == EWOULDBLOCK)
| ^
and:
modules/mono/utils/string_utils.cpp: In function 'int {anonymous}::sfind(const String&, int)':
modules/mono/utils/string_utils.cpp:68:48: error: logical 'or' of collectively exhaustive tests is always true [-Werror=logical-op]
found = src[read_pos] == 's' || (c >= '0' || c <= '4');
~~~~~~~~~^~~~~~~~~~~
2019-05-02 11:11:52 +02:00
Rémi Verschelde
dd2cd06165
Merge pull request #25670 from aqnuep/bake_mode_affect_gi_prove
...
Disable GI probe capturing lights with bake mode disabled
2019-04-30 18:33:34 +02:00
Rémi Verschelde
a7f00f3bac
Merge pull request #28530 from akien-mga/scons-prepend-cpppath
...
SCons: Always use env.Prepend for CPPPATH
2019-04-30 18:23:38 +02:00
clayjohn
e37d723695
fixes bug when setting projection matrix
2019-04-30 08:36:38 -07:00
Rémi Verschelde
a5c619dc8d
Merge pull request #28520 from clayjohn/GLES2-alpha-draw-order
...
Fixed GLES2 transparency order
2019-04-30 17:20:05 +02:00
Rémi Verschelde
d52b70fb5e
SCons: Always use env.Prepend for CPPPATH
...
Include paths are processed from left to right, so we use Prepend to
ensure that paths to bundled thirdparty files will have precedence over
system paths (e.g. `/usr/include` should have lowest priority).
2019-04-30 13:12:06 +02:00
clayjohn
7ae3809f4b
Fixed GLES2 transparency order
2019-04-29 12:22:41 -07:00
Rémi Verschelde
a3617f6ca8
Merge pull request #28431 from SouzaGuilherme/master
...
Adds flag AMBIENT_LIGHT_DISABLED to GLES2
2019-04-29 16:55:36 +02:00
Guilherme Souza
61a844aa61
Adds flag AMBIENT_LIGHT_DISABLED to GLES2
...
Signed-off-by: Guilherme Souza <gdsdsilva@inf.ufpel.edu.br>
2019-04-25 20:25:05 -03:00
Rémi Verschelde
c2a669a9f0
SCons: Review uses of CCFLAGS, CXXFLAGS and CPPFLAGS
...
Many contributors (me included) did not fully understand what CCFLAGS,
CXXFLAGS and CPPFLAGS refer to exactly, and were thus not using them
in the way they are intended to be.
As per the SCons manual: https://www.scons.org/doc/HTML/scons-user/apa.html
- CCFLAGS: General options that are passed to the C and C++ compilers.
- CFLAGS: General options that are passed to the C compiler (C only;
not C++).
- CXXFLAGS: General options that are passed to the C++ compiler. By
default, this includes the value of $CCFLAGS, so that setting
$CCFLAGS affects both C and C++ compilation.
- CPPFLAGS: User-specified C preprocessor options. These will be
included in any command that uses the C preprocessor, including not
just compilation of C and C++ source files [...], but also [...]
Fortran [...] and [...] assembly language source file[s].
TL;DR: Compiler options go to CCFLAGS, unless they must be restricted
to either C (CFLAGS) or C++ (CXXFLAGS). Preprocessor defines go to
CPPFLAGS.
2019-04-24 16:57:58 +02:00
Daniel Rakos
de33ef2d1b
Disable GI probe capturing lights with bake mode disabled
...
The bake mode property of lights previously didn't affect GI probes.
This change makes the GI probe ignore lights that have their bake mode
set to disabled.
2019-04-23 11:36:36 +02:00
Juan Linietsky
cd4449e7ab
Add FileAccess::set_unix_permissions for Unix platforms
2019-04-07 15:45:30 -03:00
Juan Linietsky
65f3a953de
Remove SIGCHILD handle in OS_Unix, interferes with pclose()
2019-04-07 15:45:00 -03:00
Rémi Verschelde
a342131eba
Merge pull request #27673 from qarmin/small_fixes
...
Small fixes, mostly duplicated code
2019-04-22 12:00:34 +02:00
Juan Linietsky
04847ef5f9
Added ability for multiple images to be imported as an atlas
...
This adds support for groups in the import system, which point to a single file.
Add property hint for saving files in file field
2019-04-19 15:56:34 -03:00
Rémi Verschelde
dab8f8c953
Merge pull request #27967 from clayjohn/fix-mip-bug
...
Fixed bug in computing mip maps from screen texture
2019-04-15 13:05:50 +02:00
clayjohn
670c1b10b2
fixed bug in mip map sigma
2019-04-12 17:48:38 -07:00
Hein-Pieter van Braam
f75b9e6246
Merge pull request #27815 from Faless/unix/mem_access
...
Fix jump over uninitialized value in OS Unix/X11
2019-04-10 11:06:37 +02:00
Rémi Verschelde
c8994b56f9
Style: Apply new changes from clang-format 8.0
...
It seems to stay compatible with formatting done by clang-format 6.0 and 7.0,
so contributors can keep using those versions for now (they will not undo those
changes).
2019-04-09 17:09:48 +02:00
Rémi Verschelde
4b2c79c471
Merge pull request #27806 from JFonS/fix_27690
...
Fix hint_range for GLES2 shader uniforms
2019-04-09 17:09:27 +02:00
Fabio Alessandrelli
0bcf0314f7
Fix jump over uninitialized value in OS Unix/X11
2019-04-09 15:12:55 +02:00
Rémi Verschelde
d65cbddc8d
Merge pull request #27589 from Chaosus/fix_file
...
Fix File switching between reading and writing, opened with READ_WRITE on Windows
2019-04-08 12:12:19 +02:00
JFonS
059078f075
Fix hint_range for GLES2 shader uniforms
2019-04-08 11:53:57 +02:00
qarmin
856a8226a5
Small fixes, mostly dupicated code
2019-04-08 11:03:37 +02:00
Rémi Verschelde
b60754ab40
Merge pull request #26839 from toasteater/fix/keep-linear
...
Respect keep_3d_linear when transparent_bg is on.
2019-04-08 10:58:59 +02:00
Rémi Verschelde
c562a7d149
Merge pull request #27067 from shartte/remove-context-gl
...
Remove ContextGL
2019-04-07 12:38:55 +02:00
Rémi Verschelde
4942e96897
Merge pull request #27527 from BastiaanOlij/render_ext_target
...
Add option to have viewport render into supplied texture (VR)
2019-04-07 11:11:50 +02:00
Rémi Verschelde
b182e038e7
GLES3: Fix regression in particles buffer initialization
...
Bug introduced in #26343 where `(float *)` was mistakenly converted
to `(uint8_t *)`, so we were getting `2` instead of `8`.
Fixes #27705 .
2019-04-06 21:01:51 +02:00
Sebastian Hartte
3a8c6db513
Remove ContextGL since as an abstraction it's unused.
2019-04-06 17:52:52 +02:00
Rémi Verschelde
d450220bae
Use mix rate and output latency constants in audio drivers
...
Fix default mix rate in Xaudio2 and potential shadowing issue in JAndroid.
2019-04-06 12:37:25 +02:00
Rémi Verschelde
7ca9863079
Merge pull request #23837 from fire/asset_import
...
Add Open Asset Importer to Godot.
2019-04-06 00:12:46 +02:00
Bastiaan Olij
8349d4fbd9
Add option to have viewport render into supplied texture
2019-04-06 08:24:58 +11:00
Rémi Verschelde
afe45f9796
Merge pull request #26847 from IronicallySerious/capitalise-drive-letter-case
...
Capitalise drive letters
2019-04-05 16:58:04 +02:00
K. S. Ernest (iFire) Lee
e3ef7f214a
Add Open Asset Import Library to Godot.
...
FBX support and MMD (pmx) support.
Normals, Albedo, Metallic, and Roughness through Arnold 5 Materials for Maya FBX.
Maya FBX Stingray PBS support.
Importing FBX static meshes work.
Importing FBX animations is a work in progress.
Supports FBX 4 bone influence animations.
Supports FBX blend shapes.
MMDs do not have an associated animation import yet.
Sponsored by IMVU Inc.
2019-04-05 07:17:52 -07:00
Rémi Verschelde
cffbb99327
Merge pull request #27411 from KidRigger/raster_store
...
Added GLES2 RenderStorage Info calculations.
2019-04-05 15:22:22 +02:00
toasteater
7cbfce7a8c
Respect keep_3d_linear when transparent_bg is on.
...
When transparent_bg is on, or the render target is too small,
Godot would skip postprocessing and disregard keep_3d_linear.
This fixes #26817 .
2019-04-05 20:42:59 +08:00
Chaosus
8d12dfa24d
Fix File opened with READ_WRITE on Windows
...
To allows use read and write anytime and in any order
2019-04-05 15:15:40 +03:00
Rémi Verschelde
25c1363a11
Merge pull request #27597 from marxin/fix-Wnon-virtual-dtor-warnings
...
Fix -Wnon-virtual-dtor warnings.
2019-04-02 18:25:02 +02:00
marxin
e7f22ebdcd
Enable warnings=extra on clang and GCC testers.
...
And remove 2 warnings from warnings=extra.
2019-04-02 17:14:47 +02:00
marxin
f9f2413e69
Fix -Wnon-virtual-dtor warnings.
...
Example of the warning:
./core/script_language.h:198:7: warning: 'class ScriptCodeCompletionCache' has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor]
2019-04-02 14:07:29 +02:00
Rémi Verschelde
ba1a168659
Merge pull request #27505 from clayjohn/depth_bug
...
Keep DEPTH from causing compile error in GLES2
2019-04-01 14:53:18 +02:00
clayjohn
5056b4a02c
keep DEPTH from causing compile error in GLES2
2019-03-28 22:14:41 -07:00
Daniel Rakos
849596c40c
Fixed handling of depth texture so it's resolved and bound when needed
...
- 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 .
2019-03-26 17:48:22 +01:00
Anish Bhobe
4839b17f93
Added GLES2 RenderStorage Info calculations.
...
Proper counting code has been added to update info struct.
Extra: Added the render_info_capture calculations.
Fixes : #27273
2019-03-25 23:08:23 +05:30
Pedro J. Estébanez
9c3ddf05cb
Revert accidental commits
...
This reverts commit fb37284c02
.
This reverts commit 4db0f51b9a
.
2019-03-20 21:43:55 +01:00
Pedro J. Estébanez
fb37284c02
Create class for shared memory blocks [wip]
2019-03-20 20:44:43 +01:00
Rémi Verschelde
ac483345c4
GLES2: Convert unsupported float texture types to 8-bit types
2019-03-12 12:14:37 +01:00
Rémi Verschelde
3ebde6fac3
GLES2: Fix comments in previous commit that broke rendering (!)
...
Do NOT use "[vertex]" in a comment...
Kids, don't try to learn OpenGL on a production branch right before
a stable release.
2019-03-12 00:26:56 +01:00
Rémi Verschelde
74e224f2c7
GLES2: Add comments around EXT_shader_texture_lod check
...
To avoid reintroducing bugs as I did in #26928 and #26932 .
texture2DLodEXT and textureCubeLodEXT are only for the fragment shader with
https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_shader_texture_lod.txt
In the vertex shader, texture2DLod and textureCubeLod are built-in.
2019-03-11 23:18:21 +01:00
Rémi Verschelde
764671d2d0
Revert "GLES2: Ensure extension checks for texture2DLod"
...
This reverts commit f5f565e3e4
.
2019-03-11 23:12:49 +01:00
Rémi Verschelde
4cdb2d0502
Revert "GLES2: Fix regression on texture2DLod extension checks"
...
This reverts commit 8c2d38152f
.
2019-03-11 23:12:39 +01:00