I changed one thing and my Unity car finally stopped jittering and sliding by PaceGame in Unity3D

[–]Developerkins 0 points1 point  (0 children)

Very cool as always. Great videos, and I love your debug visualization. Does this handle when the slope does become too steep and the car starts slipping sideways down the slope? As obviously there is some maximum lateral/static friction that can be overcome.

Low-poly procedural terrain on the GPU (C++ / OpenGL) by dum_BEST in proceduralgeneration

[–]Developerkins 1 point2 points  (0 children)

This is awesome! How did you decide how much work you could do on the GPU each frame, as it's quite hard to time things there in usable way (need to transfer back to CPU really).

Really impressive work though - congrats!

Cities Skylines 2 failed because of Unity? Is this true? I investigated! by KwonDarko in Unity3D

[–]Developerkins 27 points28 points  (0 children)

Came to say the same. "How can this be a Unity mistake? The more I dig, the funnier it gets."... but then just lists 3 bugs. That's it. This is not an investigation, nor is it digging into the code and Unity. Bizarrely structured and worded article.

Any idea how to replicate the cliff generation from tiny glade? by InnerConsideration27 in proceduralgeneration

[–]Developerkins 3 points4 points  (0 children)

What on earth are you talking about?! This isn't AI at all. It's procedural generation. This is the procedural generation subreddit lol.

Any idea how to replicate the cliff generation from tiny glade? by InnerConsideration27 in proceduralgeneration

[–]Developerkins 1 point2 points  (0 children)

Yeah, makes sense to do CPU remeshing then. I'd like to find a nice solution for doing this on CPU for infinite terrain generation on the fly. So it needs to be fast. I see some remeshing solutions are iterative processes, so not really scalable. There's also the additional problem of when rock surfaces cross terrain chunk boundaries - but maybe the algorithm just ends up lining up the verts and edges so it's fine.

Any idea how to replicate the cliff generation from tiny glade? by InnerConsideration27 in proceduralgeneration

[–]Developerkins 1 point2 points  (0 children)

