Commit graph

459 commits

Author SHA1 Message Date
clayjohn
1b2cd9f251 Addition of FogVolumes, FogShaders, FogMaterial, and overhaul of VolumetricFog
Co-authored-by: Brian Semrau <brian.semrau@gmail.com>
2021-10-28 22:02:23 -07:00
Hugo Locurcio
e549ce28a0
Tweak animation editor icon colors for easier visual grepping
This makes the Linear and Cubic icons in particular easier to
distinguish from each other.

The Cubic interpolation icon's curve was also changed to be
more distinguishable from the Linear icon's curve.
2021-10-26 22:54:59 +02:00
Hugo Locurcio
c98fcb84f5
Tweak curve preset icon colors for easier visual grepping
When choosing curve presets many times a day, this helps pick
the right preset faster.
2021-10-26 19:51:17 +02:00
Gilles Roudière
cec004adf0 Implement polygons editors in the tiles selection mode 2021-10-26 12:38:36 +02:00
Silc 'Tokage' Renew
653e2a550c Fixed animation insertion in SkeletonEditor 2021-10-23 16:50:00 +09:00
Hugo Locurcio
f0c7d78ebf
Improve accent color modulate visibility for the Anchor editor icon
This switches to the default icon color so that the accent color
modulation becomes more easily visible.
2021-10-19 20:39:05 +02:00
Michael Alexsander
67acb7de6e Rename Tabs to TabBar 2021-10-19 11:37:31 -03:00
Rémi Verschelde
4387f9645b
Merge pull request #52940 from groud/toast_notification 2021-10-19 09:57:13 +02:00
reduz
ae1c016547 Implement Animation Blend Shape Tracks
* New track type BLEND_SHAPE
* Blend shapes are imported via this new track type
* Processing is more optimized (no longer relies on variants)
* Modified the Blend Shape API in MeshInstance3D to use indices rather than StringNames (more optimizes)
* Promo: Fixed a small bug in gizmo updating in Node3D that affected performance

Dedicated BlendShape tracks are required for both optimization and eventually implementing them in animation compression.
2021-10-16 08:36:05 -03:00
Gilles Roudière
0587e5e018 Implement toast notifications in the editor 2021-10-14 13:30:54 +02:00
reduz
ec19ed3723 Remove animation 3D transform track, replace by loc/rot/scale tracks.
* `Animation.TYPE_TRANSFORM3D` track is gone.
* Added POSITION_3D, ROTATION_3D, SCALE_3D tracks.
* GLTF2, Collada, FBX importers will only import the track types found.
* Skeleton3D bone poses are now Pos/Rot/Scale, pose matrix removed.
* AnimationPlayer and AnimationTree animate these tracks separately, only when found.
* Removed BakeReset code, is useless with these changes.

This is the first in a series of commits designed to make the animation system in Godot more useful, which includes:

* Better compatibility with Autodesk products
* Better reusability of animations across models (including retargeting).
* Proper animation compression.
* etc.

*Note* GLTF2 animation saving went broken with this PR, needs to be fixed in a subsequent one.
2021-10-12 20:08:42 -03:00
Hendrik Brucker
cd37af4e4c Add GradientTexture2D
Co-authored-by: Mariano Javier Suligoy <marianognu.easyrpg@gmail.com>
Co-authored-by: Andrii Doroshenko <xrayez@gmail.com>
2021-10-12 16:22:30 +02:00
Juan Linietsky
610de0974d
Revert "Implement reverse playback and ping-pong loop in AnimationPlayer and NodeAnimation" 2021-10-11 19:27:50 -03:00
Tokage
372ba76663 implement ping-pong loop in animation
Co-authored-by: Chaosus <chaosus89@gmail.com>
2021-10-09 18:08:43 +09:00
Silc Renew
f2e9867e9f Implemented SkeletonEditorGizmo
Co-authored-by: Lyuma <xn.lyuma@gmail.com>
2021-10-07 01:07:46 +09:00
Eric M
e0f8410d16 Improved breakpoint gutter for CodeEdit.
Added preview of breakpoint placement on hover. Added override of icon for the Editor to use an SVG so it is no longer blurry.
2021-09-30 22:15:47 +10:00
Wilson E. Alvarez
f3a564f9a5
Rename Listener2D/Listener3D to AudioListener2D/AudioListener3D 2021-09-16 17:51:51 -04:00
Camille Mohr-Daurat
3581b893ed
Merge pull request #52681 from nekomatata/rename-rigid-body
Rename RigidBody to RigidDynamicBody and SoftBody to SoftDynamicBody
2021-09-16 11:20:21 -07:00
PouleyKetchoupp
85819b199a Rename RigidBody to RigidDynamicBody and SoftBody to SoftDynamicBody 2021-09-16 09:55:20 -07:00
Rémi Verschelde
879ce4c6e1
Merge pull request #49266 from Calinou/remove-unused-editor-icons
Remove unused editor icons
2021-09-16 12:08:38 +02:00
Hugo Locurcio
05697ee848
Display a editor gizmo icon for Listener3D
The icon was present in `editor/icons/`, but it was never implemented
in the editor gizmos code.

