Commit Graph

1337 Commits

Author SHA1 Message Date
Juan Linietsky 8a5fb669ae
Merge pull request #17421 from Chaosus/fixshaderbugs
Fix few bugs in shader definitions
2018-04-08 09:33:12 -03:00
Juan Linietsky 1570a72eee
Merge pull request #17742 from marcelofg55/audio_device_list
Added new audio device functions to set/get the audio device
2018-04-07 16:40:47 -03:00
bruvzg ddae098dee
Experimental support for windows with per-pixel transparency (macOS, X11 and Windows). 2018-04-07 17:11:45 +03:00
Rémi Verschelde a1f835df77
Merge pull request #17775 from sketchyfun/multiply_blendmode_fix
multiply blend mode fix for spatial materials
2018-04-04 22:41:36 +02:00
Rémi Verschelde 9ad1800298
Merge pull request #17869 from TomDobbelaere/rename-error-usability
Trigger rename_error's close_fail_notify only after exhausting attempts on Windows
2018-04-03 13:21:53 +02:00
Tom Dobbelaere a4fae0e5e3 Trigger IO error only after exhausting attempts 2018-04-03 12:44:16 +02:00
Marcelo Fernandez d21a2019f1 WASAPI driver will now resample when the device rate != audio/mix_rate 2018-03-29 22:56:57 -03:00
JFonS 9c307d4b6c Added flag on SpatialMaterial to disable shadows 2018-03-29 18:46:42 +02:00
Marcelo Fernandez ecc1b34cbc Added new audio device functions to set/get the audio device 2018-03-26 17:41:05 -03:00
Ben Hickling 314a419511 multiply blend mode fix for spatial materials 2018-03-26 14:23:43 +01:00
Rémi Verschelde baa092e99d
Merge pull request #17653 from eska014/rwlock-dummy
Add RWLockDummy for NO_THREADS builds
2018-03-21 17:40:01 +01:00
Poommetee Ketson ff070de986 s/2017/2018/g for gles2, websocket, linux appdata 2018-03-21 16:07:51 +07:00
Leon Krause 25800ffb0e Add RWLockDummy for NO_THREADS builds 2018-03-20 05:37:42 +01:00
Hein-Pieter van Braam bb331d85b8
Merge pull request #17130 from nical/issue-17050
Fix polyline rendering when width <= 1.
2018-03-16 00:04:07 +01:00
Hein-Pieter van Braam 9bc0503c91
Merge pull request #17376 from marcelofg55/file_get_path
Added File.get_path and File.get_path_absolute functions
2018-03-15 22:21:21 +01:00
Marcelo Fernandez a4e64c5454 Added File.get_path and File.get_path_absolute functions 2018-03-13 12:07:37 -03:00
Rémi Verschelde a5476f8562
Merge pull request #16895 from Noshyaar/bmk
Fix get_drive (bookmarks) in linux not working
2018-03-13 14:01:21 +01:00
Rémi Verschelde 92180b4639
Merge pull request #17141 from marcelofg55/uneven_channels
Support for uneven amount of channels on PulseAudio
2018-03-13 13:05:43 +01:00
Wilson E. Alvarez e9ac87390c Fixed several leaks in VisualServerScene, RasterizerSceneGLES3 and RasterizerGLES3 2018-03-13 00:22:08 -04:00
Chaosus 2d428a350e Fix few bugs in shader definitions 2018-03-10 21:00:18 +03:00
bruvzg e256f9d4e5
Add GL_ARB_framebuffer_object extension support check and GL_EXT_framebuffer_object fallback for GLES2 (updated GLAD bindings).
Add GL_ARB_debug_output extension support check on all platforms.
2018-03-05 20:49:47 +02:00
Marcelo Fernandez d780d774aa Clean and expose get_audio/video_driver_* funcs on OS class 2018-03-04 14:18:05 -03:00
Rémi Verschelde 3bab5477ff
Merge pull request #17173 from karroffel/gles2-line-rendering-fix
fix GLES2 line rendering
2018-03-02 13:37:44 +01:00
karroffel 8b82f4ad2e fix GLES2 line rendering
fixes #17147
2018-03-02 12:35:34 +01:00
bruvzg a5a4f3714b
GLES2 renderer support on macOS. 2018-03-02 13:15:12 +02:00
Marcelo Fernandez 00693f4ad0 Support for uneven amount of channels on PulseAudio 2018-03-01 14:10:39 -03:00
karroffel eac4c984df add GLES 2 renderer for 2D
This commit adds a new rendering backend, GLES2, and adds a
project setting to enable it.

