Commit graph

1128 commits

Author SHA1 Message Date
Rémi Verschelde 8b76199b4b Merge pull request #10897 from themindoverall/fix_box_select
Fix draw_rect when width or height < 0
2017-09-12 15:36:23 +02:00
Juan Linietsky 1c5376ae59 Many fixes to visual script, changed virtuals override for a proper selector. 2017-09-12 07:58:54 -03:00
Rémi Verschelde aabbd00284 Merge pull request #10908 from hpvb/fix-unused-variables
Fix unused variable warnings
2017-09-12 12:55:53 +02:00
Rémi Verschelde cf941fdc35 Merge pull request #11026 from hpvb/fix-assign-in-if
Remove assignment and declarations in if statements
2017-09-12 11:57:49 +02:00
Rémi Verschelde 2b50dc5d4f Merge pull request #11057 from hpvb/fix-various-warnings
Fix various assorted warnings
2017-09-12 11:39:47 +02:00
Rémi Verschelde 3941e01a57 Merge pull request #11041 from hpvb/fix-clang-format-error
Fix serveral recent new clang-format errors

[ci skip]
2017-09-12 11:16:36 +02:00
supagu e7c5706f71 DirAccess constructor sets current_dir to an absolute path 2017-09-10 20:03:26 +09:30
Hein-Pieter van Braam b2a38854fd Fix unused variable warnings
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-08 15:03:53 +02:00
Hein-Pieter van Braam 8230bf0a2f Remove assignment and declarations in if statements
After discussing with @reduz and @akien-mga it was decided that we do
not allow assignments or declarations in if statements. This PR removes
the instances of this I could find by automated means.
2017-09-08 14:59:15 +02:00
Hein-Pieter van Braam 67a706fc1b Fix various assorted warnings
Fix various warnings that don't have enough instances to merit
individual commits. Also fixes a potential bug in audio_server.cpp.
2017-09-08 14:57:48 +02:00
Juan Linietsky 5ca3af3371 Ability to use a sky for reflection together with a background color. 2017-09-07 20:45:37 -03:00
Juan Linietsky c023a132d0 Fixed orthogonal projection in all effects and post processes 2017-09-07 20:16:33 -03:00
Hein-Pieter van Braam 5e18967d77 Fix serveral recent new clang-format errors 2017-09-08 00:20:16 +02:00
Juan Linietsky eedb39091a Several fixes to directional shadows, closes #10926
Added option to change directional light range mode, between optimized and stable. For Orthogonal, you might need to use optimized.
2017-09-07 18:00:47 -03:00
Juan Linietsky b19b7aebf7 Merge pull request #11027 from hpvb/fix-11022
Fix EOF in wav file importer
2017-09-07 07:53:56 -03:00
Juan Linietsky 8047127bc6 Force redraw when HDR auto exposure is enable in all frames, fixes #10784 2017-09-06 23:02:06 -03:00
Juan Linietsky dd854768da -Fix folow surface in subsurface scattering, closes #10696
-Fixed filter kernels of subsurface scattering so quality settings make more sense
2017-09-06 21:45:02 -03:00
Hein-Pieter van Braam cbedb54408 Fix EOF in wav file importer
In #10973 I reset the state of the stream in get_pos() assuming that the
ftell failing would cause proper error checking. This is not how this
class was designed, however. This commit fixes the get_8() method to
not return unitialized data on eof, and removes the wrong error resets
added in #10973.

This fixes #11022
2017-09-07 00:26:17 +02:00
Juan Linietsky ddadc782ba Fix frame selection in 2D particles, closes #10668 2017-09-06 08:31:11 -03:00
supagu f4994e750d Further symlink fixes 2017-09-06 18:09:27 +09:30
Juan Linietsky e192c1a7d3 Fix directional vertex shaded light which was using normal instead of light color, closes #10608 2017-09-05 17:31:09 -03:00
Juan Linietsky 7eb8760477 Added support for for, break and continue. Closes #10560, closes #10661 2017-09-05 15:25:34 -03:00
Rémi Verschelde 54e81c7955 Merge pull request #10990 from MednauN/unshaded-fix
Fix unshaded materials render
2017-09-05 15:51:35 +02:00
Evgeny Zuev 094237eca0 Fix unshaded materials render 2017-09-05 12:19:15 +07:00
Juan Linietsky 2802dced84 Automatically redraw when shaders using TIME are visible, fixes #10554 2017-09-05 00:30:39 -03:00
Juan Linietsky e611ff5f01 Fix opaque pre pass, closes #10472 2017-09-04 20:27:45 -03:00
Rémi Verschelde 44adf75cd5 Merge pull request #10986 from hpvb/fix-unix-file-open
Fix UNIX file open
2017-09-05 01:18:53 +02:00
Hein-Pieter van Braam 5fed954a1b Fix UNIX file open
In #10973 I refactored FileAccessUnix::_open() but I accidentally made
it impossible to create new files.

