Commit graph

193 commits

Author SHA1 Message Date
Bojidar Marinov
bdffdd7e38
Fix binormal sign when using triplanar mapping
Fixes #30671
2019-07-18 19:31:45 +03:00
Rémi Verschelde
b9f8e072ce
Merge pull request #26205 from Calinou/spatialmaterial-use-packed-channels
Tweak SpatialMaterial's default metallic and roughness texture channels
2019-06-20 11:46:01 +02:00
Hugo Locurcio
c0b3e20ca7
Tweak some editor property hints to be more flexible and consistent
This partially addresses #19242.
2019-06-16 23:52:16 +02:00
Rémi Verschelde
bf6f41e0b9
Merge pull request #26978 from qarmin/fix_recursive_bitmapfont_crash
Fix crash when trying to set as Bitmap Font fallback one of his parent
2019-05-28 13:49:34 +02:00
Bastiaan Olij
3ea778e66e Implement shadow to opacity 2019-05-21 20:07:46 +10:00
qarmin
4270403724 Fix crash when trying to set fallback or next pass with one of parent 2019-05-03 13:39:46 +02:00
Rémi Verschelde
9dc9434b1b
Merge pull request #24437 from mateusfccp/single_quotes_option
Add settings for single-quotes on completion
2019-04-30 14:58:33 +02:00
Juan Linietsky
a32b26dfa2 Several fixes to make GLES2 on HTML5 work much better.
Changed math class error reporting to be a bit less paranoid.
2019-02-25 21:47:29 -03:00
Hein-Pieter van Braam
a83e77fded Explicitly use floating point numbers in the our shaders
We need to be explicit about using floating point numbers in our shaders
for compatibility with mobile GLES drivers.
2019-02-24 23:35:10 +00:00
Juan Linietsky
fd68bb2596 -Treat scalar conversions when calling functions as error, closes #24261
-Make shader editor display errors if exist when just opening it
-Make ShaderMaterial not lose parameters if opened in error.
2019-02-23 17:55:09 -03:00
Hugo Locurcio
eb79833770
Tweak SpatialMaterial's default metallic and roughness texture channels
To follow the glTF 2.0 specification in all cases (including outside
of imported glTF scenes), the blue channel is now used for metallic
and the green channel is now used for roughness.
2019-02-23 19:10:31 +01:00
Juan Linietsky
aab8f443f9 -Support DEPTH_TEXTURE in GLES2, fixes #25106
-Fix use of transparent framebuffers in GLES2
-Fix use of ambient color clearing in GLES2 when no environment exists.
2019-02-22 11:35:39 -03:00
JFonS
4d933b1530 Fix canvas particle material for old GLSL versions 2019-02-11 14:56:23 +01:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Mateus Felipe C. C. Pinto
ca1935d6f7 Add settings for single-quotes on completion 2018-12-18 12:48:36 -02:00
Rémi Verschelde
3f9c054163
Merge pull request #23887 from ibrahn/dirty-material-list-lifetime
Moved dirty material lists from static to lifetime controlled by main.
2018-12-11 18:05:19 +01:00
Rémi Verschelde
573956915e
Merge pull request #22461 from dlasalle/#10480
Hide shading options in SpatialMaterial when 'FLAG_UNSHADED' is set.
2018-12-11 16:12:56 +01:00
Bastiaan Olij
fa63a0fe83 Reverse bitangent on everythings to ensure default normal map behavriour is consistent 2018-12-08 13:43:46 +11:00
Ibrahn Sahir
c1f5233217 Moved dirty material lists from static to lifetime controlled by main.
As with 7d82bed4f4,
The list is now destroyed before the OS object, so can print errors if
there are unfreed materials.
2018-11-21 15:51:50 +00:00
Bastiaan Olij
bcef4b8dc6 Fixing tangent and binormal logic 2018-11-19 22:27:05 +11:00
Juan Linietsky
89a76f21ed Ability to toggle flipping of tangent and binormal in depth parallax materials. Fixes #15934. 2018-11-14 10:15:58 -03:00
JFonS
85ce4a67ed Remove animation loop from ParticlesMaterial + improvements to CPUParticles2D
Remove animation loop from ParticlesMaterial and move it to
SpatialMaterial for 3D particles and Particles2D for the 2D case.

