[MENTION=3956]James Barnette[/MENTION] Thank you for the feedback. The AllowedModuleType constraint cannot be set on the global asset level, as they have to be set in the module level for more control. This is because you will use the same door asset in both the room and the corridor (with different attachment rules), hence it has to be set on an instance of the door actor, as opposed to the door asset itself
You are right that it does require manual work and I’ll minimise it. I’ll move the AllowedModuleTypes property to an asset called SnapDoorAttachmentRule. Then you assign this reference of this rule to the doors. This way you set the rules only once on the asset and easily change it in the future if needed
Those two doors will not attach. The point of using door assets is to make seamless attachment across different shaped endpoints (e.g. a rectangular shaped door should not attach to a curved tunnel)
Can we get a full list of engine features that wont work with the snap builder. as best I can tell The Anything using the painting systems doesn’t work. I’m not sure what the reason is for this but using the vegetation pain for scattering object on a surface doesn’t work as well as it seems that Vertex painting for blending textures on an object also gets lost when building the dungeon.
So it would be nice to know the full list of things that are not going to work so that we dont waste time doing only to have them thrown out when he dungeon builds.
What kind of lighting setup do you use with DA for run-time generation ? (full real-time lighting)
Concerted about real-time GI, whether it’s true real-time GI or fake real-time GI. If there is no real-time GI, and it’s fully run-time dungeon/level, the game will look like Doom 3, wouldn’t it ?
Well To My knowledge you can use baked lighting to to the fact that the geometry is being moved. I can only guess that this is also what is affecting the Vertex painting on geometry as well as the foliage painting. Which I have to see these results are strange as I know that if I use the paint tool and scatter some rocks and ruble on the ground then I move that plain in the editor when I release the object all of the object that were painted to it snap to the new position. So I think that there is a possibility for getting this to work.
As for the Vertex painting for blending of materials. I’m really not sure why this isn’t working. I cant think of any reason why this shouldn’t still work.
To all users of the Snap builder version 2.1.8-2.1.10 are any of you experiencing and inability to save you level after you have built the dungeon. even if you hit the destroy dungeon button you are unable to save and getting an error that says that you can save because items in you graph are in other levels. Which of course after destroying the dungeon they should not be.
If I bake lighting, then move geometry, I will get lighting needs to be build warning in red letters when running the game and the geometry will be black.
James, Foliage support is in the todo list. The snap builder is still a wip and I’ll create a roadmap for it soon.
As for the save issue, I worked on the test level you sent yesterday and sorted most of the issue but I need to properly do this by using world composition. For some reason, the UWorld::Spawn function still references the child actors in the external module map, and doesn’t allow saving.
Edit: Foliage, vertex paint, baked light and other engine features should work when I stream the level in using world composition, rather than cloning and spawning it myself (which doesn’t seem to clone it properly)
I can now spawn, modify and delete DA dungeons at will in my game during runtime (and it’s super fun^^).
However, when trying my game in client-server configuration it seems that things work only on the server.
I tried the very code you gave in a server function and the dungeon is spawned only on the server, it doesn’t appear on the clients.
I tried to have it replicate with Dungeon->SetReplicates(true) but with no success.
I’m afraid the replication has to be set on every UInstancedStaticMeshComponents (at least it’s what i do on my self made dungeons).
So is there a way to access all the instanced meshes in a ADungeon so i can make them replicate ?
If possible, i would also like to set them other properties like being clickable, etc.
As an example, is how i treat my own UInstancedStaticMeshComponent (this is from the constructor of my own dungeon class):
My intellisense doesn’t want to work with the DA plugin so i am kind of blind and it’s quite a pain to parse every DA header file when looking for something.
Is there a way to do similar things on the DA dungeons meshes ?
If not, is there some simpler way to replicate the dungeons ?