78 Commits

Author SHA1 Message Date
D8H 0b3f8e7205 Improve types for TypeScript 6 (#8591)
Only show in developer changelog
2026-05-13 12:07:46 +02:00
Florian Rival 9934457b39 Add a short description for all extensions and dimension field (2D, 3D, 2D/3D or n/a) (#8303)
Only show in developer changelog
2026-02-21 13:10:41 +01:00
D8H deb802cfec Allow to override behavior properties on object instances (#8171)
* For now, this is limited to instances inside custom objects. This will be made available in the future for all instances in scenes if this works well.
2026-02-09 16:21:24 +01:00
D8H 1cbc1de05a Fix simple tilemap object being in the wrong category (#8139) 2026-01-17 19:48:03 +01:00
Florian Rival f7a821f980 Add categories to classes for game engine documentation (#8076) 2025-12-18 17:12:07 +01:00
D8H 752d047464 Upgrade GDJS to Prettier 3.4.2 (#7398)
- Don't show in changelog
2025-02-12 18:50:02 +01:00
Florian Rival 43f5bd1c0e Allow to edit object properties, behaviors, variables and effects directly from the properties panel (#6898)
* When an object is selected (or when "Edit object" button is clicked in the properties panel after choosing an instance), the properties panel will show the properties of the object.
* This allows for fast edition of most elements of an object: appearance, properties, but also behaviors, variables and effects. Most workflow and iterations on your game should be faster, from adapting the appearance of a text to tweaking behaviors and updating the preview to check the result in realtime.
2024-09-27 10:56:39 +02:00
Florian Rival a51c223c9c Add experimental, work-in-progress visual editor for custom objects (aka "prefabs"/"templates") (#6699)
* Still to do: 
  * Properly handle effects (disable 3D effects) for layers
  * Handle hot reloading properly
  * Avoid duplicating the configuration of the custom object inside each object created from it. Instead, only store the modified values.
  * Add a "Extract as a custom object ("prefab")" when selecting instances in a scene.
  * Add a dialog to give choice between 2D or 3D object when creating one.
  * Make sure "behavior shared data" are properly handled (physics, pathfinding...)
  * Check if we need to give an expression to translate coordinates from the parent to the local custom object.
  * Ensure a deleted custom object does not break the editor

Co-authored-by: Davy Hélard <davy.helard@gmail.com>
2024-07-11 11:27:34 +02:00
Clément Pasteau 3c5fee0535 Add experimental support for multiplayer games ("GDevelop Multiplayer") (#6613) 2024-06-07 14:12:58 +02:00
Arthur Pacaud (arthuro555) 31ef3fec58 Add TypeScript type checking to JsExtension.js files (#6321) 2024-03-09 17:22:12 +01:00
Clément Pasteau a377467031 Revert "Type JsExtensions files with typescript" (#6220)
Don't show in changelog
2024-01-18 16:01:28 +01:00
Arthur Pacaud (arthuro555) ad18eab4ae Type JsExtension.js files with TypeScript (#6200)
* Also improve typing of the C++ Core classes in TypeScript.

Only show in developer changelog
2024-01-18 09:53:24 +01:00
D8H 423f15b513 Add actions to tween effect properties (#5993) 2023-12-04 15:25:40 +01:00
AlexandreS b180f5032e Fix getThumbanil static methods (#5902)
Don't show in changelog
2023-11-13 13:59:04 +01:00
D8H 4f98ffa9ab Fix memory some memory leaks in the scene editor (#5853) 2023-11-10 16:14:54 +01:00
D8H ec6f669d94 Add HSL adjustment, motion blur and shockwave effects (#5760) 2023-10-12 10:49:29 +02:00
D8H 9f4b12ce8a Add missing text parameter types for event-based extensions (#5689)
* Replace "effect parameter" with "effect property" in the UI and documentation.
* Inline property fields for effect name and property.
2023-09-27 11:05:19 +02:00
D8H 73642092bb Upgrade games 2D rendering engine (PixiJS) to version 7.3.0 (#5633)
* This opens the path to multiple performance improvements (faster WebGL rendering, and then WebGPU rendering) as well as optimised resources loading in the future.
2023-09-21 17:14:05 +02:00
D8H c169c5037a Use instance default size as default custom size (#5334) 2023-05-23 09:41:43 +02:00
AlexandreS cf374737fc Add support for built-in 3D games (#5285)
* This provides new 3D objects: 3D Box (perfect to create walls, floors, or billboards) and 3D Model (to import objects created in a 3D modeling app).
* 2D and 3D can be mixed in a same game. Each layer of a game can contain 2D objects, 3D objects or a mix of both.
* This allows to build 2D games, 2.5D games and full 3D games: platformers, racing games, FPS, hyper casual games. It's easy to start adding 3D objects to an existing 2D game.
* You can set up a light by adding an ambient light and/or directional light in the effects of a 3D layer. 3D objects can be configured to react to light or ignore it.
* In the future, support for 3D objects will be improved: light objects, animations, etc...
2023-05-16 17:37:49 +02:00
D8H 94045aec91 Fix typo in comments and message strings (thanks @st-Wook!) (#5262)
Co-authored-by: supertree-wook <phk09242@supertree.co>
2023-04-28 11:58:51 +02:00
AlexandreS 9716ff14ed Fix: Use correct default values for effects with color parameters (#4891) 2023-02-03 12:06:26 +01:00
D8H 02bbdfecd4 Allow event-based behaviors to declare scene properties (#4464) 2022-11-10 11:43:16 +01:00
D8H 80cb6d697c Handle custom objects at runtime (#4294)
* Don't show in changelog
2022-10-18 13:36:48 +02:00
D8H 3aa636861c Custom objects take the icon of one of their sprite child (#4316)
* Don't show in changelogs.
2022-09-27 16:19:12 +02:00
D8H b8e9bc801a Add a properties editor for custom objects (#4227)
* Don't show in changelogs
2022-09-02 14:13:41 +02:00
Florian Rival 67718a364b Fix missing https in wiki links
Don't show in changelog
2022-05-13 12:49:02 +02:00
Florian Rival e9b600d885 Update links to the new wiki
Don't show in changelog
2022-05-13 12:43:25 +02:00
Florian Rival 5d2e0786ee Sort actions/conditions in categories add icons to their groups (#3583)
* This should make it easier to identify and find actions/conditions. Categories give more clarity and icons help to identify what's available without reading everything.
2022-02-03 11:45:53 +01:00
Florian Rival 43d55112cc Display objects in categories when creating a new object (#3562)
Don't show in changelog
2022-01-29 16:02:34 +00:00
D8H 0fd9173069 Improve consistency of behavior descriptions by starting them with a verb. (#3484) 2022-01-17 17:05:37 +00:00
D8H b3e0540fed Group properties in some behaviors for enhanced clarity (#3373)
* Also allow custom behaviors made in the editor to define property groups.
2021-12-22 17:10:06 +00:00
Arthur Pacaud bc606ed1be Add a console to the games debugger (#2770)
* When launching the Debugger to inspect a game, open the Console to see internal messages sent by the game, JavaScript code or the game engine.
* This is an advanced feature that is useful to find issues in your game or to see if your game is displaying any internal error.
2021-10-21 19:47:28 +01:00
Harsimran Singh Virk 599ccb677f Add support for visual effects ("shaders") on objects. (#2901)
* This allows to generate interesting visual effects, which can be controlled by events. For example, you can use an outline on an object to highlight, make the player glow when launching a spell, blur objects, etc...
* A new "effects" tab is now present in the objects editor. From there, you can add visual effects, that were already available for layers, customize them from this editor.
* Actions and conditions are available to manipulate effects and change their parameters during the game.
* Learn more on the wiki: http://wiki.compilgames.net/doku.php/gdevelop5/objects/effects

Co-authored-by: Florian Rival <Florian.Rival@gmail.com>
2021-08-20 15:01:06 +02:00
Arthur Pacaud 068fbe653a Add new lines between functions back in TS files (#2859)
Only show in developer changelog
2021-08-03 14:35:07 +02:00
Florian Rival 54ef7482cf Fix performance issues on iOS by upgrading internal rendering engine to PixiJS v6 (#2447)
* Thanks @Bouh and @arthuro555 for the help!

Co-authored-by: Bouh <bouh.vivez@gmail.com>
2021-04-09 23:58:18 +01:00
Florian Rival 741c457d7f Use double for instances position/angle/size instead of float and various other fields
Fix issues with precision of serialized JSON after the switch to RapidJSON

Don't show in changelog
2021-03-13 21:34:53 +00:00
Florian Rival 4b2cd90320 Add documentation of extensions in the generated GDJS documentation
Only show in developer changelog
2021-01-14 21:32:13 +00:00
Florian Rival 65d3688052 Fix duplicate classes in the generated GDJS documentation
Don't show in changelog
2021-01-08 19:55:20 +01:00
Florian Rival 7ef2e40066 Add more various fixes for TypeScript and code style
Don't show in changelog
2021-01-08 19:55:01 +01:00
Florian Rival d0dba2a713 Fix typings in TypeScript files
Don't show in changelog
2021-01-08 19:54:56 +01:00
Florian Rival d639e0ea6e Translate more files to TypeScript
Don't show in changelog
2021-01-08 19:54:52 +01:00
Florian Rival 326ebb231c Translate all objects to TypeScript
Don't show in changelog
2021-01-08 19:54:47 +01:00
Florian Rival 11d69e46ed Translate all behaviors to TypeScript
Also adapt custom behavior code generation to use a (partial) ES6 class (methods are still added using prototype)

Don't show in changelog
2021-01-08 19:54:41 +01:00
Florian Rival d83ce0ed9d Rework objects recycling to be opt-in with a reinitialize method
Only show in developer changelog
2021-01-08 17:09:42 +01:00
Florian Rival 59c9812208 Only add the AdMob plugin when the AdMob App Id is set (#1940)
Don't show in changelog
2020-08-24 22:54:51 +01:00
Arthur Pacaud cafa0d512f Allow extensions to declare dependencies (npm, cordova...) and custom properties in the project (#1717)
Only show in developer changelog
2020-08-24 20:51:10 +01:00
Florian Rival 3a9f896f04 Add hot reloader (electron app only) 2020-07-25 14:23:00 +01:00
Florian Rival 9b178bc985 Fix "Remove Unused Images" removing images used by BBText object
Don't show the rest in changelog:
* More generally, fix resources exposed by any object declared in JavaScript
* Refactored GetProperties (and UpdateProperty) across behavior/object/behavior shared data to remove the dependency on gd::Project.
2020-06-23 22:40:38 +01:00
Florian Rival 0f30c2d614 Fix memory leak leading to a crash in the editor when having a BB Text in the scene.
* Also fix similar smaller memory leak when using other features.

Don't show the rest in changelog:
This avoids calling new gd.PropertyDescriptor every time properties of an object/behavior are accessed, which would result in these gd.PropertyDescriptor to be never destroyed. This would fill up the memory, especially quickly with the BB Text object as properties are queried to render the instances on screen.
"getOrCreate" is now exposed for the map of properties, which is cleaner and memory leak free.
2020-06-20 17:59:27 +01:00