For a GDScript version, check out https://github.com/ColormaticStudios/quality-godot-first-person-2Credit to LocoNeko for translating it to C#This asset is the result of https://github.com/ColormaticStudios/quality-godot-first-person-2/discussions/12It is highly customizable and comes with many features, QOL, and clean code.FEATURES:In-air momentumMotion smoothingFOV smoothingHead bobbingCrouchingSprinting2 crosshairs/reticles, one is animated (more to come?)Controller/GamePad support (enabled through code, see wiki)
A system for efficiently building 3D scenes in Godot.Please see the README in the GitHub repository for more information.The version in the Asset Library will likely lag behind the GitHub repository, I recommend installing SceneBuilder as a submodule, then manage updates with Git.
This is the Godot OpenXR Vendors plugin which contains:- platform dependent loaders for Android based XR devices- implementations of vender extensionsFor Godot 4.2 only.
This package provides flying/swimming navigation in free 3D space. It builds a Sparse Voxel Octree representing the solid/empty state, and then applies Greedy A* algorithm for path finding.Currently in development. Please see README.md for a more detailed list of features and limitations, as well as how to use.
RelativeRemoteTransform3D pushes its own Transform3D with a relative coordinate space to another Node3D derived node (called the remote node) in the scene.It can be set to update another Node's position, rotation and/or scale relative to another node.This is functionally similar to the built-in RemoteTransform3D. RemoteTransform3D transforms the remote relative to its parent node or the global origin.RelativeRemoteTransform3D allows you to specify any node to position the remote relative to. This is often useful for positioning the second camera if you are trying to create mirrors or portals.Three additional nodes are provided that allow breaking up RelativeRemoteTransform3D across your scene:RelativeTransform3DTransmitter, RelativeTransform3DReceiver, and Transform3DObserver.RelativeTransform3DTransmitter replaces RelativeRemoteTransform3D in the tree and transmits its relative transform to a RelativeTransform3DReceiver.RelativeTransform3DReceiver applies the relative transform received from RelativeTransform3DTransmitter to its parent node.Transform3DObserver has two purposes. If a Transform3DObserver is specified as the "Relative To" for either RelativeRemoteTransform3D or RelativeTransform3DTransmitter, then the relationship is reversed and the RelativeRemoteTransform3D/RelativeTransform3DTransmitter will use the Transform3D of the Transform3DObserver and use their own Transform3D as the "Relative To" transform.This is useful if you have a lot of RelativeRemoteTransform3D/RelativeTransform3DTransmitter tracking the same Node3D. Set Transform3DObserver as a child of the Node3D you want to track and give it a Unique Name.Set the "Relative To" to the Unique Name preceded by % and you can freely place RelativeRemoteTransform3D/RelativeTransform3DTransmitter as children of the relative nodes throughout the scene.The second use of Transform3DObserver is to allow the nodes to be informed of Transform3D changes of the "Relative To" and "Remote Relative To" nodes. Refer to Transform3DObserver nodes for these fields to receive updates to the relative nodes.Special thanks to Lauren Wrubleski (@lawruble13) for the maths required for this plugin.
Plugin that allows to automatically assign materials to selected mesh files and create materials from selected textures, with automatic shader parameter assign.
Easy and fast scene switchingShortcuts: Alt + MMB WHELL UP Alt + MMB WHELL DOWN
Adds fast Loop and Catmull-Clark Subdivision to Godot.There are three options for importing:- SubdivMeshInstance3D: Ability to change subdivision level easily for each instance- ImporterMesh: Bake at import- BakedSubdivMesh: Bake at runtime (everytime you open the scene)Blendshapes, skeletons and surface override materials are fully supported in all three options.You can use these in the custom Subdivision section in any scene importer.Supported Platforms:Linux, Windows, Android
This is the Godot 4 port of the Godot XR Tools library.This library contains a collection of handy components to quickly get started with XR projects.Documentation is provided here:https://godotvr.github.io/godot-xr-tools/
A minimal C# Terrain heightmap editor for Godot engine.Key Features :Sculpt - Sculpt your terrain with a heightmap- Increase the terrain- Decrease the terrain- Smooth the terrain- Flattern the terrain- Set height (paint to a specific height)- Set angle (paint from a starting point with a specific angle)Paint textures - Add colors to your terrain with the textures painting tool- Normal map and roughness texture are supportedFoliage - Add foliage to your terrain (ex. Grass)- The foliage follows the main camera with a given maximum distancePacked scenes - Scatter packed scenes to the terrain- Multiple objects can be scattered with one brush- Random Y rotation is supported- The packed scenes will always follow the terrain- Live adjustment of the position while the terrain is sculptingWater - Add water to your terrain- The water will make the terrain go lower for the painted area- The packed scenes and the foliage will also get lower with the water- Support for custom shaderWater flow - Paint the direction of the waterSnow - Add thick snow to your terrain- The texture of the snow is configurable so it's easy to make something like sand- Support for custom shaderHole - Paint hole in the terrainMultiple brushes- Custom brushes are also availablePie menuShortcuts- The plugin has been made so it's really easy to use. A lot of shortcuts are available.- LShift - Reverse the tool. Usually, this option will go from "Add" to "Remove". For the sculpting option, this does the "Smooth" option.- V - Show the PieMenu for the current tool- B - Show the PieMenu for the current brush- N - Show the PieMenu for the current tool option (ex. While painting the textures, the PieMenu will show textures)- G - Show a quick select for the brush size- H - Show a quick select for the brush strength- K - Toggle "Auto add zones"- X - Lock on X axis- Z - Lock on Z axis- Shortcuts can be Re-Assigned. To Access them, Goto 'Project->Tools->TerraBrush Key bindings' to access the keymap, and ability to re-assign keys.Settings - Some settings are available in the "ProjectSettings->TerraBrush" (ex. The decal color)LOD - The terrain is created using a custom clipmap mesh so less vertices are needed.MultiZones - The terrain support creates multiple zones (or chunks or regions) to improve performances on bigger terrain.Heightmap based blending - Textures can be blended with heightmaps/bumpmaps with custom intensity.
The scene to mesh converter allow you to convert a complex scene to a single mesh. Select the scene to convert in the scene tree and then either push the "Convert scene to mesh" button or use the "Convert scene to mesh" menu item from the Tools menu.Note: Help improve this plugin through reporting bugs and improvments to the Github repo.
A physical character body which extends RigidBody3D to provide a more realistic controllable character.Tested only on Godot 4.2.