summaryrefslogtreecommitdiffstats
path: root/editor/shader_globals_editor.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Keep advanced toggle on when searching for settingsHaoyu Qiu2024-09-211-0/+1
|
* Add `String.is_valid_unicode_identifier()`Haoyu Qiu2024-08-271-1/+1
| | | | | | | - Adds `is_valid_unicode_identifier()` - Adds `is_valid_ascii_identifier()` - Deprecates `is_valid_identifier()` - Renames `validate_identifier()` to `validate_ascii_identifier()`
* [Scene] Add `SceneStringNames::text/value_changed`A Thousand Ships2024-06-191-1/+1
|
* [Scene] Add SceneStringNames::pressedA Thousand Ships2024-05-141-1/+1
|
* Allow compressed texture array and cubemap types in shader globals editorHugo Locurcio2024-04-251-2/+2
|
* Add Enter shortcut to add a shader global in the editorHugo Locurcio2024-03-051-0/+3
| | | | | - Clear the shader global name field when adding a new shader global to match the behavior of other tabs in the Project Settings dialog.
* Add Ctrl + L / Cmd + Shift + G shortcut to focus path bar in FileDialogHugo Locurcio2024-03-051-0/+4
| | | | | | | | | | This also tweaks EditorFileDialog to use the same shortcut, while making it select the path text after focusing (like in most file managers). Ctrl + L / Cmd + Shift + G can also now be used to focus on the property name in the project settings editor, as well in the Input Map, Autoload, Shader Globals and Global Groups tabs.
* Improve "Add" button consistency in Project SettingsChristian Kaiser2024-01-111-5/+27
| | | | | | | * Adds an icon to all the input-adjacent add/remove buttons * Adds a separator next to the action map "add" button * Changes the Shader Globals editor to be consistent with the others * Adds a clear button to the shader global name input
* Update deferred calls to use Callableskobewi2024-01-091-2/+1
|
* Made hidden ProjectSettings groups more explicitkobewi2023-08-231-0/+2
|
* Fix shader uniform storage conversions and crashbitsawer2023-05-291-40/+6
|
* Add EditorUndoRedoManager singletonkobewi2023-01-161-3/+3
|
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* Fix setting a global shader variable in the project settingsYuri Rubinsky2022-12-051-19/+24
|
* Cleanup remaining EditorUndoRedoManager usageskobewi2022-11-241-2/+2
|
* Prevent stack overflow when setting a shader global valueYuri Rubinsky2022-11-171-1/+1
|
* Unify usage of undo_redo in editorkobewi2022-11-021-1/+1
|
* Unify usage of GLOBAL/EDITOR_GETkobewi2022-10-181-2/+2
|
* Port remaining connections to callable_mpTomasz Chabora2022-09-181-1/+1
|
* Rename `uniform` to `parameter` across the engineYuri Rubinsky2022-09-011-17/+17
|
* Add per-scene UndoRedokobewi2022-08-221-3/+4
|
* Remove Signal connect bindsJuan Linietsky2022-07-291-1/+1
| | | | | Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
* Rename RenderingServer global shader uniform methods to be more explicitHugo Locurcio2022-07-281-18/+18
| | | | | The `global_shader_uniform` name is longer, but it makes it much easier to find the methods when searching in the class reference.
* Implement Vector4, Vector4i, Projectionreduz2022-07-231-4/+4
| | | | | | | | | | | | | Implement built-in classes Vector4, Vector4i and Projection. * Two versions of Vector4 (float and integer). * A Projection class, which is a 4x4 matrix specialized in projection types. These types have been requested for a long time, but given they were very corner case they were not added before. Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity. **Q**: Why Projection and not Matrix4? **A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
* Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`Hugo Locurcio2022-05-031-1/+1
| | | | | | These typedefs don't save much typing compared to the full `Ref<Resource>` and `Ref<RefCounted>`, yet they sometimes introduce confusion among new contributors.
* Add Vector4 to VisualShaderHendrik Brucker2022-04-121-2/+2
|
* Add property name style toggle to InspectorHaoyu Qiu2022-03-281-1/+1
|
* Convert _notification methods to switch - Chunk CJakob Bouchard2022-02-161-7/+10
|
* Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker2022-02-121-1/+3
|
* Optimize include files to improve `shader_language.h` compilation speedYuri Roubinsky2022-01-121-0/+1
|
* Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | Happy new year to the wonderful Godot community!
* Replace String comparisons with "", String() to is_empty()Nathan Franke2021-12-091-1/+1
| | | | | | Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
* Merge pull request #50648 from foxydevloper/remove-weird-printsRémi Verschelde2021-07-201-3/+0
|\ | | | | Remove leftover prints when using shader global variables
| * Remove random prints for some shader actionsfoxydevloper2021-07-191-3/+0
| |
* | Make various strings translatablefoxydevloper2021-07-191-3/+3
|/
* Optimize StringName usagereduz2021-07-181-2/+2
| | | | | | | | | | | * Added a new macro SNAME() that constructs and caches a local stringname. * Subsequent usages use the cached version. * Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time. * Replaced all theme usages by this new macro. * Replace all signal emission usages by this new macro. * Replace all call_deferred usages by this new macro. This is part of ongoing work to optimize GUI and the editor.
* Rename Variant TRANSFORM to TRANSFORM3DAaron Franke2021-06-031-1/+1
| | | Also _transform to _transform3d
* Rename Transform to Transform3D in coreAaron Franke2021-06-031-1/+1
|
* Fix heap-use-after-free in Import Defaults EditorMichael Alexsander2021-02-251-3/+0
|
* Removed _change_notifyreduz2021-02-101-1/+1
| | | | | | -For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap. -For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed() -Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
* Update copyright statements to 2021Rémi Verschelde2021-01-011-2/+2
| | | | | | | | | | | | | | Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
* [Complex Text Layouts] Refactor Font class, default themes and controls to ↵bruvzg2020-11-261-0/+3
| | | | | | | | use Text Server interface. Implement interface mirroring. Add TextLine and TextParagraph classes. Handle UTF-16 input on macOS and Windows.
* Shader globals bugfixesDavid Sichma2020-10-211-2/+8
| | | | | - shader globals editor displays properties correctly - fixed some errors how globals were transferred
* Don't try to compare freed object to nullptrRafał Mikrut2020-10-131-1/+3
|
* Style: Enforce separation line between function definitionsRémi Verschelde2020-05-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
* Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde2020-05-141-4/+0
| | | | | | | | | | | | | | Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
* Modernize remaining uses of 0/NULL instead of nullptr (C++11)Rémi Verschelde2020-05-141-1/+1
| | | | | Using clang-tidy's `modernize-use-nullptr`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
* Style: Add missing copyright headersRémi Verschelde2020-05-101-0/+30
|
* Implement global and per instance shader uniforms.Juan Linietsky2020-04-171-0/+452
Adds two keywords to shader language for uniforms: -'global' -'instance' This allows them to reference values outside the material.