@Dorian000 Wait for the next release (shouldn’t be long now) as I’ve improved a lot the organization, allowing for easy render replacement.
[/QUOTE]
Thanks Phyronnaz! Any estimates on next release? Great work on the plugin. Looking forward to the paid version too, I want to throw money at your for your good work.
man, take the time you need to perfect this the most you can, I will wait and purchase. I am just tired of buying stuff from MP that I need to fix later. I will save up for this for sure.
i’m waiting for full feature release. when do you release it? i’d love to pay for that. let me know if you have any roadmap. thanks a lot for your great works
I tried the directions you gave Dorian for rendering the landscape in cubes, but can’t seem to get the edges to not be clipped. After doing step 2 shouldn’t the mesh already be in cubes or do I need to do the normal step as well? (I wasn’t clear on which part of the code I should change) Screenshot attached of what I’m seeing. Thanks in advance!
Thats great man! Congratz! I didn’t have time yet to check any video, but I will support this and I hope it gets some attention from @Amanda.Bott putting some links at launcher and showing it during a stream.
looks nice!
I was wondering about the performance so I got the Free version for trying. sadly the Free version doesn’t come with any importers so I can’t make any direct comparison
is there anything I can do in this sense to compare and evaluate? I’m afraid manually sculpting a voxel terrain won’t serve as comparison with a landscape
reading through the thread it appears this is/was slower than a Landscape. any info on that?
btw I’m wondering if a fully ‘static’ voxel terrain is any faster than one where the shapes can be modified in-game
also can you provide some info on the Texture Arrays version? I know what they are in general but it’s unclear what kind of benefits we’d get from them - speculation goes that it would give a performance boost but as for how much it really remains as speculation
So far I’ve really liked the 3 hours i’ve spent with your plug in (free version). I read on your website that multiplayer runs smooth up to 15 players, my question is this: is that the most you could test on it or was 15 the point at which it started to run bad?
From the video, it looks like everyone was making massive edits at the same time, if the edits were smaller and more controlled (impact explosions, bullet holes, things of that nature) do you think that would increase the player count?
This should allow you to test the performance. If needed I can also package that generator into a plugin build, for instance if you’re not using C++.
While the impact on the game thread is minimal, it is quite CPU heavy in backgrounds thread. This is necessary due to the volumetric nature of the terrain: for instance, where an heightmap based terrain would have 10x10 chunks, the plugin needs 10x10x10 chunks for the same surface.
It might be with some caching optimizations, but I haven’t looked much into that yet, and the performance gain should be pretty low.
Doing this without texture arrays would limit us to 16 textures, and would be extremely slow as all of the samplers would have to be computed. Getting the texture arrays build is really easy, just need to download a 3.5GB zip, no compiling required.
Hi,
I didn’t notice anyway of doing this so I figured I’d ask here, what would you recommend as the best practice for implementing physical material settings per texture area e.g. for footstep sounds and surface frictions?
Thanks.
One way of doing it would be to check the voxel material under the player every frame, and set the sound based on that. I’m not sure for the physics, but there should be a way to achieve it using that.
To do it you could do something like that:
Let me know if this answers your question, or if you have other questions!
Thanks so much for this amazing utility! I had a couple questions:
Sorry if this has already been asked, but does the landscape foliage material node work with this system? If not, is there similar functionality that I can utilize, so that I could control things like grass spawning along the landscape based on slope, to match slope blending in the landscape material? Also, are there options for configurable “biomes” with separate materials, etc?
In a Voxel Graph (or in a C++ Voxel World Generator), you set the Voxel Material for every position in the world. A Voxel Material is composed of the following:
A and B are 2 materials indices, which are used in the UE material to select a color or a texture. The final material is Lerp(A, B, Alpha).
Voxel Actor is to choose the kind of Voxel Actors spawned at that position.
Grass vs Voxel Actors
I have 2 different foliage systems:
Grass: no collision, using HISM
Voxel Actors: spawned actors, triggered when floating
For example, in the following video, the grass is the cubes under the terrain, and the Voxel Actors are the cylinders:
Spawning rules
Grass and Voxel Actors are grouped in Grass Group and Voxel Actors Group. For each element of these groups, you can choose settings like max/min angle with the world up vector (not always global up vector, for a sphere world for instance).
For grass, this is based on the material indices. You associate one or multiple material indices to a grass group, and that grass group will be spawned on voxels with those indices, with the density adjusted by the Alpha.
For Voxel Actors, this is based on the Voxel Actor property of a voxel material. Like the grass, you set one or multiple Voxel Actor ID to each group, and those group will be spawned on the voxels with these IDs.
For now there aren’t any specific nodes for biomes, but I definitively want to add some in the future. In the meantime, you can use the other nodes to create your own biomes.
Okay so instead of having one master material with different sections controlling appearance/foliage density based on things like slope and height etc, you actually have options built into the voxel terrain editor to have whole materials applied based on slope/height, with foliage being assigned per material, if I’m understanding correctly? Really awesome if so, absolutely stellar system in place here.
One more follow up question here, and again I apologize if I missed this being answered, but how does it handle navigation? Would I be able to have an AI with a navmesh invoker write to a navmesh volume on the fly for bigger spaces, or is there something else that handles navigation with this system specifically?
Exactly. You can also change the materials are runtime, like here:
For now navigation works through UE system: I’m just sending the meshes to it. This can be an issue if your AI is on a chunk with a higher LOD for example, however I don’t think there’s an easy way to have efficient pathfinding for a big world. That would be a plugin on its own
The navigation is broken in the published releases, however if you DM me on discord I can send you a version where it’s fixed.