This also removes some unused gizmo drawing code (overridden methods
that are no longer called anywhere).
2021-09-16 10:56:45 +02:00
Camille Mohr-Daurat
1852afb6b0
Merge pull request #52679 from nekomatata/world-boundary-shape
Rename WorldMarginShape to WorldBoundaryShape
2021-09-15 16:02:40 -07:00
PouleyKetchoupp
bb75aec8bc Rename WorldMarginShape to WorldBoundaryShape 2021-09-14 11:16:31 -07:00
Juan Linietsky
d0a7eeaaff
Merge pull request #44844 from KoBeWi/hey_listen!_but_2d
Add Listener2D
2021-09-09 19:19:10 -03:00
Juan Linietsky
93aa158b5e
Merge pull request #52277 from groud/implement_array_property_hint
Implement properties arrays in the Inspector.
2021-09-07 11:59:46 -03:00
Gilles Roudière
4bd7700e89 Implement properties arrays in the Inspector. 2021-09-07 09:51:28 +02:00
Camille Mohr-Daurat
a93fb2655a
Merge pull request #52286 from nekomatata/restore-kinematic-body
Add AnimatableBody inherited from StaticBody for moving platforms
2021-09-06 09:32:46 -07:00
Silc 'Tokage' Renew
facf8f1883 Apply set_read_only() to child classes of EditorProperty elements 2021-09-05 18:22:17 +09:00
PouleyKetchoupp
83baecdff0 Add AnimatableBody inherited from StaticBody for moving platforms
Instead of having a physics node named Static that can be either Static
or Kinematic, AnimatableBody is added again as a separate node:
-Inherited from StaticBody to make its usage clearer
-Still separated from CharacterBody to make its usage more focused

Properly implemented constant velocity for kinematic bodies in godot
physics servers (induced velocity without actually moving).

Also updated description for the different physics nodes to make their
usage clearer.
2021-08-31 18:14:32 -07:00
kobewi
f2cb0a8d4b Add Listener2D 2021-08-31 16:53:14 +02:00
PouleyKetchoupp
3d5dc80348 Rename RayShape to SeparationRayShape
Makes it clearer that it's used for special cases when picking a
collision shape.
2021-08-24 17:34:55 -07:00
PouleyKetchoupp
45c7af9862 Restore RayShape as a regular shape type
Partial revert from previously removing ray shapes completely, added
back as a shape type but without the specific character controller code.
2021-08-24 16:03:05 -07:00
Rémi Verschelde
a031579286
Merge pull request #50752 from Phischermen/indeterminate_checkmark_api
Added icons and API for indeterminate checkmarks for the Tree class.
2021-08-18 10:31:06 +02:00
Hugo Locurcio
5be4ea27d1
Fix missing and incorrectly named visual shader texture uniform icons 2021-08-18 05:41:02 +02:00
Kevin Fischer
75866c81e7 Added icons and API for indeterminate checkmarks for the Tree class. 2021-08-16 10:13:06 -07:00
Rémi Verschelde
2459f81044
Merge pull request #51704 from Calinou/editor-icons-add-expression
Add editor icons for VisualScript and VisualShader expression resources
2021-08-16 12:43:52 +02:00
Rémi Verschelde
40f5c571ec
Merge pull request #51702 from Calinou/port-visual-shader-icons
Port visual shader node icons from Godot 2.1.x
2021-08-16 12:43:29 +02:00
Umang Kalra
c2f8c94b15 Changes the icon of node arranger in GraphEdit/VisualScript/VisualShader 2021-08-16 12:30:15 +05:30
Hugo Locurcio
c7dbac9d02
Add editor icons for VisualScript and VisualShader expression resources 2021-08-16 01:43:51 +02:00
Hugo Locurcio
ed82634857
Port visual shader node icons from Godot 2.1.x 2021-08-16 00:53:26 +02:00
Hugo Locurcio
8e3f71d750
Rename LineShape2D to WorldMarginShape2D
The new name makes it more obvious that it acts as an infinite plane,
and is consistent with its 3D counterpart (WorldMarginShape3D).
2021-08-14 03:12:13 +02:00
Rémi Verschelde
7d43da928f
Merge pull request #51490 from nekomatata/clean-character-body
Remove infinite inertia and ray shapes from CharacterBody
2021-08-11 08:04:09 +02:00
K. S. Ernest (iFire) Lee
18bd0fee5a
Merge pull request #49343 from theoway/node_auto_arrangement_graph_edit
Node Auto Arrangement in GraphEdit/VisualScript/VisualShader
2021-08-10 15:42:04 -04:00
Umang Kalra
12fc3f1eef Automatic arrangement of nodes in VisualScript/VisualShaders editors
This PR and commit adds the functionality to arrange nodes in VisualScript/VisualShader editor. The layout generated by this 
feature is compact, with minimum crossings between connections
& uniform horizontal & vertical gaps between the nodes. 

This work has been sponsored by GSoC '21.

Full list of additions/changes:
• Added arrange_nodes() method in GraphEdit module.
    • This method computes new positions for all the selected
      nodes by forming blocks and compressing them.
      The nodes are moved to these new positions. 
    • Adding this method to GraphEdit makes it available for 
      use in VisualScript/VisualShaders editors and its other
      subclasses. 
• Button with an icon has been added to call arrange_nodes() in GraphEdit. 
    • This button is inherited by VisualScript/VisualShaders editors
       to invoke the method.
• Undo/redo is functional with this method.
    • By using signals in arrange_nodes(), position changes are registered 
       in undo/redo stack of the subclass that is using the method. 
• Metadata of the method has been updated in ClassDB
• Method description has been added to class reference of GraphEdit
2021-08-11 00:44:28 +05:30
PouleyKetchoupp
4da3a87f7d Remove infinite inertia and ray shapes from CharacterBody
Infinite inertia:
Not needed anymore, since it's now possible to set one-directional
collision layers in order for characters to ignore rigid bodies, while
rigid bodies still collide with characters.

