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
Rémi Verschelde
70b9aa379d
Merge pull request #7581 from Faless/v6_wild_bind
...
TCP/UDP listen bind to address and bugfixes
2017-02-12 23:31:40 +01:00
Hein-Pieter van Braam
cff6840ff7
Add a simple signal handler for SIGCHLD on Unix
...
This fixes #6631
2017-02-09 22:08:35 +01:00
Juan Linietsky
07bbcf91f7
basic contact shadows implementation, will most likely need some polishing
2017-02-08 07:35:14 -03:00
Juan Linietsky
6bfaa0f12c
shadows were not working in-editor for nvidia, fixed now
2017-02-06 20:18:35 -03:00
Juan Linietsky
5cc63dee0f
ability to adjust propagation in gi probe
2017-02-06 05:12:15 -03:00
Juan Linietsky
6f2e16306a
Several bugfixes, improving the import workflow
2017-02-06 00:38:39 -03:00
Rémi Verschelde
40e4c1f6ab
Merge pull request #7689 from eska014/webgl2
...
Enable WebGL2 in web export, start fixing build
2017-02-02 08:18:42 +01:00
eska
e06edc67c0
Enable WebGL2 in web export, start fixing build
...
Will not yet compile
2017-02-01 10:21:04 +01:00
Fabio Alessandrelli
5dc7c920bf
Fix buffer size check in UDP socket.
...
We were reserving 12 bytes from the buffer for ip, port, and length, but since
IPv6 introduction we should be reserving 24 (IPv6 are 16 bytes)
2017-01-23 20:18:23 +01:00
Fabio Alessandrelli
9336857132
Use default UDP ring buffer size of 65536 for clients
...
We should probably create a specific function for setting the
recv buffer anyway. UDP sockets does not need to bind (listen)
to be able to call recvfrom. This is especially useful for clients
who just call set_send_address and start communicating with a server.
2017-01-23 20:18:23 +01:00
Fabio Alessandrelli
68dc969f8c
Fix bug causing UDP socket to close after the first send if not listening
...
The ring buffer for receiving packets was not resized in constructor
2017-01-23 20:18:23 +01:00
Fabio Alessandrelli
fa0cb7da0e
Avoid deadlock when writing/reading data on a connecting TCP socket
...
TCP status polling is always performed as non blocking.
Trying to put a packet on a connecting socket will fail immediately.
2017-01-23 20:18:23 +01:00
Fabio Alessandrelli
619e7a2c8b
Bind to IPv4 on OpenBSD when using wildcard
...
OpenBSD does not support binding on both IPv4 and IPv6 using the same socket
2017-01-23 20:18:23 +01:00
Fabio Alessandrelli
88a56ba783
Remove set_ip_type from network classes (no longer needed)
...
- TCP:
- `listen` bind to wildcard "*" -> dual stack socket
- `listen` bind to address -> socket from address type
- `connect` -> resolve using best protocol (UNSPEC), socket from address type
- UDP:
- `listen` bind to wildcard "*" -> dual stack socket
- `listen` bind to address -> socket from address type
- `put_packet`/`put_var` -> resolve using TYPE_ANY (UNSPEC), socket from address type
(to change socket type you must first call `close` it)
2017-01-23 20:18:22 +01:00
Fabio Alessandrelli
2fe4ef6699
Implement UDP listen bind address
2017-01-23 20:18:18 +01:00
Fabio Alessandrelli
b2839343ca
Implement TCP Server bind address
2017-01-23 20:15:20 +01:00
Fabio Alessandrelli
98a7e2b4e0
Convert validity checks of IP_Address to is_valid method.
2017-01-23 20:15:20 +01:00
Fabio Alessandrelli
e4b9b37ccf
Avoid calling close when polling a UDP peer without socket
2017-01-23 20:15:20 +01:00
Juan Linietsky
0aa7242624
WIP new AudioServer, with buses, effects, etc.
2017-01-21 19:01:00 -03:00
Ferenc Arn
6f4f9aa6de
Overloaded basic math funcs (double and float variants). Use real_t rather than float or double in generic functions (core/math) whenever possible.
...
Also inlined some more math functions.
2017-01-16 13:36:33 -06:00
Rémi Verschelde
7b059965e8
Adapt platforms to AudioServer refactoring
...
Fixes compilation on Windows and likely other platforms (at least
as far as AudioServer changes were concerned), though they were
not tested.
2017-01-16 19:19:45 +01:00
BastiaanOlij
3a02df7739
Working on compile issues for iOS
2017-01-16 23:14:13 +11:00
Rémi Verschelde
2a0ddc1e89
Style: Various fixes to play nice with clang-format
2017-01-16 08:49:52 +01:00
Rémi Verschelde
f44ee891be
Style: Fix statements ending with ';;'
2017-01-16 08:49:52 +01:00
Juan Linietsky
b400c69cd4
Oops! Audio engine has vanished :D
2017-01-15 16:07:51 -03:00
Juan Linietsky
5dde810aa5
no more errors related to missing GlobalConfig::Get (or so I hope)
2017-01-14 21:57:22 -03:00
Rémi Verschelde
a540e15cd1
Merge pull request #7513 from djrm/compilation_fix
...
Matrix32 -> Transform2D
2017-01-15 00:27:05 +01:00
Rémi Verschelde
a992d3f74f
Merge pull request #7510 from Faless/tcp_connect
...
TCP connect always opens the correct socket type
2017-01-15 00:26:46 +01:00
Rémi Verschelde
479790a841
StreamPeerWinsock: Fix changed declarations
...
Bug introduced in dcb95ec147
.
2017-01-14 16:23:01 +01:00
Rémi Verschelde
f4897fccf0
DirAccessWindows: Fix list_dir_begin return type
...
Fixes bug introduced in da4170540c
.
2017-01-14 15:26:01 +01:00
Juan Linietsky
dcb95ec147
removed duplicated functions in class hierarchy that were bound more than once
...
added a check to detect this case in the future
2017-01-14 11:10:42 -03:00
Rémi Verschelde
93ab45b6b5
Style: Fix whole-line commented code
...
They do not play well with clang-format which aligns the `//` part
with the rest of the code block, thus producing badly indented commented code.
2017-01-14 14:52:23 +01:00
Juan Linietsky
da4170540c
Fixed dir access return value, changed it to Error like all other funcs
2017-01-14 09:17:15 -03:00
Juan Linietsky
6c512b88c2
UDP.set_send_address to UDP.set_dest_address
2017-01-14 00:54:21 -03:00
Fabio Alessandrelli
55b4f3686d
TCP connect always opens correct socket type
...
TCP client connections does not need to rely on ipv6 dual stack sockets
2017-01-13 19:02:39 +01:00
Daniel J. Ramirez
aafaf2226f
Matrix32 -> Transform2D
2017-01-13 01:34:32 -06:00
Fabio Alessandrelli
65483d57bf
Improvements to scons defined WINVER/_WIN32_WINNT
2017-01-12 17:13:19 +01:00
Juan Linietsky
35b404ba08
Unify naming of blendshape / morphtarget into just "Blend Shape"
2017-01-12 08:34:00 -03:00
Juan Linietsky
bc26f90581
Type renames:
...
Matrix32 -> Transform2D
Matrix3 -> Basis
AABB -> Rect3
RawArray -> PoolByteArray
IntArray -> PoolIntArray
FloatArray -> PoolFloatArray
Vector2Array -> PoolVector2Array
Vector3Array -> PoolVector3Array
ColorArray -> PoolColorArray
2017-01-11 00:52:51 -03:00
Rémi Verschelde
1105b42883
Merge pull request #7425 from lonesurvivor/master
...
Fix for the huge audio latency (>200 ms) for the …
2017-01-10 15:19:13 +01:00
Rémi Verschelde
b24fe6879a
Windows: Workaround missing includes in MinGW-w64 < 4
...
The MinGW-w64 version we have on our Travis build environment (Ubuntu 12.04,
mingw-w64 2.0.1, gcc 4.6) is old and has some missing includes in the
dependencies of the `tcpmib.h` header [0] [1] [2].
Those were not triggered before 6323779596
probably due to conflicting WINVER definitions which prevented triggering the code
specific to >= 0x0600 (Vista). We ensure it won't be triggered by defining the
_WIN32_WINNT macro to Windows XP compatibility.
2017-01-09 12:10:25 +01:00
Rémi Verschelde
6323779596
Windows: Define _WIN32_WINRT to 0x0600 (Vista)
...
Passed as a compiler define to be sure it is always define before windows.h
is loaded. This means that Godot officially requires Vista API or later, it will
not work on Windows XP or earlier.
Also fix a bogus check for Windows 7 API.
2017-01-08 20:41:26 +01:00
Juan Linietsky
d9ca9d778d
Use more compatible initializarion of RWLockPosix
2017-01-08 11:35:32 -03:00
Juan Linietsky
263d5fcff8
Added missing readers writers lock to windows, should compile and run again..
2017-01-08 11:13:12 -03:00
Juan Linietsky
2ab83e1abb
Memory pool vectors (DVector) have been enormously simplified in code, and renamed to PoolVector
2017-01-07 18:26:38 -03:00
Rémi Verschelde
dc0d08cc93
Move glad files to thirdparty dir
2017-01-06 22:42:19 +01:00
Juan Linietsky
53ce643e52
-Changed memory functions, Memory::alloc_static*, simplified them, made them aligned to 16
...
-Changed Vector<> template to fit this.
2017-01-06 10:15:44 -03:00
lonesurvivor
da6b6c2dd7
Fix for the huge audio latency of the SamplePlayer (>200 ms)
...
- fixes PulseAudio, ALSA and RtAudio driver
- cleans up the driver files for better readability (mostly whitespace-related stuff)
- makes ALSA and Pulseaudio actually use the global setting "audio/mix_rate" for the sample rate instead of a
fixed value (RtAudio did this already)
2017-01-05 15:36:29 +01:00
Juan Linietsky
495d059a74
Merge branch 'master' of https://github.com/godotengine/godot
2017-01-05 09:18:03 -03:00
Juan Linietsky
0f7af4ea51
-Changed most project settings in the engine, so they have major and minor categories.
...
-Changed SectionedPropertyEditor to support this
-Renamed Globals singleton to GlobalConfig, makes more sense.
-Changed the logic behind persisten global settings, instead of the persist checkbox, a revert button is now available
2017-01-05 09:16:00 -03:00
BastiaanOlij
55d425807f
First set of changes to fix compilation errors and initialise the gles3 renderer for Mac OS X. Still broken at this point.
2017-01-04 23:34:02 +11:00
Juan Linietsky
118eed485e
ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to Variant.
...
All usages of "type" to refer to classes were renamed to "class"
ClassDB has been exposed to GDScript.
OBJ_TYPE() macro is now GDCLASS()
2017-01-02 23:03:46 -03:00
Rémi Verschelde
3f3f5a5359
Merge remote-tracking branch 'origin/gles3' into gles3-on-master
...
Various merge conflicts have been fixed manually and some mistakes
might have been made - time will tell :)
2017-01-02 21:52:26 +01:00
Rémi Verschelde
0b2771bd65
Merge pull request #7271 from Faless/ipv6_cleanup
...
Fixes and improvementes for IPv6 implementation.
2017-01-02 15:51:45 +01:00
Juan Linietsky
c2a217c350
WIP particle system
...
Ability to enable and change MSAA settings
Ability to change VCT quality
Ability to enable/disable HDR rendering
2017-01-01 22:16:52 -03:00
Rémi Verschelde
c7bc44d5ad
Welcome in 2017, dear changelog reader!
...
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!
2017-01-01 22:03:33 +01:00
Juan Linietsky
a62c99c4e4
Some fixes and clean ups
2016-12-31 10:53:29 -03:00
reduz
f4a56e7782
begin work on new particle system
2016-12-30 08:35:54 -03:00
reduz
289bc881aa
now it really works on window for real
2016-12-25 08:05:23 -03:00
reduz
0d4abf2aa3
fixed a horrible bug on Windows AMD, scenes saved until now in this branch
...
are no longer valid :(
2016-12-24 16:23:30 -03:00
Juan Linietsky
3adb42e217
Fixed many more bugs reported by Valgrind
2016-12-23 08:47:16 -03:00
Juan Linietsky
6b35211c53
eliminated some crashes according to llvm address sanitizer
2016-12-23 01:16:04 -03:00
Juan Linietsky
19ba45587c
put some limits to max ubo sizes to avoid crashes
2016-12-23 01:05:21 -03:00
Juan Linietsky
4e729f38e0
baking now shows a proper button, and bakes can be saved.
2016-12-23 00:37:38 -03:00
REBELLIOUSX\Rebel_X
20d6af6028
Fix issue #7331
...
A Drive with "Z" letter assigned to it on Windows will be shown.
2016-12-22 07:05:56 -06:00
Juan Linietsky
f9603d8236
can bake for omni and spotlight
...
store normal when baking
2016-12-22 10:00:15 -03:00
Juan Linietsky
37f558cd7b
Some BRDF fixes
2016-12-21 14:22:17 -03:00
reduz
72b844c349
Godot works on Windows again..
2016-12-21 02:29:58 -03:00
Juan Linietsky
075fde7f26
work in progress global illumination
2016-12-20 00:21:07 -03:00
Juan Linietsky
22a90e8f2a
DOF blur, near and far fields..
2016-12-10 01:13:20 -03:00
Fabio Alessandrelli
de23ce11b5
Remove old unused AI_V4MAPPED flag to getaddrinfo
2016-12-09 23:38:14 +01:00
Fabio Alessandrelli
1aff508dd9
IP_Address now handle IPv4 and IPv6 transparently
...
IP_Address changes:
- Converts to and from String transparently while handling IPv4 as IPv6
mapped (::ffff:[IP]) address internally.
- Completely remove AddrType enum.
- Setting/Getting of ip array is now only possible through dedicated functions
(ie. set_ipv4, get_ipv4, set_ipv6, get_ipv6)
- Add function to know if the address is a valid IPv4 (for IP implementation and enet)
2016-12-09 18:24:59 +01:00
Fabio Alessandrelli
c18c5013f8
Migrate int.IP_TYPE_ constants to IP.TYPE_
2016-12-09 18:24:59 +01:00
Fabio Alessandrelli
4d90a4fcd5
Move V6ONLY flag selection inside helpers
2016-12-09 18:24:59 +01:00
Fabio Alessandrelli
9200da58e4
Automatically map IPv4 address to IPv6 when needed
2016-12-09 18:24:59 +01:00
Fabio Alessandrelli
95bdd97768
Use an instance variable for ip_type in raw sockets
...
PacketPeerUDP/StreamPeerTCP/TCP_Server now uses an instance variable
to store the selected ip_type (IPv4/IPv6/ANY, where ANY = dual stack).
All calls to resolve addresses, sending/receving data, connecting/listening
will use that socket type.
2016-12-09 18:24:59 +01:00
Fabio Alessandrelli
311f1f165b
Fix getaddrinfo failing on android
2016-12-09 18:24:58 +01:00
Fabio Alessandrelli
4f07b595a1
Properly handle tcp connection failure
2016-12-09 18:24:58 +01:00
Fabio Alessandrelli
cdc1ca0f13
Fix _set_ip_addr_port not setting the address.
2016-12-09 18:24:58 +01:00
Juan Linietsky
18ebd22000
Multi stage glow with light bleeding from HDR
2016-12-08 09:48:38 -03:00
Juan Linietsky
8534ced22d
Tonemapping and Auto Exposure support
2016-12-07 17:49:52 -03:00
Juan Linietsky
9bc506067a
fix small issue with copying reflections
2016-12-04 13:08:38 -03:00
Juan Linietsky
a299c3ebf1
Support for SSAO
2016-12-04 12:45:30 -03:00
Juan Linietsky
27a46d78ec
Subsurface scattering material param is now working!
2016-12-02 22:23:16 -03:00
eska
a6ae3204fb
OS additions and fixes for WebAssembly/asm.js
...
- Implement alert, shell_open, set_window_title
- Add locale lookup, fixes #2477
- Print without color control sequences
- Move get_executable_path implementation to OS_JavaScript
2016-11-30 22:01:55 +01:00
Juan Linietsky
1652f876fd
Add missing glsl file and remove generated .h files
2016-11-30 07:36:56 +01:00
Juan Linietsky
a47c78aed1
Screen space reflection effect
2016-11-29 19:55:12 -03:00
Juan Linietsky
3f40701002
fixed bug removing dependencies
2016-11-24 23:30:54 -03:00
Juan Linietsky
a732708b9d
Blend shapes using transform feedback (GPU)
2016-11-24 20:46:55 -03:00
Juan Linietsky
69c30709ec
implemented immediates
2016-11-23 08:00:15 -03:00
Juan Linietsky
7cf8d75cf8
WIP immediates and proper buffers swapping
2016-11-23 07:04:55 -03:00
Juan Linietsky
b72ca04605
Changed to proper GLSL version
2016-11-22 20:53:37 -03:00
Juan Linietsky
9d635f0629
Migrated from GLES to GLAD, fixes many issues.
2016-11-22 20:51:56 -03:00
Juan Linietsky
943d27f46d
Instancing is working! (hooray)
2016-11-22 01:26:56 -03:00
Juan Linietsky
70d095d8f2
Skeletons are working now.
2016-11-21 19:03:39 -03:00
Juan Linietsky
a2505542ff
Huge amount of improvement in the material system. Materials should be
...
a lot more complete and usable now.
2016-11-20 22:49:53 -03:00
Juan Linietsky
c39d2b3f42
working reflection probes!!
2016-11-19 13:23:37 -03:00
Juan Linietsky
a7078a4be9
Done with lights and shadows (wonder if i'm missing something..)
2016-11-11 12:27:52 -03:00
Juan Linietsky
cacf9ebb7f
all light types and shadows are working, pending a lot of clean-up
2016-11-09 23:55:06 -03:00
George Marques
411faaa6f4
Rename remaining WinRT references to UWP
2016-11-03 14:51:08 -02:00
George Marques
b113c7b7a3
Rename WINRT_ENABLED to UWP_ENABLED
2016-11-03 14:51:08 -02:00
Rémi Verschelde
cc95d4448c
scons: Reorder options for clarity
...
Also prefix all thirdparty-related toggles with `builtin`.
2016-11-03 07:45:08 +01:00
George Marques
3958171a7a
Merge pull request #7006 from vnen/fix-ipv6-uwp
...
Fix IPv6 linking for UWP
2016-11-01 12:39:45 -02:00
George Marques
4160b3c9fe
Fix IPv6 linking for UWP
2016-10-31 21:39:45 -02:00
Rémi Verschelde
f34151ff0f
style: Various other PEP8 fixes in Python files
...
Done with `autopep8 --select=E7`, fixes:
- E701 - Put colon-separated compound statement on separate lines.
- E702 - Put semicolon-separated compound statement on separate lines.
- E703 - Put semicolon-separated compound statement on separate lines.
- E711 - Fix comparison with None.
- E712 - Fix (trivial case of) comparison with boolean.
- E713 - Fix (trivial case of) non-membership check.
- E721 - Fix various deprecated code (via lib2to3).
2016-11-01 00:35:16 +01:00
Rémi Verschelde
d4c17700aa
style: Fix PEP8 whitespace issues in Python files
...
Done with `autopep8 --select=E2,W2`, fixes:
- E201 - Remove extraneous whitespace.
- E202 - Remove extraneous whitespace.
- E203 - Remove extraneous whitespace.
- E211 - Remove extraneous whitespace.
- E221 - Fix extraneous whitespace around keywords.
- E222 - Fix extraneous whitespace around keywords.
- E223 - Fix extraneous whitespace around keywords.
- E224 - Remove extraneous whitespace around operator.
- E225 - Fix missing whitespace around operator.
- E226 - Fix missing whitespace around operator.
- E227 - Fix missing whitespace around operator.
- E228 - Fix missing whitespace around operator.
- E231 - Add missing whitespace.
- E231 - Fix various deprecated code (via lib2to3).
- E241 - Fix extraneous whitespace around keywords.
- E242 - Remove extraneous whitespace around operator.
- E251 - Remove whitespace around parameter '=' sign.
- E261 - Fix spacing after comment hash.
- E262 - Fix spacing after comment hash.
- E265 - Format block comments.
- E271 - Fix extraneous whitespace around keywords.
- E272 - Fix extraneous whitespace around keywords.
- E273 - Fix extraneous whitespace around keywords.
- E274 - Fix extraneous whitespace around keywords.
- W291 - Remove trailing whitespace.
- W293 - Remove trailing whitespace.
2016-11-01 00:35:16 +01:00
Rémi Verschelde
97c8508f5e
style: Start applying PEP8 to Python files, indentation issues
...
Done with `autopep8 --select=E1`, fixes:
- E101 - Reindent all lines.
- E112 - Fix under-indented comments.
- E113 - Fix over-indented comments.
- E115 - Fix under-indented comments.
- E116 - Fix over-indented comments.
- E121 - Fix a badly indented line.
- E122 - Fix a badly indented line.
- E123 - Fix a badly indented line.
- E124 - Fix a badly indented line.
- E125 - Fix indentation undistinguish from the next logical line.
- E126 - Fix a badly indented line.
- E127 - Fix a badly indented line.
- E128 - Fix a badly indented line.
- E129 - Fix a badly indented line.
2016-11-01 00:33:51 +01:00
Juan Linietsky
6b2a27bbe5
shadow atlas allocation (work in progress)
2016-10-31 08:47:46 -03:00
Fabio Alessandrelli
bdc7ca84ca
Define IPV6_V6ONLY flag if not defined on windows (old mingw versions)
2016-10-30 22:58:15 +01:00
Fabio Alessandrelli
eb27e993f0
TCP/UDP Listen sockets can now be set to IPv6 only
2016-10-30 17:46:05 +01:00
Fabio Alessandrelli
812908e236
Fix windows debugger connection problems.
...
Unify network socket creation between platform.
Ensure IPV6_V6ONLY flag is not set on sockets (allow IPv4 connection in IPv6 socket, dual-stack).
2016-10-30 17:46:05 +01:00
Fabio Alessandrelli
ee69bd81cf
TCPServer listen now default to IP type ANY (v6 socket with v4 support)
2016-10-30 17:46:05 +01:00
Rémi Verschelde
1944635ac4
Merge pull request #6959 from RandomShaper/fix-big-libs
...
Adopt simpler strategy for big libs on Windows
2016-10-30 17:35:37 +01:00
Rémi Verschelde
e34a5324c8
scons: Move lib splitting method to methods.py
...
Apparently it might still be necessary for some console ports.
2016-10-30 17:04:07 +01:00
Juan Linietsky
acfa606915
resolved reflection cubemap blending
2016-10-29 22:11:05 -03:00
Juan Linietsky
d6567010bf
-Many many fixes
...
-Gizmos work again
2016-10-29 20:48:09 -03:00
Pedro J. Estébanez
51ad1c1668
Adopt simpler strategy for big libs on Windows
2016-10-29 03:34:53 +02:00
Juan Linietsky
53d8f2b1ec
PBR more or less working, still working on bringing gizmos back
2016-10-27 11:50:26 -03:00
Zher Huei Lee
439d439321
RegEx re-implemented as a module
...
Re-wrote nrex as a module using godot-specific parts and new
features:
* Added string substitutions.
* Named groups are now supported.
* Removed use of mutable variables in RegEx. RegExMatch is returned
instead.
2016-10-27 10:27:40 +01:00
Fabio Alessandrelli
25e29972a9
Fix PacketPeerUDP get_packet_port()
...
Properly convert port field from network to system ordering on incoming packets.
2016-10-26 18:27:01 +02:00
Rémi Verschelde
c67e3a485d
Merge pull request #6925 from godotengine/ipv6
...
Adding IPv6 support
2016-10-26 14:32:51 +02:00
Fabio Alessandrelli
80e911647c
Pass correct address size (ipv4,ipv6) to socket connect, bind, sendto
...
The address size passed to network system calls now reflects the the actual IP type (v4 or v6).
Fix Windows and OSX ipv6 sockets
2016-10-26 08:20:31 +02:00
Juan Linietsky
cb34b70df1
More scene work, can display a skybox
2016-10-21 07:27:13 -03:00
Ariel Manzur
672225b710
added windows support for ipv6, cleaned up unix code
2016-10-20 07:04:10 -03:00
Ariel Manzur
1d45f35a4a
fixed some byte order and parsing problems
2016-10-19 18:32:36 -03:00
Juan Linietsky
4428115916
Everything returning to normal in 3D, still a long way to go
...
-implemented the scene part of visual server and rasterizer, objects without lighting and material are rendererd only
2016-10-19 11:14:41 -03:00
Ariel Manzur
887a897c02
adding ipv6
2016-10-18 18:53:18 -03:00
Rémi Verschelde
c23e8797f1
Merge pull request #6855 from vnen/xaudio2-driver
...
Isolate XAudio2 driver
2016-10-18 07:22:10 +02:00
George Marques
05bf24b9a5
Fix memory management of XAudio2 driver
2016-10-17 20:42:37 -02:00
George Marques
f3102160a1
Isolate XAudio2 driver
...
Now it's possible to compile for Windows platform if wanted. It's
supported only for Windows 8 or later, so it's not enabled by default.
2016-10-17 20:42:12 -02:00
Rémi Verschelde
fc8ccd5b8c
SCsub: Add python shebang as a hint for syntax highlighting
...
Also switch existing shebangs to "better" /usr/bin/env python.
2016-10-17 20:10:46 +02:00
Rémi Verschelde
e57042e8a9
png: Try to fix neon issue on iphone armv7
2016-10-15 18:10:19 +02:00
Rémi Verschelde
248bc9159c
drivers: Refactor SCsub and drop redundant env_drivers clone
...
The reordering of the SConscript includes allows to ensure that
stuff like the builtin zlib headers will be available for libpng.
Also moved glew back into global env, otherwise windows seems
not to find it... Kind of shooting in the dark with this multi-env
setup.
2016-10-15 18:10:18 +02:00
Rémi Verschelde
edbc0c0d0b
freetype: Make it a module and split thirdparty library
...
Comment out the weird workaround for building on Windows at it might
not be needed anymore. Testing needed to confirm.
2016-10-15 18:10:17 +02:00
Rémi Verschelde
e6dc51a0f7
chibi: Move to a module
2016-10-15 12:20:53 +02:00
Rémi Verschelde
cbf52606f4
zlib: Split thirdparty files, simplify scons option
2016-10-15 12:20:47 +02:00
Rémi Verschelde
36738ddda4
glew: Split thirdparty files and isolate env
...
Not fully happy about the way this one interacts with the various
platforms. Maybe the platform_config.h should be generated by the
SCsub instead of passing a define just to know where is the header.
2016-10-15 12:01:28 +02:00
Rémi Verschelde
8311a78df5
squish: Move to a module and split thirdparty lib
2016-10-15 12:01:28 +02:00
Rémi Verschelde
8981ff8a84
rtaudio: Split thirdparty files
2016-10-15 12:01:25 +02:00
Rémi Verschelde
5c12c9e69b
mpc: Move to a module and split thirdparty libmpcdec
2016-10-15 11:50:42 +02:00
Rémi Verschelde
cfcc8a20e8
theora: Move to a module and split thirdparty lib
...
Same rationale as the previous commits.
2016-10-15 11:50:41 +02:00
Rémi Verschelde
da09c6131b
modules: Clone env in each module
...
This allows to pass include paths and flags only to a given thirdparty
library, thus preventing conflicts between their files (e.g. between
opus and openssl which both provide modes.h.
This also has the nice effect of making the compilation command smaller
for each module as it no longer related to all other modules, only the
final linking brings them together.
This however requires adding manually the ogg include path in opus
and vorbis when building against the builtin ogg, since it is no longer
in the global env.
Also simplified template 'thirdparty_<module>_sources' to
'thirdparty_sources'.
"Core" modules like cscript, gdscript, gridmap, ik and virtual_script
still use the main env_modules, but it could be changed if need be.
2016-10-15 11:50:41 +02:00
Rémi Verschelde
422196759f
openssl: Move to a module and split thirdparty lib
...
Same rationale as the previous commits.
2016-10-15 11:50:41 +02:00
Rémi Verschelde
d9a291f641
ogg/vorbis/opus: Make them modules and unbundle thirdparty libs
...
Took the opportunity to undo the Godot changed made to the
opus source. The opus module should eventually be built in its
own environment to avoid polluting others with too many include
dirs and defines.
TODO: Fix the platform/ stuff for opus.
2016-10-15 11:50:40 +02:00
Rémi Verschelde
ee3cf211c6
webp: Make it a module and unbundle libwebp thirdparty files
...
Note that there are two Godot-specific changes made to libwebp
for the javascript/HTML5 platform. They are documented in the
README.md.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
b1e8889d96
dds/etc1/pbm/pvr: Make those modules and split thirdparty files
...
They are not particularly packaged in Linux distros so we do not
facilitate unbundling via SCons. There could be done if/when there
is interest.
Also s/pnm/pbm/, long-lived typo :)
2016-10-15 11:50:39 +02:00
Rémi Verschelde
16ba665db6
jpg: Make it a module and split jpgd thirdparty files
...
Similar rationale as in previous commit.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
5fef84a135
png: Split library to thirdparty dir and allow unbundling
...
Uses the new structure agreed upon in #6157 , but the thirdparty/ folder
does not behave following a logic similar to that of modules/ yet.
The png driver can't be moved to a module as discussed in #6157 , as it's
required by core together with a few other ImageLoader implementations
(see drivers/register_driver_types.cpp:register_core_driver_types())
Dropped the possibility to disable PNG support, it's a core component
of Godot.
2016-10-15 11:50:39 +02:00
Rémi Verschelde
f63bf12193
Drop nedmalloc which is apparently not used anymore
2016-10-14 18:21:23 +02:00
Rémi Verschelde
d3d0507c05
Remove speex support, it is obsoleted by opus
...
As mentioned by upstream, Xiph.Org [0]:
> The Speex codec has been obsoleted by Opus. It will continue to be
> available, but since Opus is better than Speex in all aspects,
> users are encouraged to switch.
[0] http://www.speex.org/
2016-10-13 18:58:56 +02:00
Juan Linietsky
1527cf8c0d
2D Shaders are working again using the new syntax, though all is buggy in general
2016-10-10 18:31:01 -03:00
Juan Linietsky
cf5778e51a
-Added ViewportContainer, this is the only way to make viewports show up in GUI now
...
-2D editing now seems to work
-Added some functions and refactoring to Viewport
2016-10-05 01:26:35 -03:00
Juan Linietsky
a6e9dc6153
make editor update by tracking changes in visualserverraster
2016-10-03 23:46:24 -03:00
Juan Linietsky
22d83bc9f6
Begining of GLES3 renderer:
...
-Most 2D drawing is implemented
-Missing shaders
-Missing all 3D
-Editor needs to be set on update always to be used, otherwise it does not refresh
-Large parts of editor not working
2016-10-03 21:35:16 +02:00
Rémi Verschelde
78d97b060a
Merge pull request #6605 from zaps166/old-gl-ext-funcs
...
Add compatibility with old OpenGL 2.1 drivers
2016-10-03 14:21:37 +02:00
Rémi Verschelde
c46e205237
Merge pull request #6617 from zaps166/theora-x86-simd-fix
...
Fixes in Theora SCsub
2016-10-03 12:33:57 +02:00
mookiexl
0b12ebba11
Limit directional shadow draw distance, fixes #559 , optimization ( #1991 )
...
* Shadow fadeout exponent hardcoded for now, should be user configurable.
* optimization - skip shadows outside visible range
2016-10-03 12:28:32 +02:00
Błażej Szczygieł
75299cf334
Fixes in Theora SCsub
...
- properly pass x86 assembly define to the compiler,
- don't compile unnecessary/encoder files.
2016-10-03 12:26:52 +02:00
Rémi Verschelde
463a42c71e
Merge pull request #6606 from zaps166/don-crash-on-unsupported-gl
...
Don't crach when OpenGL version is unsupported
2016-10-03 11:54:49 +02:00
Rémi Verschelde
9fce85f9d7
Merge pull request #6501 from SuperUserNameMan/windows_compile_with_standalone_msvc
...
scons detects standalone MSVC on Windows
2016-10-03 11:36:44 +02:00