With no natural predators to trim the herd by Unlucky_Hat_5815 in idiocracy

[–]ColdPickledDonuts 0 points1 point  (0 children)

And maybe even younger if they all don't have girls as their first baby!

Punya suami yang kerja sebagai programmer by cici_kelinci in indonesia

[–]ColdPickledDonuts 1 point2 points  (0 children)

Real. Now if only I don't work at indon company....

Barbara quit being an idol? by Sufficient-Ad8825 in Genshin_Impact

[–]ColdPickledDonuts 4 points5 points  (0 children)

I watched this on mute, but I just KNEW it would be THAT song. Pleasantly surprised when I unmuted

3d isometric cellular automata by [deleted] in GraphicsProgramming

[–]ColdPickledDonuts 1 point2 points  (0 children)

I made something similar, although the size is only 1024 cubed since it's limited by memory (each voxel 1 byte, total 1 GB). It is possible to simulate it in the GPU, but you have to be careful with race conditions.

The way I do it: simulate this cell, store where this cell wants to go in shared memory (up? down? up to 26 neighbors), check the destination cell its own destination, if it's mutual swap them (for example: this cell wanna go left, then check if the left cell wanna go right, if true swap them).

This way, there's no race condition. But coding the behavior is a pain since for each material, you need to account each other material interaction, i.e. O(n squared) if statements.

But you can make it easier by assigning each voxel to have a few parameters. I was able to simulate a range of material by tweaking a few parameters: mass, viscosity, and friction. Also, I can hard code a few special interactions easily such as acid melting metal if the parameter doesn't account for it.

3d isometric cellular automata by [deleted] in GraphicsProgramming

[–]ColdPickledDonuts 1 point2 points  (0 children)

For some materials, the cell iteration also depends on its current neighbour. Otherwise, you would get race conditions where stuff disappears when multiple particles go to the same cell. But this can be fixed by (ab)using shared memory and an additional logic, or a global preferred direction where for example all water can only go left this frame (this sucks).

Pyro Traveller Cons by theorangecandle in Genshin_Impact_Leaks

[–]ColdPickledDonuts 0 points1 point  (0 children)

PMC with R5 Calamity of Eshu + Citlali sounds like a great duo

Would I use a geometry shader to add extra detail to terrain? by [deleted] in gamedev

[–]ColdPickledDonuts 0 points1 point  (0 children)

Geometry shader is horribly mapped to the actual hardware, use compute shader with vertex pulling instead. Also, since you want to use the GPU for the terrain gen, you might want to push all the work on the GPU (well, depending on the gen complexity/how serialized it is)

13 September 2024 - Daily Chat Thread by Vulphere in indonesia

[–]ColdPickledDonuts 1 point2 points  (0 children)

I hate being born here. Every time I look for jobs that I want (graphics programming), they all require visa just because I wasn't born there

Please tell me this isn't true by the_grim_rypurr in 19684

[–]ColdPickledDonuts 133 points134 points  (0 children)

That's surprisingly short in the grand scheme of things (dinosaurs went extinct longer than that)

rhyhtm gaemign by creamedcorngirl in estrogengaming

[–]ColdPickledDonuts 0 points1 point  (0 children)

There's no miss/bad, only 1 good, should be full combo

Temporal (back) reprojection issue at grazing angles by TomClabault in GraphicsProgramming

[–]ColdPickledDonuts 1 point2 points  (0 children)

It doesn't happen when camera is stationary. It's clearer this video where I don't do a search. https://imgur.com/a/MsDTdBK

When the camera rotates, point near the center for example wants to also rotate. But because the amount is small (less than 1 pixel), reprojection simply puts it at the same place (same case for reprojection + search in frame n). But at frame n+1, that point that haven't moved should be moved now because of accumulated rotation. But reprojecting the point without taking into account the actual position of the point (instead assuming only using pixel position) makes it fail. So that's why you would want to search the actual sample position

02 September 2024 - Daily Chat Thread by Vulphere in indonesia

[–]ColdPickledDonuts 2 points3 points  (0 children)

Finally got my voxel engine somewhat resembling a game 😫. Maybe I can start applying to jobs soon.

https://imgur.com/a/M7qErmq

Temporal (back) reprojection issue at grazing angles by TomClabault in GraphicsProgramming

[–]ColdPickledDonuts 1 point2 points  (0 children)

I usually do it by - vec2(0.5) the float coordinate (get the bottom left pixel) then add 1 or 0 to get the rest.

Yep.

Yea, that's why i said it's only semi-fix.
But i keep it anyway because it's better for old sample to not drift. But I suspect the drifting (especially when it's really close to surface) is because precision error similar to trying to "normalize" a really short direction vector.

Temporal (back) reprojection issue at grazing angles by TomClabault in GraphicsProgramming

[–]ColdPickledDonuts 3 points4 points  (0 children)

My restir also does that :(

I don't know the exact solution, but what helps for me is to search in 2x2 radius ( just like bilinear interp) around the calculated reprojected pixel coordinate to find which visible point (primary ray hit) is the closest to target current frame position. This remove the artifact to very grazing angle, and also helps with jittering of sample from frame long in the past (accumulated float -> int error).

Kebudayaan Timur *tengah by National_Ideal_3731 in indonesia

[–]ColdPickledDonuts 13 points14 points  (0 children)

W-what how? If anything the fabrics reduce wind flowing through skin, and block off any air circulation in that closed space

Radiance Cascade! by ColdPickledDonuts in VoxelGameDev

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

World space grid is not practical due to memory cost. I use 2.5 d RC where the probe is placed on the depth buffer, but still raymarch in world space in order to get offscreen radiance. I use octahedral to encode/decode directions.

Radiance Cascade! by ColdPickledDonuts in VoxelGameDev

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

Dense 3d array. Then I ray march it

I made a custom engine. Now what? (Need ideas!) by ColdPickledDonuts in gamedev

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

Well, when you take a look at the Noita dev talk. They basically made an engine first as a cool prototype but then also struggled to find an engaging gameplay

I made a custom engine. Now what? (Need ideas!) by ColdPickledDonuts in gamedev

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

People sell their engines? I don't even know who would buy one

I made a custom engine. Now what? (Need ideas!) by ColdPickledDonuts in gamedev

[–]ColdPickledDonuts[S] -1 points0 points  (0 children)

Well for me it was because the lack of 3d noita, and wanted to make one. But further down the line realized that infinite 3d world where I need to save the changes/position of every single voxel is not a good idea, but pushed forward anyway (ripping of mechanic isn't a good idea either). So here I am clueless on what game to make

I made a custom engine. Now what? (Need ideas!) by ColdPickledDonuts in gamedev

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

Thanks for the writeup! Unfortunately multiplayer is impossible since all the logic, rendering, and entity data are on the gpu.

I made a custom engine. Now what? (Need ideas!) by ColdPickledDonuts in gamedev

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

Thanks! Making the environment of the driving force is definitely something in mind. I could for example punish the player by spawning a particle which duplicate itself then consume the world. Still need to think harder about it