Check out our latest project ✨ OpenChapter.io: free ebooks the way its meant to be 📖

Kickstart Projects with Free Godot Assets

Discover high quality and Open Source assets for your next Godot project
The page banner background of a mountain and forest

Whats popular

GdUnit3 - Unit Testing Framework icon image
NullPointer
GdUnit3 - Unit Testing Framework

GdUnit3 is a framework for testing Gd-Scrips/C# and Scenes within the Godot editor. https://mikeschulze.github.io/gdUnit3/Features- Write and run tests in GdScript and full C# testing support- Embedded test Inspector in the Godot to navigate over your test suites- Run test-suite(s) by using the context menu on FileSystem, ScriptEditor or GdUnit Inspector- Create test’s directly from the ScriptEditor- A Configurable template for the creation of a new test-suite- A spacious set of Asserts use to verify your code- Argument matchers to verify the behavior of a function call by a specified argument type.- Fluent syntax support- Test Fuzzing support- Parameterized Tests (Test Cases)- Mocking a class to simulate the implementation which you define the output of certain function- Spy on a instance to verify that a function has been called with certain parameters.- Mock or Spy on a Scene- Provides a scene runner to simulate interactions on a scene - Simulate by Input events like mouse and/or keyboard - Simulate scene processing by a certain number of frames - Simulate scene proccessing by waiting for a specific signal - Simulate scene proccessing by waiting for a specific function result- Update Notifier to install latest version from GitHub- Command Line Tool- Visual Studio Code support by (GdUnit Test Explorer) extension- You are welcome to test in and send me your feedback- You are welcome to suggest improvements- You are welcome to report bugs

Aseprite Wizard icon image
viniciusgerevini
Aseprite Wizard

Import Aseprite animations to AnimationPlayers, AnimatedSprite2D, AnimatedSprite3D and SpriteFrames.Features:- Godot importer and inspector docks for easy import and re-import.- Adds automatic importers: - Aseprite SpriteFrames: Use Aseprite files as SpriteFrames resources. - Aseprite Texture: Use Aseprite files as static images (only first frame is imported) - Aseprite Tileset Texture: Use Aseprite files with tilemap layers as AtlasTexture which can be added directly to Godot's tileset creator.- Inspector docks to manually import animations to: - AnimationPlayer (Sprite2D, Sprite3D and TextureRect). - AnimatedSprite2D/3D. - As standalone SpritesFrames resource.- Supports Aseprite animation directions (forward, reverse, ping-pong, ping-pong reverse).- Supports loopable and non-loopable animations via Aseprite repeat or tags.- Separates each Aseprite Tag into animations. In case no tags are defined, imports everything as default animation.- Filters out layers you don't want in the final animation using regex.- Supports slices. Import only a region from your file.- For AnimatedSprite - Creates SpriteFrames with Atlas Texture to be used in AnimatedSprites. - Converts Aseprite frame duration (defined in milliseconds) to Godot's animation FPS. This way you can create your animation with the right timing in Aseprite and it should work the same way in Godot. - Choose to export the Aseprite file as a single SpriteFrames resource or separate each layer in different resources. - Adds Aseprite file importer to Godot.- AnimationPlayer - Adds and removes animation tracks without removing other existing tracks. - You are free to import multiple files to the same AnimationPlayer or import each layer to their own Sprite/TextureRect and AnimationPlayer. - Supports animation libraries.Aseprite Wizard is only required during development. If you decide to not use it anymore, you can remove the plugin and all animations previously imported should keep working as expected.

Assets we Love

Explore more from Categories

Featured Categories

Newly Updated

YARD - Yet Another Resource Database icon image
elliotfontaine
YARD - Yet Another Resource Database