Currently this backend can only be used on the X11 platform,
but integrating into other platforms is planned.
2018-03-01 15:12:30 +01:00
Nicolas Silva 20cab06f9a Use GL_LINE_STRIP instead of GL_LINES when drawing polylines. 2018-02-28 23:00:13 -05:00
bruvzg e3c2778d7e
Add missing return statements (iOS and server). 2018-02-25 01:11:03 +02:00
Hein-Pieter van Braam 8cde69f5f2 Fix Windows file case changing
Windows APIs don't really provide a way to change a filename case. This
implements a little juggling to make this work. We first create a
guaranteed unique temporary file, we then replace the original file with
the temporary file and we finally rename it to the desired filename
case.

(cherry picked from commit d69d58deea)
2018-02-24 18:09:20 +01:00
Poommetee Ketson 38865345d9 Particles: fix corrupted scene when saved after convert (2nd try) 2018-02-24 15:58:17 +07:00
Poommetee Ketson 7a1b7ddf6c Fix error spam when using PanoramaSky without texture 2018-02-22 21:43:17 +07:00
Juan Linietsky 7cd867c3fe 2D Skeletons WORK IN PROGRESS 2018-02-21 17:24:00 -03:00
luz.paz 612ab4bbc6 Fix typos with codespell
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Poommetee Ketson 7e5b10b7d3 Fix get_drive (bookmarks) in linux not working 2018-02-21 23:31:50 +07:00
Juan Linietsky 9e3a1e5401 Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion. 2018-02-21 09:39:09 -03:00
Rémi Verschelde 1fbb83de2c
Merge pull request #16467 from godotengine/gles3-light-shader-time
using TIME in light shader enables uses_fragment_time
2018-02-20 11:19:14 +01:00
Rémi Verschelde 4b562aaf0c
Merge pull request #16834 from bojidar-bg/x-rendering-gles3-bug
Fix a rendering bug with screen_texture
2018-02-20 11:11:11 +01:00
Bojidar Marinov ea57a19b34
Fix a rendering bug with screen_texture 2018-02-19 22:07:38 +02:00
Iskustvo 268d7c7c5b [X11] Improving error detection in move_to_trash 2018-02-18 17:02:19 +01:00
Artem Varaksa d35e486228 Clean up some bad words from code comments 2018-02-17 16:00:39 +03:00
K. S. Ernest (iFire) Lee 2e66730061 Create and return LightmapCapture. 2018-02-15 07:34:11 -08:00
K. S. Ernest (iFire) Lee 4e1923a931 Add dummy audio driver, fix dummy rasterizer 2018-02-15 07:34:11 -08:00
Fabio Alessandrelli 2de10aa467 Fixes to OS_Server and DummyRasterizer to match new signatures 2018-02-15 07:34:11 -08:00
Fabio Alessandrelli 72ef766dfa Add dummy Texture handling 2018-02-15 07:34:11 -08:00
Fabio Alessandrelli 8699f643c9 Disable GLES builders and source from server compilation 2018-02-15 07:34:11 -08:00
Fabio Alessandrelli c0dce6e480 Add dummy resterizer driver 2018-02-15 07:34:11 -08:00
Marcelo Fernandez 621d28adef Fix for a possible compile error under OS X 2018-02-14 19:48:35 -03:00
Rémi Verschelde 3ab72da645
Merge pull request #15710 from AndreaCatania/p1
Fixed sky reflection rendering when transparent BG
2018-02-14 16:29:08 +01:00
Rémi Verschelde 70294716af
Merge pull request #15875 from marcelofg55/wasapi_device_change
Improved WASAPI driver so that it always uses the default audio device
2018-02-14 16:09:49 +01:00
Chaosus e1c2bde0ec Fix invalid particle movement when time_scale is zero 2018-02-14 16:44:59 +03:00
Rémi Verschelde dea5a69693
Merge pull request #16408 from Calinou/remove-debugging-prints
Remove a few debugging prints
2018-02-14 11:32:10 +01:00
karroffel bb655856e2 using TIME in light shader enables uses_fragment_time
The GLES3 shader compiler performs certain checks to enable or disable
the usage of certain uniform variables (and with that the set-up of UBOs).

If the `TIME` variable gets used inside the `vertex` function then the
renderer knows that it has to insert that value into the UBO.
The same applies to the `fragment` function.