Added animation to CPUParticles2D as well as the "Convert to
CPUParticles2D" to the PAarticles2D menu.
2018-11-04 15:58:12 +01:00
Bojidar Marinov
e4d316fcdc
Fix particle frames being cut off after 0de8309b2c
Fixes #23178
2018-10-28 20:19:46 +02:00
Juan Linietsky
3333166b07 Many more GLES2 fixes 2018-09-29 19:17:52 -03:00
Juan Linietsky
0de8309b2c Many fixes to GLES2 renderer, fixed compilation issues in GLES3 shaders. 2018-09-29 13:49:34 -03:00
Juan Linietsky
c83742ba86 -Lightmap and lightmap capture support for GLES2
-Added hint to not show some properties when running on low end gfx
2018-09-28 20:33:18 -03:00
Rémi Verschelde
d95bbb8922 Fix warnings about set but unused variables [-Wunused-but-set-variable]
Fixes the following GCC 5 warnings:
```
drivers/gles2/rasterizer_canvas_gles2.cpp:814:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:2270:11: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:2673:22: warning: variable 'e' set but not used [-Wunused-but-set-variable]
drivers/gles2/rasterizer_scene_gles2.cpp:715:7: warning: variable 'no_cull' set but not used [-Wunused-but-set-variable]
drivers/gles2/shader_gles2.cpp:693:14: warning: variable 'cc' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_canvas_gles3.cpp:1226:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_scene_gles3.cpp:3039:10: warning: variable 'contrib' set but not used [-Wunused-but-set-variable]
drivers/gles3/rasterizer_scene_gles3.cpp:4504:32: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable]
editor/editor_inspector.cpp:272:9: warning: variable 'guide_color' set but not used [-Wunused-but-set-variable]
editor/editor_themes.cpp:1067:14: warning: variable 'alpha3' set but not used [-Wunused-but-set-variable]
editor/editor_themes.cpp:263:8: warning: variable 'script_bg_color' set but not used [-Wunused-but-set-variable]
editor/plugins/collision_shape_2d_editor_plugin.cpp:326:11: warning: variable 'cpoint' set but not used [-Wunused-but-set-variable]
editor/plugins/mesh_editor_plugin.cpp:72:9: warning: variable 'size' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:471:12: warning: variable 'mpos' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:89:8: warning: variable 'basetype_color' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:90:8: warning: variable 'type_color' set but not used [-Wunused-but-set-variable]
editor/plugins/shader_editor_plugin.cpp:92:8: warning: variable 'string_color' set but not used [-Wunused-but-set-variable]
modules/visual_script/visual_script_editor.cpp:2521:7: warning: variable 'seq_connect' set but not used [-Wunused-but-set-variable]
platform/android/export/export.cpp:580:12: warning: variable 'styles_count' set but not used [-Wunused-but-set-variable]
platform/android/export/export.cpp:584:12: warning: variable 'styles_offset' set but not used [-Wunused-but-set-variable]
platform/osx/export/export.cpp:464:9: warning: variable 'zerr' set but not used [-Wunused-but-set-variable]
scene/2d/tile_map.cpp:260:10: warning: variable 'tcenter' set but not used [-Wunused-but-set-variable]
scene/3d/light.cpp:166:7: warning: variable 'editor_ok' set but not used [-Wunused-but-set-variable]
scene/3d/navigation.cpp:566:11: warning: variable 'closest_navmesh' set but not used [-Wunused-but-set-variable]
scene/gui/rich_text_label.cpp:869:8: warning: variable 'size' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:705:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:706:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:726:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable]
scene/main/viewport.cpp:727:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable]
scene/resources/material.cpp:430:7: warning: variable 'using_world' set but not used [-Wunused-but-set-variable]
servers/visual/shader_language.cpp:2026:7: warning: variable 'all_const' set but not used [-Wunused-but-set-variable]
servers/visual/visual_server_scene.cpp:1383:28: warning: variable 'z_max_cam' set but not used [-Wunused-but-set-variable]
```

Also fixes two [-Wunused-value] warnings:
```
scene/gui/text_edit.cpp:4405:20: warning: statement has no effect [-Wunused-value]
servers/visual/visual_server_scene.cpp:905:48: warning: value computed is not used [-Wunused-value]
```

