355 Commits

Author SHA1 Message Date
Hugo Locurcio
db745e5e59 Add SMAA option to the 3D antialiasing and graphics settings demos (#1278)
- Rename various labels for readability.
- Use infinity symbol when FPS limit is set to 0.
- Use lossless compression for ship textures since they are low-resolution,
  and applied to a large object (making VRAM compression look bad).
2025-11-26 10:37:17 -08:00
Hugo Locurcio
ecbb2ee713 Use skybox in Platformer 3D demo to improve sky quality (#1282)
- Restore support for multiple aspect ratios which was inadvertently
  removed in a previous PR.
- Fix corner fix preview incorrectly using VRAM compression (it's
  low-resolution, and only displayed in the editor anyway).
2025-11-26 08:26:46 -08:00
Dmitry
bf544aefd9 Improve user experience: Add movement on the Y-axis, Show FPS. List options backwards (#1283)
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2025-11-26 08:18:40 -08:00
Hugo Locurcio
51fadd795c Link C# version in Squash the Creeps demo README (#1274)
- Also add a link the other way around (from the C# version
  to the GDScript version) to match Dodge the Creeps.
- Use GitHub admonition syntax.
2025-11-06 17:31:21 +01:00
Aaron Franke
6a0325b0b8 Fix URLs and remove --base from Lychee CI workflow 2025-11-03 22:34:09 -08:00
Hugo Locurcio
6adcbc912e Fix animations not looping and player materials in 3D Platformer demo (#1266)
- Use Forward+ renderer as intended
  (the project was accidentally changed to Mobile in a recent commit).
2025-10-20 21:27:25 -07:00
Aaron Franke
520b4a7870 Improve style in many demos (#1263) 2025-10-11 05:03:59 -07:00
A Thousand Ships
0343cedd48 General proofreading (#1262)
* General proofreading for grammar and spelling
* General formatting
* Addition of appropriate literals where appropriate, i.e. `&"foo"` for `StringName` cases and `^"foo/bar"` for `NodePath` cases
2025-10-11 01:39:59 -07:00
Aaron Franke
14fcc0e133 Update all demo projects for Godot 4.5 and use path-deterministic UIDs (#1258) 2025-10-03 16:22:39 -07:00
Mikael Hermansson
d7b6f86b0b Switch back to Jolt Physics in Voxel demo (#1257) 2025-10-02 14:35:34 -07:00
Aaron Franke
94d3d40d70 Make Voxel demo player responsive without using unrealistic gravity (#1253) 2025-10-02 11:00:01 -07:00
Shahriar Labib
84ac7b40a6 Add touch screen support for 3d/platformer (#1128)
Update touch_screen_ui.gd
2025-10-02 10:47:00 -07:00
Hugo Locurcio
af2b9b1f30 Add a 3D sky shaders demo (#809)
This uses https://github.com/Rytelier/godot-sky-and-volumetric-clouds
as a base, with several changes made:

- Spheres are now used to represent radiance map reflections of varying
  roughness and metallic values.
- A day/night cycle is now featured.
- Mipmaps are enabled on the weather texture as an optimization.
- The default radiance map settings are more conservative to account
  for the real-time sky shader.
  - This makes reflections lower quality, but it's not too noticeable
    in most real world scenes (especially if using GI techniques for reflections).
- Debanding is now applied in the project settings, rather than on the sky shader.
  This is significantly faster (over 0.1 ms saved on a RX 6900 XT in 3840×2160).
  It also has the benefit of working on materials, which can exhibit banding
  if not textured.
  - The sky shader has debanding commented out in case it's needed.
    This debanding also applies to the lower half of the sky as well in this case,
    as it was required to get rid of noticeable banding on the lower half.
- Cloud coverage and density uniform hints now allow values as low as 0.001.

Co-authored-by: Rytelier <45795134+Rytelier@users.noreply.github.com>
Co-authored-by: Clay John <claynjohn@gmail.com>
2025-10-02 10:44:01 -07:00
Hugo Locurcio
6424e02ebf Add fallbacks and mention non-working features when using Compatibility or the Web platform (#1132)
- Make 3D lights with shadows darker when using Compatibility to better
  match the appearance of Forward+/Mobile, due to the use of sRGB blending
  for those lights.
- Silence some warnings when running projects with the Compatibility
  rendering method, such as the one about 2D MSAA not being supported.
- Rebake lightmaps in Global Illumination to improve quality and reduce
  light leaking with improvements from 4.3.
  - Increase probe density for dynamic objects, and mark the moving box
    as a dynamic object for GI purposes.

This is done to improve the experience with the web-based demos,
which always run with the Compatibility rendering method.
2025-10-02 10:31:42 -07:00
Hugo Locurcio
a5bce2f144 Fix bright streaks in tunnel in Platformer 3D demo (#1254)
This adjusts reflection probes following the blend distance changes
in 4.4.
2025-10-02 10:15:15 -07:00
Hugo Locurcio
a0f59648f2 GitHub Actions: Check URLs using lychee (#1169)
This makes it possible to be aware of dead links and replace
them with other resources (such as archived versions) as
soon as possible.
2025-10-02 00:33:27 -07:00
Hugo Locurcio
57daa67c23 Fix look_at_from_position() usage in Squash the Creeps (3D) (#1165)
The mob's orientation was previously shifted according to the player's
height, which could lead to collision and movement issues that were
difficult to diagnose.
2025-10-02 00:14:08 -07:00
Hugo Locurcio
05aeb11de9 Add a 3D visibility ranges (HLOD) demo (#860) 2025-10-01 21:47:36 -07:00
Hugo Locurcio
a5f9289d13 Fix tickrate-dependent physics in Voxel demo (#1224)
Fix mouse sensitivity being dependent on window size by using `InputEventMouseMotion.screen_relative`.
2025-10-01 19:44:48 -07:00
Hugo Locurcio
5f4a9e409f Use InputEventMouseMotion.screen_relative where relevant in all demos (#1232)
This provides mouse sensitivity that is independent of the viewport
size, without needing to query for project settings.

This also inverts the mouse motion direction in the 3D navigation demo
to better match expectations, and increases mouse sensitivity in the
Window Management demo to be closer to other demos.
2025-10-01 18:54:19 -07:00
Hugo Locurcio
dc4abff7d0 Use GodotPhysics3D in Voxel demo to work around performance issue (#1252)
This avoids stuttering during world generation due to mutating
compound shapes being slow in Jolt Physics.

This is especially noticeable in the Flat Grass world due to
the higher number of voxels being generated.
2025-10-01 16:01:17 -07:00
Hugo Locurcio
a64cebdf7a Fix physics joint warning in Truck Town when using tow truck (#1251)
Following the switch to Jolt Physics, 3 warnings were printed every
time you selected the tow truck in Truck Town, as custom joint bias is not supported.

This reverts 3 of the joints to use the default bias, which appears to
have no negative impact on behavior on either Jolt Physics or GodotPhysics3D.
2025-10-01 11:02:59 -07:00
Hugo Locurcio
efb56dcee4 Add a 3D ragdoll physics demo (#1234) 2025-09-30 13:05:04 -07:00
Hugo Locurcio
0540894062 Add a 3D soft body physics demo (#1228) 2025-09-30 11:16:47 -07:00
lawnjelly
c70741bac0 Add 3D physics interpolation demo
Demonstrate first person shooter and third person shooter cameras.
2025-09-30 18:14:22 +02:00
Hugo Locurcio
84eabb3cf7 Add .clang-format and use it to format shader files (#1249) 2025-09-22 16:15:54 +02:00
Christen Lofland
bf4d1038d6 Minor spelling fixes in strings, comments and non-code files. (#1236)
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2025-08-04 17:19:57 -07:00
smix8
9acb5528b6 Update NavigationChunk demos (#1221)
Updates NavigationChunk demos for `NavigationMeshSourceGeometryData2D.get_bounds()`
function and new NavigationAgent no post-processing option.
2025-06-25 19:21:12 +02:00
Hugo Locurcio
dc3670e25a Add a 3D tonemapping and color correction demo (#857)
This showcases various tonemapping operators and their interaction
with several color correction textures (1D and 3D).

A script generating neutral 3D LUT textures is also included.

Co-authored-by: Allen Pestaluky <allenpestaluky@gmail.com>
2025-05-30 16:08:51 +02:00
Hugo Locurcio
2d64c95990 Update 3D Sprites screenshot to match the recent bugfix 2025-04-28 16:05:47 +02:00
Tianle
9456158841 Fix the bug of shader effect (#1198)
The normal was not calculated correctly

Remove extra parenthesis
2025-04-24 10:06:53 -07:00
Tianle
90f309174d Add Sprite3D and AnimatedSprite3D demo (#1191) 2025-04-24 17:45:14 +02:00
Hugo Locurcio
a531235db3 Use Jolt Physics in all 3D demos that use physics, improve physics tests demos (#1195)
- Add options for physics ticks per second, time scale, max physics steps per frame
  and physics interpolation to the 2D and 3D physics tests demos.
  - Physics ticks per second are always multiplied by time scale so that
    time scale does not affect the physics simulation quality.
- Enable 4× MSAA for better debug shape display. Remove meshes/lights as
  the debug collision fill make these unnecessary.
  - Switch to the Mobile rendering method in the 2D physics tests demo
    to allow for 2D MSAA, as it's not implemented in Compatibility yet.
- Improve collision shapes color in the 2D and 3D physics tests demos
  for better visibility. Each PhysicsBody type now has its own collision
  shape color.
2025-04-21 21:59:31 +02:00
Hugo Locurcio
819d201cc4 Enable physics interpolation in all 3D demos (#1074)
This makes use of the new built-in 3D physics interpolation
added in Godot 4.4.
2025-04-15 16:54:41 +02:00
Hugo Locurcio
a88ca219b8 Add block placement preview to Voxel demo, improve debug display (#1190)
- Allow placing/breaking blocks when further away (up to 5 blocks instead of 4).
- Add a background to the debug display to improve readability on bright backgrounds.
- Simplify coordinate display using the `%v` placeholder available in 4.3 onwards.
2025-04-15 16:53:12 +02:00
Hugo Locurcio
c05d05009b Improve flat terrain generation in the Voxel demo (#1189)
This adds 2 layers of dirt below the grass layer and a layer of indestructible
bedrock below it so you can't fall off the world.
2025-04-15 15:03:12 +02:00
Mikael Hermansson
9db52662cb Change physics joint tests to freeze bodies as kinematic in the Physics tests demos (#1177) 2025-04-14 18:58:55 +02:00
Hugo Locurcio
90617ba1e8 Fix camera colliding with the player in 3D platformer demo (#1187)
This was most common at low physics tick rates like 20 TPS.

This also fixes an issue with the RigidBody character demo having
movement speed depending on the physics tick rate.
2025-04-14 17:05:50 +02:00
Aaron Franke
f7a1433739 Fix pick block in Voxel demo 2025-04-13 04:57:12 -07:00
Aaron Franke
d169ec17e2 Fix block face checks and explicitly define normals in voxel demo (#1182) 2025-04-02 08:41:10 -07:00
Hugo Locurcio
4d49bbd1b8 Update demos for Godot 4.4
- Resave all files with Godot 4.4 to make use of script/shader UIDs.
- Use AgX tonemapping in all demos that used a tonemapper other than Linear.
2025-03-21 02:00:41 +01:00
Jorrit Rouwe
81249b3f4a Increase Jolt Physics limit settings so performance tests run without errors (#1146) 2024-12-13 16:39:29 +01:00
Hugo Locurcio
15bcb941de Add moods (times of day) to Truck Town demo
Four moods are available: sunrise, day, sunset, night. Sunset and night
also feature artificial point lights placed in the town scene.

The mood can be set on the main menu before playing. It can also be cycled
during gameplay by pressing M or D-Pad Down.
2024-11-25 18:35:05 +01:00
Aaron Franke
5d9542113a Improve Truck Town model, fix issues, use OMI glTF Physics (#1110) 2024-11-25 06:56:02 -08:00
Danil Alexeev
c492e5fd73 Update some GDScript files for Godot 4.3 (#1129) 2024-11-04 12:00:59 +01:00
Montandalar
fdae025495 Add full license information for Voxel demo textures (#1113) 2024-09-15 15:04:34 +02:00
Ryhon
8ab921d5b4 Add FSR 2.2, exclusive fullscreen and ultra SSAO/SSIL to 3D Graphics Settings demo 2024-08-31 03:21:22 +02:00
shahriarlabib000
723331f814 updated README and Screenshots (#1111) 2024-08-28 18:09:22 -07:00
Aaron Franke
5646c6a7a8 Open and save 3D demos in Godot 4.3 stable (#1109) 2024-08-27 13:40:06 -07:00
Hugo Locurcio
582229e17c Improve Material Testers demo project (#1068)
- Add reflection probes for each test sphere, which can be toggled using
  a new dropdown with 3 options (no reflection probe, reflection only,
  reflection + ambient). The cull and reflection masks are configured
  on each reflection probe so that spheres don't self-reflect, but other
  spheres still appear in each sphere's reflections. Probe extents are made
  very large to prevent any visible fading, and the test beds don't
  receive the reflection probe's ambient or reflection.
- Improve ice material visuals by giving it some opacity.
- Use lossless compression on all textures, as their relatively low
  resolution and count by today's standards makes them not use much VRAM
  anyway.
2024-08-27 05:32:12 -07:00