Ray shapes:
They were introduced as a work around to allow constant speed on slopes,
which is now possible with the new property in CharacterBody instead.
2021-08-10 12:10:26 -07:00
John Wigg
6acc63c13a Change PrismMesh editor icon to look like a prism. 2021-08-09 17:24:11 +01:00
Gilles Roudière
ad8b5cd5a4 Implements TileMap layers and move TileSetPlugins's functions to the TileMap node instead 2021-08-02 13:54:39 +02:00
K. S. Ernest (iFire) Lee
2fa4b59f99
Merge pull request #50355 from Calinou/immediategeometry3d-remove-remains
Remove the remains of ImmediateGeometry3D
2021-07-27 00:54:23 -07:00
Rémi Verschelde
6ddaebc091
Merge pull request #47538 from LightningAA/inspector-reorder-array-4.0
Add the ability to reorder array elements from the inspector
2021-07-15 14:01:31 +02:00
Rémi Verschelde
514c8d586a
Merge pull request #50356 from Calinou/ormmaterial3d-tweak-editor-icon
Tweak the ORMMaterial3D editor icon to follow the Godot design guidelines
2021-07-12 08:48:50 +02:00
Lightning_A
ec67266af3 Add the ability to reorder arrays from the inspector 2021-07-11 16:09:39 -06:00
Hugo Locurcio
b1b1176b74
Add an editor icon for the ImmediateMesh resource 2021-07-11 20:40:11 +02:00
Hugo Locurcio
3a56d8d3ac
Tweak the ORMMaterial3D editor icon to follow the Godot design guidelines 2021-07-11 20:26:01 +02:00
Hugo Locurcio
161214d374
Remove the remains of ImmediateGeometry3D
ImmediateGeometry3D was recently removed in favor of the ImmediateMesh
resource.
2021-07-11 00:42:44 +02:00
Gilles Roudière
30a615dd94 Implement painting properties over TileSets 2021-06-29 11:07:46 +02:00
reduz
ab2456b740 Rename VisibilityNotifierXD to VisibleOnScreenNotifierXD
* Renames for 2D and 3D
* Class name was confusing, given both 2D and 3D have a "visible" property that is unrelated to actual on-screen visibility.
* New name makes it clear that this is about visibility on screen.
2021-06-16 22:01:39 -03:00
Bastiaan Olij
2161fd117b
Adding some more missing renames for Transform3D and Quaternion 2021-06-15 16:01:50 +02:00
Silc 'Tokage' Renew
67689dac7b update property selector's icon list and rename Quat.svg to Quaternion.svg 2021-06-09 23:50:29 +09:00
reduz
32625145c8 Rename GI Classes
* GIProbe is now VoxelGI
* BakedLightmap is now LightmapGI

As godot adds more ways to provide GI (as an example, SDFGI in 4.0), the different techniques (which have different pros/cons) need to be properly named to avoid confusion.
2021-06-05 09:28:56 -03:00
PouleyKetchoupp
ba13d23140 KinematicBody split between new CharacterBody and PhysicsBody
PhysicsBody now has methods move_and_collide/test_move and needed
properties for these methods: safe margin, locked axes (3D only).

Moved collision_exceptions from StaticBody to PhysicsBody for 3D
(same as 2D, and conforms to documentation).

RigidBody doesn't have test_motion method anymore, it's now redundant
with PhysicsBody.test_move.
2021-06-04 11:40:36 -07:00
Aaron Franke
fa7874d6ce
Flip 2D icon to match Godot's handedness 2021-06-03 17:36:54 -04:00
Hugo Locurcio
2429564c37
Remove unused editor icons
This also renames the TextureArray icon to follow its rename to
Texture2DArray.
2021-06-03 18:26:48 +02:00
Rémi Verschelde
af3ebc96ed
Merge pull request #44259 from gongpha/new-gradient-icon
New icons for Gradient and GradientTexture resources
2021-06-03 09:14:53 +02:00
Rémi Verschelde
16e6b532ed
Merge pull request #49263 from Calinou/add-occluder3d-editor-icons
Add editor icons for Occluder3D and OccluderInstance3D
2021-06-03 08:34:33 +02:00
Hugo Locurcio
8a26179b70
Add editor icons for Occluder3D and OccluderInstance3D 2021-06-03 00:54:20 +02:00
Hugo Locurcio
0f4df474c9
Improve radio checkboxes in the default editor theme 2021-06-03 00:44:21 +02:00
Rémi Verschelde
313e1f62bb
Merge pull request #48931 from groud/add_some_tiles_editors_settings
Add TileMap grid editor settings.
2021-05-25 12:04:16 +02:00
Gilles Roudière
78ad206d74 Add TileMap grid editor settings. 2021-05-25 10:23:57 +02:00
Hugo Locurcio
cce4ac26a0
Add editor icons for RibbonTrailMesh and TubeTrailMesh 2021-05-24 21:57:03 +02:00
Rémi Verschelde
c321f6ff47
Merge pull request #48644 from Calinou/editor-increase-icon-saturation
Increase icon saturation by 30% for all editor icons
2021-05-24 19:20:09 +02:00
Hugo Locurcio
0d27c4d809
Tweak pressed CheckBox appearance in the editor
This uses the accent color to match pressed CheckButtons after they
were updated. Checked checkboxes are now more prominent in the user's
peripheral vision, which can be useful at times. This also matches
how checkboxes look in most operating systems and web browsers.
2021-05-22 03:45:01 +02:00
Hugo Locurcio
3eae2f9c6d
Add "Support Godot Development" option to the editor's Help menu 2021-05-15 01:58:29 +02:00
Hugo Locurcio
7375a02015
Increase icon saturation by 30% for all editor icons
More saturated icons go better with the new editor theme.