YARD is an editor plugin for Godot to manage resources and query them at runtime, with a table view in the editor as the cherry on top.OVERVIEW--------YARD has two complementary aspects:A table-based resource editor. The YARD editor tab lets you create and manage registries: catalogues of resources grouped by class. Each registry provides a spreadsheet-like view of your resources and their properties. A lightweight runtime API. At runtime, a Registry is just a small .tres file holding UIDs and string IDs. It does not load the resources it references. You control when loading happens, and how.FEATURES-------- - Reference resources by stable, human-readable string IDs instead of file paths or UIDs lying around in some autoload - Restrict a registry to a specific class — only matching resources can be added - Sync a registry from a directory — entries are added and removed automatically as resource files appear or disappear - Bake a property index in the editor for zero-cost runtime queries by resource property values - Load entries individually, all at once (blocking), or asynchronously via threaded loading - No runtime overhead beyond what you explicitly requestINSTALLATION------------1. Copy the addons/yard folder into your project's addons/directory2. Enable the plugin in Project > Project Settings > PluginsUSAGE-----Creating a registry:Open the Registry tab in the editor, click File > New Registry, and configure: - Class restriction: only resources of this class will be accepted - Scan directory: the registry stays in sync with files in this folder - Indexed properties: property names to bake for runtime filteringLoading an entry:```var skeleton: Enemy = ENEMIES.load_entry(&"skeleton")```Loading all entries (blocking):```var all_enemies := ENEMIES.load_all_blocking()```Loading all entries (threaded):```var tracker := ENEMIES.load_all_threaded_request()```Querying the index:```var legendaries := WEAPONS.filter_by_value(&"rarity", Rarity.LEGENDARY)var high_level := WEAPONS.filter_by(&"level", func(v): return v >= 10)var results := WEAPONS.filter_by_values({ &"rarity": Rarity.LEGENDARY, &"type": &"sword",})```

Game Console icon image
Xanatos
Game Console

Addon to add a console to your game, this will allow you to run commands after opening the console.To add a command simply use Console.register_custom_command("reload", _reload, [], "Reload current scene")where reload is a function without parameters.If you want to parse parameter useConsole.register_custom_command("count_up", _count_up, ["(int) amount to count up"], "Increase the counter", "Command will increase a local counter", ["count_up 1", "count_up 3"])This adds a command with a single argument, a short and long description and some examples.You can also make arguments optional, to do so create them like that:var count_down_command = Command.new("count_down", _count_down, [CommandArgument.new(CommandArgument.Type.INT, "amount", "The amount to count down from the current counter", "1")], "Decrease the internal counter", "Command will decrease a local counter", ["count_down", "count_down 2", "count_down 5"])Console.register_command(count_down_command)or use the "Console.register_custom_strong_command()" method, which uses the "CommandArgument" instead of the packedstring array for arguments.Always make sure that your optional parameters are at the end of your parameter list, otherwise the command registration will fail. To unregister it run, this should be done if a node does leave the scene tree.Console.remove_command("reload")Other interessting methods## Change the console settings## There are more options Console.update_console_settings(func(settings: ConsoleSettings):## Set key to toggle consolesettings.open_console_key = KEY_F12## Pause game tree if console does open upsettings.pause_game_if_console_opened = true)## Hide consoleConsole.hide_console()## Show consoleConsole.show_console()## Disable console completely, can be used to remove it on release buildsConsole.disable() ## Enable a disabled consoleConsole.enable() # BREAKING_CHANGES:## Version 0.5.0 -> 0.6.0Version did update to Godot 4.6, older engine version might not work anymore. Godot 4.4 still seems to be fine.## Version 0.4.0 -> 0.5.0This version will add some breaking changes, if you create acommand instance you cannot use the packedstring array anymore. Insteadcreate a new "CommandArgument" providing the type as first parameter,the name as the second and if needed a description of the parameter aslast. See the example project or readme for more details

About Godot Asset Library

Godot Asset Library is a free and Open Source asset library for the Godot Engine maintained by the Godot Asset Library community on GitHub. Explore assets created by the Godot Engine community, and kickstart your development with quality assets from Godot Asset Library

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers