537 Commits
Author SHA1 Message Date
Aurélien Vivet ee563fdb4e Unify the 3D position, size and rotation actions
- Position: a "Z position" action and condition for 3D objects, an optional Z position in the position and center position actions (left unchanged when empty) and in the object creation actions (0 by default), ignored for 2D objects.
- Size: an optional depth in the size action, left unchanged when empty and ignored for 2D objects.
- Rotation: an action changing the X, Y and Z rotations at once, a Z rotation action and condition for 3D objects (their angle), and turns around the local X, Y and Z axes of the object, next to the turns around the global axes.
- Base object instructions can require a capability (like the 3D one): they are skipped by the code generation for objects without it.
- The position, size, scale and rotation actions and conditions are grouped (Position, Center, Size, Scale, Rotation, Turn around local/global axis) and named after their axis. The expressions keep their name, description and group.
2026-10-09 23:50:07 +02:00
ViktorVovkandViktor Vovk 28934eb01a Add support for custom "cubic-bezier" easings to the Tween extension (#9154)
- Tweens can now use a custom easing curve, in addition to the built-in named easings (`linear`, `easeInQuad`, ...). A custom curve is written like in CSS: `"cubic-bezier(x1,y1,x2,y2)"`.
- The easing field gets a Custom curve... entry that opens a visual curve editor. 
- New custom easing can be named and reused across the project (or across an extension)

Co-authored-by: Viktor Vovk <[email protected]>
2026-10-08 18:34:05 +02:00
D8H 57cfbb2982 Improve variable parameter autocompletion (#9164) 2026-10-08 18:21:33 +02:00
Aurélien Vivet b5fbe6fd8b Remove the Quick Customization flow (#9174) 2026-10-05 11:29:06 +02:00
D8H 7dd4d13a7a Upgrade to Three.js 0.185.1 (#8853)
- Point lights and spot lights now uses a realistic decay. It's not possible to find the exact same result as before, but you can tweak the intensity and the decay properties. Hemisphere lights, directional lights and ambient lights still work the same as before.
- The 3D particle emitter must be updated to the last version to handle the new 3D renderer world scale property.
- Ensure any 3D extension you use is also updated to the latest version.
2026-10-03 13:55:50 +02:00
D8H 83da4cc2bf Improve autocompletion and errors according to variable types (#9105)
- Add autocompletion with brackets access for structures and arrays.
- Improve error messages when brackets are empty.
- Fix autocompletion of variable parameters in function calls wrongly
suggesting objects and functions.
- Only display relevant variables in autocompletion according to their
type.
- Display an error when string, number or boolean variable is used and a
structure or an array is expected and the other way around.
2026-09-25 15:40:00 +02:00
Clément Pasteau 79527b2df5 Automatically opt out of ipad multitasking to allow publishing to App Store (#9119) 2026-09-18 13:32:54 +02:00
Florian Rival be887e51c3 Allow the agents to read/create/modify extensions (custom functions/objects/behaviors) (#9094) 2026-09-18 11:44:08 +02:00
D8H 1149a67963 Fix missing error messages on variable fields (#9078) 2026-09-09 18:35:55 +02:00
D8H 127f9f15d7 Add a menu option to move custom objects, behaviors and functions to another extension (#9055) 2026-09-07 16:02:16 +02:00
D8H 055e296785 Add a button for custom objects to generate actions/conditions/expressions that "forward" the ones of a child object (#9036) 2026-09-07 14:20:49 +02:00
Clément Pasteau 1b213a390a Fix orientation of mobile apps at build time (notably on iPad) (#9050)
- Also bump iOS deployment target to the latest version required by Apple
2026-09-02 16:09:09 +02:00
Florian Rival 248282f86f Fix object group mishandling in case a scene object group shadows a global object group (#9048) 2026-09-02 14:13:24 +02:00
D8H 92223596d1 Display an error on undeclared child of variables (#8780) 2026-08-24 10:40:14 +02:00
D8H ae67d02661 Fix duplicated extensions still wrongly using functions from the original extension (#8990) 2026-08-21 13:16:44 +02:00
D8H 7582465da2 Add a "create a new behavior" button in the behavior list dialog (#8981) 2026-08-19 19:30:36 +02:00
D8H b89ea3e3ab Fix global groups with missing scene objects always wrongly displayed in red in the event sheet (#8970) 2026-08-18 13:55:57 +02:00
Florian Rival 44ba8a04ce Add experimental gameplay tests (#8926)
A gameplay test plays a game: it presses keys, moves the mouse, touches the screen, then checks that what should happen actually happens. For example, if the coin is collected, the score goes up, the enemy hurts the player... Tests run in a preview of the game, usually much faster than real time. [Read more about them on this page](https://wiki.gdevelop.io/gdevelop5/interface/gameplay-tests/)
2026-08-08 21:22:07 +02:00
Clément Pasteau dbde5a9347 Instances can now be hidden at start from the properties panel (#8884)
+ AI tool can now set instance variables
2026-07-30 16:43:23 +02:00
D8H f4a91c66fc Fix to avoid incompatible behaviors when adding objects to a group (#8846) 2026-07-15 18:27:57 +02:00
Florian Rival 2d9d8c3a41 Fix scene variables "persistentUuid" field in JSON being regenerated or deleted on save (#8837)
Only show in developer changelog
2026-07-15 14:59:16 +02:00
Clément Pasteau 0cd03bbfa1 Make wasm test faster (#8829)
show in developer changelog
2026-07-15 09:29:13 +02:00
Clément Pasteau 97eccf98c3 Reduce possible crashes in the event sheet when undoing/redoing (#8820) 2026-07-09 08:53:29 +02:00
Clément Pasteau 5c573fb2c1 Fix variables being always created as numbers by the AI (#8818)
Do not show in changelog
2026-07-07 16:51:33 +02:00
D8H b2222005d9 Allow to edit behavior properties of object groups in the side panel (#8758) 2026-06-25 16:34:53 +02:00
D8H 733c560ec9 Fix behavior overriding for Physics2, Physics3D, Multiplayer and SaveState (#8766)
- Don't show in changelog
2026-06-25 15:51:30 +02:00
Clément Pasteau 3358d5e2ba Fix showing default parameter values as errored in the event sheet (#8753)
Do not show in changelog
2026-06-23 12:00:34 +02:00
Clément Pasteau b5c44d9694 Fix possible crashes when serializing large projects (#8749) 2026-06-22 17:17:01 +02:00
Clément Pasteau 7860c22ecd Fix initial value displayed for optional Boolean parameters with default value (#8748) 2026-06-22 11:18:37 +02:00
D8H bbb95deb44 Display and allow editing scene properties and variables in the side "properties" panel (#8387) 2026-06-08 15:01:36 +02:00
D8H c6d40449c8 Automatically add a return action in custom expressions (#8682)
* And ensure the type is right when the expression type is changed
2026-06-07 22:01:32 +02:00
D8H da2fec5085 Add missing help page links for 3D box, 3D model, text input and light obstacle (#8677) 2026-06-04 12:16:23 +02:00
Clément Pasteau 663edf81ec Improve a lot the time to launch previews (and other operations like modifying groups/renaming objects) when using very long expressions (#8662) 2026-06-01 14:40:33 +02:00
D8H 46a6a66552 Hide deprecated extensions in new projects (#8634) 2026-05-28 18:07:48 +02:00
Clément Pasteau 8b00514aff Fix path breaking webapp (#8635)
Do not show in changelog
2026-05-22 11:15:39 +02:00
opaldi 749a78650b Persist the preference "Start all previews from scene X" in the project file (#8622) 2026-05-20 16:49:23 +02:00
ViktorVovk f39d8bb080 Add experimental support for "canonical" serialization of events (#8552)
- When activated, the JSON of the project is saved with properties always in alphabetical order. Fields in events are also never omitted.
- The preference is controlled via `gdevelop-settings.yaml` (already read
by the IDE on project open):

  ```yaml
  # gdevelop-settings.yaml
  preferences:
    canonicalEventSerialization: true
  ```

Only show in developer changelog
Co-authored-by: Viktor Vovk <[email protected]>
2026-05-20 16:10:12 +02:00
D8H cea1410fb3 Add syntax highlighting for expressions in events (#8538)
Complex expressions and formula will now be shown using multiple colors, like the rest of events. This allows to identify objects, numbers, strings in a long formula.
2026-05-18 18:10:00 +02:00
Clément Pasteau 0eb6014a93 Fix some visual glitches in the Events Sheet when opening and scrolling (#8571) 2026-05-11 10:52:30 +02:00
Florian Rival d52d42d3b4 Add integration test for objects created via a behavior action parameter (#8576)
Verify that a behavior's custom action whose events Create the object
passed as parameter (FireBullet-style) leads to the newly created
instances being picked in the calling scope, while a previously created
instance of the same object remains untouched.

Don't show in changelog
2026-05-07 19:00:52 +02:00
D8H 1480595463 Fix objects created by custom actions not being picked (#8575) 2026-05-07 17:48:22 +02:00
Clément Pasteau 3c80598d09 Revert "Fix some visual glitches in the Events Sheet (#8551)" (#8570)
This reverts commit 232443328d.
2026-05-06 16:48:11 +02:00
Clément Pasteau 232443328d Fix some visual glitches in the Events Sheet (#8551) 2026-05-05 18:29:21 +02:00
D8H 98e5184958 Fix missing error on expressions with unknown objects in the event sheet (#8566) 2026-05-05 16:06:31 +02:00
Florian Rival c293911c84 Fix missing space in documentation generation and update types 2026-05-04 15:52:51 +02:00
Florian Rival 5dd2b8ffd8 Add hints for some extensions, displayed in the documentation (#8564) 2026-05-04 15:11:56 +02:00
D8H 8e50ddefe4 Allow to configure object resources to be loaded independently from the scene (#8514)
- This is an advanced, experimental feature which is subject to changes. It's in most cases not useful, unless you have a large game or low end devices for which controlling memory usage is important. It's mostly useful to delay loading of large custom objects.
- Objects can be configured so that its resources are not loaded when the scene is loaded. Instead, you can use an action to manually load the resources used by it. When the loading is done (this can be checked using a condition), the object can then be created.
  Be careful: if an object assets are not loaded, it will be broken when displayed on screen.
2026-05-04 10:45:51 +02:00
D8H f7012ebfd6 Fix created child objects instances in custom objects being picked twice (#8559) 2026-05-04 09:37:51 +02:00
Clément Pasteau 920d0b86c1 Fix default variable string value being empty instead of 0 (#8473)
* Before, this was set as 0 even though displaying as empty in the
variablesList.
* Projects created before 5.6.267 will keep the same behavior (0 as default value for string variables) with an option to move to the new behavior (empty as default value) in the project properties dialog.
* Projects created from 5.6.267 will use the new default behavior (empty as default value)



https://github.com/user-attachments/assets/0d885c70-b68a-431f-8dcb-08e4e193b8a1
2026-04-27 09:37:45 +02:00
D8H 5f260352ce Fix scene properties not usable via the variable action and condition (#8504) 2026-04-13 09:12:32 +02:00