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

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

Advanced State Machine First Person Controller icon image
Jeheno
Advanced State Machine First Person Controller

All the informations are on the Github repository page !An advanced and complete state machine first person controller asset, made in Godot 4.-------------------------------------------------------------------------------------------This asset provides a simple, fully commented, finite state machine based controller, camera, as well as a properties HUD.A test map is provided to test the controller.The controller use a finite state machine, designed to be easely editable, allowing to easily add, remove and modify behaviours and actions.Each state has his own script, allowing to easly filter and manage the communication between each state.He is also very customizable, with a whole set of open variables for every state and for more general stuff. This is the same for the camera.The asset is 100% written in GDScript, and respect the GDScript convention.He works perfectly on Godot 4.5 and Godot 4.4, and should also works well on the others 4.x versions (4.3, 4.2, 4.1, 4.0), but you will have to remove the uid files.-------------------------------------------------------------------------------------------Features : - Finite state machine based controller - Smooth moving - Ability to move on slopes and hills - Walking - Crouching (continious and once pressed input) - Running (continious and once pressed input) - Jumping (multiple jump system) - Jump buffering - Coyote jump/time - Air control (easely customizable thanks to curves) - Bunny hopping (+ auto bunny hop) - Dashing (multiple dash system) - Sliding (on flat surfaces and on slopes) - Flying - Wallrunning - Walljumping - Camera FOV management - Camera tilt (forward and side tilt) - Camera bob - Camera zoom - Reticle - Properties HUD - Input action checker

EasyLeaderboards icon image
adpgames
EasyLeaderboards

EasyLeaderboards allows you to effortlessly create leaderboards, add scores to those leaderboards, has a built-in BaseLeaderboard node, and is completely free for as many leaderboards as you'd like!With the included functions, you can add, edit, or delete scores, get all of the scores in a leaderboard, create new leaderboards, delete leaderboards, and check if a leaderboard exists. With the custom node, you just add it to the scene and set scores when you receive them. The BaseLeaderboard node is customizable to have different themes, colors, headers, and max scores to display.There is a demo scene in the files, but here is how you do it yourself:To get started download the asset and enable it, then go to either adpgames.com/leaderboards or themaker6.pythonanywhere.com/leaderboards and create your first leaderboard, or run Leaderboard.create_leaderboard(nameOfLeaderboard) replacing "nameOfLeaderboard" with the name as a string. There is a optional parameter with this one: "direction". "direction" can be "Ascending" "Descending" or "NoChange" where ascending sorts the scores lowest to highest, but no sorting will be done for string values. Descending sorts the opposite of ascending. "NoChange" will not change the order, so it is whatever order you put the scores in.You might want to check if there is already a leaderboard with that name already, and you can do that by adding an if statement before creating a leaderboard that says, "if not await Leaderboard.leaderboard_exists(nameOfLeaderboard):", still replacing "nameOfLeaderboard" with the desired name of your leaderboard.Then, to tell the script that you want to connect with a leaderboard, call Leaderboard.set_leaderboard(DataOfLeaderboard) in your "_ready()" function and replace "DataOfLeaderboard" with either the id or name of your leaderboard.You're all set up! Now, whenever you want to add a new score, you can just call Leaderboard.add_score(name, score) replacing the values with what you need.Whenever you'd like to get scores from a leaderboard, make sure a leaderboard is set, and a function is connected to "Leaderboard.recieved_data". Then call Leaderboard.get_scores(), and in the function connected to the signal "recieved_data", set the scores value of the BaseLeaderboard node to the variable "data" that was sent in the signal.And that's it! This is only long to explain what those functions do. There are more in the addon as well.

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