Тёмный

Stylized Grass and the many techniques available in UE to reach the desired style & performance 

Ghislain Girardot
Подписаться 16 тыс.
Просмотров 65 тыс.
50% 1

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

 

29 сен 2024

Поделиться:

Ссылка:

Скачать:

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

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 157   
@IstyManame
@IstyManame Год назад
You know I've been trying to recreate the feel of digital anime nature art in ue5 and keeping it reasonable perfomance-wise, the goal is up there, my knowledge is not quite, so the journey was pretty rough. But dear fucking god watching you feels like cheating. You've solved so much problems for me and probably saved weeks, if not months. I thank you from my very soul, and hope you'll do more similar in-depth videos about something else
@ghislaingirardot
@ghislaingirardot Год назад
Thanks for the kind words, I m glad I could help😇
@Neki2K1
@Neki2K1 7 месяцев назад
this video not for beginner, its just advanced
@yorchmr3603
@yorchmr3603 Год назад
1 hour grass tutorial wtf....AND I'M ALL UP FOR IT, brb snacks :D
@mpattym
@mpattym Год назад
This will be the video I'll return too when I need to do grass again. Not being much of an artist, this is the sort of thing I struggle with. Nice to see all the different approaches. Nice work.
@ghislaingirardot
@ghislaingirardot Год назад
Thanks!
@Xperto_
@Xperto_ Год назад
Very interesting techniques discussed in this video. Unfortunately most of the WPO stuff won't work in UE5 because pre-skinned local position doesn't work with nanite foliage.
@Xperto_
@Xperto_ Год назад
Never mind, the issue was in the TransformPosition!
@ghislaingirardot
@ghislaingirardot Год назад
@@Xperto_ You could always use AbsoluteWorldPosition passed in a TransformPosition node from World To Local, if PreSkinnedLocalPos is troublesome with Nanite. I haven't toyed much with Nanite unfortunately so I fear I won't be able to help you troubleshoot any issue. Best of luck I guess :D
@Xperto_
@Xperto_ Год назад
@@ghislaingirardot The preskinned local position seems to be working fine even with nanite foliage but thanks for the tip!
@xKeaton
@xKeaton Год назад
Short question regarding the setup of the parent objects. I have seen different approaches to parenting multiple LOD-levels to a parent to group them together but I am unsure about which one is the best. The way I usually do it, is by creating a plane, deleting all its vertices, and using this object as the parent of my LODs. Works better then empties for me, but I am unsure about what takes more ressources to process in Unreal, or if it even makes a difference. Never heard anyone talk about their method and researching it gives no results
@ghislaingirardot
@ghislaingirardot Год назад
Hmm I'm really not sure what you're talking about sry. Parent objects? There's no parenting to be done here, I'm confused.
@xKeaton
@xKeaton Год назад
Okay mb. After looking through it again I noticed that you always merged all the components. I was referring to objects like Grass_Cards_A_LODs and I assumed that this was a parent object and it's children objects were all the different LODs from 0-2. And I was wondering how you could replicate the random baking with such a setup, but now after noticing that you merged them together into one object, it all makes sense now. While recreating the steps I tried to keep it all as non-destructive as possible and have not thought about merging them, I handled all the LODs as seperate objects and was stuck on the UV information baking part
@ghislaingirardot
@ghislaingirardot Год назад
@@xKeaton Yeah each card model contain both LOD0, 1 and 2 at first, so that the baked normalized height & pseudo random value in uv are consistent across all LODs. The cards are all merged into one single mesh during the bake process and after that I just manually separate LODs into three distinct meshes. If that makes sense.
@phi7006
@phi7006 Год назад
Wow thanks, absolute useful! Do you apply these material nodes to one object (joining them all together before) or do you copy paste them into each object? Wenn I apply these material to every object I get different colorization for different objects, connecting the last "Combine XYZ" with emission prop. Some are red-yellowish and some are purpil and white. Do You have any idea what could cause that? EDIT: Seems like my objects on the left and right of my orthographic camera are in this red-yellow style and the one in the middle are in this purpil-white style Thank You !
@ghislaingirardot
@ghislaingirardot Год назад
They all are merged! Hmmm not sure what's your issue sorry. Double check your uvs
@phi7006
@phi7006 Год назад
UVs seem to be fine. What should acutally be the effect of the bounding box. In my setup it seems that there is no difference if I have it or not. Should I have the same colors in RGB mask like you if I have the same values in my nodes or does ist depend on the steepness and other factors of my geometry? Are your grass blades on the same z-level as your grass cards or is there an offset between them? If there is no offset I can't see them anymore (of course). Thank you !!@@ghislaingirardot
@ghislaingirardot
@ghislaingirardot Год назад
@@phi7006 The bounding box is here to build the TextureCoordinate's node Object coordinates, and not have that be computed based on the object the material is applied to (especially in case all your cards are split into different objects). It's a way to build & control normalized object coordinates. Your result should be pretty identical to mine, it isn't based on steepness, just the Z vertex height relative to that bounding box. Don't render your grass cards while you're rendering these masks textures. Maybe double check your location/rotation/scale are all applied.
@Helgrind44
@Helgrind44 Год назад
Dude I love you. These kind of tutorial never go in depth and never speak about performance issues, which is the main problem when actually trying to ship something. Thanks a lot!
@imdrnickriviera
@imdrnickriviera Год назад
The top-down orthographic render method to get the ground texture kind of blew my mind. I've been making landscapes for years and such an obviously simple solution never crossed my mind. Thanks!
@ghislaingirardot
@ghislaingirardot Год назад
Sometime the simplest solution works best :D
@RoninStark.
@RoninStark. Год назад
Ghislain Girardot tutorials are gold. 10/10 IGN
@ghislaingirardot
@ghislaingirardot Год назад
Thanks :D
@DawnBriarDev
@DawnBriarDev Год назад
His tutorials are gold, but if IGN recommended them I'd have never clicked on the video.
@ghislaingirardot
@ghislaingirardot Год назад
@@DawnBriarDev 🤣
@nou4451
@nou4451 Год назад
I just recently started using UE5 and I was struggling to make a proper landscape and get the grass to work, thank you so much for giving such an extensive tutorial!! I've looked through many videos and this one is by far the most thorough one :) thank you!
@xKeaton
@xKeaton Год назад
This is now my favorite Video on RU-vid and I am so thankful for it! This is such a nice learning ressource and I can not wait to recreate it step by step. It might take me a full week to really grasp all the vector magic necessary, but with your clear explanation I will manage. I do truly love you for your work and we are blessed to be gifted with all of it, especially with it all being so accessible and free. Thank you so much! 🙏
@ghislaingirardot
@ghislaingirardot Год назад
Np, glad I can help and thanks for the kind words! Mcuh appreciated! Best of luck with your stylized grass (=
@BatMan-kl3un
@BatMan-kl3un 4 месяца назад
Hi, Ghislain. What is the PPT name, at 5:15? Thank you very much.
@ghislaingirardot
@ghislaingirardot 4 месяца назад
Hi! Not sure what's your question? I selected the three HI poly meshes and pressed H to hide them and reveal the low poly card underneath
@connorbridson2966
@connorbridson2966 Месяц назад
Hello I just wanted to add here that for the custom billboard to work with manuallly placed foliage instances I had to add a ComponentPivotLocation material function to the end of the WPO chain in 4.27. Great tutorial once again thank you for sharing the knowledge!
@SebastianJGomezBiggeri
@SebastianJGomezBiggeri Год назад
What a masterclass, and the work that went into making the video and visually explaining concepts and techniques is equally amazing. Subscribed to Patreon.
@ghislaingirardot
@ghislaingirardot Год назад
Thanks for joining in & the kind words :) appreciated
@sj_bardplays6416
@sj_bardplays6416 Год назад
Yay
@space9658
@space9658 8 месяцев назад
Amazing video, I love that you explain the reasoning behind every choice, elaborate on the various options and suggest various ideas to experiment with. This was really informative also the grass tiling texture trick seems so simple but it's small things like that, that people can miss so easily or try to come up with something more complicated when a good solution to a problem is right in front of you.
@ghislaingirardot
@ghislaingirardot 8 месяцев назад
Thanks, much appreciated :)
@Rydn
@Rydn Год назад
Instructions unclear. I have grass all over my house now.
@ghislaingirardot
@ghislaingirardot Год назад
Haha. My bad :p
@Rydn
@Rydn Год назад
@@ghislaingirardot It's not bad. It's PERFORMANT grass.
@chaosordeal294
@chaosordeal294 Год назад
I have the same "problem," buddy.
@garonbos1452
@garonbos1452 6 месяцев назад
I need to learn how to do this grass cause I dont know how I get the bevel in like you have and how you make them in this way exactly
@АлександрСторожук-з2б
@АлександрСторожук-з2б 9 месяцев назад
Who has faced the fact that he does not have grass, tell me, how did you solve this?
@nikwalz3429
@nikwalz3429 8 дней назад
Hi is there a way to make grass look like this without LGT and Static Mesh by using only a landscape material and tessellation?
@ghislaingirardot
@ghislaingirardot 8 дней назад
No. You can use ray marching or similar shader shenanigans to make a grass texture have some depth on the landscape material but that won't affect the landscape's silhouette. These techniques typically don't allow for wind animation either and have plenty of limitations. Using meshes is still the only way to do proper grass to this day.
@Levelonesucks
@Levelonesucks Год назад
This is absolute platinum of a learning resource, just loads of well organized good to know, shown clearly and concisely. This is going to be providing immense benefit to so many artists for years to come
@ghislaingirardot
@ghislaingirardot Год назад
Thanks for the kind words 😉
@Frits_Mulder
@Frits_Mulder Год назад
Amen, this is the absolute gold standard of grass tutorials.
@murilochayel
@murilochayel 8 месяцев назад
Man, you're insane. Thank u so much for providing something clearly like this.
@andyyyplz3133
@andyyyplz3133 Год назад
Thank you very much for your wonderful sharing. By the way, I find that ClumpMap or ScaleMap can be used to add more color variations, such as grass that grows very lush due to organic matter accumulation, and their color will be more saturated. I applied them to my grass and they looked better👍.
@medmel2160
@medmel2160 Год назад
tres tres bon video, merci boku
@zrIywcN8XJdHaY13K3tx
@zrIywcN8XJdHaY13K3tx Год назад
Awesome tutorial! love your French accent bro.
@ghislaingirardot
@ghislaingirardot Год назад
Thanks! What French accent? 🙃
@GatyhInteractive
@GatyhInteractive 5 месяцев назад
@ghislain Giradot what is the command for that ? @ 5:55
@ghislaingirardot
@ghislaingirardot 5 месяцев назад
stat memory
@buddhathegod
@buddhathegod 11 месяцев назад
Wow I really need to try this out for my next project!
@dembe3188
@dembe3188 Месяц назад
Brother you're majestic! I'm speachless after this grass tutorials!! If you don't mind me askin, how many years of experience do you have? 🤯
@ghislaingirardot
@ghislaingirardot Месяц назад
Thanks! I dunno. Somewhere In-between 5 to 10 years
@dembe3188
@dembe3188 Месяц назад
@@ghislaingirardot Congrats man, this is inspirational!
@mopozuJIko
@mopozuJIko 2 месяца назад
Even though a lot of math goes over my head, it's still incredibly clear and I'll do my best to follow this approach! Thank you!
@Alygon_Academy
@Alygon_Academy Год назад
Hi Ghislain, thank you so much for your videos holy fuck they have tons and tons in them, you should really get your self into houdini xd, I would definitely support you on patreon if am not struggling financially, it took me 4 days to apply this and am not done yet xd, I wish I can support you back somehow if I can help with houdini substance designer linux please let me know you are amazing artist and a gift for our community
@ghislaingirardot
@ghislaingirardot Год назад
Glad you liked the video! Houdini, eh I'd love to but I have barely enough time to remain up to date with UE considering how fast it's growing/changing. Plus UE's becoming a bit of an Houdini every day with things like PCG, Geometry Scripting and Scriptable Tools, so I'd rather invest even more time in UE. Blender is becoming a bit of an Houdini as well with its increasingly compentent geometry nodes, so I'm less inclined to invest time in Houdini nowadays. Although it remains a beast of a software and I definitely could make use of it :D Just have other priorities! I'm also familiar with Subs. Designer and have used Gentoo/Linux for ~7 years! So no worries, enjoy the free content :D
@Alygon_Academy
@Alygon_Academy Год назад
lastly best of luck again and thank you so much for your content :D
@in2fractalout
@in2fractalout Год назад
new hero of a realm discovered!🎉
@lebombe8342
@lebombe8342 6 месяцев назад
AAA looks ! Greeat tutorial
@drawingmaniacsterben7144
@drawingmaniacsterben7144 4 месяца назад
me being completely lost the whole video Ghislain: buckle up, heres where things get tricky
@ghislaingirardot
@ghislaingirardot 4 месяца назад
😬
@drawingmaniacsterben7144
@drawingmaniacsterben7144 4 месяца назад
@@ghislaingirardot btw it Is awesome And something i ve been looking for the entire time ♥️
@piercecaldwell6819
@piercecaldwell6819 Год назад
this is a lot of useful information but I am having a hard time understanding what you are saying because your voice is a lot of lower and mid tones and it is kind of hard to pick out words. It might be helpful to adjust the audio in after effects or similar software, increasing the mid tones to high tones to get better word separation. or it could be the microphone. either way, if you could somehow make the narration more clear, it would help a lot. thank you for this video!
@ghislaingirardot
@ghislaingirardot Год назад
I would if I could. Between having the worst room accoustic ever & a speach impediment & being a non native english speaker, it's as good as its gonna get. I recently upgraded mic so I believe it got slightly better in more recent videos but not ideal still. But honestly, considering youtube's automated subtitles seem to understand every single word I say, I'd say you're just probably not used to hearing a french accent :D
@Lau3d
@Lau3d Год назад
You should get your hearing checked or replace your speakers / headphones. Audio is perfectly fine in this video.
@Elmoman11able
@Elmoman11able 4 месяца назад
Hey all! I appear to be having a pretty serious issue. Everything was fine up until appling the WPO to the material. Once I apply the the code to my material, all my landscape grass dissapears! However I can still place a single mesh down which works fine. Painting the grass with a foliage brush also doesnt work. Please help :( I am unsure what I have done wrong.
@Elmoman11able
@Elmoman11able 4 месяца назад
There has been a development. All my grass has not vanished, it has all just moved to the 0,0,0 position... any ideas ??
@ghislaingirardot
@ghislaingirardot 4 месяца назад
@@Elmoman11able Hey! It's impossible for me to tell :shrug: You likely missed a step. Having meshes at 0,0,0 probably means you didn't transform vertices from local to world space. It's explained in the video :)
@Elmoman11able
@Elmoman11able 4 месяца назад
@@ghislaingirardot hello! Thanks for the reply, I really appreciate it, not to worry I used a work around, doesnt quite look as good or is as technically impressive but it works! Keep up the awesome stuff you do its great
@chaosordeal294
@chaosordeal294 Год назад
Absolute banger of a video!
@gtanerd1999
@gtanerd1999 Год назад
Loving your new video format man. Thanks for all of this knowledge
@ghislaingirardot
@ghislaingirardot Год назад
Thanks! Glad to share.
@dreamfractures
@dreamfractures Год назад
Been anxiously waiting for this video. What a perfectly thorough tutorial! Thanks for making a cool grass shader seem a lot less daunting.
@ghislaingirardot
@ghislaingirardot Год назад
Ty! :D
@korakot2003
@korakot2003 3 месяца назад
Quick question, I'm currently using latest version of unreal engine and I'm contemplating whether to use lod or nanite grasses for my game, which one is better for the current state of ue? Performance wise, thanks!
@ghislaingirardot
@ghislaingirardot 3 месяца назад
Impossible to tell, foliage is still where Nanite suffers a lot. Performance will depend highly on your meshes/workflow/ability to accomodate for Nanite's weaknesses.
@korakot2003
@korakot2003 3 месяца назад
@@ghislaingirardot thank you for the quick answer! Love ur stuff
@ghislaingirardot
@ghislaingirardot 3 месяца назад
@@korakot2003 Np. Thanks, appreciated!
@steliosstavropoulos499
@steliosstavropoulos499 5 месяцев назад
Great video! But how the baked pivots in a 0-1 uv range translated in offsets larger than 1 unreal unit? I mean since the dots were values from 0 to 1 dont you need to multiply them with a number to hit the initial offsets that might be 50 units for example?
@ghislaingirardot
@ghislaingirardot 5 месяцев назад
Ty! The baked pivots are not in a 0-1 range in UVs but in centimeters so there's no need for a multiplier
@steliosstavropoulos499
@steliosstavropoulos499 5 месяцев назад
@@ghislaingirardot Oh thank you very much! I just put them in the 0 to 1 uv box and multiplied with the counding box size that is 40 for me. And it works. But I will just scale the uvs in blender
@ghislaingirardot
@ghislaingirardot 5 месяцев назад
@@steliosstavropoulos499 Yup, it works just the same :) Normalizing position based on bounds is great if you want to bit pack position! You'll likely use 16bits UVs in UE though, so you can definitely afford to store the pivots directly in centimeters and avoid a multiply in the vertex shader. Realistically, it's not going to make any difference, performance-wise, but oh well, you do you :)
@patty4449
@patty4449 2 месяца назад
Sad that this is for UE... Worst engine...
@ghislaingirardot
@ghislaingirardot 2 месяца назад
No, shader tricks are not specific to any game engine. There is actually *nothing* specific to UE here, as long as you can read in-between the lines. Most game engines offer a graph editor to write shaders, so a similar shader and similar tricks can be applied in Unity, Godot etc. Just got to be willing to do the hard-work and think on your own to recreate a similar effect in another engine. But then your comment makes me think that you have pretty much zero experience in the video-game industry. Most of us are software agnostic, as you should learn to be. Each engine has its pros and cons. UE isn't the greatest but most definitely not the worst.
@edgardsimon983
@edgardsimon983 9 месяцев назад
wtf is that quality stuff
@eggZ663
@eggZ663 Год назад
Fantastic!
@Dhieen
@Dhieen 8 месяцев назад
Why arent you using nanite and lods instead? I didnt finish the video so idk if you answer the question, there is so much content haha
@MridulArora-k4o
@MridulArora-k4o 10 месяцев назад
Thank you soo much!
@popothot4404
@popothot4404 Год назад
超详细,超赞!👍
@АлександрСторожук-з2б
@АлександрСторожук-з2б 10 месяцев назад
Please tell me more about it. It is very interesting to study this method.
@Dhieen
@Dhieen 8 месяцев назад
Wow the ground grass texture by screenshot is so smart haha
@Tom-sn8si
@Tom-sn8si Год назад
what is software at 17:54 this is the first time I see such cool software?
@wewillmodify8263
@wewillmodify8263 Год назад
i think he is using GIMP
@ghislaingirardot
@ghislaingirardot Год назад
Yup just the good old Gimp 😊
@aulsa1056
@aulsa1056 5 месяцев назад
hi i'm in 3d/video game school just to tell you that, your video is so much better in every sense of the word than my courses i have, thanks for this tutorial ♥
@ghislaingirardot
@ghislaingirardot 5 месяцев назад
Thanks! Sorry to hear that, in a way. Hope your course ramps up in quality!
@lucascavallari8489
@lucascavallari8489 Год назад
Got a bit lost in the textures part, I'm a begginer in Blender and also UE. So I tried baking normals after shear, but they didn't take effect in the flat one. Also, one side of the plant is invisible. I'm first doing one single grass to multiply, but if I manage to know how, I intend to make more plants.
@ghislaingirardot
@ghislaingirardot Год назад
Yup I couldn't afford to explain everything in great details so I went a bit fast over the Blender part. I'd double check your material setup & bounding box. Best of luck.
@virtua7390
@virtua7390 11 месяцев назад
Is there a way to blend grass without runtime virtual textures? Uefn has a lot of features but also blocks a lot and unfortunately rvt’s are one of them.
@ghislaingirardot
@ghislaingirardot 11 месяцев назад
You could capture the terrain into textures using a scene capture component (if UEFN allows you to do that). I've made a video on the subject, see ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-ZwufX4JuF1U.htmlsi=c9O37lg32GVICluA
@DavidWKimber
@DavidWKimber Год назад
Fantastic!!
@Kur0Kam1
@Kur0Kam1 9 месяцев назад
incredible video, thank you
@saisnice
@saisnice Год назад
Thank you for such an amazing video! Lots and lots amazing technics. But I have a question. You wrote such a complex shader and this shader would be instanced thousand of times, isn't this is equally bad in terms of performance as having a lot of vehicles? Isn't shader complexity is a concern for performance purposes too? Thanks in advance.
@ghislaingirardot
@ghislaingirardot Год назад
Hey, thanks for watching! To answer you briefly: - I'm not sure what you mean by that, but a shader isn't instanced thousand of times and the comparison with vehicles is... strange? - Sure shader complexity is a concern for performance, but profiling speaks for itself, the shader is performant. It's not because you have a complex graph that a shader badly performs. Context matters. - The graph looks complex but the HLSL code isn't that complicated and most of the logic happens in the vertex shader and doesn't contain costly maths nodes (trigonometry). And I have made sure to keep the vertex count as low as possible, as demonstrated. - If you want a shader to perform as best as possible, use an empty shader and have no feature :) At one point you have to pay a cost to have a shader that has features. If you're tight on budget, get rid of some features. See what's worth paying the cost for your own use case. Hope that helped
@saisnice
@saisnice Год назад
@@ghislaingirardot Yes, that's answers my question fully. Thank you very much.
@carlweiss830
@carlweiss830 4 месяца назад
I still don't understand how you created a random color for all the grass
@ghislaingirardot
@ghislaingirardot 4 месяца назад
Color texture projected in a top down fashion using XY world coordinates to add random tint + using 'random value per instance' to further randomize things if you need to
@nazarboiko3917
@nazarboiko3917 8 месяцев назад
Great Tutorial, you are really good at explaining things. But still i have a little trouble with those textures in blender. When i made this material like you have in the video and i connect (Combined XYZ) to Emission i get a radient gradient on my grass (from center lower edge of camera) blue to green, and i have no clue how to fix this, before that i have done UV exactly like you. Would be glad if could help me a bit (i tried to find answer in comments bellow but i didn't😓) But still really awesome tutorial! :D
@nazarboiko3917
@nazarboiko3917 8 месяцев назад
And when i connect normals as well i have just white texture :/
@ghislaingirardot
@ghislaingirardot 8 месяцев назад
@@nazarboiko3917 Hi! It's hard to tell unfortunately :| double check everything, material/uv maps/object used to generate object coordinates/scene settings (linear color mapping/no world light)/viewport settings (shading view) and so on... Make sure the issue isn't just in the viewport and persists in the render as well, that might tell you something.
@tristanvoulelis1422
@tristanvoulelis1422 Год назад
Hi Absolutely amazing tutorial I wanted to ask if I enable Nanite in UE5.2 the grass disappears on the landscape. Disabled the WPO and it shows again so its somehow related. Any idea why? Thanks
@ghislaingirardot
@ghislaingirardot Год назад
Hey! Thanks. Tbh I haven't tested Nanite yet... But Nanite is widely known to be extremely limited regarding WPO and is now only starting to get support for *minimal* amount of WPO. Considering this technique here does all kind of crazy WPO shenanigan, I'm not surprised Nanite breaks everything unfortunately. I don't think it's viable with Nanite sorry
@tristanvoulelis1422
@tristanvoulelis1422 Год назад
@@ghislaingirardot Thanks for your reply! No worries ill just look at implementing those optimization's that you show in the video.
@moinammorgen9415
@moinammorgen9415 8 месяцев назад
Hey, great Tutorial! I am stuck on one thing tho: The PerDistanceFadeAmount. I just have a simple GrassWind applied to the World Position and none of your stuff, but the fade is not working and I dont really know how to implement it
@ghislaingirardot
@ghislaingirardot 8 месяцев назад
Hey! Ty! What do you use the PerInstanceFadeAmount for? Have you customized the fade distance in your instance component settings? (or foliage settings?)
@moinammorgen9415
@moinammorgen9415 8 месяцев назад
@@ghislaingirardot Hey, I want to use the PerInstaceFadeAmount for the same thing as you, so scaling the obejct. And I have set the cull distances (start 2000, end 2500)
@ghislaingirardot
@ghislaingirardot 8 месяцев назад
@@moinammorgen9415 Well then you have to replicate my setup. You can't 'magically' scale an object with just the [0:1] value this node outputs. You gotta offset vertices in such a way that result in a scaling effect, like demonstrated in this video
@moinammorgen9415
@moinammorgen9415 8 месяцев назад
@@ghislaingirardot Alright. Thanks! Thought there might be a less complex way
@SchlippSchlipp
@SchlippSchlipp Год назад
Great tutorial, thanks a lot! I got one question: If I put my geometries into a bounding box with sheared surfaces, I do not get this nice bidirectional gradient effect. My whole geometry is quite uniformly bright. If I simplify my geometry to a rectangle and shear until it fits my bounding box and then take a look in shading mode, only the right part of my geometry is shown. Am I doing something fundamentally wrong? Do I have to turn off blenders light or does this not matter? Thanks a lot !
@ghislaingirardot
@ghislaingirardot Год назад
Hey! Hmm it's to hard to say, maybe make sure to apply your object's location/rotation/scale? (and possibly the bounding box's transforms as well)
@SchlippSchlipp
@SchlippSchlipp Год назад
It seems that you are importing only your LODs into the UE project. How do You get the original grass object in? In my current understanding the LODs are just cards, which are some kind of abstraction of the original grass object. In the scene it looks like your original grass object is there. Thank You!!@@ghislaingirardot
@ghislaingirardot
@ghislaingirardot Год назад
@@SchlippSchlipp Hmm the 'original object' is just here to render grass card textures. You're only supposed to import & use cards in engine.
@SchlippSchlipp
@SchlippSchlipp Год назад
Thanks for the clarification.@@ghislaingirardot
@mateigiurgiu2586
@mateigiurgiu2586 Год назад
In the view tilt offset section why is there a Y unit vector transformed in view space? Isn't the Z axis the one pointing up in Unreal?
@ghislaingirardot
@ghislaingirardot Год назад
The Y axis in view space is pointing upward when camera is looking at the horizon, Z axis is forward in camera space.
@mateigiurgiu2586
@mateigiurgiu2586 Год назад
@@ghislaingirardot Thanks so much for clearing this up. I am new to Unreal and you've probably saved me a lot of time figuring this out on my own. Is this mentioned somewhere in the official docs? Why would the coordinate system be different between view space and world space?
@ghislaingirardot
@ghislaingirardot Год назад
@@mateigiurgiu2586 No worries. I'm not sure it's mentionned in the doc but it's something one stumble upon quite early in its UE journey, generally. The coordinate system isn't different from view to world space. It just has to do with what is the "default" camera orientation in UE. Z is forward in camera space because the 'default' camera's orientation is a camera looking upward (so Z up, same as world, and same applies for X & Y). If that makes sense :D
@musikalniyfanboichik
@musikalniyfanboichik Год назад
kino tutorial
@jeremiemakuchowski3146
@jeremiemakuchowski3146 7 месяцев назад
I have to say I've spent hours, days, maybe even months watching technical gamedev videos on youtube and elsewhere trying to grasp what I possibly could with my failing maths & programming "skills", but this is by far the most effective learning tool I have ever come across in terms of pure quality vs effectiveness. Even without a strong programming or technical background the pure simplicity in the way this shader addresses the many problems of grass rendering in non nanite UE is just elegant, beautiful. and I'm not speaking of the art quality here, just purely from a technical standpoint this is already magnificent. thanks so much for sharing!
@ghislaingirardot
@ghislaingirardot 7 месяцев назад
Thank you! Much appreciated :)
@VisualTechArt
@VisualTechArt Год назад
Great job there! Grass is a totally different beast to tackle :D I also did a video on more or less the same topic ( ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-gfQNjC69PCM.html ) and yes, funnily enouh is the longest I've ever done :D
@ghislaingirardot
@ghislaingirardot Год назад
Ty! I loved your mathematical approach to the problem, great breakdown as well. I'll have to take a look at the rest of your videos, interesting topics you got there! :)
@itzjeo5585
@itzjeo5585 Год назад
11:26
@Gandarufu
@Gandarufu Год назад
Would you mind elaborating what extra magic you did with the baked pivot points? You mentioned the Y axis having to be flipped, but when you show your baked pivot points at 28:18 they don't seem flipped?
@Gandarufu
@Gandarufu Год назад
When I try this, the whole mesh moves its position slightly, but not all cards individually.
@ghislaingirardot
@ghislaingirardot Год назад
Hmmm, from what I recall I had to do a 1-(y*-1) in the script, which is actually y + 1 :p So the baked uv ends up in the correct orientation but shifted. Having to deal with different coordinates system can be confusing...
@ghislaingirardot
@ghislaingirardot Год назад
@@Gandarufu Hard to tell what's wrong. Double check your pivots are correctly baked and not overwritten by lightmaps and double check your material setup
@Gandarufu
@Gandarufu Год назад
@@ghislaingirardot thanks mate, I suspected a y-shift could be in order. will definitely give that a try tomorrow. thanks nevertheless for your great work, I'm still blown away by your knowledge and willingness to help 👍
@Gandarufu
@Gandarufu Год назад
@@ghislaingirardot Okay, so turns out you also have to multiply each pivot position by 100 because of the unit difference of Blender and UE. Never would have guessed that.
@plasid2
@plasid2 Год назад
Why stylized, not photorealistic?
@smash.studio
@smash.studio Год назад
Thank you so much for this. There are some seriously impressive techniques here. I feel so dumb trying to grasp some of these concepts but slowly making progress 🙃
@ghislaingirardot
@ghislaingirardot Год назад
Thanks, you're welcome! And thanks for joining the Patreon :) No worries, I probably made this all sound more straightforward than it actually is. Struggle is to be expected at first with that amount of WPO trickery, it's not easy. Keep at it and you'll get there :)
@smash.studio
@smash.studio Год назад
@@ghislaingirardot really appreciate the encouragement 😊 - i’m new to UE so it’s a big curve but it’s people like you that even make this possible. I’m trying to repurpose your setup into my scene. If I’d like to replace the opacity map with a more abstract painted texture is it just essentially switching out the texture? Guess I should avoid going over the edge of your current one to prevent issues with the other baked maps?
@ghislaingirardot
@ghislaingirardot Год назад
@@smash.studio UE is amongst the most complex game engine out there and it has quite a steep learning curve indeed. Best of luck! Hmm I'd suggest replacing the entire grass texture set (opacity, normals & gradient masks) rather than just the opacity texture (which won't allow you to create a completely new look considering the other maps are meant to work with that opacity mask). You could use the workflow I described, using Blender, to create a new set, or you could handpaint everything. Handpainting gradients & normals is a bit tricky but plenty doable (you could also discard using a normal map and gradients if you don't have a use for them)
@smash.studio
@smash.studio Год назад
This is a totally stupid question, but how do I add the assets once the plugin is installed? 🤦
@smash.studio
@smash.studio Год назад
OK found the video you made for it! Thanks!
Далее
How do Major Video Games Render Grass?
9:33
Просмотров 409 тыс.
ОБЗОР НА ШТАНЫ от БЕЗДNA
00:59
Просмотров 263 тыс.
how grass works in Ghost of Tsushima
5:04
Просмотров 279 тыс.
Why Solo Developers Should Use Unreal
9:51
Просмотров 386 тыс.
Easy Grass Occlusion in UE4
7:27
Просмотров 29 тыс.
Why Do Video Game Studios Avoid Blender?
6:49
Просмотров 595 тыс.
🌿 Ultimate FOLIAGE Guide in UE5 🌿
13:06
Просмотров 43 тыс.
Pro Materials Are EASY Now! (Try This)
11:19
Просмотров 192 тыс.
From Beginner to Expert: Niagara's NeighborGrid3D
1:26:17