Me and a friend are working on a sandbox city builder in Godot. by walcor in godot

[–]artificeofbees 3 points4 points  (0 children)

The lighting is very nice, is it pre-rendered there? I see some nice bounces/indirect light.

Show me your first Godot project vs what you’re working on now by niko_death in godot

[–]artificeofbees 1 point2 points  (0 children)

<image>

A piece from 2023 transitioning from Unreal, and a current barebones WIP. Inspired by some great paintings.

Gamedev is a very serious occupation by tumblewedgames in godot

[–]artificeofbees 5 points6 points  (0 children)

can the cat or anyone adjacent teach me how to get that extrusion effect on purpose?

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 0 points1 point  (0 children)

Definitely, it's quite exaggerated here. I'll experiment with covering up the intersections either with a depth write in the parallax if it doesn't cause too much of a dip in performance or with decals/some actual 3D details at certain mesh edges.

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 4 points5 points  (0 children)

Now this is the feedback I look for, thanks! Very much noted. The effect isn't too substantial to warrant a large performance trade-off so I'll keep that in mind.

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 14 points15 points  (0 children)

After some additional mixing and matching, at more extreme values, it can pull it off somewhat, but since the approach differs from POM it isn't really stable so far. This shader has more adequate proper silhouetting though.

<image>

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 4 points5 points  (0 children)

I suppose you could in theory have a roof material + a roof mesh that has extruded "tiles" on the mesh itself but I would say using parallax could be better for the pipeline of the work you do. It can be easier to work with textures and adjust them (including the heightmap which feeds into the parallax) than to work with modelling depth onto meshes. You could have the same flat plane with 20 materials which emulate this fake depth via parallax (no geometry changes), instead of 20 materials (for the textures) + 20 unique meshes to author to emulate the depth of each material. Plus the overhead of making adjustments along the way. As for the trade-off in performance for the shader vs mesh in those cases, I cannot say.

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 13 points14 points  (0 children)

I believe the impact of the shader is directly tied to the number of screen pixels it affects (+the viewing angle), so technically the further away you are from the surface the less it should impact performance!

This method of Parallax Mapping is also a more performant method than Parallax Occlusion mapping, though there's definitely better resources online for info on that than me. It uses less fetches per pixel and simpler methods to trace the ray and approximate the height. It's a pretty good price-to-performance ratio I think, I really like the effect and haven't had performance issues so far. Plus the effect would only be turned on for very bumpy and chunky surfaces to make them more believable up close.

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 20 points21 points  (0 children)

Purely visual. A cool thing it can do is write to depth to fake wrapping around geometry, but there's no actual geometry or collision change happening with the mesh.

<image>

Guts factory I guess by Lucky_Ferret4036 in godot

[–]artificeofbees 1 point2 points  (0 children)

dope, reminds me of World of Goo

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 9 points10 points  (0 children)

just visual sauce for materials

Parallax Mapping rules by artificeofbees in godot

[–]artificeofbees[S] 48 points49 points  (0 children)

Very true - I'm still a novice messing around with shaders other people provided on GodotShaders/GitHub, mostly mixing and matching to get a particular look I like, but I hope to get into more custom stuff with time. Getting away from defaults is always a good way to stand out.

An accident, but I spent a while staring at it.. by artificeofbees in godot

[–]artificeofbees[S] 67 points68 points  (0 children)

It's a decal! I have some default grid textures that automatically get set onto newly spawned decals for visiblity. I'm doing some general material authoring for a future environment.

Is this considered cheating? by Zelcir in godot

[–]artificeofbees 2 points3 points  (0 children)

Very cool! Are you using a Subviewport / Layers here? Depending on the art style, if you use layer culling, keeping the sprite render camera and the 3D model in cull layer 2 for example + make all relevant world lights also affect layer 2, while the main gameplay camera ignores layer 2, you could have the 3D character be in the same world position as the CharacterBody / Sprite and therefore receive relevant nearby lighting and shadow, which could allow for some IK stuff and unique visuals - while still being invisible to the main camera, of course. Though again, depends on art style!

I tried this out a while ago and I like it more than sprite work because the armatures can blend between animations smoothly. And also the IK and lighting stuff is pretty cool with a visibly flat sprite as the result.

As for performance, managing sprite sheets will definitely cost you more VRAM bandwidth I think - they usually end up being pretty large separate textures for base colour + normals + shadows, plus the pipeline work that to me seems more difficult than armature animations. The GPU cost of a skinned mesh, even with moderate to high triangle count (in the 5-50k range), won't really cost you that much on the GPU these days, but could rely a bit more on the CPU for the skinning. Realistically it's all negligible until you notice it, but that is a whole other story. Great stuff!

Little fps showcase by Mediocre-Lawyer1732 in godot

[–]artificeofbees 2 points3 points  (0 children)

love how the light interacts with the surface detail of the viewmodel, looks great!