summaryrefslogtreecommitdiff
path: root/scene/resources/tile_set.cpp
AgeCommit message (Collapse)Author
2021-07-23Use C++ iterators for Lists in many situationsAaron Franke
2021-07-21Implement atlas merging and tile proxiesGilles Roudière
2021-07-21Import old tiles in SINGLE_TILE mode as atlasesGilles Roudière
2021-07-18Optimize StringName usagereduz
* 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.
2021-07-06Fix TileSet::CellNeighbor enum bindingGeorge Marques
Having the TileSet:: prefix has some unintended consequences in the bindings, in particular in the extension API dump.
2021-06-29Implement painting properties over TileSetsGilles Roudière
2021-06-19Rename `instance()`->`instantiate()` when it's a verbLightning_A
2021-06-16Rename `is_valid_integer()` to `is_valid_int()`Lightning_A
Method from `String`
2021-06-13Add range check for TileSet::CellNeighbor parameterHaoyu Qiu
2021-06-05Deleted YSort, moved its functionality directly into Node2D.andriyDev
YSort now has a compatibility alias to Node2D. Updated TileMap to use the existing Node2D y_sort_enabled property instead of its own property. Updated Node2D doc to include the new y_sort_enabled member. Updated TileMap doc to remove its mention of cell_y_sort. Deleted YSort doc.
2021-06-01Merge pull request #49024 from groud/restore_tilemap_show_debugRémi Verschelde
Restore TileMap's debug collision shapes and add navigation.
2021-05-30Disable loop with CompatibilityTileData when building with deprecated=noAaron Franke
2021-05-25Restore a way to show collsion/navigation on TileMap.Gilles Roudière
Also remove an unused function.
2021-05-25Tweak dozens of editor property hints for consistencyHugo Locurcio
- Update Viewport MSAA property hints to match the currently exposed values. - Add some performance hints to property hints.
2021-05-22Merge pull request #48918 from groud/fix_tilemap_y_sortRémi Verschelde
Fixes TileSet Y-sort not working and TileSet not saving correctly
2021-05-21Fixes TileSet Y-sort not working and TileSet not saving correctlyGilles Roudière
2021-05-20Change behavior of String.rightTomasz Chabora
2021-05-20Implement scenes tiles in TileMapsGilles Roudière
2021-05-07Rework the TileSet resource and TileMap nodes:Gilles Roudière
- 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-02-11Improve resource load cachereduz
-Added a new method in Resource: reset_state , used for reloading the same resource from disk -Added a new cache mode "replace" in ResourceLoader, which reuses existing loaded sub-resources but resets their data from disk (or replaces them if they chaged type) -Because the correct sub-resource paths are always loaded now, this fixes bugs with subresource folding or subresource ordering when saving.
2021-02-10Removed _change_notifyreduz
-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.
2021-01-01Update copyright statements to 2021Rémi Verschelde
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 🎆
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-10-24Refactored 2D shader and lighting systemreduz
-Removed normal/specular properties from nodes -Create CanvasTexture, which can contain normal/specular channels -Refactored, optimized and simplified 2D shaders -Use atlas for light textures. -Use a shadow atlas for shadow textures. -Use both items aboves to make light rendering stateless (faster). -Reorganized uniform sets for more efficiency.
2020-09-03[Complex Test Layouts] Change `String` to use UTF-32 encoding on all platforms.bruvzg
2020-05-27Split `Geometry` singleton into `Geometry2D` and `Geometry3D`Andrii Doroshenko (Xrayez)
Extra `_2d` suffixes are removed from 2D methods accoringly.
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
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.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
Part of #33027, also discussed in #29848. Enforcing the use of brackets even on single line statements would be preferred, but `clang-format` doesn't have this functionality yet.
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-03-17Style: Set clang-format Standard to Cpp11Rémi Verschelde
For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
2020-02-25Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky
- Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
2020-02-11Texture refactorJuan Linietsky
-Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD
2020-02-04Hide TileSet's properties from the inspectorMichael Alexsander
2020-01-27Added binding for Autotile CenterTrevorPeyton
2020-01-23Fix TileSet shape data not updating when being set via codeMichael Alexsander
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
2019-11-08Fix incorrect offset for old-format tilemapsYuri Roubinsky
2019-08-09Remove ERR_EXPLAIN from scene/* codeTomasz Chabora
2019-08-04Fix Wrong Shape Offsets in TilesetEmmanuel Barroga
Closes #30994 When modifying the properties of a tileset in the editor, some properties only apply to the first tile (such as the shape offset). This change resolves that issue by traversing the changes to all of the shapes in the tileset instead of the first one.
2019-07-03Fix crash with TileSet(again)qarmin
2019-06-23TileSet: Don't error out on tile_ getters with wrong shape idRémi Verschelde
Partial revert of 02319dceb2e17184eb765c67719a306f56dafc1b, previous code handled this cases without errors and the TileSet and TileSetEditorPlugin are written with the expectation that those will not error out. This is a bit wonky and these classes should likely be refactored, but until then it's best to keep things as they were. Fixes #29962.
2019-06-21Fix some editor crashesqarmin
2019-06-01Merge pull request #24560 from guilhermefelipecgs/fix_24549Rémi Verschelde
Add EDITMODE_PRIORITY for ATLAS_TILE
2019-04-08Changed autotile priority picking algorithmMax
2019-04-08+ Added ignore flags to autotile bitmaskMagnus Specht
+ Added ignore functionality to tileset editor + Updated tileset editor autotile tooltip + Autotile ignore bits are processed and rendered correctl
2019-03-04TileSet/TileMap: Decompose solid non-convex polygons into convexes. Real fix ↵Mariano Suligoy
for #24003
2019-01-31Fix crashes when calling update_bitmask_areaBojidar Marinov
Fixes #25504
2019-01-22Fix collision margin being wrongly read by default, fixes #25181Juan Linietsky