Ibrahn Sahir
bff864818f
Fixed an access after free in ShaderLanguage::_reduce_expression.
...
Passing an element reference of a vector to a push_back call to
that same vector can cause an access after free. This is because push_back
will resize the vector, reallocating if necessary, leaving the reference
referring to the freed memory.
Removed an instance of this usage here.
2018-09-19 14:28:19 +01:00
JFonS
3cedec5f75
Set uniform default values in inspector
2018-09-13 23:05:33 +02:00
Rémi Verschelde
1a16dabfb5
Merge pull request #21982 from luzpaz/misc-typos
...
Misc. typos
2018-09-13 10:59:00 +02:00
luz.paz
08bde5b2de
Misc. typos
...
Found via `codespell -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"`
2018-09-12 21:39:17 -04:00
Rémi Verschelde
277b24dfb7
Make core/ includes absolute, remove subfolders from include path
...
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
JFonS
f495cede0b
Fix handling of shader constants that caused crash, closes #15166
2018-08-31 19:24:48 +02:00
Juan Linietsky
cf834a22dc
Ported CPU particles to 2D
2018-08-29 16:48:55 -03:00
Rémi Verschelde
52466d57e9
Make some debug prints verbose-only, remove others
2018-08-24 14:59:01 +02:00
Chaosus
37f5cc5b63
Added FRAGCOORD to spatial light processing
2018-08-20 09:35:47 +03:00
Chaosus
9634d74d31
Allow matrixes in varyings
2018-08-19 15:36:58 +03:00
Juan Linietsky
0fc1c4eda8
Merge pull request #20149 from Overblob/shader_float_typing
...
Shader language - Add optional float typings
2018-08-10 18:21:28 -03:00
Thomas Herzog
b4d3f541e7
add 3D textures
2018-07-30 12:20:27 +02:00
Juan Linietsky
95a9e51975
Remove pointless check for no texture, fixes #7298
2018-07-29 20:47:20 -03:00
Juan Linietsky
7b63c6323d
Clear color was not correctly being set, fixes #4939
2018-07-29 15:09:42 -03:00
Juan Linietsky
d2aaf460fb
Manually fix, merge and close #15168
2018-07-29 12:18:37 -03:00
Juan Linietsky
6a5aec3644
Rename flag to better name
2018-07-27 08:59:18 -03:00
Hein-Pieter van Braam
0e29f7974b
Reduce unnecessary COW on Vector by make writing explicit
...
This commit makes operator[] on Vector const and adds a write proxy to it. From
now on writes to Vectors need to happen through the .write proxy. So for
instance:
Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;
Failing to use the .write proxy will cause a compilation error.
In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.
_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Todd Ross
9423f23ffb
allow comments and whitespace before shader_type declaration
2018-07-26 00:17:57 +02:00
Rémi Verschelde
237148e80f
Merge pull request #18368 from Gamblify/RasterizerEngineSync
...
sync rasterizers with engine
2018-07-25 20:33:37 +02:00
Chaosus
ca0a6c3fca
Added conversions between matrixes in shaders
2018-07-25 18:14:52 +03:00
Juan Linietsky
dc976cac57
Merge pull request #12678 from AndreaCatania/soft
...
Soft body
2018-07-23 16:04:32 -03:00
AndreaCatania
17ebbfb56d
Implemented Soft body
...
- Soft Body Physics node
- Soft Body Rendering
- Soft body Editor
- Soft body importer
2018-07-23 20:50:23 +02:00
Juan Linietsky
ec85fd554b
Fix issues with CPUParticles and related conversion from Particles. Closes #20126
2018-07-23 12:28:50 -03:00
AndreaCatania
fbf3ad2841
Added some API to visual server so from control VRAM buffer is more easy
2018-07-23 12:59:27 +02:00
Juan Linietsky
2b9902db06
-Fix disable_3d flag
...
-Add extra flag optimize=[size,speed] to be able to prioritize size
2018-07-21 17:26:49 -03:00
Alex Roman
2ce1118faa
Add disable ambient light flag to shaders and materials
2018-07-17 21:30:43 +02:00
Max Hilbrunner
277793439a
Revert "Fix #19507 Not emitted particles affects performance"
2018-07-17 16:52:13 +02:00
Max Hilbrunner
4b626dc114
Merge pull request #19764 from malbach/godot_malbach
...
Fix #19507 Not emitted particles affects performance
2018-07-17 16:47:41 +02:00
Rémi Verschelde
1d84c4f870
Merge pull request #20158 from Overblob/Fixed_shader_parsing_error_log
...
Fixed shader parsing error log
2018-07-17 14:16:56 +02:00
Juan Linietsky
de910f8c26
Finally figured out how to implement AnimatedTexture properly.
2018-07-16 11:43:49 -03:00
Overblob
e6ad5e23b4
* Small hex/float/integer parsing refactoring
...
* Potential bug fix on hex (cannot be used atm)
* Added optional typing for floats, eg:
"1f" -> "1.0"
"1.f" -> "1.0"
"1.99f" -> "1.99"
"1." -> "1.0"
2018-07-15 14:58:23 +02:00
Juan Linietsky
f6ce73f724
Visual Shaders are back.
2018-07-14 18:16:18 -03:00
Overblob
7a74d310aa
Fixed error due to bad cursor handling when parsing shader code
...
Fixed completion error log thrown on "no auto-completion found" for typings with no completion.
2018-07-14 19:59:11 +02:00
Josh Taylor
892a4b175a
Changed minimum visible viewport size
...
When the viewport's size.y becomes lower than 2, the storage->frame.current_rt->effects.mip_maps[0].sizes Vector during rendering becomes empty, resulting in crashes in at least GLES3. This is a temporary fix to stop rendering a viewport when its size is below 2 rather than below 1.
2018-07-07 17:10:32 -05:00
Juan Linietsky
7dcaabaf19
Support for CPU based particles, which aids compatibility with OpenGL ES 2.0
2018-07-06 20:21:42 -03:00
Rémi Verschelde
92bfde531c
Merge pull request #19786 from JFonS/correct_normal_scaling
...
Add render mode to ensure correct normals when using non-uniform scaling
2018-07-04 15:09:59 +02:00
Juan Linietsky
d280b14e6e
Hacked around duplication bug. I think duplicate needs to be even smarter, maybe pass two bools? (containers and/or resources)
2018-07-03 08:34:06 -03:00
Juan Linietsky
7fc2367508
Added ability for SSAO to affect AO textures too
2018-07-02 16:50:52 -03:00
malbach
cef8d355d2
Fix #19507 Not emitted particles affects performance
2018-06-25 18:17:28 +02:00
Bastiaan Olij
ddc40e5115
Fix typo in y shift
2018-06-23 22:41:29 +10:00
JFonS
c8cf71753c
Add render mode to ensure correct normals when using non-uniform scaling
2018-06-21 00:12:12 +02:00
Bastiaan Olij
3fc9b5d93f
Moved culling, updated lights and shadows into a prepare function so it is only called once for stereo rendering
2018-06-11 21:51:30 +10:00
Gustav Lund
35eb7f2d6a
Rasterizers are now in sync with engine
...
The rasterisers (both GLES3 and GLES2) were calculating their own frame delta time
This fix lets the rasterizers get the frame delta through the draw call
That way any regulations to the frame step from the main script will not cause particle systems to process at a different step than the rest of the Engine.
Remove unused rasterizer storage variable
frame.prev_tick variable were not used anywhere and has been removed
2018-06-05 16:33:02 +02:00
Oliver Rausch
2368b31e1e
Fix return type of isnan and isinf in the shader language
2018-06-01 01:34:32 +02:00
nemerle
f2ba9a1f65
Fix bad operator check in ShaderLanguage::_validate_assign
2018-05-16 21:28:12 +02:00
Juan Linietsky
3051bb8a81
Merge pull request #17845 from JFonS/disable_spatial_shadows
...
Added flag on SpatialMaterial to disable shadows
2018-05-07 16:18:25 -03:00
Juan Linietsky
0db4c576f1
Merge pull request #18533 from JFonS/fix_shader_compile
...
Fix vector reduction in shader language
2018-05-07 14:30:44 -03:00
JFonS
5b50685b38
Fix vector reduction in shader language
2018-05-07 19:25:31 +02:00
Juan Linietsky
b96cd25305
Merge pull request #18495 from Zylann/partial_texture_update
...
Added partial texture update to VisualServer
2018-05-07 13:20:38 -03:00
Juan Linietsky
35322c0678
Merge pull request #18677 from BastiaanOlij/add_no_blend
...
Add no-blend canvas item render_mode
2018-05-07 09:44:17 -03:00