The `light` function gets executed inside the fragment shader for every
light source that is relevant to the current pixel. If the `TIME` variable
gets used in that function then it needs to be present in the fragment-UBO.
The check for this was missing, so if a shader uses `TIME` inside `light`
but not inside `fragment` then the uniform will not actually be set up.
2018-02-07 11:56:52 +01:00
Hugo Locurcio 84267915f5
Remove a few debugging prints 2018-02-05 11:30:50 +01:00
Marcin Zawiejski 8315aa40cc fix buffer write performance on Windows and Unix 2018-02-04 13:23:23 +01:00
Juan Linietsky 82df614457 Add a proper error when safe save fails. 2018-02-02 23:50:41 -03:00
Marlon Henry Schweigert 87adf9cfba Display set_nodelay to GDScript
Pass enabled arg

Rename set_nodelay to set_no_delay

Add description to the method

Change description
2018-01-30 13:22:15 -02:00
Marcelo Fernandez d5afcf7ab1 Improved WASAPI driver so that it always uses the default audio device 2018-01-19 18:41:23 -03:00
Rémi Verschelde 9f479f096c Fix typos in code and docs with codespell
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
binbitten 92473a9e9e Convert special case RGB10_A2 to RGBA8 when obtaining texture data 2018-01-18 18:05:01 +01:00
Leon Krause cbc194dde6 Fix copy shader in GLSL ES 3.0 2018-01-15 23:46:45 +01:00
Leon Krause e4609acc5d Fix Particles2D in WebGL 2.0 2018-01-15 20:39:17 +01:00
AndreaCatania c34f18acce Fixed sky reflection rendering when transparent BG 2018-01-14 20:28:26 +01:00
Rémi Verschelde e1a0f2bd71
Merge pull request #15636 from mrcdk/fix_canvas_light
Set correct types on a couple variables inside light_compute in canvas.glsl
2018-01-13 01:42:52 +01:00
Rémi Verschelde 4fd4b0399a
Merge pull request #15633 from binbitten/fix-mat2-align
Fix mat2 alignment
2018-01-13 01:39:20 +01:00
binbitten de8f43d95d Fix mat2 alignment 2018-01-12 22:26:50 +01:00
MrCdK 408f4cb146 Set correct types on a couple variables inside the canvas.glsl 2018-01-12 22:02:28 +01:00
Juan Linietsky e56b3439a5 Attempt renaming multiple times on safe file save, and make the behavior optional. Fixes #14339. 2018-01-12 17:03:52 -03:00
Juan Linietsky 0041efec1d Fix mat2 alignment 2018-01-12 12:45:16 -03:00
Juan Linietsky f4d603b902 Fix uniform alignment, closes #14962 2018-01-12 12:43:26 -03:00
Juan Linietsky 3a05d974e0 Instance dependency for particles was not being get rid of. Again fixes #15591 2018-01-12 09:12:31 -03:00
Juan Linietsky e3f02b1a1b Properly fix blend equations for both transparent and non transparent framebuffers. Closes #15047 2018-01-11 19:39:47 -03:00
AndreaCatania 252344f706 Fixed graphic artifact caused by anisotropic filter 2018-01-11 12:55:18 +01:00
Rémi Verschelde e49ddf2984
Merge pull request #15555 from BastiaanOlij/clamp_blends
Clamp blend to fix screen space reflections
2018-01-10 13:36:13 +01:00
Bastiaan Olij ebc96195d8 Clamp blend to fix screen space reflections 2018-01-10 23:23:00 +11:00
Rémi Verschelde f1ef2d5183
Merge pull request #15553 from AlmightyScientist/issue-15453
Shader Language: Fixes EXTRA_MATRIX undefined.
2018-01-10 12:46:52 +01:00
AlmightyScientist 4820910648 Shader Language: Fixes EXTRA_MATRIX undefined.
Fixes #15453.
2018-01-10 12:37:28 +01:00
volzhs b6cff1ba69 Fix stretch aspect keep mode
Fix #15407
Fix #15514
2018-01-10 10:49:26 +09:00
volzhs 1c806abdaa Fix shader compile error on Android
**ERROR**: EffectBlurShaderGLES3: Fragment Program Compilation Failed:
23:191: S0001: Type mismatch, cannot convert from 'int' to 'float'
   At: drivers/gles3/shader_gles3.cpp:168:_display_error_with_code() - EffectBlurShaderGLES3: Fragment Program Compilation Failed:
