Commit Graph

929 Commits

Author SHA1 Message Date
Michael Alexsander Silva Dias dc0c75ce68 Expose 'modulate' set/get in TileSet resource 2018-07-23 18:35:52 -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 1ad20dc2f1
Merge pull request #12403 from AndreaCatania/phymat
Physics material
2018-07-23 07:37:03 -03:00
Paulb23 8ff747171f Allow opening and editing of any utf_8 file in script editor 2018-07-22 11:55:56 +01:00
George Marques 03746da73f
Add editor highlight for type-safe lines
The line number is hightlighted to indicate that the line contains only
type-safe code.
2018-07-20 21:55:18 -03:00
Rémi Verschelde bd9b8098fe
Merge pull request #20140 from EIREXE/ambient_light_disable_shader
Add disable ambient light flag to shaders and materials
2018-07-18 10:39:20 +02:00
Marcelo Fernandez e4db15471b Fix some missing BIND_ENUM_CONSTANT for visual_shader_nodes.cpp 2018-07-17 18:31:22 -03:00
Alex Roman 2ce1118faa Add disable ambient light flag to shaders and materials 2018-07-17 21:30:43 +02:00
Max Hilbrunner 707175eda8
Merge pull request #19044 from Mintormo/make_header_fix
Added support of Python 3 in make_header.py
2018-07-17 15:12:49 +02:00
Rémi Verschelde f71ffa9724
Merge pull request #20146 from dodgyville/bezier_fixes_19777
fix issue with bezier tracks using incorrect duration for interpolating values
2018-07-17 14:43:47 +02:00
Rémi Verschelde 95d99cb2ac
Merge pull request #20176 from Chaosus/vs_namefixes
Several name fixes for visual shaders
2018-07-17 13:54:22 +02:00
Juan Linietsky de910f8c26 Finally figured out how to implement AnimatedTexture properly. 2018-07-16 11:43:49 -03:00
Chaosus 3af81427a1 Several name fixes for visual shader 2018-07-15 17:28:06 +03:00
Juan Linietsky f6ce73f724 Visual Shaders are back. 2018-07-14 18:16:18 -03:00
Luke Miller 7298a746ce fix issue with bezier tracks using incorrect duration for interpolating values 2018-07-14 11:48:40 +10:00
Max Hilbrunner 118d4f3115
Merge pull request #19540 from muiroc/cylinder
Cylinder resource and collision shape (bullet only)
2018-07-12 05:09:37 +02: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
Max Hilbrunner 9f82368d40
Merge pull request #19475 from YeldhamDev/animplayer_cosmetic
Minor changes to the AnimationPlayer editor
2018-07-05 04:25:04 +02: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
Max Hilbrunner 23ad85c692
Merge pull request #19398 from godotengine/remove-left-margin
Remove default non-zero left margin
2018-07-03 16:41:04 +02:00
Juan Linietsky e179bf0726 Ensure, if a texture meant for a normal map is imported and size limit exists, that it's renormalized after resize. 2018-07-03 10:56:31 -03:00
Max Hilbrunner e29e4e56c1
Merge pull request #19843 from Calinou/fix-dynamicfont-hinting-setting
Fix the DynamicFont hinting setting being ineffective
2018-07-03 15:34:02 +02:00
Juan Linietsky 7fc2367508 Added ability for SSAO to affect AO textures too 2018-07-02 16:50:52 -03:00
Juan Linietsky 2dc738ce27 -Fixes to how hashing happened, now StringName and NodePath use default hasher, this was leading to some severe slowdown in scenarios
-Fixes to some duplication scenarios for instanced scenes
2018-07-02 15:08:35 -03:00
muiroc 0a36e974da added cylinder shape support 2018-07-01 11:16:54 +02:00
Michael Alexsander Silva Dias 02181292b8 Minor changes to the AnimationPlayer editor. 2018-06-30 00:12:05 -03:00
Hugo Locurcio 6deb1889d0
Fix the DynamicFont hinting setting being ineffective 2018-06-29 21:38:53 +02:00
Juan Linietsky 0ffec7daf7 Small fixes 2018-06-29 09:13:39 -03:00
Hugo Locurcio 53e94a1ce1
Optimize images losslessly using `oxipng -o6 --strip all --zopfli` 2018-06-28 19:17:41 +02: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 0a1c1c660f -Added AnimationGraphPlayer (still missing features)
-Added ability to edit resources from built-in inspector (wip, needs testing and feedback)
2018-06-18 22:12:08 -03:00
Rémi Verschelde 8efbe9ed3d
Merge pull request #19487 from JFonS/better_3d_select
Improve 3D selection
2018-06-13 18:49:35 +02:00
JFonS 9cd1c20f6a Polished 3D selection 2018-06-13 17:52:37 +02:00
clayjohn 14acc61ce1 updated ranges for primitive meshes 2018-06-08 23:49:00 -07:00
Juan Linietsky 9cb17d7af8 Avoid animation length from ever being completely, fixes #19420 2018-06-08 13:42:45 -03:00
Juan Linietsky b659fd6d74 Entirely new (and much improved) animation editor. 2018-06-07 12:52:00 -03:00
Pedro J. Estébanez 12a87b257f
Remove default non-zero left margin 2018-06-06 20:10:43 +02:00
Mintormo 5d28a21454 Added support Python 3 in "make_header.py" file 2018-05-27 12:51:57 +03:00
Max Hilbrunner 7e8b7a7815
Merge pull request #18379 from ZDDM/18-04-23-audiostream-docs
Fully expose the data variable in AudioStreamSample and AudioStreamOGGVorbis
2018-05-26 18:22:05 +02:00
danilo2205 dc639d334a Up vector implementation and OrientedPathFollow. 2018-05-20 19:51:56 -03:00
Juan Linietsky 9b5275b135 -Hid texture flags by default so they dont take so much space
-make curve texture preview not so large, so its easier to embed the editor
2018-05-18 12:37:18 -03:00
Rémi Verschelde b003b7d846
Merge pull request #18978 from Chaosus/cubebugfix
Fix property bug in CubeMesh which prevent it from changing in inspector
2018-05-18 12:47:55 +02:00
Mariano Javier Suligoy 7eddb80b27
Merge pull request #18960 from isaacremnant/autotile_3x3_minimal
Restore support for minimal 3x3 autotile sets
2018-05-17 19:57:55 -03:00
Juan Linietsky 4b5227ff77 -Ability to open resources in the same window
-Plenty of fixes and improvements to new inspector
-Fixes that were needed to make inspector work better
2018-05-17 18:03:05 -03:00
Chaosus b3fccc5778 Fix bug in CubeMesh 2018-05-17 19:46:03 +03:00
isaacremnant e4f0ac558d Restore support for minimal 3x3 autotile sets 2018-05-17 09:49:14 -04:00
Rémi Verschelde 802ddc6e94
Merge pull request #18862 from endragor/remove-font-width-ceiling
Ceil char width within Label instead of Font
2018-05-17 09:31:22 +02:00
Rémi Verschelde 2cf36651b9
Merge pull request #18814 from PJB3005/18-05-12-imagetexture-load-error
ImageTexture.load returns an error code.
2018-05-16 23:23:08 +02:00
Juan Linietsky 005b69cf6e -New inspector.
-Changed UI resizing code, gained huge amount of speed.
-Reorganized timer sync to clean up behavior (sorry forgot commit this before)