This fixes that and fixes #10984
2017-09-05 01:14:14 +02:00
Rémi Verschelde 27feafbe12 Merge pull request #10973 from hpvb/fix-file-access-unix
Make UNIX file access more correct
2017-09-05 00:33:20 +02:00
Rémi Verschelde 77d5013f94 Merge pull request #10974 from henkz1/gles-10963
Don't compare float to int
2017-09-05 00:12:43 +02:00
Rémi Verschelde e0801111c4 Merge pull request #10883 from supagu/symlink2
Another take at fixing symlinks
2017-09-04 23:27:32 +02:00
Hein-Pieter van Braam a7c2ff5c94 Make UNIX file access more correct
Check for errors in the POSIX recommended ways.
2017-09-04 22:23:29 +02:00
Henrik Andersson e0a19a77e5 Don't compare float to int 2017-09-04 22:21:55 +02:00
Juan Linietsky 281fb4e4fb Added transmission shader parameter. 2017-09-03 10:30:37 -03:00
Fabian Mathews dccdef1327 Another take at fixing symlinks 2017-09-03 13:46:05 +09:30
Chris Serino 3d6ccda188 Fix draw_rect when width or height < 0. Fixes #10849 2017-09-02 11:58:04 -05:00
Rémi Verschelde 8e75e7311b Merge pull request #10858 from letheed/add-shadow_filter-variant
add shadow_filter variant PCF7
2017-09-02 12:13:01 +02:00
Hein-Pieter van Braam 9c63ab99f0 Fix use of unitialized variables
The second in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-02 01:59:26 +02:00
Rémi Verschelde dac150108a Merge pull request #10846 from hpvb/fix-sign-compare
Fix signed and unsigned comparisons
2017-09-01 21:52:55 +02:00
Rémi Verschelde 3694c58d3c Merge pull request #10775 from marcelofg55/buffersize_fixes
Corrections to audio buffer size calculations
2017-09-01 21:41:24 +02:00
Juan Linietsky 6fa6149517 Fix some argument ordering, closes #10010 2017-09-01 15:01:17 -03:00
Juan Linietsky 8f30c52a37 Removed ontop property, added a material rendering priority system. Fixes #9935, closes #10135 2017-09-01 13:01:08 -03:00
Marcelo Fernandez f231eadc9e Corrections to audio buffer size calculations 2017-09-01 11:12:13 -03:00
Poommetee Ketson ed606ded52 Fix files header 2017-09-01 21:07:55 +07:00
letheed 3a188015be add shadow_filter variant PCF7 2017-09-01 15:01:24 +02:00
Hein-Pieter van Braam f9467ec1ea Fix signed and unsigned comparisons
The first in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-01 08:13:12 +02:00
Juan Linietsky 51066fcde7 Merge pull request #10305 from H4kor/gles3
Fixes a bug in multimesh_instance_get_color
2017-08-31 08:44:22 -03:00
Rémi Verschelde 82208c1e8b Merge pull request #10417 from bojidar-bg/x-fix-tilemap-transpose
Implement texture UV transpose in the gles3 renderer
2017-08-31 13:17:39 +02:00
Rémi Verschelde f1e3dec442 Merge pull request #10624 from letheed/master
Fix shadow filter pcf5 implemented as pcf7
2017-08-31 11:01:57 +02:00
Juan Linietsky a1d7c496b9 Improved default directional shadow params, added bias split scale, closes #9828 2017-08-30 08:08:44 -03:00
Juan Linietsky 06d7e36898 Changed bools to uint32_t as this may be a compiler bug.. 2017-08-29 15:09:59 -03:00
Juan Linietsky e8b05ca996 -Fixed screen edge SSAO filter, fixes #9678
-Raised the SSAO limits, making the effect a lot more useful
-Still pending to enable tresholding to avoid some hollow places
2017-08-29 11:46:02 -03:00
Juan Linietsky 089cf8176e removed DISCARD built in variable, replaced by actual discard GLSL instruction, fixes #9677 2017-08-29 10:15:49 -03:00
Bojidar Marinov 92a42668f2
Implement texture UV transpose in the gles3 renderer
Now tilemap rotations work again \o/
2017-08-29 14:51:35 +03:00
Rémi Verschelde 9a8a0e20e5 Merge pull request #10552 from RandomShaper/improve-posix
Improve Mac/UNIX conformance/reliability
2017-08-29 00:07:07 +02:00
Rémi Verschelde ddbd133097 Merge pull request #10683 from marcelofg55/rtaudio_buffer_fix
Fix RtAudio driver buffer_size incorrect calculation
2017-08-28 23:03:04 +02:00
Rémi Verschelde 3ce6972d2c Merge pull request #10692 from marcelofg55/wasapi_driver
Added new WASAPI driver for Windows
2017-08-28 22:53:53 +02:00
Rémi Verschelde 6ef7783abb Merge pull request #10662 from hoelzl/python3-v3
Make build scripts Python 3 compatible
2017-08-28 00:05:15 +02:00
Juan Linietsky d23f323cde -Moved script run to editor, removed from project
-fixed to code completion
-fix shader crash bug reported by tagcup
2017-08-27 19:04:19 -03:00
Matthias Hoelzl b6e1e47e3a Make build scripts Python3 compatible
- The Windows, UWP, Android (on Windows) and Linux builds are
  tested with Scons 3.0 alpha using Python 3.
- OSX and iOS should hopefully work but are not tested since
  I don't have a Mac.
- Builds using SCons 2.5 and Python 2 should not be impacted.
2017-08-27 23:05:39 +02:00
Rémi Verschelde 7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Marcelo Fernandez 8e814774b1 Added new WASAPI driver for Windows 2017-08-27 15:26:15 -03:00
Marcelo Fernandez 7e6b015769 Fix RtAudio driver buffer_size incorrect calculation 2017-08-27 10:00:35 -03:00
Rémi Verschelde bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Wilson E. Alvarez 7a07895920 Added/Fixed null pointer checks 2017-08-26 16:58:47 -04:00
Juan Linietsky 1894157c9f -Massive clean up to gizmos
-Make sure handles are always visible (on top)
-Fixed instanced scene selection (should work properly now)
-Added interpolated camera
-Customizable gizmo colors in editor settings
2017-08-26 00:47:28 -03:00
Juan Linietsky 90445aae67 Fixed opaque unshaded materials, they go through the regular opaque render list, closes #9917 2017-08-25 09:56:10 -03:00
letheed a5d765db4f fix shadow filter pcf5 implemented as pcf7 2017-08-25 02:34:28 +02:00
Hein-Pieter van Braam cacced7e50 Convert Object::cast_to() to the static version
Currently we rely on some undefined behavior when Object->cast_to() gets
called with a Null pointer. This used to work fine with GCC < 6 but
newer versions of GCC remove all codepaths in which the this pointer is
Null. However, the non-static cast_to() was supposed to be null safe.