2018-01-09 16:44:56 +09:00
Jerome67000 87bbaddac3 removed unused project setting rendering/quality/depth_prepass/disable 2018-01-08 21:02:53 +01:00
sambler 384055c86f Fix use of execvp, earlier fix was short sighted and only worked
when godot could be found in PATH.
The correct fix is to use sysctl to get the path to the current executable
this also fixes the ability to call external commands.
2018-01-08 12:07:28 +10:30
Juan Linietsky 4c23f94af9 properly blend interior and exterior ambient in reflection probes, fixes #14695 2018-01-06 19:34:03 -03:00
Juan Linietsky bfeaf27a3e Properly dispose of instance capture data, fixes #14795 2018-01-06 19:06:04 -03:00
Juan Linietsky d72a32bc54 Use better initialization value for normalmap, fixes #14720 2018-01-06 18:09:11 -03:00
Juan Linietsky 9cf19f8dee Ensure depth reads go via alpha render list, fixes #14759 2018-01-06 17:38:39 -03:00
Juan Linietsky a195f81a6a Improve detection of variable writing in shader, fixes #15177 2018-01-06 09:56:47 -03:00
Juan Linietsky 380ee87e80 Fixed problem with missing uninitialized last byte on waveform trip, closes #15316 2018-01-05 16:28:08 -03:00
Juan Linietsky 003f2dab78 Fix dual paraboloid shadow maps, closes #14487 2018-01-05 12:13:52 -03:00
Juan Linietsky 0c86c1ad15 Fixed GIProbe blending, closes #15164 2018-01-05 10:34:31 -03:00
Rémi Verschelde e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Juan Linietsky 6e2ed15ff1 Add support from properly exporting shared objects, needed for GDNative export 2018-01-04 15:43:06 -03:00
Emmanuel Leblond e315c94900 Change OS::initialize signature to return Error (fix segfault on x11) 2018-01-04 15:15:55 +01:00
firefly2442 f066991aa7 found via cppcheck:
remove code that will never run
make definition and declaration names for parameters match
change floats that were being set to bool values
remove pointer that is never used
2018-01-03 21:23:48 -07:00
Rémi Verschelde d65ac7378c Fix crash in OS::execute on FreeBSD
As spotted by @robfram, closes #15288.
Also reviewed other uses of `if (String.find(.*))` for potential similar mistakes, found a wrong (and useless) one in ScriptEditorDialog.
2018-01-04 01:20:20 +01:00
Rémi Verschelde 72d3c474b0
Merge pull request #15170 from ibrahn/fix-particle-leak
RasterizerStorageGLES3, delete particle objects freed by RID
2018-01-04 01:07:54 +01:00
Juan Linietsky 474523d409
Revert "Add missing image format RGB10A2. Fixes #14964" 2018-01-03 16:43:07 -03:00
Ibrahn Sahir 75c624e119 RasterizerStorageGLES3, delete particle objects freed by RID
fixes #15151
2018-01-03 15:52:47 +00:00
Rémi Verschelde 6d812ad27f
Merge pull request #15051 from binbitten/bug-fixes
Add missing image format RGB10A2. Fixes #14964
2018-01-03 10:17:48 +01:00
Juan Linietsky 2c226e4edf Some fixes to improve precision and speed on Android. Fixes precision issues on Mali and PowerVR. 2018-01-02 18:45:00 -03:00
Rémi Verschelde b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Noshyaar 5c636875e4
Merge pull request #14971 from mrcdk/particles_emitting
Set particles emitting to false when particles finish emitting with one-shot enabled
2017-12-27 10:45:36 +07:00
Juan Linietsky c858dbdc4e Fixed proper texture binding for sprite material, fixes #13987 2017-12-26 15:56:18 -03:00
Juan Linietsky c54927a127 Property apply shader parameters, even when materials are being reused, fixes #14012 2017-12-26 15:13:00 -03:00
Juan Linietsky b411029e31
Merge pull request #14796 from AlmightyScientist/issue-14552
Shader Language: Fix Vertex Lighting artifacts.
2017-12-26 12:46:48 -03:00
Juan Linietsky 2b31155baa Fix sidedness check in material. Also remove SIDE built-in. 2017-12-26 11:09:52 -03:00
binbitten 267bad6b4c Add missing image format RGB10A2. Fixes #14964 2017-12-25 21:01:01 +01:00
MrCdK 1f609b7a82 Set particles emitting to false when particles finish emitting with one-shot enabled 2017-12-23 05:23:41 +01:00
Juan Linietsky 7d0cabe9d3 Change skeleton processing to work on global coordinates, should help fix many import problems from Blender, GLTF2, etc. 2017-12-21 17:36:39 -03:00
Juan Linietsky 3ca06e1184 Propertly deinitialize sampler FBO/Texture, fixes #14586,#14805 2017-12-19 15:26:18 -03:00
Guilherme Silva ffe827ab5a Fix pixel snap not being used in 3.0 2017-12-19 15:18:07 -02:00
Enzo Nocera 6c25eabbc5 Shader Language: Fix Vertex Lighting artifacts.
- When using Direction Lighting along with Vertex Lighting,
  putting a SpatialMaterial Roughness to 1.0 causes artifacts to appear.
  (#14552)

Fixes #14552.
2017-12-18 09:15:28 +01:00
Rémi Verschelde aefa23eac1
Merge pull request #14794 from endragor/remove-debug-logs
Remove debug logs that are of no use to end users
2017-12-18 07:40:01 +01:00
Ruslan Mustakov ec31c4f380 Remove debug logs that are of no use to end users 2017-12-18 13:37:37 +07:00
Rémi Verschelde 8f25a2dc11 Cleanup some #if 0'd code 2017-12-17 15:40:24 +01:00
Hein-Pieter van Braam 34991af553 Don't glBindTexture() on viewports without effects
@reduz said there was another place that needed to be checked for a
similar issue but I have to admit I didn't understand.

This fixes #13337
2017-12-16 23:38:02 +01:00
Juan Linietsky a9ddc8f7cf
Merge pull request #14614 from vitrig/fix-immediate-geometry-acts-strangely
Fix #14564 ImmediateGeometry normals act strangely compared to SurfaceTool
2017-12-16 08:59:27 -03:00
Fabio Alessandrelli ac7444023e Move windows networking class to drivers/windows/
Also rename stream_peer_winsock.* to stream_peer_tcp_winsock.* and
StreamPeerWinsock to StreamPeerTCPWinsock.
2017-12-15 18:25:29 +01:00
Fabio Alessandrelli 92067b4714 Remove "const" from PacketPeer get_packet/get_var
They are NOT constant methods, as state by the comment message,
they fetch the last packet and then forget about it, actively
changing the state of the object.
2017-12-15 17:14:17 +01:00
Arnaud PEZEL 6f114c50a7 Fixes built-In "LIGHT" causing fragment compilation error
Add a rename for shader LIGHT built-in, Fix bug #14537
2017-12-14 14:58:13 +01:00
Juan Linietsky f3ad14224e -Add lightmapper
-Fixes to unwrapper (remove degenerates), makes Thekla not crash
-Added optional cancel button in EditorProgress
-Added function to force processing of events (needed for cancel button)
2017-12-14 09:01:27 -03:00
Rémi Verschelde b110813134
Merge pull request #14499 from akien-mga/glsl-bone-type
Fix usage of signed type in skeleton shader
2017-12-13 08:37:56 +01:00
Przemyslaw Czarnota 08c8d46593 Fix #14564 ImmediateGeometry normals act strangely compared to SurfaceTool 2017-12-13 07:45:24 +01:00
Rémi Verschelde 7908dc322a Drop unused OS_Unix::has_data and related logic
Closes #5536.
2017-12-10 17:05:24 +01:00
Rémi Verschelde 663f7e6a61 Fix usage of signed type in skeleton shader
The resulting primitive is drawn as GL_UNSIGNED_SHORT, so uvec4 should be used.
Fixes #12804.
2017-12-10 13:58:36 +01:00
Rémi Verschelde 028f959fb1 PropertyEditor: Filter out resource_local_to_scene
This lets the empty "Global" category disappear again.
Also silence a debug print.
2017-12-10 00:18:10 +01:00
Juan Linietsky 65fb961b8b -Ability to and unwrap lightmap coordinates on import
-Added unwrap functionality to Mesh
-Ability to display and debug mesh UVs
-Added multiline draw, so it's easier and faster to draw UVs
-Many fixes to SurfaceTool
-Fixes to Thekla Unwrap, but it's a piece of ass and it keeps crashing. Will have to go away
2017-12-09 14:18:14 -03:00
Rémi Verschelde ccef401700
Merge pull request #13341 from scayze/interp_v2
Added interpolation qualifiers to shaderlang
2017-12-09 18:12:14 +01:00
Rémi Verschelde 4d6f8f89ed
Merge pull request #13424 from MillionOstrich/particles-pause-fix
Stop particles resetting on pause.
2017-12-09 16:37:02 +01:00
Juan Linietsky 8c78ccb027 After a lot of trial and error, i think rim lighting implementation is now perfect, closes #13986 2017-12-08 11:09:03 -03:00
Juan Linietsky 8717afbfe1 Added small bit of bias depending on lenght for contact shadows, fixes #12726 2017-12-07 16:19:35 -03:00
Rémi Verschelde 13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Rémi Verschelde d5ca9e2f6f Style: Apply clang-format again on all files
Fixes issues introduced by newer clang-format versions or commits
pushed directly without using the clang-format pre-commit hook.
2017-12-07 08:02:00 +01:00
Juan Linietsky e8494f7ab7 Fixed rim lighting glitch, closes #13340, closes #13986 2017-12-06 14:30:49 -03:00
Unknown fd1b94e307 Improve slang, especially in user-visible parts 2017-12-05 15:41:38 +01:00
Juan Linietsky d438ac0aed -Implemented Proxy Textures (needed to solve the problem with ViewportTexture)
-Properly use hierarchy to initialize resources local to scene (solves problem of GUI in 3D)
2017-12-04 15:56:17 -03:00
Rémi Verschelde 9b9fcb1977 Disable invariant gl_Position to workaround Mesa bug 100316
Fixes #13450, though it would be worth reverting if/when the Mesa bug is fixed.
2017-12-03 15:05:39 +01:00
Juan Linietsky d8953fe737 small fix so shadows dont need to use a separate material for world vertex coords (more perf) 2017-12-01 08:55:21 -03:00
Juan Linietsky 0243803117 Properly take into consideration that VERTEX must be written to in opaque pre pass, does some speed up to scenes using triplanar. 2017-12-01 08:45:36 -03:00
Marcelo Fernandez a3f0ffdf24 Fix wasapi going silent when number of channels are not supported 2017-11-30 19:51:27 -03:00
MillionOstrich 9ecde5524d Stop particles resetting on pause. 2017-11-30 17:51:18 +00:00
Juan Linietsky 9678231b10 Changed the dynamic library open function to allow setting the path of the library to open extra libraries. 2017-11-30 10:00:55 -03:00
Rhody Lugo a65c0939fd disable caching for targets using helper functions 2017-11-28 23:24:12 -04:00
Rhody Lugo a4a222d62d use the same cache for all branches for appveyor 2017-11-28 03:23:33 -04:00
Scayze b0fb6b1380 Added interpolation modifiers to shaderlang 2017-11-27 16:47:46 +01:00
Rémi Verschelde 90f9f123fd
Merge pull request #13317 from akien-mga/custom_user_dir
Allow customizing user:// path (folder in OS::get_data_path())
2017-11-26 22:25:02 +01:00
Rémi Verschelde 4a1d1cbbb4
Merge pull request #13290 from Chaosus/projectionfix
Fix invalid transform when skip_vertex_transform used
2017-11-26 21:31:02 +01:00
Juan Linietsky ea70afc9b4
Merge pull request #13264 from zatherz/feature/projectsettings_limits
Add range to anisotropic filter level
2017-11-26 16:04:36 -03:00
Chaosus 284f8f6d91 Fixed invalid transform when skip_vertex_transform used 2017-11-26 22:02:40 +03:00
Juan Linietsky 1c3c9e017b
Merge pull request #13277 from DoctorAlpaca/master
Fix particle preprocessing
2017-11-26 15:59:24 -03:00
Juan Linietsky 22415e5a31
Merge pull request #12572 from RandomShaper/onion-skinning
Onion skinning
2017-11-26 15:13:35 -03:00
Rémi Verschelde af9c67db0c Allow customizing user:// path (folder in OS::get_data_path())
This allows to specify any valid folder name (including with subfolders) to use
as user:// on all platforms. The folder is constrained to the platform-specific
OS::get_data_path() (typically what `XDG_DATA_HOME` resolves to).

Fixes #13236.
2017-11-26 19:02:32 +01:00
volzhs b97e87480e Fix shader compilation fail on Android
Error message from logcat

**ERROR**: SceneShaderGLES3: Fragment Program Compilation Failed:
50:471: S0032: no default precision defined for parameter 'probe'
   At: drivers/gles3/shader_gles3.cpp:167:_display_error_with_code() - SceneShaderGLES3: Fragment Program Compilation Failed:
2017-11-27 01:15:39 +09:00
Juan Linietsky 9738ebcda0 -Fixed height fog (was broken)
-Make sure materials are named in OBJ importer, so they can be saved outside as resources.
2017-11-25 12:32:41 -03:00
Eric Wiltfang 57845b53f3 Fix particle preprocessing. Fixes #12460.
Remove an incorrect check likely left over from copying from the
normal fixed_fps update case.

Also makes sure that the preprocessing_time is always fully simulated,
rather overshooting the mark than stopping early.
2017-11-25 15:41:14 +01:00
Rémi Verschelde d9faf6f2f4 Fix build on macOS and Android after bc2e8d99 2017-11-25 10:42:20 +01:00
Zatherz 1937fd5e07 Add range to anisotropic filter level (1 to 16 with integer steps) 2017-11-25 06:49:23 +01:00
Indah Sylvia ac92c147c6 Completed bc2e8d99e5 so that windows can be built 2017-11-25 11:12:07 +07:00
Juan Linietsky bc2e8d99e5 Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Pedro J. Estébanez 3aa79fc1a3 Add ability to opt-out buffer swapping in `VS::draw()` 2017-11-25 02:18:28 +01:00
Ruslan Mustakov d42c5646a5 Return and repair file logging
And make it configurable, too.
2017-11-21 16:43:44 +07:00
Juan Linietsky 98cb49283d Ability to change indirect light energy. 2017-11-19 21:46:00 -03:00
Rémi Verschelde ecf80fbbba
Merge pull request #12988 from akien-mga/xdg-home-paths
Add support for XDG Base Directory spec
2017-11-20 00:42:51 +01:00
Rémi Verschelde 9fc0b23210
Merge pull request #13051 from akien-mga/check-gles3-support
Check whether GL context supports the expected API
2017-11-20 00:13:28 +01:00
RoyBerube 4d5a87a422 Visual Studio project creation bug fix
A bug in the /drivers SCons script was preventing files in the /drivers and some in the /thirdparty directories from being added to the VS project.

This will only affect builds that use the 'vsproj=yes' option.
2017-11-19 13:56:48 -07:00
Rémi Verschelde 32c12a92a5 Add initial support for the XDG Base Directory spec
Spec version 0.7 from https://standards.freedesktop.org/basedir-spec/basedir-spec-0.7.html
(latest as of this commit).

Three virtual methods are added to OS for the various XDG paths we will use:
- OS::get_data_path gives XDG_DATA_HOME, or if missing:
  ~/.local/share on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_config_path gives XDG_CONFIG_HOME, or if missing:
  ~/.config on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_cache_path gives XDG_CACHE_HOME, or if missing:
  ~/.cache on X11, ~/Library/Caches on macOS and %APPDATA% on Windows

So for Windows there are no changes, for Linux we follow the full split spec
and for macOS stuff will move from ~/.godot to ~/Library/Application Support/Godot.

Support for system-wide installation of templates on Unix was removed for now,
as it's a bit hackish and I don't think anyone uses it.

user:// will still be OS::get_data_path() + "/godot/app_userdata/$name" by
default, but when using the application/config/use_shared_user_dir option
it will now use XDG_DATA_HOME/$name, e.g. ~/.local/share/MyGame.

For now everything still goes in EditorSettings::get_settings_dir(), but
this will be changed in a later commit to make use of the new splitting
where relevant.

Part of #3513.
2017-11-19 20:54:24 +01:00
Rémi Verschelde c574be5566 Check whether GL context supports the expected API
I couldn't test it yet myself (GPU supports GL 4.5), so we'll need to see if it behaves
as expected on systems that don't support OpenGL 3.3 or GL ES 3.0.
2017-11-19 20:47:53 +01:00
Rémi Verschelde 9f134aa5d1 Cleanup old references to GLES2 renderer
There are still some left in the Android Java code, even stuff to swap between
GLES1 and GLES2 support from early Godot days... would be good to see some cleanup
there too one day.

The "graphics/api" option for Android exports is removed, as only GLES 3.0 is supported.
It can be readded when GLES 2.0 support comes back. Fixes #13004.
2017-11-19 17:52:18 +01:00
Rémi Verschelde 73049d115e Rename OS::get_data_dir to OS::get_user_data_dir
Will be needed to avoid confusion with system data path (XDG_DATA_HOME)
and editor data dir in upcoming refactoring.
2017-11-17 20:55:09 +01:00
Rémi Verschelde 0968c8d2f6
Merge pull request #12982 from tagcup/aabb_rename
Rename Rect3 to AABB.
2017-11-17 20:04:29 +01:00
Juan Linietsky 1feeb3e1c8
Merge pull request #12924 from vnen/light-shader
Enable light shaders when light variables are used
2017-11-17 16:02:34 -03:00
Ferenc Arn d28763a4c1 Rename Rect3 to AABB.
Fixes #12973.
2017-11-17 11:01:41 -05:00
andrzej.buczynski 4c0e927ccf Fix alpha dithering in viewports with TransparentBg=false and Usage=2D, issue #11416 2017-11-17 01:40:00 +01:00
Juan Linietsky 6277e6d40a Ability to update parts of an array, and set arrays as dynamic draw 2017-11-14 17:26:35 -03:00
George Marques 78441b486a
Enable light shaders when light variables are used 2017-11-14 13:08:03 -02:00
Juan Linietsky 4c000a05f6 Do not enable light if atlas size is 0, closes #9335 2017-11-13 15:13:01 -03:00
Juan Linietsky 2e3a1caa06 Disable OpenGL warnings unless running with -v, closes #7171 2017-11-13 13:40:07 -03:00
Juan Linietsky 7eabbeb5af remove half_texpixel in canvas since no longer used 2017-11-12 08:29:28 -03:00
Nathan Warden 6adaf8f47a Fixed a bug where clamp_uv was clamping one pixel short, stretching the last pixels. 2017-11-11 07:28:48 -05:00
Rémi Verschelde ed57f0a0d4 Remove get_default_video_mode definition on OSX/iOS
It had been missed in d09160a8b6 and broke compilation
for those platforms.

Took the opportunity to run clang-format on the code base to fix some corner cases
that went through our static tests/were overlooked recently.
2017-11-09 23:36:08 +01:00
Juan Linietsky b279f641c0 Remove performance warnings, closes #11585 2017-11-06 21:53:15 -03:00
Marcelo Fernandez 16327bff8a Improved WASAPI driver logic when devices are connected or disconnected 2017-10-31 13:07:35 -03:00
Ferenc Arn 6e68c86ba6 Add viewport to the other SceneData struct.
This was missed in #12288.
2017-10-30 20:48:33 -04:00
Juan Linietsky 4785e66eea
Merge pull request #12288 from tagcup/expose_viewport_size
Expose VIEWPORT_SIZE in shader language.
2017-10-30 19:32:21 -03:00
Rémi Verschelde 87694d1884 Disable logging until the logs location is sorted out
Temporary workaround for #12277.
2017-10-29 15:50:27 +01:00
Scayze 2c00b68175 Fix shader compiler typo gl_FrotFace 2017-10-27 15:31:24 +02:00
Ferenc Arn a0fc641f25 Expose VIEWPORT_SIZE in shader language.
Fixes #11710.
2017-10-26 15:00:28 -04:00
Rémi Verschelde abea816e54 Revert "Rename Schlick GGX to GGX." 2017-10-23 07:42:36 +02:00
Ferenc Arn fd166d6fda Partially undo #11807.
Specular light at zero roughness needs some discussion. Until we do that, this fixes #12309.
2017-10-22 16:18:54 -04:00
Juan Linietsky b4f0f59d9f Many fixes to SSAO, should be good now. 2017-10-22 13:52:48 -03:00
Rémi Verschelde d60b774924 Merge pull request #12297 from tagcup/clearcoat_fix
Don't add clearcoat BRDF to specular light as-is.
2017-10-22 13:18:24 +02:00
Ferenc Arn 06fcbe0092 Don't add clearcoat BRDF to specular light as-is.
BRDF needs to be multiplied with N.L, the incoming light and attenuation. Also specular_blob_intensity should affect clearcoat.
2017-10-21 20:25:17 -04:00
Ferenc Arn cb0bf1edea Rename Schlick GGX to GGX.
Schlick's approximation and GGX are orthogonal concepts.

Furthermore, it's usage so far has been inconsistent: we don't even use it with anisotropic SchlickGGX, and Burley (Disney) diffuse does use it while its name doesn't indicate it.

The use of Schlick's approximation in Burley and GGX is an implementation detail and doesn't need to be reflected to the namig.
2017-10-21 19:35:54 -04:00
Ferenc Arn 6890245321 Corrections to #11807.
Added missing metallic parameter, also fixed a missed a case where wrong roughness condition was used.
2017-10-21 13:40:14 -04:00
Juan Linietsky a2a4f9a62a Merge pull request #11807 from tagcup/roughness_metallic_limiting_cases
Fix the condition when specular light calculation is avoided (should …
2017-10-21 13:44:41 -03:00
Juan Linietsky efe9a6ff5a Fixed unnecesary structure copying in bugfix. 2017-10-20 16:13:48 -03:00
Hiroshi Ogawa e7a370e170 Fix depth draw alpha prepass for shadow 2017-10-19 14:28:44 +09:00
Hiroshi Ogawa 7ee7dec5a2 Fix directional light specular 2017-10-17 15:35:22 +09:00
Rémi Verschelde 1abab7b964 Merge pull request #12060 from mutato/windows_folder_creation_fix
DirAccessWindows: fix wrong path given to CreateDirectoryW, fixes #12019
2017-10-15 20:22:13 +02:00
Hiroshi Ogawa 59544c74fe Fix render mode specular schlick ggx 2017-10-14 19:32:13 +09:00
Falk Moser 93ef512422 Fixed issue #12019, which prevented the creation of new folders on Windows platform 2017-10-13 00:34:05 +02:00