Pathways & Roads using RVTs [UE4/UE5]
Vložit
- čas přidán 25. 07. 2024
- Hey team! Today we're looking at how I've been handling roads and pathways in Prismatica by using RVTs (Runtime Virtual Textures) and Spline Components! I love this method because it allows for a lot of control over the look of each individual pathway, and they get printed directly to the Landscape so you don't have to worry about alignment. It can also be used with my Grass Occlusion method so it automatically gets rid of the grass very accurately.
Spline Blueprint: blueprintue.com/blueprint/aa_...
Pathway Material: blueprintue.com/blueprint/zof...
Circular Brick Material: blueprintue.com/blueprint/wgg...
------------------------------
Discord: / discord
CZcams: / prismaticadev
Twitch: / prismaticadev
Patreon: / prismaticadev
Twitter: / prismaticadev
------------------------------
Computer Specs:
Ryzen 3900x 12-core CPU
MSI Geforce RTX 2080 Super
64GB Corsair RAM
One of those fancy nvme m.2 SSD's
Programs of choice:
Unreal Engine 4 - (Game Dev)
Blender 2.8 - (Animation and Modelling)
OBS - (Video/screen capture)
Davinci Resolve - (Video editing)
Adobe Photoshop - (Graphics and Texturing)
Quixel Mixer - (Texturing)
ProTools 11 - (Compositions and mixing)
OldSchool Runescape - (Chillax time)
Filmed using:
Sony A7s2 body
Sony 24-70mm f/2.8 GM lens
Yonguo YN360 LED's for colour
Yongnuo YN760 chip LED w/ Godox softbox for key
My lovely cats names are Boycat, Girlcat and Ladycat :)
I don't know how you do it, but every video on this channel is exactly what I want to learn in Unreal. No other channel comes close with how precious these tips are!!
Amazing tutorial as always ! I love the teasing at the end to change actual landscape heights… and now i want to know more on this :D
Thank you for sharing! Hands down my favorite UE tutorial creator.
This has been a lifesaver! Trying to line up mesh paths with doors and bridges is damn near impossible, so this method has genuinely saved hours of my life!
I cannot thank you enough for this series. It has improved my environments beyond belief
Charlie! Amazing tutorial! You always showing a really useful and interesting tutorial! Thank you!
Wonderful and entertainment as always!
this channel is really great, i learned a lot of stuff even though im not a game dev
the quality of this is outstanding
Really cool stuff Charlie as always! I use really close methods to "bake" fields to landscape :o]] But you improve it as always, so I maybe little bit refactoring it. TY!
Great work!
Awesome stuff!
You can also use RVT's for Decal's to remove the Draw Call required for them, Interlakes on YT videos on how to do this and even how to dynamically add them randomly / procedurally
Great work
Charlie: Lettuce now look at the material!
Lettuce: I'm looking already.
You are brilliant.
i love u, my god. tnk u for exist!
Definitely interested in a Part 2 with that radial texture quantization thingymajig!
man is there anyone like you for unity sheesh
Legend!
Cool!
Heyhey! I have been able to set up the BP as well as the material but when I add the BP to my map there is no projection to the terrain.
Subscribed!
While watching this video I got an idea: instead of projecting the material from the spline road onto the virtual texture you could project the UVs and then use them in the landscape material to map the textures.
Hi Charlie,I have a question ,wouldn't it be loop if sample a rvt basecolor to an rvt color output?
Hello, do you have a tutorial on how to pack heightmap to blue chanel? For example take quixel normal map and somehow convert it?
Hey is there any way to create pseudo volume texture from a mesh
Hello! Could you recommend some resources where I could learn more details on optimizing RVT's and using RVT on very large maps? I'm about to use RVT for road splines, rock formations and more on a very large world partiotion map (well, maybe not very large from an industry AAA standard, but large) and don't know how to approach this... Should I use one RVT volume, multiple? how many? it's confusing and I want to make it right.
Awesome video, thanks a lot for sharing all these techniques. Is this still ok to use this technique with UE5 which is "deprecating" texture displacement?
This will work perfectly with UE5 :)
I'm thinking how i can apply this on substrate since that material has very different structure
any video on RVT settings for large scale landscape or ground? I have a lot of blurry textures
Any video for splines for RVT on non landscape geometry? Im not sure how to set it to draw in virtual texture like i would a geometry decal
hi, what's the magic behind printing the texture to the terrains virtual texture ?
I made a simple RVT output with a base color to test but nothings printing. Any help ?
Nvm, My problem was that my landscape was using its regular material instead of having the RVT sampler pluged in
Hi Charlie,
First, your work is awesome and your videos are really helpful ! Thank you !
Then, I used your technique to create the roads in my project. And I tried to improve it, especially for the tiling in X. I found a solution by assigning the Index of the MeshSplineComponent to a Custom Data and i used this Custom Data to offset the U coordinates in the Material. It works fine in the Editor, but when I'm in Game it breaks. Seems that the Custom Data are all set to 0 instead of their respective Index.
Any idea why ?
Hi, not sure this is the same issue you're talking about, but my problem was the texture was stretched in X function of the spacing of the spline points. I found a solution here: forums.unrealengine.com/t/evenly-distribute-spline-meshes-along-spline/422981 . Hope this helps.
This tutorial is so helpful. Will there be an updated tutorial for UE5?
Hey there! It should work perfectly fine without any changes in UE5 (I still use it myself)
Thats it im joining your discord.
Hey Charlie, really cool video !
I'm facing an issue trying replicate your material, my map is quite big and even with the highest settings in the RVT the rocks are blurry, is there a way to solve this ?
Is there a way to persistently print the road onto the RVT like you would, say, footsteps, so that you could delete the spline and keep the road?
Unfortunately not - RVT’s always require the actors to be there for when it re-draws, since you can add and REMOVE anything at any time (unlike a Render Target)
This is really amazing stuff! I have one issue though. The Spline material of the Blueprint is not projecting onto the landscape. It only projects when it is applied to the Landscape splines (Which is not something i want to do). Could anyone have any idea why this would be?
3:51 Click the "Add Spline Mesh Component" node in your spline blueprint and go down the the Virtual Texture section and add your landscape's virtual texture, and set draw in main pass to "Never."
It's only displayed for 1 second in the video but that's where I found it.
i made a small cameo in charlie video :D 5:25
I cant get the spline material to print into the rvt somehow. Weird thing is I can get it working when I use the built-in splines in the landscape toolkit but then I dont have the control of the start and the end of the spline. Any ideas what I could be missing?
EDIT: I found the problem! I forgot the option to make the plane mesh to write to RVT texture inside the spline blueprint.
Could you kindly explain your solution in detail? I just can't find my mistake
@@Turnroot You have to click on the "Add Component Spline Mesh" node, then you scroll down until you see "Virtual Texture". There you select your RVT.
@@AeptaX it's really helpful for me! this question confuse me a lot , thank you again!
@@AeptaX Didn't help for me either. And with the landscapespline it does....
Any tip on attachine a physic material to a road? I'm testing with the physic material output in the landscape material, try to attach it to the road mask but I can't manage to have any result (and the mask work to remove the grass)
Good question... The Landscape Phys Mat output has been super buggy in my experience. I would try to smack your road spline just above the landscape if possible and use it as a collider
Thanks, yeah that solution would work for the road but I have another nightmare to solve. My next step is to texture the interior of a spline using a similar technique but with geo scripting. And I know I will never be able to make it fit the landscape properly :P
@@PrismaticaDev
Hey :) how do you use that mask for removing the grass? - do you sample the RVT in the grass material or do you sample it in the landscape? - idk but i use rvt for my landscape and i think i can not sample a new RVT inside of it or atleast it is not working for me.
Hey hey! That's a good question. I use it in the grass material itself, but you could do it to actually exclude grass from being spawned in the first place (if you're able to sample multiple RVT's)
Just what i did! I just figured it out! :D
it only works to write and sample the same RVT in the landscape material when the sample is written to the landscape grass output. In my case the brush material stores this simply in the mask channel of the rvt, because the rest is used by the rendering of the landscape already (also funny the mask value has to be set to 0... 1 returns everything just as 1 not just the mask
)@@PrismaticaDev
Huge thanks for the awesome content. Just got a weird bug on this. Everything looks great in the viewport but once in playmode the material properties no longer works. It doesn't have the falloff. Any help!
Same problem here, either with UE 5.0.3 or 5.1 preview 1. I guess this is a UE bug? Good news though is falloff is working in standalone mode so will work in compiled game.
@@olaufr Ohh man thought it was just me. Glad to hear that. Thanks
Is this really a bug? I've been trying to find the solution for days.
incredible tutorial ! just one question, the spline seem's good but nothing is projecting on the landscape and i can't find the solution since i'm still learning the engin^^ But thanks for your amazing tutorials !
Hey Vincent, were you able to figure out why nothing is projected?
@@RazixStyle yep totally, just a question of trenslucenc priority, i was not using landscape on this project and it's because i had many meshes as same place that the road were projected below the first one
The Runescape music xD
Hey I have an issues that my custom primitiv data seems to get removed after I press play. I tested if it gets assigned in the splinemesh via giving the first another Texture and it worked so the Problem seems to be the custom primitiv data
Hey there! I think it's an issue with RVT's interaction with custom data. I've noticed that some quality levels of the RVT work with the fade out, but some of them don't, eg. when zoomed way in or way out. Not sure how to find a fix, but I'll let you know if anything pops up.
Headsup, the spline Blueprint that was posted in the description has some typos. Particularly the values and indexes of the custom data at the end don't match the video. Follow what's in the video
Hey! Having some trouble with my landscape material, always gets all black when its writing to and reading from RVT. Anyone had the same problem?
@@rabenfreund5323 double check that the RVT box is covering the whole landscape, particularly the Z direction. Also make sure the landscape is assigned to draw to the RVT’s :)
How did you taper of the end? When I do it the taper is along the entire mesh. I see that yours only taper to the first node. Do I utilize an if statement and multiply with a scalar if true?
Solved it! was reading the book of shaders. I raised the y value of the linear gradient to a power of 5.
Dude!
Bruh!
the construction script at 3:14 has a bunch of errors and warnings when I pasted it inside the blueprint. Do u know how to fix this?
Hey hey - you might need to add the Spline Component and replace the references (you can see it top left of the screen)
Hello, really cool tuto thanks ! I have a small question about MF_UnpackNormal. When copying the BP code it is not taken into account. Can you tell me what is in this MF please. Best
Hello! I forgot to remove it from the paste - it’s a function that I use because my texture are formatted in a particular way. You can delete it as it isn’t needed :)
@@PrismaticaDev ok top. Then i connect "RGBNormal Texture directly" in "FlattenNormal" ? Also, i can't put my material in "RoadMaterial variable" in BP Spline, it tells me in red that it is not possible ! I work with UE 5.1.1
I have to remake all variables
Integer = whole number
Float = Number with decimal
The more you know🌠
can you make video about character?animation inplementation
Already ahead of you :) check out my “advanced animation application” playlist
Charlie like runescape a little too much
Imagine sacrificing camera dump offset for RVTs and stupid roads
SMH
You should record in 16:9 it would be easier to follow and save time while editing...
It's all set up in OBS so there isn't much editing. If you check out Charlie's streams on twitch you will see what I mean :)
@@t3hpwninat0r Still it is a lot of wasted space on the screen and it is hard to see. Most people have a 16:9 or 10 nowadays and don't need to see his face or the rest of the bottom part
@@jonathanxdoe i have a 21:9
@@t3hpwninat0r I NOTICED...
This is a very smart use of the RTV, thanks a lot! I will be taking a look at this later, and the second part too! Thanks a lot for all the tutorials :)