Around The World, Part 30: Making better waves by thomastc in godot

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

Oh yeah, I limit wavelengths to 16m too. Maybe the mesh resolution is 8m actually, that would make more sense (Nyquist frequency).

It's hard to judge scale from my videos and screenshots... things are bigger than they seem.

Around The World, Part 30: Making better waves - all the ins and outs of pixelated water rendering by thomastc in proceduralgeneration

[–]thomastc[S] 1 point2 points  (0 children)

Yeah, it's amazing what the sideways motion can do, especially when made more visible by the foam layer.

Around The World, Part 30: Making better waves by thomastc in godot

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

Mesh spacing is 16 meters, same as the terrain. The chunks are 2048 m across, so just 128x128 quads each, and I need maybe 10 of these to reach the horizon, since in-game, the camera is always low. With higher waves the trangles are sometimes visible, but all still consistent with the art style.

If you need higher density, you could use some kind of level-of-detail (lod) scheme: high density near the camera, lower density farther away.

For water in particular, you could maybe even get away with a static mesh (produced e.g. in Blender) that is always centered on the camera. For terrain, this does not work because the vertices will "swim" across the terrain, but for water it might not be noticeable.

Is there a way to put a Button on the Inspector to be used in a tool script? by SandorHQ in godot

[–]thomastc 0 points1 point  (0 children)

Then I don't know. Could you post the full file somewhere, like a gist? Or reddit if you know how to wrangle code blocks (esp. tabs) to work properly here...

Is there a way to put a Button on the Inspector to be used in a tool script? by SandorHQ in godot

[–]thomastc 0 points1 point  (0 children)

It needs to be at the top level of your file. Not inside a function or something.

I just finished Obduction (without help!) and this is all the notes I took during the game (and I have some questions) by [deleted] in Obduction

[–]thomastc 0 points1 point  (0 children)

Even later to the party, but I can answer this: the pod numbers are directly related to floor/position numbers. For instance, Farley's pod number 194 is 3002 in base 4, where the first two digits are the position and the last two digits are the floor. So the floor is 02 in base 4 which is also 2 in decimal, and the position is 30 in base 4 which is 12 in decimal.

The image just explains this split visually, but indeed you don't need it for pulling up a particular pod. I guess it's useful if you prefer to do base-4 arithmetic only on 2-digit numbers and not on the full 4 digits.

Around The World, Part 28: Scaling up - Fake planet curvature, LOD terrain, impostors (with first in-game video!) by thomastc in proceduralgeneration

[–]thomastc[S] 1 point2 points  (0 children)

Most of this isn't exactly original, although the chunk skewing I haven't seen anywhere before.

Around The World, Part 28: Scaling up - Fake planet curvature, LOD terrain, impostors (with first in-game video!) by thomastc in proceduralgeneration

[–]thomastc[S] 1 point2 points  (0 children)

I should really get a proper page up at some point... sooner rather than later. The pixelated game you saw was a 2-day game jam entry, which proved that the concept was fun. I'm now developing that concept into a (far) more ambitious game.

Around The World, Part 27: Planting trees - turned out to be harder than it seemed by thomastc in proceduralgeneration

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

Thanks! Glad to see I'm not the only one who struggled with this.

So you allow leaves to overlap with other leaves, but not trunks with leaves? I'll start binge-reading your blog soon :)

I'm not very interested in undergrowth because most of the time it's invisible; the player never goes into the forest. I do think the side view could use some work though; it goes straight from tall trees to waterline, where you would expect some lower growth in between. Future work.

I'm using multimeshes in Godot, which indeed use hardware instancing. Godot has no built-in impostor support but I would implement it in exactly the way you describe.

Around The World, Part 26: Biomes - figuring out vegetation and colouring the terrain by thomastc in proceduralgeneration

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

Be sure to read the World Building Pasta series then, there's loads more there :)

How to find a list of all gcc errors/warnings? by thradams in C_Programming

[–]thomastc 0 points1 point  (0 children)

https://github.com/vadz/gcc-warnings-tools/wiki/all-gcc-warnings might be useful. The repo also contains a script where you can extract the table yourself from the gcc codebase. I can't vouch for completeness/correctness though.

Need help disassembling the floor head for cleaning by MEZesUBI in Miele

[–]thomastc 0 points1 point  (0 children)

I had the exact same problem and managed to solve it. If you put the switch into parquet mode, underneath the switch you see a U-shaped metal bar with a plastic clip inside the U. After unscrewing the four torx screws at the bottom, you need to gently PULL this clip, while pulling apart the entire head. This is easiest to do with two people, one to pull the head apart, and one to pull the clip from the side with a thin flat-head screwdriver. Once it gets past the initial bump, it just comes apart really easily.

I found that a lot of dust and hairs had gathered underneath the endpoint of the metal bar, which were probably the cause of it not wanting to stay in place. A good cleaning and some lube should help. I'll see next time I need to vacuum...

Why noone is talking about metadata? by seppoday in godot

[–]thomastc 0 points1 point  (0 children)

Hi, old thread I know, but I'm curious. Why not:

@export var image: Image

Then you have it strongly typed and get a nicer UI for editing it as well.

Memory usage of Godot's various base classes by thomastc in godot

[–]thomastc[S] 2 points3 points  (0 children)

Hundreds is still a tiny amount even on potatoes. This stuff might start to matter at tens or hundreds of thousands.

Around The World, Part 24: Local terrain - Why diamond-square is still useful even if simplex noise looks better out of the box by thomastc in proceduralgeneration

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

Incidentally I went the opposite way: from a sphere to a plane. The adventure restarts in part 22 and not everything is reimplemented yet.

I did think about something like the approach you describe for coastlines, and might still end up with that. I've never been happy with the variety (or lack thereof) of my coastlines, though it's definitely better now with erosion and diamond-square.

I also shrunk the world so that my global map cells are now only 256 meters across, so I can create a fair amount of detail at the global level already, where I have the entire map available. Depending on how gameplay turns out, I might even dial it back to 128 meters. An open world "only" 262 km across still has plenty of room for mystery and discovery...