These color changes only apply when using a dark theme.

The editor icon saturation can still be adjusted in the Editor Settings.
Setting the editor icon saturation setting to 0.77 should roughly match
the old icon saturation.
2021-05-11 18:15:31 +02:00
Yuri Sizov
912420b078 Refactor Create Theme menu in Theme Editor 2021-05-09 03:13:19 +03:00
Gilles Roudière
a3dda2df85 Rework the TileSet resource and TileMap nodes:
- Move most properties from TileMap to TileSet,
- Make TileSet more flexible, supporting more feature (several
  collision layers, etc...),
- Fusion both the TileMap and TileSet editor,
- Implement TileSetSources, and thus a new way to index tiles in the TileSet,
- Rework the TileSet and TileMap editors completely,
- Implement an editor zoom widget (and use it in several places)
2021-05-07 18:06:17 +02:00
Eric M
3de4181bd8 Output log rewrite and enhancements.
Added message type filters.
Added ability to search.
Added ability to collapse multiple duplicate messages into one line.
Updated layout to allow for more vertical space in log text area.
2021-05-04 16:21:33 +10:00
Rémi Verschelde
0e93a1df79
Remove obsolete LargeTexture, it's no longer useful since 3.x
It existed in early Godot releases to allow working around hardware limitations
on max texture sizes (e.g. hardware limits of 1024x1024 pixels).

Nowadays the max texture size supported natively by Godot is 16384x16384, and
even low end mobile hardware should support at least 4096x4096.

The LargeTexture implementation is basically just an array with offsets, sizes
and textures and should be easy to replicate with a custom Texture resource if
needed - solving most of its bugs on the way as the implementation removed here
has various unimplemented or incomplete methods.
2021-04-28 15:51:55 +02:00
Yuri Sizov
2524238bb3 Refactor Edit Theme menu in Theme Editor 2021-04-18 17:55:49 +03:00
Kongfa Waroros
6294507acb Add Various ColorPicker shapes 2021-04-06 22:48:03 +07:00
Hugo Locurcio
b60b6ddba4
Add a subtle background to editor scrollbars
This makes it possible to see whether a scrollbar grabber is at the top
or at the bottom of a scrollbar. Also, if a scrollable area is very
large, this makes it easier to notice that the area can be scrolled
(since the grabber is proportionally very small).