-
2018-05-15 17:14:31 -03:00
Pieter-Jan Briers 622a754584 ImageTexture.load returns an error code. 2018-05-14 19:11:41 +02:00
Ruslan Mustakov d5a0b5f35b Ceil char width within Label instead of Font
Some classes use Font::get_char_size directly and not only for
autowrapping. RichTextLabel is one such example. So this commit
reverts aa8561d (PR #17504) and instead ceils character width within
Label. This makes sure Label autowraps correctly while not affecting
other Font clients.

Fixes #18835.
2018-05-14 20:32:14 +07:00
Michael Alexsander Silva Dias 7f72d6476b Fixed some warnings found with Cppcheck. 2018-05-14 02:14:56 -03:00
Ruslan Mustakov f34ea810fe Update oversampling of outlines after window size change
Fixes #18774.
2018-05-11 13:59:56 +07:00
AndreaCatania 5f66734d2d Implemented physics material
Hidden a function

Fixed travis static check
2018-05-11 03:23:09 +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
Ruslan Mustakov 863dd9aa46 Always emit dynamic font change in update_oversampling
Fixes #15787.

The issue occurred when two (or more) separate DynamicFont instances
used the same DynamicFontAtSize instance due to having equal
properties. The first instance updated its data_at_size and emitted
"changed" signal, but the second did not because it considered the
data_at_size to be up to date, even though it has just been updated.
2018-05-08 19:01:15 +07:00
Ruslan Mustakov 5cd12f6649 Perfect FreeType-based outlines for DynamicFonts
- Implement outlines based on FreeType Stroker API. This allows
  artifact-free results, similar to what you will see in Web or any text
  editing tools. Outline is a part of DynamicFont rather than Label,
  because outlines have to be baked into the font's atlas. Font has a
  default outline_color and a Label can specify font_outline_modulator
  that will be multiplied with the Font's color to get the final result.

- draw_char now has to be called twice to fully render a text - first
  with p_outline == true for each character and then with
  p_outline == false for each character.

- Number of draw-calls is reduced from 5 to 2 per outlined character.

- Overall cleanup of DynamicFont code, extracted duplicated code pieces
  into separate methods.

- The change is backward-compatible - Labels still have outline
  properties that work exactly as they worked before.

Closes #16279.
2018-05-08 13:45:24 +07:00
Juan Linietsky 9f2d54cd68 Added a simpler way to flip faces, closes #17373 and closes #17369 2018-05-07 18:55:05 -03:00
Juan Linietsky 7175a7f025
Merge pull request #17504 from endragor/fix-oversampling-autowrap
Ceil dynamic font glyph size
2018-05-07 18:21:11 -03:00
Juan Linietsky 2ba8b5b27c
Merge pull request #17828 from bojidar-bg/17779-progressbar-minimum-size
Fix StyleBox ignoring region rect and ProgressBar using center size
2018-05-07 16:33:12 -03: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
Max Hilbrunner fc9fad925b
Merge pull request #18146 from mjtorn/gh-mjtorn-rtl-shadow
Implement font shadows for RichTextLabel
2018-05-05 07:01:04 +02:00
Max Hilbrunner eec38da856
Merge pull request #18407 from danilo2205/get_closest_point
Add methods get_closest_point and get_closest_offset for both Curve2D and Curve3D
2018-05-05 06:56:26 +02:00
Rémi Verschelde 0bc07f8ff3
Merge pull request #18480 from BastiaanOlij/add_custom_aabb_to_primitives
Added custom aabb to primitives
2018-05-04 15:19:30 +02:00
danilo2205 2224975e7e Added methods get_closest_point and get_closest_offset to both Curve2D and Curve3D 2018-05-01 18:24:41 -03:00
Pieter-Jan Briers 20dd2204db Adds z-index properties to TileSets. 2018-05-01 17:24:57 +02:00
Zumo ef74954e66 Fully exposes data variable on AudioStreamSample/AudioStreamOGGVorbis...
...and also changes "_set_data" and "_get_data" to "set_data" and "get_data" respectively.
2018-05-01 12:19:15 +02:00
Bastiaan Olij 1ee40206d4 added custom aabb to primitives 2018-04-29 15:06:18 +10:00
Juan Linietsky 8d199a9b2c CSG Support for Godot!
-Missing Icons
-Missing freezing option (for baking light and faster load)
-Missing a way to export from Godot (GLTF2?)
-Probably buggy (may freeze editor, can be worked around easily, but let me know if this happens so it's easier to catch bugs)
Happy testing!
2018-04-27 21:55:10 -03:00
sersoong 21eac24af1 Fixed stylebox crash 2018-04-27 17:30:28 +08:00
JFonS aeda5dccfe Fix particle animation controls 2018-04-23 11:14:16 +02:00
Markus Törnqvist 1c6ea572ca Implement font shadows for RichTextLabel 2018-04-12 15:09:48 +03:00
George Marques 0ee72fbd30
Merge pull request #18072 from AlexHolly/master
expose Tileset TileMode to GDScript
2018-04-08 21:44:07 -03:00
Alexander Holland f18b74838c expose Tileset TileMode to GDScript 2018-04-08 22:54:02 +02:00
Juan Linietsky b756172bdb
Merge pull request #16705 from Chaosus/generate_normals_flip
Add flip switch to SurfaceTool.generate_normals
2018-04-08 17:18:03 -03:00
Juan Linietsky 4ee3f3251d
Merge pull request #17382 from bojidar-bg/13971-path-array-unsaved
Duplicate Arrays and Dictionaries when instancing scene in editor
2018-04-08 09:39:03 -03:00
Juan Linietsky 6eb0c74e9d
Merge pull request #17443 from Noshyaar/tilesetcrash
Fix converting to tileset crashes Godot if existing file is not tileset
2018-04-08 09:31:54 -03:00
Juan Linietsky 14340efa3c
Merge pull request #17602 from ivodopiviz/tscn-issues
Removed unnecessary newlines from tscn
2018-04-07 16:59:12 -03:00
Juan Linietsky 187b14ae24
Merge pull request #17730 from RandomShaper/radio-buttons-in-menus
Radio buttons in menus
2018-04-07 16:41:39 -03:00
Poommetee Ketson a492d22952 Mesh: fix crash when creating mesh outline from QuadMesh
Since create_outline can only make outline for PRIMITIVE_TRIANGLES,
when QuadMesh (which is PRIMITIVE_TRIANGLE_FAN) is used to create
outline, will leave `arrays` empty, and crash when it is being indexed
for "indices" subarray.

This PR shows error when there's only one surface and it is not
TRIANGLES. Also prevent the crash if it has more than one surface
and none of them are TRIANGLES (and any other cases that could leave
`arrays` empty) by checking the size of `arrays` == 8 before indexing
it, since the method seems to expect `arrays` to be of that size.
2018-04-01 22:06:47 +07:00
JFonS 9c307d4b6c Added flag on SpatialMaterial to disable shadows 2018-03-29 18:46:42 +02:00
Bojidar Marinov 91eb80041d
Fix StyleBox ignoring region rect and ProgressBar using center size
ProgressBar used the center size of the stylebox to calculate its minimum size, thus disallowing certain setups.
If the old behaviour is wanted, it can be forced by providing a custom minimum size, or by giving proper margins to the stylebox.

Fixes #17779.
2018-03-28 20:56:09 +03:00
Pedro J. Estébanez ab3b1d9f3e Add radio-button-looking entries to PopupMenu
They work exactly the same as current checkbox-decorated items, but in order to preserve compatibility, separate methods are used, like `add_radio_check_item()`. The other option would have been to add a new parameter at the end of `add_check_item()` and the like, but that would have forced callers to provide the defaults manually.

`is_item_checkable()`, `is_item_checked()` and `set_item_checked()` are used regardless the item is set to look as check box or radio button.

Keeping check in the name adds an additional clue about these facts.

Closes #13055.
2018-03-27 19:19:45 +02:00
Ivan Vodopiviz e0f6b54b77 Removed unnecessary newlines from tscn
References #6025. Made small changes to avoid adding newlines for no reason.
2018-03-25 23:09:19 +02:00
Poommetee Ketson ed3b080ca6 Fix converting to tileset crashes Godot if existing file is not tileset
also make TileSetEditorPlgn tile list updates the preview modulate
2018-03-23 21:27:30 +07:00
Ruslan Mustakov aa8561ded4 Ceil dynamic font glyph size
Fixes #15459. When oversampling is enabled, glyphs may have fractional
size, but they are still rendered into integral pixels, which results in
them taking more space than was anticiped by autowrapping algorithm. The
solution here is to return ceiled width, which makes autowrapper
consider characters a bit larger than they are, but it doesn't hurt the
actual rendering and ensures there is enough space for the characters.
2018-03-14 19:53:44 +07:00
Bojidar Marinov 9f6c0c6eae
Duplicate Arrays and Dictionaries when instancing scene in editor
Also, add deep (=false) parameter to Array.duplicate and Dictionary.duplicate

Fixes #13971
2018-03-13 17:18:08 +02:00
Rémi Verschelde 96bda9c463
Merge pull request #17094 from Calinou/add-dynamicfont-hinting-options
Add an hinting mode setting to DynamicFonts
2018-03-13 13:38:35 +01:00
Rémi Verschelde ab001d830b Fix serialization of identifiers with non printable ASCII characters
Fixes #6888.
2018-03-02 13:33:53 +01:00
Hugo Locurcio c1544c12ef
Add an hinting mode setting to DynamicFonts
- Editor font hinting can now be tweaked in the Editor Settings.
- DynamicFonts used in projects now have tweakable hinting settings
  in their DynamicFontData child. Changes will be visible upon
  reloading the scene in the editor.
2018-02-28 00:12:26 +01:00
Rémi Verschelde eedb85e618
Merge pull request #16932 from groud/fix_collision_shape_selection
Fixes collisions shape selection
2018-02-24 01:32:16 +01:00
Rémi Verschelde 6b32e96d6e
Merge pull request #16930 from PJB3005/18-02-22-styleboxtexture-texture
StyleBoxTexture: Texture instead of RES for texture and normal_map.
2018-02-24 01:29:35 +01:00
Rémi Verschelde 23ebae01dc Refactor version macros and fix related bugs
The previous logic with VERSION_MKSTRING was a bit unwieldy, so there were
several places hardcoding their own variant of the version string, potentially
with bugs (e.g. forgetting the patch number when defined).

The new logic defines:

- VERSION_BRANCH, the main 'major.minor' version (e.g. 3.1)
- VERSION_NUMBER, which can be 'major.minor' or 'major.minor.patch',
  depending on whether the latter is defined (e.g. 3.1.4)
- VERSION_FULL_CONFIG, which contains the version status (e.g. stable)
  and the module-specific suffix (e.g. mono)
- VERSION_FULL_BUILD, same as above but with build/reference name
  (e.g. official, custom_build, mageia, etc.)
  Note: Slight change here, as the previous format had the build name
  *before* the module-specific suffix; now it's after
- VERSION_FULL_NAME, same as before, so VERSION_FULL_BUILD prefixed
  with "Godot v" for readability

Bugs fixed thanks to that:

- Export templates version matching now properly takes VERSION_PATCH
  into account by relying on VERSION_FULL_CONFIG.
- ClassDB hash no longer takes the build name into account, but limits
  itself to VERSION_FULL_CONFIG (build name is cosmetic, not relevant
  for the API hash).
- Docs XML no longer hardcode the VERSION_STATUS, this was annoying.
- Small cleanup in Windows .rc file thanks to new macros.
2018-02-23 20:15:29 +01:00
Gilles Roudiere c250a9a9f9 Fixes collisions shape selection 2018-02-22 20:48:25 +01:00
Pieter-Jan Briers b51a86a57a StyleBoxTexture: Texture instead of RES for texture and normal_map. 2018-02-22 19:27:35 +01: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
Juan Linietsky 9e3a1e5401 Add base support for 2D meshes in Godot, including Sprite -> Mesh2D conversion. 2018-02-21 09:39:09 -03:00
Rémi Verschelde c291fc39ad
Merge pull request #16772 from damarindra/tileset_editor_improvement
Tileset Editor Improvement
2018-02-21 10:40:43 +01:00
Damar Indra e69dd47501 Tileset Editor Improvement 2018-02-20 22:33:59 +07:00
Rémi Verschelde 2c44b2cee4
Merge pull request #16718 from Chaosus/triplanarfix
Add refraction possibility when triplanar uv mode enabled
2018-02-20 11:14:31 +01:00