Тёмный

Outline Stylized Material - part 1.5 [UE5, valid for UE4] 

Visual Tech Art
Подписаться 20 тыс.
Просмотров 23 тыс.
50% 1

Опубликовано:

 

16 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 91   
@VisualTechArt
@VisualTechArt Год назад
Just realized there's a mistake in the code in this video! (The code you download from Gumroad is fine though) I forgot to apply the SHAPE_RATIO to the ellipse, so the final code you see at minute 5:15 should have this expression (first line inside the for loop): float2 MarkerPoint = float2(dot(RotationVector, float2(x,y)) * SHAPE_RATIO, dot(RotationVector, float2(y, -x))); Sorry for the inconvenience!
@timboslice5351
@timboslice5351 Год назад
This is so amazing! Would it be possible to create a Moebius kind of Stylized Material?
@activemotionpictures
@activemotionpictures 4 месяца назад
was this corrected in the €15 on your Gumroad? Because I assume that's the version we see in this last part of this 1.5 video. Why didn't you use "part 2" directly?
@activemotionpictures
@activemotionpictures 7 месяцев назад
This is so cool. Parametric indeed. Great video!
@RwanLink
@RwanLink 3 месяца назад
How would you make the outline wiggle as if it was hand drawn each frame?
@VisualTechArt
@VisualTechArt 3 месяца назад
With some UV offset probably :)
@RwanLink
@RwanLink 3 месяца назад
@@VisualTechArt I don't know if you plan to make another part on outlines but that would be great to see how you would do that :)
@ghislaingirardot
@ghislaingirardot Год назад
Very well explained, nice!
@regstar212
@regstar212 10 месяцев назад
Very interesting approach to outlines, I love it! I have an odd problem, though. It all works fine until I open my post process material instance, where it irreversibly thickens the lines and makes it all appear odd. Any idea how I can fix this? Does the custom node not like whenever the instance material is clicked on?
@VisualTechArt
@VisualTechArt 10 месяцев назад
I actually never tried that, no idea of what's going on
@pullfocuscreative
@pullfocuscreative 4 месяца назад
Realise this is an old video now but I have a question regarding scene depth. Is it possible to have the outlines reduce in thickness/complexity with distance? as it stands meshes in the distance look really crowded with detail and it is a bit distracting. Thanks so Much for the awesome explanation of the shader principles though!
@VisualTechArt
@VisualTechArt 4 месяца назад
Hey! Yes it is possible in several ways :) You can use depth data to fade out the outlines at distance, for example. Or you can modify the node to accept a dynamic kernel size that becomes smaller at distance, and so on :)
@pullfocuscreative
@pullfocuscreative 4 месяца назад
@@VisualTechArt thanks so much for the reply! I don’t expect you to have an answer lined up but do you know of any resources that could explain how to do the depth fade or dynamic kernel effect? No worries if not this was already super helpful
@VisualTechArt
@VisualTechArt 4 месяца назад
@@pullfocuscreative You may try asking in my Discord Server about that :)
@cardrave
@cardrave Год назад
Are the shadows in this video’s example just coming from input0 using all white materials for the models? Awesome vid by the way. Extremely good breakdown of an impressive effect. Thank you 🙏
@VisualTechArt
@VisualTechArt Год назад
Not quite :) I've isolated the lighting brightness and applied some quantisation on it
@neiliakini6349
@neiliakini6349 Год назад
@@VisualTechArt The effect looks so amazing with the shadows in your preview, could you detail a bit more how you got that result ? I am not sure what you mean by isolating the lighting brightness and adding some quantisation to it, any help would be greatly appreciated ! :))
@DanMiller.
@DanMiller. 10 месяцев назад
Thank you so much for this tutorial! This material looks so damn good. Is there any way to exclude certain meshes from having an outline? I tried custom stencils and an if statement to render some meshes without applying this effect. But the outline still appears when meshes with and without one overlap each other.
@VisualTechArt
@VisualTechArt 10 месяцев назад
I would use the custom stencil too, probably you need to run a filter on that to expand the area that cancel the outlines though, as some of them lie outside of the mesh :)
@anindyaghosh507
@anindyaghosh507 Год назад
Hi ! Great explanation there! Thanks for your effort. I have a query though..... Is it possible to apply this procedure in water/fluid materials available in Unreal engine? Like... on ocean landscapes with the outline works visible on waves? Is the same procedure suggested or any other technique you prefer? Thanks in Advance ! And thanks again for the laborious tutorials. They are really helpful!
@VisualTechArt
@VisualTechArt Год назад
Well you would need the equivalent of depth and normal for the translucent pass :) or you may come to something else to apply the filter on, you need to get creative:D
@kalyxee
@kalyxee 8 месяцев назад
Hi! This was very useful, I always wanted to try coding in Unreal! I have a question though, when I do it myself, the lines keep glitching (or like trembling😅) and I was wondering if you knew why? Did I miss an important step? It also happened when I followed the last video (the part 1).
@VisualTechArt
@VisualTechArt 8 месяцев назад
You have to set the material to run before the tone mapping
@kalyxee
@kalyxee 8 месяцев назад
@@VisualTechArt I tried doing it but it still glitches a bit, is it maybe a lighting problem? (Thank you for answering!😁)
@neo-giu
@neo-giu Год назад
Amazing stuff as always :)
@Quaz-jinx
@Quaz-jinx 2 месяца назад
This was a great video!! It taught me a lot, but I'm having a little bit of a problem. When the Kernel pixel is near 3 different depths (Like 3 objects at different distances, and the Kernel pixel is on the middle one) the line doesn't fill in. I believe this is because the Laplacian Filter adds all the depths together, and since the back object is far it causes it to not draw the pixel, but it should because it's on the edge of the closest object. I can see it a little bit of this happening on your project but on mine it's very visible. Do you have a workaround for this? I should add that the reason it's more visible on mine is because I changed the code to fix an issue with the Normal filter doubling up with the Depth filter on overlapping objects. I fixed it in a very weird way though so if you got any tips for that too that would be awesome :D
@VisualTechArt
@VisualTechArt 2 месяца назад
I didn't find any way to avoid it, sadly. But what's happening is that where you don't see the line, there's the edge, actually, but it has the opposite sign... So if you create the line from the depth by initially doing abs() on the filter result it should go away. The compromise here is that you'll have a thicker line that runs also inside the mesh :)
@Quaz-jinx
@Quaz-jinx 2 месяца назад
@@VisualTechArt Aw man, that’s alright. I did find that solution but i kinda wanted my depth lines to be the same thickness as my normal lines. I guess i’ll keep tinkering with it, if i don’t find a solution then i guess I’ll just live with it. Thank you for responding so quickly though :)
@NeatWolf
@NeatWolf 8 месяцев назад
Loved the improvement! Maybe I didn't get the last part - what is driving the virtual brush rotation?
@VisualTechArt
@VisualTechArt 8 месяцев назад
The angle you give it :)
@NeatWolf
@NeatWolf 7 месяцев назад
@@VisualTechArt Oh right, it's arbitrary then - wonder if it could rotate to match some contours for an extra stylistic boost :) Besides - there's one shortcoming with this approach compared to 3x3 kernels - can it be solved? When applied on transparency-dithered objects (that still look great with TAA), the result is pure black! :( Any idea on how to fix that without having to exclude objects from the effect?
@NeatWolf
@NeatWolf 7 месяцев назад
@@VisualTechArt actually, after more tests, the outline overlaps every transparent object, doesn't matter brightness or distance. I fiddled with it over and over but didn't manage to find a satisfying solution just like simpler outline techniques :/ Any idea?
@hotbergina
@hotbergina Год назад
thank you !!!!!!!!! on unreal engine 5, depending on the area the character is, is it possible to change the shader of the environment and the shading of the character too ?
@VisualTechArt
@VisualTechArt Год назад
Yes :)
@WarforgeXP
@WarforgeXP Год назад
I purchased the package from gum road, but instead of black and white outlines, it makes it multicolored outline
@VisualTechArt
@VisualTechArt Год назад
Yes, the node outputs the data to create the lines :) it's up to you how to use it! You can copy the nodes with the thresholds I used in my video to start
@VisualTechArt
@VisualTechArt Год назад
(in the first part video)
@WarforgeXP
@WarforgeXP Год назад
@@VisualTechArt ah I see. I was being lazy and saw the Legolas and a purchase link and thought it would work out of the box like that 😅
@wpwscience4027
@wpwscience4027 Год назад
I've been thinking about the bit you do around 2:57 with the radius for about a day now. Ultimately the Laplacian filter throws a -1 in every pixel it evaluates except the center one, which grows to the size of the number of evaluated pixels (My intuition says this should be the area of your circle). What if instead you took that radius calculation and asked the distance to the center from the evaluated pixel and weighted the pixel something between -1 and the center value based on that? Would this not give your line a soft edge?
@VisualTechArt
@VisualTechArt Год назад
You would weight the influence of each pixel based on the distance from the actual edge :) Yes, the result would be softer than what you get from this (before the thresholding). And yes you can do all sorts of things with that ;)
@priyankpiyush
@priyankpiyush Год назад
Beautiful 😍
@wegotguns3325
@wegotguns3325 Год назад
This is a bit of a noob question, but if we bought the gumroad version, how do we apply it? Just as a material to the character? Or is there away to have it effect the entire scene?
@VisualTechArt
@VisualTechArt Год назад
It's a post process material, it acts on the entire scene :)
@KikuNeZ
@KikuNeZ Год назад
Amazing tutorial, thank You! Is it possible implement custom depth mask in this code? If I try to mask outlines with SceneTexture: Custom Depth after the custom node, some lines at the edges of the mask are getting thinner.
@VisualTechArt
@VisualTechArt Год назад
Yes you can :) Correct me if I'm wrong but from what you said to me sounds like you're trying to remove the lines from the area covered by the stencil? If you keep seeing some thinner lines outside of that mask is because outlines extend outside the actual edge, so you should expand the mask by the same amount of pixel of the kernel size :)
@KikuNeZ
@KikuNeZ Год назад
​@@VisualTechArt I will try it, thank You! Yes, You are basically right, but I am trying to remove the lines from outside of the object (character) with a black and white mask, obtained from custom depth with step node.
@MineNOROfficial
@MineNOROfficial 5 месяцев назад
It’s been a little while since you uploaded these two videos; are you still working on a part two?
@VisualTechArt
@VisualTechArt 5 месяцев назад
I've been focusing on other things lately, but this is still in the back of my mind :)
@chiefwhosmoralsareelastix
@chiefwhosmoralsareelastix Год назад
I've noticed a really weird issue with this outline code which defies logic, I'm presuming it's an engine bug with custom nodes. So, I have the scene setup, the outlines working, everything is looking fine. Now I open any Material Instance in the Material Editor that contains this custom node setup (doesn't matter if the MI is in use in the levels PP volume or not, or even if its a totally different Parent Material to that used in the scene). This causes the main level to refresh and now the scene outlines have doubled in thickness. All because I opened a Material Instance containing this custom node in the Material Editor. It's fairly random as well, but when it does happen the only fix is to relaunch UE (5.2.1). Weird, huh? Looking forward to Part 2 :)
@VisualTechArt
@VisualTechArt Год назад
Weird, sometimes the shader reads the wrong viewport size and if you go full screen everything looks fine... try to see if that's the case :)
@chiefwhosmoralsareelastix
@chiefwhosmoralsareelastix Год назад
@@VisualTechArt Thanks for the reply. It does appear to be viewport size dependent as I accidentally caught my editor window and resized it causing the exact same issue to occur. Think it might be to do with my method of kernel size on distance that I'd mentioned in our discussion on your latest spiderverse video.
@robertadams3925
@robertadams3925 Год назад
Can you apply this using forward renderer?
@VisualTechArt
@VisualTechArt Год назад
To a certain extent I think, if I'm not mistaken you still have a depth pass available in the forward, so you can do it on that, but I'm pretty sure you don't have a normal pass. So overall you might be able to do it, but with a bit less control over it :) (You could derivate the normals from the depth, but you would get them as the geometry had only hard edges)
@CyberWolf755
@CyberWolf755 Год назад
If we multiply a painterly noise texture with the ellipse, would the outline look more like a brush stroke?
@VisualTechArt
@VisualTechArt Год назад
Kind of, yes :) Before applying thresholds (after the custom node) you basically have a sort of line gradient, so you can manipulate it as you wish
@MANIAKRA
@MANIAKRA Год назад
Amazing channel, thank you :)
@Maxparata
@Maxparata 6 месяцев назад
I followed the part 1, but it wasn't showing how to get the shadows. Did I miss something?
@VisualTechArt
@VisualTechArt 5 месяцев назад
No I just added them for the video :)
@felixbea5383
@felixbea5383 10 месяцев назад
There is many edges without weight at the center (double lines) and black or gradient areas where there is depth. The last step doesn't work (MarkerPoint is not defined), is it the cause?
@VisualTechArt
@VisualTechArt 10 месяцев назад
? Can you elaborate a bit more?
@felixbea5383
@felixbea5383 10 месяцев назад
​@@VisualTechArt The faces of the geometry can have a gradient shade or they can be completely black, depending on the angle of the camera. It doesn't look bad, but this is not the result I would want. About the MarkerPoint I just made an error in the code.
@felixbea5383
@felixbea5383 10 месяцев назад
Is it supposed to look that way or did I miss something?
@erichance8222
@erichance8222 Год назад
Good stuff!
@nicolaslop8974
@nicolaslop8974 10 месяцев назад
This is awesome!! completely mindblowing! I just wanted to ask you a question, I only have a 1 year experience on Unreal and while I know how to create post process materials, I have no clue about how to use your text code :p ...I bought it from gumroad expecting it to by a couple of clics to implement, but I am too newbie and I confess I don't know were to do those clics. I wonder if you could write a more step by step explanation of how to use your code, I mean, the explanation of how it works is amazing, but from opening an unreal project to see your magic working, that part I really would appreciate so much to understand. I don't even know what to press to open the code input in Unreal I confess, and I don't even know how to ask that on google it seems. I would appreciate it a lot if you could guide me a bit!
@VisualTechArt
@VisualTechArt 10 месяцев назад
It goes inside a Custom Node :) if you follow the video that precedes this, you can see the full implementation
@nicolaslop8974
@nicolaslop8974 9 месяцев назад
Oh!! Thank you!! I will make some time to study the previous one! @@VisualTechArt
@darkwraithcovenantindustries
@darkwraithcovenantindustries 9 месяцев назад
I am having trouble tryingto follow the instructions of the first video. I bought the custom code, but have no idea how to insert it. The video doesn't seem to tell you where to put the code. I tried to follow along, but it went by very quickly. I got stuck at the part where you are supposed to create a node that has a value. Please help! @@VisualTechArt
@VisualTechArt
@VisualTechArt 9 месяцев назад
The custom node gives you the raw data to then manipulate to get the outlines you want :) if you look in my first video there are a bunch of nodes that follow the custom node (ComponenMasks and InvLerps) you need to copy that part
@darkwraithcovenantindustries
@darkwraithcovenantindustries 9 месяцев назад
thanks! I got it working.@@VisualTechArt
@lcxlursyi6
@lcxlursyi6 11 месяцев назад
Hi i downloaded the shader from gumroad. For some reason i get weird horizontal lines in the laplacianfilter_depth
@VisualTechArt
@VisualTechArt 11 месяцев назад
That's weird, you can ask for help in my Discord maybe, it's hard to figure what's wrong here :)
@lcxlursyi6
@lcxlursyi6 11 месяцев назад
@@VisualTechArt I figured it out. The problem sat infront of the screen :)
@Alaincasanovas
@Alaincasanovas Год назад
How can i apply the oulines to already textured buildings and stuff? Right now im stucked with the black and white postprocess :(
@VisualTechArt
@VisualTechArt Год назад
Multiply them on the PostProcessOutput0 :)
@cmds.learning7426
@cmds.learning7426 Год назад
解释得很好,很好!
@Giada827b
@Giada827b 11 месяцев назад
Is there a way to keep the line thickness consistent while moving around the scene?
@VisualTechArt
@VisualTechArt 11 месяцев назад
Can you elaborate a bit more? :) probably tho I'd guess your issue might be related to temporal effects
@Giada827b
@Giada827b 11 месяцев назад
Yeah I meant if there's a way to keep the lines the same thickness in world not in camera
@VisualTechArt
@VisualTechArt 11 месяцев назад
@@Giada827b You can make the kernel size dynamic and adapt based on distance from camera :)
@Giada827b
@Giada827b 11 месяцев назад
@@VisualTechArt I started using unreal not long ago so I'm not 100% sure how to do that, could you please explain in simple terms how to do it if u got time?
@Owi627
@Owi627 Год назад
Is there a way i could apply color to this and go for a renaissance look
@VisualTechArt
@VisualTechArt Год назад
Just multiply your colour to the outlines :)
@UpsideYonder
@UpsideYonder Год назад
can this be done with out custom node? asking for a friend.
@VisualTechArt
@VisualTechArt Год назад
In the part 1 video you have your answer :D
@UpsideYonder
@UpsideYonder Год назад
​@@VisualTechArt hah thanks.
@DPDPDPDP
@DPDPDPDP Год назад
Hi there, I'm wondering why SHAPE_RATIO is not called, i could delete it and its code still working
@VisualTechArt
@VisualTechArt Год назад
Aw crap! You're right, I forgot to write in the multiplication! Cheers mate well spotted!
@VisualTechArt
@VisualTechArt Год назад
Just checked, luckily the code download from gumroad is correct, it's just a mistake I made here in the video, thanks again for bringing it up :D
@namondastudio4616
@namondastudio4616 Год назад
so... not working in UE5 ? i want to buy it, thanks !
@VisualTechArt
@VisualTechArt Год назад
? What do you mean? I've done it in UE5 :D
@code-72
@code-72 Месяц назад
Canny edge detection please!
Далее
Procedural UV Mapping in Shaders
7:04
Просмотров 9 тыс.
Physically Based Cel Shading
36:41
Просмотров 119 тыс.
КЛИП ЛИСА УЖЕ ВЫШЕЛ!
00:16
Просмотров 422 тыс.
The ONLY texture a game NEEDS [UE4, valid for UE5]
18:56
Anime Outline with Overlay Material UE5.1
7:35
Просмотров 10 тыс.
What if Earth grew 1cm every second?
5:16
Просмотров 1 млн
Stylized lines and outlines - Unreal Material
46:47
Просмотров 57 тыс.
Breaking Down The Hades Art Style | Render Breakdown
13:44
Decal Normals are Broken, here's the fix
17:12
Просмотров 6 тыс.
КЛИП ЛИСА УЖЕ ВЫШЕЛ!
00:16
Просмотров 422 тыс.