The scrollbar grabbers were also made thicker and slightly more opaque
for better visibility, especially in peripheral vision.
2021-04-05 02:04:45 +02:00
Kongfa Waroros
d295d53b4a Add interpolation bar on each channel in ColorPicker 2021-03-09 14:58:19 +07:00
Aaron Franke
0efbd13d8a
Change fallback icon for abstract nodes to have a grayed out color 2021-02-17 13:06:03 -05:00
Hugo Locurcio
7279b4ee35
Add icons for the new GPU particle attractor and collision nodes 2021-02-15 22:15:48 +01:00
Danil Alexeev
c553ca54d5 Change logo in the About dialog box (return Godot's teeth) 2021-02-14 18:50:05 +03:00
Hugo Locurcio
114c1a78d9
Tweak the editor CheckButton "presed" appearance to be more recognizable
The blue accent color is now used, which matches the default editor
accent color.

It doesn't change to match the currently configured accent color
automatically, but doing so would require modifying the CheckButton
class a lot for little benefit.
2020-12-20 22:32:37 +01:00
Rémi Verschelde
c83d1b2526
Merge pull request #43416 from pycbouh/graph-minimap
Add a minimap to the GraphEdit
2020-12-17 17:34:36 +01:00
Rémi Verschelde
999b38cecd
Merge pull request #44366 from gongpha/fix-texture3d-texturearray-icon-rasterizing
Improve Texture3D and TextureArray icons
2020-12-16 14:19:54 +01:00
gongpha
0ed1915053 New icons for Gradient and GradientTexture resources 2020-12-15 21:06:31 +07:00
Hugo Locurcio
57dcc83152
Rename the TextureProgress node to TextureProgressBar
Advantages:

- When searching for "progressbar", you'll see both nodes in the
  search results.
- More consistent with Button/TextureButton.
2020-12-14 21:35:13 +01:00
gongpha
fd4939111e Improve Texture3D and TextureArray icons 2020-12-14 20:00:42 +07:00
Michael Alexsander
49ae1cba0c Add icon for 'AudioStreamMP3' resource 2020-12-09 13:19:33 -03:00
Marcel Admiraal
df6b061dbb Rename CubeMesh BoxMesh 2020-12-05 11:48:26 +00:00
Yuri Sizov
999ce610a2 Add a minimap to the GraphEdit 2020-11-30 16:48:52 +03:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
Andrii Doroshenko (Xrayez)
ba68383706 Add AspectRatioContainer class
Co-authored-by: Ugis Brekis <ugis.brekis@productmadness.com>
2020-11-25 15:06:40 +02:00
Rémi Verschelde
a7d610db16
Merge pull request #43408 from rcorre/path-gizmos-4.0
Make Path3D handles visible and consistent with 2D.
2020-11-12 13:12:49 +01:00
Ryan Roden-Corrent
8458ba0aef
Proposal 1246: Make Path3D handles more visible.
Resolves godotengine/godot-proposals#1246.

It is difficult to tell the difference between the handles for adjusting
curves and the points themselves when looking at a Path gizmo.
This re-uses the icons used for Path2D.

Unlike Path2D, this does not use a different icon for smooth vs sharp
points, as using a potentially different material for each point would
prevent batching the points in add_handles (and adding them out-of-order
messes up other logic based on handle indices).

This includes a public API change to allow specifying a texture for a
handle material. This allows spatial gizmo plugins to customize the way
a handle is rendered, if desired, but does not break existing behavior
(as providing no texture uses the default).

The path handle icons were resized as well.  16x16 is the standard icon
size. These icons were 10x10 rather than 16x16, and appeared rather
small in the editor.

To resize, I:

- Opened the original in Inkscape
- Resized the document to 16x16
- Opened the transform dialog
- Scaled by 160% proportionally
- Used Align/Distribute to center on the page
- Saved the document
- Cleaned with `svgcleaner --multipass`
2020-11-12 06:37:56 -05:00
Rémi Verschelde
b1db71c9fb
Merge pull request #43220 from YeldhamDev/canvasgroup_codeedit_icons
Add icons for the 'CanvasGroup' and 'CodeEdit' nodes
2020-11-12 10:31:03 +01:00
Michael Alexsander
a38b4fd8f2 Add icons for the new Light2D nodes 2020-11-07 13:55:09 -03:00
Michael Alexsander
0176fc2f32 Add icons for the 'CanvasGroup' and 'CodeEdit' nodes 2020-10-30 16:42:18 -03:00
Hugo Locurcio
a1d9c67f43
Optimize SVG using svgcleaner --multipass
This decreases the editor binary size by about 8 KB.
2020-10-25 10:02:37 +01:00
Rémi Verschelde
11f362b510
Merge pull request #35766 from YeldhamDev/poly2d_uv_editor_improvements
Minor improvements to the Polygon 2D UV editor
2020-10-24 01:47:40 +02:00
Eric Tuvesson
8cf88f8ff4 fix(editor): Create new icon for TileMap Rectangle
ref: #42972
2020-10-22 13:28:34 +02:00
Rémi Verschelde
eee7c4acc4
Revert "fix(editor): TileMap Fill Rectangle icon" 2020-10-22 10:28:37 +02:00
Eric Tuvesson
3fee970c62 fix(editor): TileMap Fill Rectangle icon
The default color was blue which is the active color, changed it to be gray by default.
2020-10-21 20:44:55 +02:00
Hugo Locurcio
da906cade3
Replace AutoKey icon with a more universally understood "record" button
See discussion in
https://github.com/godotengine/godot-proposals/issues/169.
2020-09-25 11:43:17 +02:00
Hugo Locurcio
3e0226515e
Rename ShortCut to Shortcut which is more grammatically correct
See https://github.com/godotengine/godot/issues/16863#issuecomment-685236980.
2020-09-09 21:54:54 +02:00
Michael Alexsander
0c182ce8e8 Make the editor's 'CheckButton' icon be smaller 2020-08-14 10:13:18 -03:00
Andrii Doroshenko (Xrayez)
d86de6c98e SCons: Refactor running commands through builders
A new `env.Run` method is added which allows to control the verbosity
of builders output automatically depending on whether the "verbose"
option is set. It also allows to optionally run any SCons commands in a
subprocess using the existing `run_in_subprocess` method, unifying
the interface. `Action` objects wrap all builder functions to include a
short build message associated with any action.

Notably, this removes quite verbose output generated by `make_doc_header`
and `make_editor_icons_action` builders.
2020-07-28 00:09:21 +03:00
Michael Alexsander
c26b49fc17 Minor improvements to the Polygon 2D UV editor 2020-07-23 19:29:31 -03:00
Aaron Franke
d8b65461e3
Commit only the SVG files changed by file_format.sh
There were a lot of SVG files changed by file_format.sh
2020-07-13 14:08:55 -04:00
Michael Alexsander
26381265b8 Prefer the highlight version of the "GuiTabIcon" icon for buttons, and make their width/height equal 2020-07-11 12:59:25 -03:00
Marcus Elg
9e24fa469a Remove unused interpolate camera icon 2020-06-23 09:29:20 +02:00
Hugo Locurcio
b14b7e763d
Remove unused ToolButton editor icon
Left-over from 31b7f02a29.
2020-06-20 19:53:22 +02:00
Hugo Locurcio
ebabedc615
Replace the AssetLib tab icon with a less confusing design
This closes https://github.com/godotengine/godot-proposals/issues/818.
2020-06-20 00:50:41 +02:00
Hugo Locurcio
4a542e0007
Restore previous mouse position when leaving the editor freelook mode
- Remove the crosshair as it no longer serves a purpose (the cursor will
  now appear where the user "expects" it to).

This closes https://github.com/godotengine/godot-proposals/issues/1076.
2020-06-17 20:02:46 +02:00
Andrii Doroshenko (Xrayez)
a96f0e98d7 Add custom_modules build option to compile external user modules
This patch adds ability to include external, user-defined C++ modules
to be compiled as part of Godot via `custom_modules` build option
which can be passed to `scons`.

```
scons platform=x11 tools=yes custom_modules="../project/modules"
```

Features:

- detects all available modules under `custom_modules` directory the
same way as it does for built-in modules (not recursive);
- works with both relative and absolute paths on the filesystem;
- multiple search paths can be specified as a comma-separated list.

Module custom documentation and editor icons collection and generation
process is adapted to work with absolute paths needed by such modules.

Also fixed doctool bug mixing absolute and relative paths respectively.

Implementation details:

- `env.module_list` is a dictionary now, which holds both module name as
  key and either a relative or absolute path to a module as a value.
- `methods.detect_modules` is run twice: once for built-in modules, and
  second for external modules, all combined later.
- `methods.detect_modules` was not doing what it says on the tin. It is
  split into `detect_modules` which collects a list of available modules
  and `write_modules` which generates `register_types` sources for each.
- whether a module is built-in or external is distinguished by relative
  or absolute paths respectively. `custom_modules` scons converter
  ensures that the path is absolute even if relative path is supplied,
  including expanding user paths and symbolic links.
- treats the parent directory as if it was Godot's base directory, so
  that there's no need to change include paths in cases where custom
  modules are included as dependencies in other modules.
2020-05-25 15:33:32 +03:00
Michael Alexsander
50585e2cfa Add more missing node icons 2020-05-17 12:51:49 -03:00
Michael Alexsander
54ed1f63bf Add more missing icons 2020-05-15 16:20:35 -03:00
Hugo Locurcio
c6afb9f6ea Update the editor icons README to remove outdated information
This closes #38684.
2020-05-12 09:46:56 +02:00
Hugo Locurcio
564f8ccc13
Use a different icon for the debugger tab with both warnings and errors
This makes it possible to see if both errors and warnings were
pushed without having to open the tab.
2020-05-09 15:29:13 +02:00
Michael Alexsander
d239196fc7 Tweak Decal icon slightly 2020-04-24 22:40:06 -03:00
Michael Alexsander
0adbc43ab9 Add icon for the Decal node 2020-04-14 01:08:38 -03:00
Rémi Verschelde
e383798327
Merge pull request #37344 from YeldhamDev/dialog_node_icons
Updade dialog node's icons
2020-04-10 13:13:24 +02:00
Thakee Nathees
1532eefd4e ARVR -> XR rename icon missing fixed
Fix: #37716
2020-04-10 02:11:21 +05:30
Michael Alexsander
0c6851ae53 Rename ViewportContainer to SubViewportContainer 2020-04-01 16:11:44 -03:00
Michael Alexsander
46a6751302 Register SubViewport class 2020-03-30 16:43:55 -03:00
Rémi Verschelde
f3c74afd28
Merge pull request #37436 from akien-mga/doc-node-renames
doc: Update classref with node renames
2020-03-30 20:32:11 +02:00
Rémi Verschelde
eaaee63b62 doc: Update classref with node renames
A few extra renames for classes which were missed in last week's PRs.
2020-03-30 18:23:02 +02:00
Rémi Verschelde
cd4e46ee65 SCons: Format buildsystem files with psf/black
Configured for a max line length of 120 characters.

psf/black is very opinionated and purposely doesn't leave much room for
configuration. The output is mostly OK so that should be fine for us,
but some things worth noting:

- Manually wrapped strings will be reflowed, so by using a line length
  of 120 for the sake of preserving readability for our long command
  calls, it also means that some manually wrapped strings are back on
  the same line and should be manually merged again.

- Code generators using string concatenation extensively look awful,
  since black puts each operand on a single line. We need to refactor
  these generators to use more pythonic string formatting, for which
  many options are available (`%`, `format` or f-strings).

- CI checks and a pre-commit hook will be added to ensure that future
  buildsystem changes are well-formatted.
2020-03-30 09:05:53 +02:00
Rémi Verschelde
d1acbbce7f Rename more 2D and 3D nodes to follow convention
Rename editor plugins to match the new node names.
2020-03-27 16:26:34 +01:00
Juan Linietsky
eaae4b6408 Renamed 2D and 3D nodes to make their types explicit
Fixes #30736.
2020-03-27 14:54:04 +01:00
Michael Alexsander
d15e1dafbd Updade dialog node's icons 2020-03-26 22:44:49 -03:00
Rémi Verschelde
3d2dd79ecd SCons: Drop support for Python 2
We now require SCons 3.0+ (first version with Python 3 support),
and we set min required Python 3 version to 3.5 (3.4 and earlier are
EOL).
2020-03-25 15:25:37 +01:00
clayjohn
61a74739ca Working sky shader implementation 2020-03-21 20:43:44 -07:00
Rémi Verschelde
e2b66cacf7
Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodes
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-03-01 23:00:42 +01:00
Michael Alexsander
687f72ba28 Add more missing icons (and adjust a few) 2020-02-28 15:00:10 -03:00
Tomasz Chabora
225622e5e3 Add unique icon to Polygon2D 2020-02-28 12:01:39 +01:00
Andrea Catania
483994601d Renamed NavigationPolygonInstance to NavigationRegion2D 2020-02-28 08:28:53 +01:00
Andrea Catania
2e0fb66c6f Renamed PlaneShape to WorldMarginShape 2020-02-27 17:45:16 +01:00
Andrea Catania
3b64ecbc4b Renamed NavigationMeshInstance to NavigationRegion 2020-02-27 17:42:53 +01:00
Michael Alexsander
19d7428db6 Update PackedIint/FloatArray icons for the new types 2020-02-25 14:46:40 -03:00
bruvzg
1af06d3d46
Rename scancode to keycode.
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-25 12:30:33 +02:00
Hugo Locurcio
1f8c82df32
Use PascalCase file names for editor icons
Using PascalCase file names without any conversion step is
less confusing to new contributors.
2020-02-24 18:53:05 +01:00
Michael Alexsander
f8c1bafc40 Add icons for some new variants 2020-02-23 16:48:19 -03:00
Rémi Verschelde
880a8fcb1c
Merge pull request #35784 from Calinou/remove-3d-camera-gizmo-icon
Remove the 3D camera gizmo icon
2020-02-19 12:52:27 +01:00
Michael Alexsander
30dac10a0e Convert "Pool*Array" icons into "Packed*Array" 2020-02-18 13:54:02 -03:00
Juan Linietsky
123ee5995c Visual GPU profiler and related profiling support in Vulkan. 2020-02-11 12:01:26 +01:00
Juan Linietsky
dd3682e5fe Modernized default 3D material, fixes material bugs. 2020-02-11 12:01:24 +01:00
Michael Alexsander
021fdb1b58 Remove AnimationTreePlayer node 2020-02-10 16:25:50 -03:00
Hugo Locurcio
f81e50a354
Remove unused GodotDocs and ParticleAttractor2D editor icons 2020-02-09 23:23:17 +01:00
Hugo Locurcio
2d529e6d63
Remove the 3D camera gizmo icon
The gizmo icon obstructed the line-based camera gizmo, which made it
difficult to see the actual camera orientation.

This also removes the unused SpatialStreamPlayer gizmo icon.

This closes https://github.com/godotengine/godot-proposals/issues/425.
2020-01-31 15:58:57 +01:00
Hugo Locurcio
1339a5c1cb
Add an icon for OGG samples
The icon is the same as WAV samples, as both formats are accepted
in AudioStreamPlayer.

This closes #35163.
2020-01-15 22:32:08 +01:00
Hugo Locurcio
2b9f34b867
Add a crosshair to the 3D viewport
The crosshair makes freelook navigation a bit easier, while making it
clearer that it's possible to select nodes by clicking while in
freelook mode.

The crosshair is only displayed while in freelook mode.
It uses an icon designed to be visible on any background.
2020-01-13 22:30:34 +01:00
Hugo Locurcio
ac18665c88
Tint 3D light gizmos using the light's color
This makes navigation more convenient in the 3D viewport, especially
when using the unshaded display mode.
2020-01-01 00:54:25 +01:00
Hugo Locurcio
fd244d0328
Add editor icons for X509Certificate and CryptoKey
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2019-10-16 22:16:14 +02:00
Hugo Locurcio
70c4e96623
Draw an indicator to denote overbright colors in ColorPicker
This makes it faster to distinguish overbright colors from
"standard" colors.
2019-09-27 15:28:42 +02:00
dankan1890
2bdde74d45 Changed the appearance of the rotation icons in the Tilemap.
Make them more intuitive.
2019-09-26 10:59:48 +02:00
Michael Alexsander Silva Dias
5ed5465023 Replace "GuiMiniTabMenu" with "GuiTabMenu" and tweak it 2019-09-25 12:53:42 -03:00
Hugo Locurcio
790391bc93
Optimize editor icon SVGs using svgcleaner
This makes editor binaries about 230 KB smaller.

The command used was:

    parallel svgcleaner --multipass {} {} ::: editor/icons/*.svg
2019-09-24 22:49:30 +02:00
Rémi Verschelde
a7b95d1934
Merge pull request #32267 from YeldhamDev/fix_tab_icons
Fix various problems with tab-related icons
2019-09-24 10:45:40 +02:00
Rémi Verschelde
a0ef113d05
Merge pull request #32036 from Calinou/improve-soft-body-editor-icon
Improve the SoftBody node editor icon
2019-09-23 09:48:55 +02:00
Rémi Verschelde
b671b6ad2b
Merge pull request #32035 from YeldhamDev/new_icons
Add some missing icons
2019-09-23 09:37:57 +02:00
Rémi Verschelde
5ffae0d299
Merge pull request #32020 from Calinou/editor-audio-bus-display-tooltip
Display audio buses' current volume in a tooltip when hovering slider
2019-09-23 09:02:45 +02:00
Michael Alexsander Silva Dias
94ad89a5fb Fix various problems with tab-related icons 2019-09-22 23:08:14 -03:00
Hugo Locurcio
ba8601f557
Improve the network profiler UI
- Add icons to the up/down bandwidth LineEdits for better
  visual grepping.
- Make bandwidth LineEdit texts more prominent when data is being
  received/emitted.
- Add more spacing between the up and down bandwidth LineEdits.
- Initialize the bandwidth texts using `set_bandwidth()` to ensure
  consistency with the actual bandwidth texts once the profiler
  is started.
- Fix icon colors when switching from a dark theme to a light theme
  and vice versa.
- Add missing `EDSCALE` constants for hiDPI scaling.
2019-09-21 15:29:03 +02:00
Rémi Verschelde
f7cd50e900
Merge pull request #32206 from Calinou/remove-unused-tree-constants
Remove an unused icon and constant in Tree
2019-09-20 23:14:50 +02:00
Hugo Locurcio
40a5de97e6
Remove an unused icon and constant in Tree 2019-09-20 17:50:13 +02:00
Hugo Locurcio
04f43116d6
Improve folding appearance in the editor inspector
The arrow is now displayed at the left to be consistent with
other places where folding is used. The arrow icons used are now
consistent with the rest of the editor. The `arrow_up` icon is
no longer used anywhere, so it was removed.

Additional spacing was also added for a better visual appearance.
2019-09-19 22:29:25 +02:00
Hugo Locurcio
11890aa27b
Improve the SoftBody node editor icon
The new icon uses 2-pixel-thick lines for consistency with other icons.
Its pixels are also aligned to the 16 pixel grid.
2019-09-08 00:38:17 +02:00
Michael Alexsander Silva Dias
56883686a3 Add some missing icons 2019-09-07 15:06:27 -03:00
Hugo Locurcio
ea622a16dd
Display audio buses' current volume in a tooltip when hovering slider
This also removes an unused editor icon.

This closes #30884.
2019-09-06 23:25:14 +02:00
iwek7
617797c47c Adds skip-breakpoints feature 2019-09-03 20:49:09 +02:00
Hugo Locurcio
61d7427289
Improve the animation autokey editor icon
The icon was redrawn to snap to a 16x16 grid, with a lower number
of SVG nodes in the process.
2019-09-03 00:11:34 +02:00
Michael Alexsander Silva Dias
ab6daed467 Add icon for the ruler tool 2019-09-02 11:45:03 -03:00
Hugo Locurcio
558e93f069
Improve the appearance of 2D path editors
- Add new handle icons for path/polygon editors
- Add smooth path point icons and curve tangent icons
- Use a gray color for tangent lines in the Path2D and Path editors
- Use antialiasing for Path2D lines
2019-08-18 22:27:01 +02:00
Hugo Locurcio
a341c65f65
Improve timeline drawing in the animation editor
A small arrow-like icon is now drawn at the top of the timeline.
The timeline is now also wider as to be more visible.
2019-08-17 00:20:21 +02:00
Cameron Reikes
345fcb96a2 Add particles icon to CPUParticles 2019-08-08 16:28:01 -07:00
Hugo Locurcio
6e2c27f84f
Make keyframes easier to select in the animation easier
Keyframe SVG icons are now 10×10 instead of 8×8 (except for
Bezier-related icons). This makes them easier to select
since the empty space is part of the clickable area.

Selected keyframes are now also visually larger to make them
easier to distinguish from unselected keyframes.

This closes #27276.
2019-08-04 20:19:51 +02:00
Michael Alexsander Silva Dias
d6988b7d2b Make the expand icon in the bottom panel always be the same 2019-07-29 18:08:05 -03:00
clayjohn
ff7c37927a added pointMesh primitive 2019-07-24 12:14:31 -07:00
Julian Murgia
249fdd9f80 Adds contextual item in scene tree dock to wrap selection in a new node
Fixes #20187
2019-07-19 16:46:13 +02:00
Hugo Locurcio
0aaf6cb87c
Remove unused Vulkan icon
This icon was likely added to be used in the renderer selection
dropdown, but now that the GLES2 and GLES3 icons have been removed
in favor of just using text, it'll probably never be used.
2019-07-13 23:22:01 +02:00
Andrii Doroshenko (Xrayez)
7c11a1b162 Add support for creating editor icons per module
The functionality is similar to how `doc_classes` are retrieved per module.
The build system will search for custom icons path defined per module via
`get_icons_path()` method in `config.py` or default icons path.
If such paths don't exist, only the editor's own icons will be built.

Most module icons were moved from editor/icons to respective modules.
2019-06-28 23:42:26 +03:00
Rémi Verschelde
b3d772ed83 Display invalid value keys in AnimationTrackEdit
Godot 2.1 and 3.0 had this feature but it was lost in the rewrite
of the animation editor in 3.1.
Drop unused KeyValid icon, since all valid keys now have a custom
type icon.
2019-06-23 19:52:49 +02:00
Rémi Verschelde
d6f8a43b60
Merge pull request #24116 from Calinou/editor-theme-improved-checkbuttons
Improve CheckButtons in the default editor theme
2019-06-20 13:07:53 +02:00
Hugo Locurcio
9f6b470ea8
Display a "loading" placeholder while icons are loading in the assetlib 2019-06-08 11:18:52 +02:00
clayjohn
2b8b1d7c46 added MultiMeshInstance2D node for using MultiMesh in 2D 2019-06-03 12:11:54 -07:00
Michael Alexsander Silva Dias
8ea67380d0 Better visual shader icon
Closes #20695.
2019-06-03 02:44:59 -03:00
miwanczuk
fda3a568ef Issue-28355 - show spaces in editor 2019-04-30 14:57:48 +02:00
Hein-Pieter van Braam
696d9d20cf
Merge pull request #25510 from groud/tilemap_editor_enhancement
Move some tilemap options to the toolbar
2019-04-23 06:26:46 +03:00
Juan Linietsky
5d65100669 Icon was missing 2019-04-15 07:46:57 -03:00
Juan Linietsky
3f76d2c2f3 Ability to create sprite frames in AnimatedSprite from sprite sheet. 2019-04-13 22:15:31 -03:00
Juan Linietsky
6574c557c9 Add a "Request Docs" button to code editor. 2019-03-26 16:36:19 -07:00
Gilles Roudiere
96f25c8b67 Move some tilemap options to the toolbar 2019-01-30 16:06:40 +01:00
Danilo Villa (Davi)
e74a3add9c Rename OrientedPathFollow to PathFollowOriented 2019-01-16 14:32:18 -02:00
Juan Linietsky
e46f28e02d Removed splits in Polygon editor, replace by internal vertices and polygon support. 2019-01-08 19:11:08 -03:00
Hugo Locurcio
ee2c26a7b3
Improve CheckButtons in the default editor theme 2018-12-02 16:55:58 +01:00
Will Nations
42300b2769 Add icon_script_extend & update the icon @runtime 2018-10-19 09:04:07 -05:00
Michael Alexsander Silva Dias
fc376d3db6 Switch unoptimized handlers from spatial editor viewport to optimized ones 2018-10-16 18:08:01 -03:00