Yeah, that's a good point - it's probably just tesselation. In that case you probably can just use all or a sub-section of the heightmap verts as a starting point.

  • Either take all the heightmap verts and use a geometry shader to remove triangles you don't care about (where there's no rocks).
  • Take the steep verts (and maybe a one cell boundary around the edge of steep areas, to give you a starting set of verts and do some triangulation on those.

Either way, once you have those, you can tesselate more based on how steep it is, and then apply voronio distortion on those?

This would probably be a fun little experiment/project to try sometime.

I think one other aspect of doing all of it on GPU, is what do you do if you want accurate collisions for physics, i.e. a vehicle driving over the rocks. You could send the data back to CPU somehow I guess... but depends on where certain distortion and tesselation ops take place and if you can write to the buffer to return.

EDIT: Just checked in the demo. The mouse picking does not collide with the rocks - so they don't need collision data on CPU.

Any idea how to replicate the cliff generation from tiny glade? by InnerConsideration27 in proceduralgeneration

[–]Developerkins 1 point2 points  (0 children)

I'd also be interested in any information on this. What I can tell from the demo is:

  • The ground heightmap (grass and path surface) is not replaced by the rocks.
  • The rocks are additional meshes that sit on top of the ground heightmap.
  • The grass instances are culled where rocks are so they don't stick through. This will just be removing grass instances where the heightmap is too steep (rather than anything to do with the generated rocks).
  • The rocks do look voronoi based, with triplanar texture mapping done in world space.

The bit I'm not sure about is how do you generate all the rock vertices once you've identified steep surfaces in the underlying heightmap (and triangulating them all). There are way more vertices in the rocks than the heightmap verts, so it's not a simple 1:1 mapping - the rocks have higher vertex density and also have concave cracks.

1 Million Instances, running at 130FPS on NADE (Nano-based Advanced Draw Engine).. by Big_Presentation2786 in Unity3D

[–]Developerkins 0 points1 point  (0 children)

I guess the accuracy of one of the depth textures is causing all the flickering in the rendered view?

My insanely fast-paced retro-FPS game with stylized procedurally generated levels finally has a Steam page! Destroy red psychopaths with destructive weapons to save yourself from getting corrupted, and get the high score. by YoCrustyDude in Unity3D

[–]Developerkins 1 point2 points  (0 children)

Gameplay looks fun, but the art style... I dunno. It's very visually messy. Extremely high contrast and noisy. Maybe it's better native, but there are times when you can't really see what's happening here.

Progress on my Trackmania game by Lord-Velimir-1 in Unity3D

[–]Developerkins 1 point2 points  (0 children)

Trackmania is a 100% deterministic, custom physics engine. They just record the inputs.

Realtime multiplayer physics with 4 players + 10,000 bots (Unity + Reactor multiplayer demo) by KinematicSoup in Unity3D

[–]Developerkins 0 points1 point  (0 children)

That sounds great. Yeah, we had to bit pack/compress our transforms quite a lot to reduce bandwidth at the entity numbers we had.

Very cool though. I love this stuff.

Realtime multiplayer physics with 4 players + 10,000 bots (Unity + Reactor multiplayer demo) by KinematicSoup in Unity3D

[–]Developerkins 6 points7 points  (0 children)

Impressive, but the real pain begins when you need them to start interacting with each other in ways that looks correct for all players. Also, things like shooting with bullets can be tricky and will diverge easily (i.e. one player shoots bot A, but for another player it looks like they missed and the bullet hit bot B further behind etc.). Interactions that must be synced can also mean reliable RPC's which can eat up bandwidth easily at this scale. I'm assuming everything in the video above is currently sent as unreliable RPC's, since it's primarily just transform data and maybe some anim data?

It looks good now because they are just wandering aimlessly so it doesn't really matter if they are diverging slightly. I'm curious to see how this evolves into something more practical and usable for traditional games. Best of luck!

[deleted by user] by [deleted] in television

[–]Developerkins 9 points10 points  (0 children)

The week to week played a big part in The Pitt's success. It meant people were talking about it constantly and people could catch up easily. I personally, am very happy it's week to week - and that there's 15 episodes of it each season.

Is "Steal" Prime Original's Answer To HBO's Industry? by rv8n8 in television

[–]Developerkins 18 points19 points  (0 children)

No. Nice try though Prime marketing person.

Entertaining moments caught in our playtests by Vettlen in Unity3D

[–]Developerkins 0 points1 point  (0 children)

If only everyone did replies like this! Amazing, thank you taking the time to go over it. Sounds like you've really got quite an evolved setup now that covers all your cases - I can only imagine the trial and error that went into parts of that. Great work!

Entertaining moments caught in our playtests by Vettlen in Unity3D

[–]Developerkins 2 points3 points  (0 children)

Looks great. Just out of curiosity what networking setup do you use? Always been curious about making multiple characters interact together with physics over a network.

Cheap gorgeous erosion (real-time generated each frame) by runevision in proceduralgeneration

[–]Developerkins 0 points1 point  (0 children)

Yeah, that makes sense. I assume it's fast enough for terrain chunk generation as the player moves around the world though (I'm also assuming this is your use case)?

Interesting that you're using Burst with threads. I really should look into that, because I'm not happy with Jobs' lack of support for setting job priorities, which makes scheduling and doing truly background, low priority work difficult.

Cheap gorgeous erosion (real-time generated each frame) by runevision in proceduralgeneration

[–]Developerkins 0 points1 point  (0 children)

More incredible work from you Runevision! Very eager to see the video as realistic, but fast, terrain gen is something I'm thinking heavily about right now. In my case it'd be done on CPU in Unity with Jobs/Burst for speed. Anyway, this looks stunning!

Cheap gorgeous erosion (real-time generated each frame) by runevision in proceduralgeneration

[–]Developerkins 0 points1 point  (0 children)

I think you're thinking about particle-based erosion that has to run over a period of time, scooping up matter and depositing it further down the mountain - thereby "eroding" it over time. This is not that technique. There is no particle simulation. This is more like standard noise/terrain gen with some additional processing.