This patch makes cast_to() Null safe and removes the now redundant Null
checks where they existed.

It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-24 23:08:24 +02:00
Pedro J. Estébanez d806ad4a3d Implement custom thread numbering for POSIX
For every UNIX-derived (Android, Linux, macOS, iOS) flavor, a global counter is atomically incremented on thread start. That id is kept as thread-local storage.

Therefore, thread ids are sequential numbers, trivially comparable. This improves the previous state of things, in which `pthread_t` were casted to `Thread::ID` and unportabily compared. Also big, ugly thread ids appeared.
2017-08-24 07:02:55 +02:00
Pedro J. Estébanez a560a62118 Make OS::delay_usec() more reliable on UNIX
Implemented with `nanosleep()`. `usleep()` is deprecated.
Also loops to ensure that __at least__ the requested time is waited, accounting for spurious interruptions.

May help in situations like reattempting to connect to the debugger.
2017-08-24 07:02:55 +02:00
Gilles Roudiere 591a892c2e fix ssao issue with intel hd**** hardwares 2017-08-23 00:10:37 +02:00
Juan Linietsky 294e912a84 Fade last cascade in directional shadow, closes #9779 2017-08-22 12:17:20 -03:00
Juan Linietsky e54c4028ef Invalid materials or shaders will now interrupt the next chain in materials, closes #9570 2017-08-22 11:23:40 -03:00
Rémi Verschelde 411f0755a8 Fix Reindhart tonemapping, invalid type in signature
Fixes #10533.
2017-08-22 08:06:54 +02:00
Juan Linietsky 00a26f512c Several fixes to subsurface scattering. Closes #9530 2017-08-21 21:38:01 -03:00
Rémi Verschelde df590fc2d3 Merge pull request #10340 from Rubonnek/remove-unnecessary-assignments
Removed unnecessary assignments
2017-08-22 00:58:12 +02:00
Rémi Verschelde e9c43cecbf Merge pull request #10433 from djrm/pr_svg_support
SVG support
2017-08-21 23:49:07 +02:00
Juan Linietsky 247c2f7be3 Revert "Reworked change_dir to support symlinks" 2017-08-21 18:06:01 -03:00
Wilson E. Alvarez 738d2ab969 Removed unnecessary assignments 2017-08-21 15:15:55 -04:00
Juan Linietsky 0bdbe370bf Implemented missing opaque prepass render mode, fixes #9452 2017-08-20 21:26:15 -03:00
Daniel J. Ramirez da8fecf25e Added support for SVG 2017-08-20 13:53:02 -05:00
Juan Linietsky 831e21e89b Properly initialize color hinted vec4 uniforms to 0,0,0,1 fixes #9354 2017-08-20 12:35:43 -03:00
Juan Linietsky 7e5890d23d -Fix all shadow and culling related issues, fixes #9330 2017-08-19 20:07:21 -03:00
Juan Linietsky 8fc6bb8f77 Added polygon antialiasing, but it does not work on nvidia. Will have to try something else.. 2017-08-19 13:14:38 -03:00
Rémi Verschelde 1a92906b68 Merge pull request #10406 from marcelofg55/closest_power_of_2
Add closest_power_of_2 func and implement mix_rate/latency on OS X
2017-08-18 08:12:56 +02:00
Marcelo Fernandez eab850524e Add closest_power_of_2 func and implement mix_rate/latency on OS X 2017-08-17 19:51:13 -03:00
Juan Linietsky 3a4ff3402d Oops, fixed wrong color masking problem. Closes #10149 2017-08-17 18:33:59 -03:00
Rémi Verschelde 22d21ebef0 Merge pull request #8144 from supagu/symlink
Reworked change_dir to support symlinks
2017-08-17 11:50:21 +02:00
Bojidar Marinov 995fca44b2
Fix particles emitting when emitting is set to false in scene
Caused by #10297 calling particles_restart() on the same frame as the one set_emitting(false) is called. The rasterizer would wait a frame, and then set emitting back to true.
2017-08-16 23:38:36 +03:00
TwistedTwigleg 00f6c85928 Synchronize parameter names in definition and declaration
Fixes #10244.
2017-08-16 17:22:23 +02:00
Rémi Verschelde f2764dd15d Merge pull request #10343 from Faless/html5_fixes_2
Use precision for samples only when #version 300 es
2017-08-16 17:09:57 +02:00
Fabio Alessandrelli 2d48f4ecf1 Use precision for samples only when #version 300 es
Fix #10332
2017-08-16 15:04:21 +02:00
Wilson E. Alvarez 21d281c4a9 Use const reference where favorable 2017-08-14 13:28:06 -04:00
Niko Abeler 5d2b059d46 fixed multimesh_instance_get_color 2017-08-12 16:17:53 +02:00
Fabio Alessandrelli 9b9a723c77 Some fixes for shaders and WebGL2
Add padding to UBO data to be multiple of 16 bytes
Add precision definition for samplers
Replace texture2D (deprecated) with texture in shaders
2017-08-11 23:26:24 +02:00
Fabio Alessandrelli f863c0ca14 Explicitily unsed AI_NUMERICHOST flag to fix HTML5 2017-08-11 19:39:36 +02:00
Juan Linietsky df573f5c3a -Restored Sprite3D to working function, fixes #2061, fixes #9738
-Restored an alpha scissor property in Material
2017-08-08 17:23:44 -03:00
Juan Linietsky 144226af51 sorry, leftover bug fixed 2017-08-08 08:31:34 -03:00
Juan Linietsky 78177483b5 -Made visual server time affected by global time scale, closes #5583
-Restored time rollover in visual server
2017-08-08 08:25:35 -03:00
Juan Linietsky 539fbad919 Restored black bars and custom images instead of black bars, closes #1571 2017-08-07 18:09:13 -03:00
Thomas Herzog 5f48c3cc07 Merge pull request #10055 from henkz1/immediate
Fix ImmediateGeometry
2017-08-07 23:09:01 +02:00
Rémi Verschelde 3121b3a4f4 Merge pull request #10141 from ISylvox/lower_case_godot_api
Makes all Godot API's Methods lower_case
2017-08-07 14:59:39 +02:00
bruvzg 839cb018b2 Re-revert #378b1e6 for s3tc 2017-08-07 14:59:14 +03:00
Indah Sylvia 5ae78fdf6a Makes all Godot API's methods Lower Case 2017-08-07 18:24:35 +07:00
bruvzg 20c90186be Revert #378b1e6 for s3tc 2017-08-07 12:35:54 +03:00
Rémi Verschelde 2bb8ab7b89 Merge pull request #10045 from marcelofg55/audioserver_finish
Fix double finalisation of audio drivers
2017-08-07 11:11:03 +02:00
Juan Linietsky 378b1e6cf0 RGTC and S3TC are now always enabled on desktop, given the spect dictates they should be. Fixes #9267, Fixes #9939 2017-08-06 22:22:42 -03:00
Juan Linietsky 2ea64d2dc1 Use vertex distance instead of z, fixes #9108 2017-08-06 21:57:40 -03:00
Henrik Andersson ca497df2d3 Fix rendering of ImmediateGeometry with UVs
When using set_uv or any attrib except vertex, the geometry broke.
2017-08-03 05:06:06 +02:00
Henrik Andersson fdc421836f Make it possible to render ImmediateGeometry
Geometry for ImmediateGeometry was never added inside _fill_render_list.
2017-08-03 04:04:11 +02:00
Marcelo Fernandez 1ca107a057 Fix double finalisation of audio drivers 2017-08-02 11:45:19 -03:00
Indah Sylvia 690ceeb17a remove meaningless print line from editor console 2017-08-02 13:27:01 +07:00
Juan Linietsky b276d92c8a Few small GI Probe fixes 2017-07-29 00:04:29 -03:00
bruvzg 1a03cd537f Add missing max. number of samples (MSAA) check 2017-07-27 17:56:43 +03:00
Karroffel 135c2112ad added an optional parameter to OS symbol lookup
When looking up a symbol from a library, previously an error was
shown when the symbol did not exist. That caused confusion when the
lookup was completely optional.
This adds a new parameter to that method so that those errors can
be handled manually if needed.
2017-07-27 11:13:21 +02:00
Poommetee Ketson 0154098531 Fix various property not found errors 2017-07-26 20:03:13 +07:00
Juan Linietsky f5277e347d Fixes to glow and auto exposure, closes #9797, closes #9106 2017-07-26 00:40:32 -03:00
Juan Linietsky e15a0c5243 Merge pull request #9712 from BastiaanOlij/fix_checking_framebuffer
add missing framebuffer check
2017-07-24 18:37:14 -03:00
Evgeny Zuev 4ed6e4a70e Fix switching SRGB extension happen before binding of texture
Previously, texture parameter `_TEXTURE_SRGB_DECODE_EXT` was changed
before the call of `glBindTexture`, which caused modification of previously
bound texture instead of desired one. Now it's changed after `glBindTexture`.
2017-07-24 18:25:55 +07:00
Rémi Verschelde 38c471bef6 Merge pull request #9765 from Noshyaar/pr-clang
Clang-formatting *.cpp and *.h (some files excluded)
2017-07-23 13:16:48 +02:00
Juan Linietsky 772485cdb3 Several changes to better run in mobile. 2017-07-22 14:08:17 -03:00
Poommetee Ketson c7c65ca6ba Clang-formatting *.cpp and *.h (some files excluded) 2017-07-22 18:14:08 +07:00
Juan Linietsky 25678b1876 -Renamed GlobalConfig to ProjectSettings, makes more sense.
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
BastiaanOlij 8513bbdb8b add missing framebuffer check 2017-07-20 00:04:19 +10:00
Juan Linietsky bbada82f80 -Reorganized all properties of project settings (Sorry, Again).
(Lot's of bloat accumulated, so it was time for clean up.)
-Made EditorSettings and ProjectSettings search more useful (search in sections too)
2017-07-17 22:18:58 -03:00
David Carlier df87ad14d0 get_executable_path slight change to make it work under OpenBSD 2017-07-16 10:53:51 +01:00
Juan Linietsky 3da3a36034 Many fixes to improve GI Probe quality 2017-07-15 23:24:37 -03:00
Juan Linietsky 5dd7c3b6ab Fix to make voxel cone tracing work properly again 2017-07-15 20:02:56 -03:00
Juan Linietsky 741145febd -Fix for multiple reflection probes causing issues.
-Fix for positional sound corruption to avoid making people deaf.
2017-07-15 18:42:06 -03:00
Juan Linietsky 2e73be99d8 Lots of work on Audio & Physics engine:
-Added new 3D stream player node
-Added ability for Area to capture sound from streams
-Added small features in physics to be able to properly guess distance to areas for sound
-Fixed 3D CollisionObject so shapes are added the same as in 2D, directly from children
-Fixed KinematicBody API to make it the same as 2D.
2017-07-15 08:32:34 -03:00
Rémi Verschelde d23fc16b2d Merge pull request #9564 from Noshyaar/pr-threshold
Refactor 'treshold' to 'threshold'
2017-07-08 23:51:53 +02:00
Juan Linietsky e577c5b070 Some adjustments to toon material to make it more flexible
Ability to also disable specular
2017-07-08 14:01:56 -03:00
Juan Linietsky f4c8c552f9 Added triplanar mapping, toon mode, and more specular modes for materials. Added multipass support for materials. 2017-07-08 12:36:15 -03:00
Poommetee Ketson 2fd204c35e Refactor 'treshold' to 'threshold' 2017-07-08 22:24:56 +07:00
Juan Linietsky 84de71872f -Added triplanar mapping modes
-Some fixes to shader lang
2017-07-08 08:07:49 -03:00
Juan Linietsky 1a857c5149 Fixed bug regarding to strange black shapes appearing in ice from material tester demo 2017-07-05 22:36:13 -03:00
Juan Linietsky 12a8fedfe6 Some changes to dual paraboloid envmap generation, fixes somme bleeding 2017-07-05 19:39:45 -03:00
Juan Linietsky 7263137dba Implemented environment arrays for skybox reflection and roughness, quality increase is enormous. 2017-07-04 23:53:08 -03:00
Juan Linietsky 2a3e00c8c7 -Many fixes to VisualScript, fixed property names, etc.
-Added ability to set/get a field in GetSet, as well as assignment ops
-Added a Select node
-Fixed update bugs related to variable list and exported properties, closes #9458
2017-06-30 21:35:05 -03:00
Robert Hernandez ffe8f8ca21 Fixed NinePatches not working on HTML5 2017-06-28 19:17:59 -04:00
Juan Linietsky 3ce046ee0c -Fixed SCREEN_TEXTURE and other related 2D shader parameters.
-Fixded BackBuffercopy object
2017-06-26 22:58:46 -03:00
Juan Linietsky 83ae9a5e28 Ability to restart particle system with a function call 2017-06-25 08:01:50 -03:00
Poommetee Ketson e3998528e0 BuildSystem: generated files have .gen.extension 2017-06-25 07:55:01 +07:00
Juan Linietsky 0cac32910a -Restored support for Canvas BG mode on Environment
-Improved ease of use of WorldEnvironment (no longer extends Spatial)
-2D editor viewport can now work in HDR!
2017-06-24 08:58:27 -03:00
Juan Linietsky 8ef1c41a4e Small fixes required to get platformer to work.
Added back CanvasItemMaterial
2017-06-23 14:31:59 -03:00
Juan Linietsky f27d2a3355 -Moved NinePatch to shader, saves a ton of draw calls rendering UI
-Implemented missing stretch modes, now tile and tile fit work
2017-06-21 23:37:25 -03:00
Juan Linietsky 95560e02c5 2D GPU Particles working.. 2017-06-21 16:26:26 -03:00
Juan Linietsky 0288be1e76 Texture rect_region drawing now clamps UV to avoid bleeding. This avoids scenarios like single-texture tilemap tiles leaking pixels to the next tile when filter is enabled on it. 2017-06-18 22:55:02 -03:00
Juan Linietsky 5c6cac4e53 Add normalmap support for drawing in all low level primitives. Only added support in Sprite so far. 2017-06-17 23:27:42 -03:00
Juan Linietsky 2da3f48e5a -Fixed shader lang to not be able to get scalar from matrix (ie mat.x), to make it more GLSL compatible
-Fixed referencing of world_transform in fragment shader not working
-Fixed unsycn bug related to getting shader param list from the server
-Fixed getting all textures from shader properly, fixes #8353
2017-06-17 11:03:48 -03:00
Juan Linietsky 9757fc354c Fix transparent background rendering, closes #8703
Properly implemented UPDATE_WHEN_VISIBLE mode for viewports
2017-06-17 08:59:43 -03:00
Juan Linietsky e11fae0bbf Particles properly update the shadow maps, closes #8815 2017-06-17 07:32:49 -03:00
Juan Linietsky b19225bfce -Fix freezes caused by etccomp2, closes #9183
-Normalmaps are now detected and imported as RGTC, both in S3TC and ETC2, this improves their quality.
2017-06-16 21:49:37 -03:00
Juan Linietsky 80929d36be TIME constant reverted to a single float, fixes #9123 2017-06-16 08:30:21 -03:00
Juan Linietsky 5d02b948a9 Cleaned up Screen Space Reflections, closes #8119 2017-06-16 08:30:21 -03:00
Juan Linietsky 29cfc365aa Fixes to SSR, WIP. 2017-06-16 08:30:21 -03:00
Marc Gilleron 4dbe0967d5 Fixed memory leaks
- PoolVector leak
- mesh_remove_surface leak
2017-06-16 02:39:16 +02:00
Juan Linietsky da14225ad8 fix bug related to unshaded materials not working on MSVC. Not cleanest solution, might think about how to improve later. 2017-06-15 10:36:00 -03:00
Juan Linietsky 47b34bf79b Remove error spam on Intel, closes #8665 2017-06-15 09:02:34 -03:00
Juan Linietsky f8bd488457 Merge pull request #9109 from RandomShaper/optimize-2d-lighting
Add AT_LIGHT_PASS builtin to canvas shaders
2017-06-14 21:16:09 -03:00
Pedro J. Estébanez 93ffd9023f Add AT_LIGHT_PASS builtin to canvas shaders
This one allows for complex shaders paired with a simple lighting shader to skip code that would otherwise be pointlessly (and wastefully) run during the light pass.

Depending on your game (number of items and lights), this can yield some performance gain.
2017-06-15 02:03:15 +02:00
Juan Linietsky 2b62872547 Fix _draw_polygon colors and uvs 2017-06-14 18:43:57 -03:00
Juan Linietsky 462d8ceb46 Fixed several bugs with directional light, and changed defaults to be more sensible. 2017-06-14 17:06:36 -03:00
Juan Linietsky a8a1f2e2a8 -Fixed occluder rendering, closes #8560
-Ability to smooth out 2D shadow filters
2017-06-13 01:23:04 -03:00
Juan Linietsky 95c248e24f Remove default shadow bias of 0.1 for spot and omni light, fixes #8654 2017-06-13 00:07:05 -03:00
Juan Linietsky ea6cb22329 Merge pull request #8835 from ippan/particles_shader_index
add index to particles glsl
2017-06-12 23:33:41 -03:00
Juan Linietsky fc04e0b1f2 Fix bug breaking shader when skeleton+tangents were used, closes #8673 2017-06-12 19:54:35 -03:00
Juan Linietsky 831860695c Fix empty shader related crash, closes #8314 2017-06-12 19:23:37 -03:00
Juan Linietsky 41c3ca358e Fixed _draw_polygon, should help fix other bugs.. 2017-06-12 18:56:16 -03:00
Juan Linietsky 61c82f4356 Restored everything related to information polling, and added information box for viewport. 2017-06-11 18:13:04 -03:00
Juan Linietsky 4d50c7ad8c Restored multiple viewport function, as well as view modes. 2017-06-11 15:52:03 -03:00
Pedro J. Estébanez 4d90750729 Add missing initializer for RasterizerStorageGLES3::Shader::ubo_size 2017-06-09 21:17:47 +02:00
alexholly 935f730170 renamed all Rect3.pos to Rect3.position 2017-06-09 15:54:02 +02:00
Juan Linietsky 612ab8fcdb -Restored multithread capability to VisualServer
-Restored resource previews!
2017-06-09 00:24:18 -03:00
Juan Linietsky 5bf810b5db -Added proper access to depth texture from shader
-Split Mesh into Mesh (abstrat class) and ArrayMesh, to allow to proper mesh primitives, as well as streamable meshes in the future.
2017-06-07 18:20:04 -03:00
Juan Linietsky 840ac8c018 Fog is complete! 2017-06-07 08:38:21 -03:00
Juan Linietsky 0fb99306ff -working SCREEN_TEXTURE, SCREEN_UV shader variables
-Added refraction support for default material
-Enabled BCS adjustments, as well as color correction.
2017-06-05 22:34:32 -03:00
Rémi Verschelde f8d7670e82 Merge pull request #9038 from AlexHolly/rect2-rename-pos
renamed all Rect2.pos to Rect2.position
2017-06-05 15:52:05 +02:00
Juan Linietsky 5aa66d03d8 Added depth texture support (using parallax) to default material. 2017-06-04 20:35:45 -03:00
Juan Linietsky 8126a0cb12 subsurface scattering is fixed and working again 2017-06-03 21:14:05 -03:00
alexholly a3c90b0293 renamed all Rect2.pos to Rect2.position 2017-06-04 02:09:17 +02:00
Juan Linietsky 8a1097a224 many fixes to image loader, voxel cone tracing, etc. 2017-06-02 22:08:41 -03:00
Juan Linietsky e79d7149ea GI probes working back again 2017-06-01 22:38:07 -03:00
Juan Linietsky c03131fc9f Rework shading modes and change location of light shader 2017-06-01 18:56:02 -03:00
Juan Linietsky bd26fa7bf2 stuff got modified :( 2017-05-31 20:29:56 -03:00
Juan Linietsky a134f58fb3 rewritten PBR implementation to make it friendlier with Blender 2017-05-31 20:29:56 -03:00
Juan Linietsky 5567e898d1 Several fixes related to PBR and Environment 2017-05-30 08:56:19 -03:00
Juan Linietsky f89641907f -Added EXR supprot for HDR (no BC6 compression yet though)
-Improvements to texture importer
-Proper detection of S3TC compression modes, and added all modes to Image
-Fixes to non-power of 2 compressed textures, which should all be supported by GLES3
2017-05-26 22:31:32 -03:00
Juan Linietsky bf6380ee70 Removed skybox support, added panorama support. Skybox support may come back eventually, but hope not. 2017-05-25 14:00:43 -03:00
BastiaanOlij 3768a3b2c5 More fixes for iOS Godot 3.0
- nicely exit if initialisation fails
- fix a few issues around new event handling
- use 16bit single channel framebuffer as 32bit is not supported on iOS
2017-05-23 22:38:36 +10:00
BastiaanOlij c51ce72702 Added texture_get_texid 2017-05-20 10:09:36 +10:00
PanPan d9e3bbe17d add index to particles glsl 2017-05-19 23:43:25 +08:00
Rémi Verschelde f85cad4fec Merge pull request #8793 from ippan/shader_varying
fix varying in 3.0 shader
2017-05-18 19:00:21 +02:00
Juan Linietsky 98a3296702 Removal of Image from Variant, converted to a Resource. 2017-05-17 07:37:45 -03:00
PanPan 9079ef46e7 fix varying in 3.0 shader 2017-05-17 16:41:49 +08:00
Andreas Haas c3e43c6d5f Revert "Particles potential crash fix" 2017-05-15 20:11:42 +02:00
honix 9d7d24682d Particles potential crash fix 2017-05-15 20:49:20 +03:00
Fabio Alessandrelli a1c41be569 Fix local ip addresses (interfaces) detection.
Ignore non-IP addresses for both windows and unix
2017-05-08 22:27:06 +02:00
Fabio Alessandrelli 020f6a7f20 Socket helpers now fall back to ipv4 on systems where ipv6 is disabled. 2017-05-08 21:53:23 +02:00
Fabio Alessandrelli 5c6715a291 Fix UDP wait() not returning after first received packet 2017-05-05 17:41:11 +02:00
Rémi Verschelde f527a69462 Merge pull request #8589 from tagcup/dxt1_fix
Use correct mode for DXT1 textures.
2017-05-02 23:31:42 +02:00
Rémi Verschelde 4dd291cecb Merge pull request #8586 from vnen/uwp-3
Fix compilation for UWP
2017-05-01 22:48:01 +02:00
Ferenc Arn 2f84731177 Use correct mode for DXT1 textures.
libsquish, which is used to generate all S3TC textures, works only with RGBA textures.

Fixes #8550.
2017-04-29 20:01:12 -05:00
George Marques f7bd21a022
Fix compilation for UWP 2017-04-29 20:15:59 -03:00
Rémi Verschelde d4029aa51a Move other lone thirdparty files to thirdparty/misc
Also move Box2D ConvexDecomposition contrib code to
thirdparty/b2d_convexdecomp.
2017-04-28 21:19:25 +02:00
Rémi Verschelde 515f92d03b Fix property warnings and hide some debug prints
"ALL IS GOOD" was a lie.

In particular, removes verbose "path not recognized" false positive.

The actual logic is to (somewhat naively) check all ResourceFormatLoaders
and to pick the first good match, so no need to warn about the formats
that do not match the type hint.
2017-04-23 11:17:32 +02:00
Rémi Verschelde 24b2186ff9 Merge pull request #8388 from Dobbias/fix_#8381
Fix gles3-particles shader not compiling
2017-04-18 00:01:08 +02:00
L. Krause 3e0f8bb254 Fix FBO depth texture format 2017-04-15 13:56:55 +02:00
Dobbias 5404e10803 replaced incompatible keywords/function 2017-04-13 16:46:16 +02:00
Sergey Pusnei 8589ca3903 Rename [gs]et_pos to [gs]et_position for Controls
Control set_pos -> set_position
Control set_global_pos -> set_global_position
[gs]et_mouse_pos -> [gs]et_mouse_position
[gs]et_global_mouse_pos -> [gs]et_global_mouse_position
fixes #8005
2017-04-10 08:27:34 +02:00
Juan Linietsky 1c480698ce -Fixed crash with splash screen on windows
-properly show editor without having to resize window on windows
2017-04-09 20:40:48 -03:00
Juan Linietsky 7ba71fb243 Restored (And auto-generated) splash image 2017-04-09 20:03:38 -03:00
Juan Linietsky fccf2816d4 -Fix eternal black screen on Windows
-Disabled warnings on windows, need to properly set up warnings
2017-04-09 17:59:17 -03:00
Juan Linietsky 4286aef693 Particle system is complete. Rejoice! 2017-04-08 22:40:06 -03:00
Rémi Verschelde df61dc4b2b Add "Godot Engine contributors" copyright line 2017-04-08 00:11:42 +02:00
Rémi Verschelde efba539f93 Fix build on older GCC versions
Travis builds would fail with:
./drivers/gles3/rasterizer_storage_gles3.h:1018:19: error: ISO C++ forbids initialization of member 'fixed_fps' [-fpermissive]
2017-04-07 19:24:37 +02:00
Juan Linietsky 74808ac4d9 New particle system, mostly working, some small features missing. 2017-04-06 23:49:27 -03:00
Karroffel 741800f5cc [DLScript] fixed android builds now
... really.
2017-04-06 14:00:54 +02:00
Fabian Mathews d3b7d42784 Reworked change_dir to support symlinks 2017-04-06 20:43:34 +09:30
Rémi Verschelde 46bc14e66f Merge pull request #8246 from GodotNativeTools/dlscript-module
DLScript module
2017-04-04 00:25:03 +02:00
Karroffel fd55308786 added dlscript module
This module was written by bojidar-bg and me, with the help of ClikCode and touilleMan.

This adds a module to Godot that enables the use of dynamic libraries as a source for scripts.
That also allows third party libraries to be linked to Godot more easily and without creating modules.

For a readme see https://github.com/GodotNativeTools/godot_headers/blob/master/README.md
2017-04-03 17:20:11 +02:00
Karroffel 67f59bc2d9 increased maximum number of scripting languages 2017-04-03 16:10:26 +02:00
Rémi Verschelde 1bd3648bb0 Merge pull request #8211 from robertdhernandez/NinePatch-Fix
[3.0] Fixed NinePatchRect/StyleBoxTexture incorrectly drawing AtlasTexture
2017-04-03 14:41:53 +02:00
volzhs e65b8b666c Fix failing to compile shader on Adreno GPU 2017-04-02 23:16:25 +09:00
Robert Hernandez a4a12a2b7b Fixed AtlasTexture being incorrectly
Fixed StyleBoxTexture and NinePatchRect drawing the entire texture of an
AtlasTexture.
2017-03-30 21:09:25 -04:00
Karroffel 2281942fb3 Added methods for opening dynamic libraries to OS 2017-03-29 23:05:15 +02:00
Rémi Verschelde 296ece2c6a Merge pull request #7985 from Faless/enet_godot_sock_squash
Update ENet to use Godot sockets.
2017-03-24 22:47:18 +01:00
Rémi Verschelde debeee56f7 Fix typos in source code using codespell
From https://github.com/lucasdemarchi/codespell
2017-03-24 21:45:31 +01:00
Fabio Alessandrelli 5f681d0b0f Allow non blocking UDP put_packet in C++.
- Add blocking mode option to PacketPeerUDP.
- put_packet returns ERR_UNAVAILABLE when operation would block.
- ENet module uses non-blocking UDP.
2017-03-24 02:30:11 +01:00
Juan Linietsky efaeebab4d Several fixes to Android exporter and port.
Android seems to be working again!
2017-03-23 20:14:12 -03:00
eska 12dd86bba0 Some WebGL 2 and build fixes/clean-up 2017-03-17 15:56:48 +01:00
Juan Linietsky af020160c6 more html5 fixes 2017-03-14 10:53:46 -03:00
Rémi Verschelde b19b8f72e8 Merge pull request #8009 from Calinou/directional_shadow_interpolation
Improve directional shadow filtering by using linear interpolation
2017-03-13 11:03:45 +01:00
Rémi Verschelde a45e6f67d5 Merge pull request #7981 from RandomShaper/position-for-2d-shaders
Map POSITION to gl_FragCoord.xy for 2D shaders
2017-03-13 11:01:14 +01:00
Juan Linietsky 6d15e15732 converted skeletons from uniform to texture 2017-03-12 13:08:56 -03:00
Hugo Locurcio 335d96a0ab Improve directional shadow filtering by using linear interpolation 2017-03-11 12:24:54 +01:00
Pedro J. Estébanez 5ff0924a93 Map POSITION to gl_FragCoord.xy for 2D shaders 2017-03-08 02:07:59 +01:00
Rémi Verschelde 15c4d5006e Fix build issue with MSVC
windows.h is a mess.
2017-03-06 09:11:03 +01:00
Rémi Verschelde 6163343118 Make that Whole New World great again
Fix regression from 5dbf180 that broke Windows build.
2017-03-05 19:12:22 +01:00
Rémi Verschelde 5dbf1809c6 A Whole New World (clang-format edition)
I can show you the code
Pretty, with proper whitespace
Tell me, coder, now when did
You last write readable code?

I can open your eyes
Make you see your bad indent
Force you to respect the style
The core devs agreed upon

A whole new world
A new fantastic code format
A de facto standard
With some sugar
Enforced with clang-format

A whole new world
A dazzling style we all dreamed of
And when we read it through
It's crystal clear
That now we're in a whole new world of code
2017-03-05 16:44:50 +01:00
Rémi Verschelde e1c1d7d1d7 Add a bunch of missing Godot headers in own files 2017-03-05 15:47:28 +01:00
Ferenc Arn 790611ef26 Added missing FIXMEs in PR #7878 2017-03-02 16:13:01 -06:00
Thaer Razeq f50488a361 Various fixes detected using PVS-Studio static analyzer.
- Add FIXME tags comments to some unfixed potential bugs
- Remove some checks (always false: unsigned never < 0)
- Fix some if statements based on reviews.
- Bunch of missing `else` statements
2017-02-28 07:52:02 -06:00
Juan Linietsky ffcd954211 Fixes to webgl/opengl es 3.0 for compatibility with webgl2.0, still does not work though 2017-02-22 19:14:21 -03:00
Juan Linietsky de0045cf1b -renamed globals.h to global_config.cpp (this seems to have caused a few modified files)
-.pck and .zip exporting redone, seems to be working..
2017-02-21 00:06:30 -03:00
Hein-Pieter van Braam b696beea65 Correct hash behavior for floating point numbers
This fixes HashMap where a key or part of a key is a floating point
number. To fix this the following has been done:

* HashMap now takes an extra template argument Comparator. This class
gets used to compare keys. The default Comperator now works correctly
for common types and floating point numbets.

* Variant implements ::hash_compare() now. This function implements
nan-safe comparison for all types with components that contain floating
point numbers.

* Variant now has a VariantComparator which uses Variant::hash_compare()
safely compare floating point components of variant's types.

* The hash functions for floating point numbers will now normalize NaN
values so that all floating point numbers that are NaN hash to the same
value.

C++ module writers that want to use HashMap internally in their modules
can now also safeguard against this crash by defining their on
Comperator class that safely compares their types.

GDScript users, or writers of modules that don't use HashMap internally
in their modules don't need to do anything.

This fixes #7354 and fixes #6947.
2017-02-16 18:44:29 +01:00
Juan Linietsky 903a3aa5f0 a ton of bug fixes to the renderer 2017-02-16 08:55:43 -03:00
Juan Linietsky da11d6d9e8 Many fixes to make exported scenes work better, still buggy. 2017-02-15 08:34:02 -03:00
Juan Linietsky d7fd86d51a -begin of export work, not done yet
-fixes to make scenes exported from godot 2.x work
2017-02-15 08:30:32 -03:00