Some of those are bugs and need further work, they are identified with
`// FIXME` comments.
2018-09-27 16:25:24 +02:00
Dominique LaSalle
4a60679f31 Hide shading options in SpatialMaterial when 'FLAG_UNSHADED' is set 2018-09-26 16:44:43 -07:00
Juan Linietsky
65fd37c149 -Rewrote GLES2 lighting and shadows and optimized state changes, did many optimizations, added vertex lighting.
-Did some fixes to GLES3 too
2018-09-23 12:14:50 -03:00
JFonS
3cedec5f75 Set uniform default values in inspector 2018-09-13 23:05:33 +02:00
Black Cat!
2fe4c5dda1 Fix error using triplanar UV with detail map
Fixes #18550
2018-08-26 21:58:52 +04:00
Michael Alexsander Silva Dias
6fa1b5eca7 Add option to move Tile/GridMap editors to another side 2018-08-22 19:18:23 -03:00
Juan Linietsky
334acc017f Add distance based dithering to the default material. 2018-08-22 10:24:00 -03:00
Marcin Zawiejski
a1d2fbdeb2 == and != operators for Ref<T> / T*
This is to prevent crashes for code like:

...
void Material::set_next_pass(const Ref<Material> &p_pass) {

	ERR_FAIL_COND(p_pass == this);
...

that's been fixed in 031f763d4f
2018-08-21 13:25:50 +02:00
Juan Linietsky
031f763d4f Crash fixes for material and animtree 2018-08-20 16:35:36 -03:00
Chaosus
a6e51c8aa1 Fix crash when setting Material's next pass to itself 2018-08-19 21:27:09 +03:00
Juan Linietsky
d7a9a224fd
Revert "Fix border artifacts at the edge of deep parallax." 2018-08-14 20:33:50 -03:00
Guilherme Felipe
85f4d33276 Fix border artifacts at the edge of deep parallax. 2018-08-09 20:24:52 -03:00
Hugo Locurcio
31c12f05c4
Tweak the default SpatialMaterial properties
Roughness is now set to 1 by default and albedo is now white,
even on meshes that do not have any materials defined.

This means there is no longer a visual difference between a
mesh with no materials defined and a mesh with a default
SpatialMaterial defined.
2018-08-07 17:04:30 +02:00
JFonS
0052ee70d2 Added keep scale flag to billboard materials 2018-07-26 09:34:12 +02:00
Alex Roman
2ce1118faa Add disable ambient light flag to shaders and materials 2018-07-17 21:30:43 +02:00
Juan Linietsky
f6ce73f724 Visual Shaders are back. 2018-07-14 18:16:18 -03:00
JFonS
c8cf71753c Add render mode to ensure correct normals when using non-uniform scaling 2018-06-21 00:12:12 +02:00
Juan Linietsky
aacd7f012e
Merge pull request #18374 from JFonS/fix_particles_animation
Fix particle animation controls
2018-05-08 11:34:34 -03:00
JFonS
aeda5dccfe Fix particle animation controls 2018-04-23 11:14:16 +02:00
JFonS
9c307d4b6c Added flag on SpatialMaterial to disable shadows 2018-03-29 18:46:42 +02: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
Chaosus
b5e4f637fc Added refraction possibility for triplanar uv mode 2018-02-15 17:21:09 +03:00
Rémi Verschelde
187e3d1039
Merge pull request #15629 from endragor/fix-shader-property
Fix Material's shader property binding
2018-01-12 18:26:28 +01:00
Ruslan Mustakov
b517fc11af Fix Material's shader property binding
ShaderGraph doesn't exist in 3.0.
2018-01-12 22:37:00 +07:00
Juan Linietsky
471c2d0d38 Make burley default for materials, fixes #15054 2018-01-12 11:50:08 -03:00
Bojidar Marinov
9b8e8b2220
Bind many more properties to scripts
Notable potentially breaking changes:
- PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL
- Some properties were renamed, and sometimes even shadowed by new ones
- New getter methods (some virtual) were added
2018-01-12 00:58:14 +02: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
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
Juan Linietsky
2b31155baa Fix sidedness check in material. Also remove SIDE built-in. 2017-12-26 11:09:52 -03: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
13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Juan Linietsky
7b7ba58493 -Fix particles with size==0, closes #13931
-Fixed material previews (dont show sphere unless for spatial)
2017-12-06 19:51:13 -03: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
Juan Linietsky
ed0af05111 Switch to textureLod for parallax offset, avoids errors on UWP. 2017-11-27 17:47:33 -03:00
Juan Linietsky
7010ee3cb9 -Ability to choose operator for emission, closes #10441
-Ability to use proper operator for GI Probe, closes #10534
-Closes #12938 as it's no longer needed (thanks for the work though)
2017-11-15 12:39:24 -03:00
Jakub Grzesik
5a83fc50ec fix a 'proximity_fade_distacne' typo in material 2017-10-25 20:27:52 +02:00
Rémi Verschelde
abea816e54 Revert "Rename Schlick GGX to GGX." 2017-10-23 07:42:36 +02: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
Hiroshi Ogawa
3bd2a4c421 Fix spatial shader conversion with texture 2017-10-19 16:10:24 +09:00
Juan Linietsky
c9a925c4e0 Switched Burley/Lambert, and restored diffuse term to 0-1 range for compatibility. 2017-10-01 19:08:49 -03:00
Juan Linietsky
81c9cfdc1b Added light affect parameter to baked AO 2017-09-23 23:10:34 -03:00
Juan Linietsky
fbabef6da3 Fixes to rim parameter in shader 2017-09-23 08:27:48 -03:00
Juan Linietsky
3237e05c36 Ability to convert from SpatialMaterial to ShaderMaterial 2017-09-22 09:20:52 -03:00
Juan Linietsky
bf371dcb32 Added proximity and distance fade to SpatialMaterial 2017-09-21 15:20:28 -03:00
Poommetee Ketson
1c063abf0d Material: fix priority not int 2017-09-11 18:13:28 +07:00
Juan Linietsky
308a6f4f99 hide next pass for material types that make it pointless, closes #10686 2017-09-05 20:40:50 -03:00
Juan Linietsky
281fb4e4fb Added transmission shader parameter. 2017-09-03 10:30:37 -03:00
Juan Linietsky
b4efb832a7 Made triplanar local space by default, world space optionally, closes #10159 2017-09-02 09:57:08 -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
Juan Linietsky
9ff19951e2 Fixed problem with non triplanar UV2 mode as described in issue. Closes #9979 2017-08-31 09:44:37 -03:00
Rémi Verschelde
c109a6e5a4 Merge pull request #10401 from maxim-sheronov/fix_particles_spritesheet
Fix UV calculation for spritesheet in particles
2017-08-31 13:42:37 +02:00
Rémi Verschelde
bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Rémi Verschelde
565600e844 Cleanup tons of obsolete commented out code
Mostly in EditorNode, dropping some obsolete editor plugins and also a
cleanup of ProjectSettings/EditorSettings.
2017-08-26 17:47:57 +02:00
Maxim Sheronov
e41656c345 Fix UV calculation for spritesheet in particles
Fix names of uniforms and make correct uv offset calculation
2017-08-23 20:57:31 +03:00
Ignacio Etcheverry
32dd9a9f66 ClassDB: Provide the enum name of integer constants 2017-08-20 22:07:43 +02:00
Juan Linietsky
3a4ff3402d Oops, fixed wrong color masking problem. Closes #10149 2017-08-17 18:33:59 -03:00
Rémi Verschelde
b47e6c0dba Merge pull request #10194 from Keetz/update-default-values
Updated default values in SpatialMaterial and Environment
2017-08-11 10:39:12 +02:00
Ignacio Etcheverry
2f290038d6 Removes type information from method binds 2017-08-10 07:17:50 +02:00
Rasmus Ketelsen
141aac48ff Updated default values in SpatialMaterial and Environment 2017-08-09 10:11: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
5c361485db -Added GLTF scene support (still missing animations and .glb extension)
-Fixed bugs regarding tangent generation in SurfaceTool
2017-08-02 15:43:49 -03:00
Rémi Verschelde
374cffaa11 Merge pull request #9764 from Noshyaar/pr-fix2
Add object type hint for docs
2017-07-24 08:07:32 +02:00
Poommetee Ketson
2777f81d29 Add object type hint for docs 2017-07-23 18:57:03 +07:00
Juan Linietsky
772485cdb3 Several changes to better run in mobile. 2017-07-22 14:08:17 -03:00
ducdetronquito
074801e7a9 [#7212] Fixed missing 'Variant' return values in documentation. 2017-07-11 13:25:51 +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
Juan Linietsky
84de71872f -Added triplanar mapping modes
-Some fixes to shader lang
2017-07-08 08:07:49 -03:00
Juan Linietsky
e63c64e256 Clean up normalmapping, make sure tangents are imported correctly. 2017-07-03 10:45:34 -03:00
Juan Linietsky
db3b05d289 Reworked translation system
-Label and Button reload translation on the fly
-Resources are loaded and reload depending on locale
2017-06-28 17:01:35 -03:00
Juan Linietsky
d41978eb63 Usability improvements for folding. Unfortunately SpatialMaterial broke compatibility. 2017-06-25 18:57:28 -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
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
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