Houdini: 'Fixing' Megascans Displacement Issue w/Redshift

  Рет қаралды 5,168

Break Your Crayons

Break Your Crayons

4 жыл бұрын

In this video I will show you how to 'fix' the displacement issue we have been facing when rendering Megascan assets inside of Houdini.
This method is still a work in progress but we will achieve results much closer to what we see in Quixel Bridge.
I am rendering in Redshift for speed, but the concepts should apply to Mantra/Solaris too.
We will:
- create a better resolution LOD0 mesh
- bake out custom texture maps
- convert the original displacement into something we can use
- learn about why there is an issue

Пікірлер: 45
@eirik237
@eirik237 4 жыл бұрын
Hi thank you so much for this video! I was wondering myself why the LOD0 asset looked worse than a basic mesh with a mountain node hahah... I also thought it had to be the colorspace, glad you confirmed my suspicion, and thanks for all the information you have pursued in this issue. Please keep my posted if you bump into anymore amazing knowledge, subscribed! :)
@COOLSEMIS
@COOLSEMIS 3 жыл бұрын
This is so helpful. Thank you!!
@underthetop30
@underthetop30 3 жыл бұрын
Thanks you for this tip. Its one of the problem inside houdini even if you are using mantra.
@feelthefears
@feelthefears 4 жыл бұрын
Damn, I just managed to take a look at the thread you posted. I always assumed the discrepancies were due to their intention of not being the same. I don't wanna do the same thing I have to do when importing my scanned objects!
@breakyourcrayons
@breakyourcrayons 4 жыл бұрын
feelthefears I know right! It’s quite annoying. I’m just in the middle of a project so will continue testing once it wraps. Seems to be more of a color space issue with the displacement map but there isn’t an easy way to convert it in Houdini like there is in nuke... will post another video once I figure it out!
@feelthefears
@feelthefears 4 жыл бұрын
@@breakyourcrayons Exactly, I tried to use some color corrections to get the approximate conversion between color spaces by bringing in a converted gradient in HOU and trying to somewhat match it but it's not good even for an approximation. I have a scene that I use for my scanned objects that creates LODs and appropriate maps but I'd rather avoid it here. If you can't find a solution our best bet would be to ask nicely Juanjo and get a RSutility node that converts between the spaces. And then Quixell can update their HDA for map assignment of we can modify it ourselfs.
@jrosas24
@jrosas24 3 жыл бұрын
Very insightful and helpful, I too bumped into this problem recently having just started with megascans so thank you for sharing your findings. Have you found a way to convert the displacement map from log to linear inside Houdini COPs context?
@breakyourcrayons
@breakyourcrayons 3 жыл бұрын
Jose Rosas Hey Jose! Glad you found it helpful. Unfortunately I haven’t had a lot of time recently to test it further. Will do some more testing soon! I ran it by some very smart people I know and apparently converting anything log2lin in Houdini is quite difficult. The foundry are also very secretive about their log2lin node. Anyway, someone mentioned that using an offset will help. I tried this in nuke and it does do a very good job, just haven’t tried it in Redshift yet. Redshirts color operations are also a bit backward for me. Not super artist friendly unfortunately. Will post another video in the next few weeks with some more info and a tool for baking out custom LOD’s. All the best!
@jrosas24
@jrosas24 3 жыл бұрын
@@breakyourcrayons Nice to know there are some workarounds, I know little to nothing about color spaces but I did find this one post in the SideFX Forum, haven't had the chance to do proper testing yet, but I'll share it none the less if you want to take a look at it: www.sidefx.com/forum/topic/61397/ I believe that OCIO VOP node acts as a converter, however I am not sure if it is making an accurate conversion from log to linear. As I said, I've just been learning about color spaces. Anyway, looking forward to the next video and congratulations on your content, it's great!
@Fleischmahn
@Fleischmahn 3 жыл бұрын
Thanks for the video, very helpful. Does anyone know how to go about the log to ln conversion without Nuke?
@breakyourcrayons
@breakyourcrayons 3 жыл бұрын
Glad you found it helpful. I have been busy with a production recently so my houdini work has been on the back burner. Gonna be back at it soon but I did find this: fnordware.blogspot.com/2008/11/cineon-converter-for-photoshop.html I haven't tried this method in photoshop but it seems to do the same thing. Please let me know if it works out for you!
@Fleischmahn
@Fleischmahn 3 жыл бұрын
@@breakyourcrayons It seems to work pretty fine. Actually downloaded the Nuke demo to compare the results, they are the same. I was pulling my hair out over some maps becoming completely blown out when put through the plugin. However the same thing happened in Nuke's log2ln. Some of Quixel's maps are just completly borked I guess. Cheers man!
@cwidd1929
@cwidd1929 Жыл бұрын
20:37 pretty damning comparison
@tyehansen5519
@tyehansen5519 3 жыл бұрын
Hey great video, im running into a issue where when I go to select my high LOD in the file node. Instead of seeing all the LODS separate LOD 1 LOD2 LOD 3, etc. I see only one option that is "LOD$F". Your help would be greatly appreciated
@breakyourcrayons
@breakyourcrayons 3 жыл бұрын
Hey bud, Houdini is picking the LODs up as a sequence. There should be a checkbox some where that will force houdini to see them as individual files. If I remember correctly, its in the bottom left area of the pop-up window you get when reading the file in. Hope that helps! You will need to makesure 'Highpoly Source' is enabled in Bridge in order to download the full res file.
@tyehansen5519
@tyehansen5519 3 жыл бұрын
Thank you for the help, I managed to separate the LODS. But even after checking off the Highpoly source option in bridge, there seems to be no high.fbx file in the file folder. Do some assets not come with a highpoly source or is there something simple i'm missing out on?
@breakyourcrayons
@breakyourcrayons 3 жыл бұрын
@@tyehansen5519 hmmm, thats pretty strange. I'm pretty sure all assets should come with a high poly source. Only other suggestion I have is checking the 'Highpoly Source' in Bridge then hitting, 'Redownload'. That should download the asset again plus the highpoly source. If there still isnt any high poly source then you may have to contact Quixel unfortunately. Try a different asset too just to check if it could be that specific asset you are trying to use. Goodluck!
@tyehansen5519
@tyehansen5519 3 жыл бұрын
@@breakyourcrayons awesome thank you for your help!
@Moddance19
@Moddance19 3 жыл бұрын
I’m a bit a noob but is it possible to bake my own map using substance with their textures?
@breakyourcrayons
@breakyourcrayons 3 жыл бұрын
Tydell Williams hey, to be honest, that should be possible. I haven’t used substance myself but I assume you could plug all the textures into the obj via substance, manipulate them and bake out new maps. Definitely give it a try
@feelthefears
@feelthefears 4 жыл бұрын
Hey, while in my opinion even the highest poly LOD is prety low poly and I like the idea of creating a lod from high poly sources, are you sure there wasn't something wrong here? LODs from megascans look quite good when setup correctly.
@breakyourcrayons
@breakyourcrayons 4 жыл бұрын
feelthefears hey bud, from the tests that I was doing I believe that the only thing wrong is that the displacement map is in the wrong color space for Houdini/redshift. It appears to be in log space. Once you convert it back to linear like I did in the last 5 minutes of the video, only then did the displacement start working like I was hoping it would. I’m going to try test it on the default LOD0 Quixel provides. I only realized this after I finished making the tutorial haha.
@breakyourcrayons
@breakyourcrayons 4 жыл бұрын
I made this video after I brought up this issue with Quixel 2 weeks ago, the post might shed a bit more light on what we were experiencing: help.quixel.com/hc/en-us/community/posts/360011345318-Displacement-not-working-in-Houdini-Redshift
@feelthefears
@feelthefears 4 жыл бұрын
Break Your Crayons thanks for the detailed reply. I must admit i haven't been rendering lods, only for basic tests. I've basically been using lods only for viewport and at render it switches to full res instanced geo. I find that the fastest workflow especially since i can just copy and paste lods like crazy and see full res in redshift.
@feelthefears
@feelthefears 4 жыл бұрын
Oh yeah, great video and thank you for bringing this to our attention.
@breakyourcrayons
@breakyourcrayons 4 жыл бұрын
feelthefears oh nice! That sounds like a good method. Are you baking out RS proxies from the highpoly source? Just wondering if you have experienced any crashes due to RS running out of GPU ram? I only have an 8gb card so I have to be careful about using too much memory/too many high poly assets. Anyway, thanks for the feedback! Really appreciate it.
@cullenhassel8131
@cullenhassel8131 3 жыл бұрын
Is an HDA for this process still in the works?
@breakyourcrayons
@breakyourcrayons 3 жыл бұрын
Hey Cullen, Yes it is! My apologies for such a delay, I am currently moving into a new home and wont be able to upload it for another week. I will be releasing it asap!
@cullenhassel8131
@cullenhassel8131 3 жыл бұрын
@@breakyourcrayons WOOO!
@metaturnal
@metaturnal 4 жыл бұрын
thanks! again, really helpful! I have a question. in Renderman the default displacement 0 is 0.5. the range is -1 to 1 you mentioned black would normally be 0. is that an absolute / universal truth, or something that might change for any render engine's own standards? is a negative displacement not wanted /not something that's usually done? could you make a guess as to if 0.5 is referring to 50% brightness or a spacial dimension? and if should remap it? no worries, if you're wrong that's no biggie.
@breakyourcrayons
@breakyourcrayons 4 жыл бұрын
Hey bud, I’m not sure if I understand, is the displacement amount set to 0.5 in Renderman? Or are you saying that 0 black is actually 0.5 in Renderman? If the range is -1 to 1, I would assume 0.5 is just the strength but again, I’m not sure. Unfortunately I don’t think it’s a universal truth, I haven’t used Renderman, Arnold, Octane etc so I’m not sure exactly how they interpret color and values differently. Negative displacement is totally possible and I’m sure people do use it. In a linear workflow though, I don’t expect the values to dip below 0. They can go above 1, but as soon as values become negative, that when I start to feel something is wrong.
@metaturnal
@metaturnal 4 жыл бұрын
@@breakyourcrayons Heyhey :) Well maybe I shouldn't bother you with this, since you don't use Renderman. I'll just explain it, so you know what I meant, but don't worry, I'll bother someone else to get the solution. I'll just have to try it out using your method. I think I might have also just interpreted wrong. So by default when you export from Bridge to Houdini, using Renderman the Pxr Texture node is piped into a Pxr Displace Transform Node. It's set to Displacement Type: Scalar Displacement Height: 1 (range 0-1) Displacement Depth: 1 (range 0-1) Remapping Mode: Centered (other options are 'None' and 'Interpolate Depth and Height' Displacement Center 0.5 (range 0-1) I guess it' might just have been remapped, so it doesn't mean there is actual negative displacement going on. If you could just elaborate as to what you mean by: "that's when start to feel something is wrong"? It looks wrong, I'm assuming? If it's linear is determined by the file type of the displacement map and it's color space?
@feelthefears
@feelthefears 4 жыл бұрын
@@metaturnal It depends on the map. You have a peek at the map and look at the values. Then you remap it. In redshift you remap 0-1 to -0.5 -0 0.5 at least with megascans since they don't contain negative values in their maps.
@metaturnal
@metaturnal 4 жыл бұрын
feelthefears okay thanks for clarifying! I was a bit confused by the statement made in the video.
@HideDesignSnc
@HideDesignSnc 4 жыл бұрын
tHIS A great Tut, but this defeats the idea of megascan, and they should fix it.... maybe this could be automated in some way?
@breakyourcrayons
@breakyourcrayons 4 жыл бұрын
Simone De Marzo thanks bud! Glad you liked the tut. In the middle of a project but hoping to automate it once I have time to figure it out :)
@feelthefears
@feelthefears 4 жыл бұрын
@@breakyourcrayons hey, did you mange to solve it? I'm gonna have quite a lot of assets in out next project so I've decided to create an asset for baking since this is unacceptable. Also, scattering seems to be broken, or worse than before so I've just createt a new setup for that.
@breakyourcrayons
@breakyourcrayons 4 жыл бұрын
feelthefears hey hey! No ‘real’ fix at the moment since log2lin color transformations in Houdini/redshift seem to be way harder than they need to be. But a friend of mine built a script/shelf button that will automate the process. Send me an email and I’ll pass it along! Keen to see your scatter setup too!
@feelthefears
@feelthefears 4 жыл бұрын
@@breakyourcrayons Great, I'll send you both scattering HDA, and the way I'm approaching instancing when manually placing objects, and a scene for baking displ with houdini. After I clean it up though, wouldn't want you to see my mess. I have to admit that using instanced high res proxies for everything seems to have a smaller ram footprint for me, than subdividing to that level. If you're not using hundreds of models, it works, and time to first pixel also seems quite faster.
@jordi-rohtau
@jordi-rohtau 3 жыл бұрын
Mmm... It is a grey=zero displacement map, pixel values of 0=displace inward, pixel values 127 (mid grey)=no displacement and pixel values of 255=displacement outwards. Just offset the color on your texture in the shader and everything should sit in place correctly.
@breakyourcrayons
@breakyourcrayons 3 жыл бұрын
You are correct! Took me a while to figure it out in Houdini. Log2lin conversion changes how the map is interpreted, although it doesn’t always work as expected. Offset in this case is the way to go. Finally found the offset in the node reading the displacement map 👍🏻
@jordi-rohtau
@jordi-rohtau 3 жыл бұрын
@@breakyourcrayons That is great, I was asking a friend and he suggested Quixel probably do that the old fashion way (here showing a bit of my age) because of potential compatibility issues with some tools that can't handle negative numbers.
@lyndajones1133
@lyndajones1133 3 жыл бұрын
dude wtf. every video i find to help with this ads more confusion and headache. starting to loathe plugins inside houdini. my megascans plugin box does not look like yours as it doesnt have the CONVERT checkbox like yours does. smh.
Houdini: Quixel Megascans workflow rendered with Redshift
35:14
Break Your Crayons
Рет қаралды 12 М.
НРАВИТСЯ ЭТОТ ФОРМАТ??
00:37
МЯТНАЯ ФАНТА
Рет қаралды 2,6 МЛН
39kgのガリガリが踊る絵文字ダンス/39kg boney emoji dance#dance #ダンス #にんげんっていいな
00:16
💀Skeleton Ninja🥷【にんげんっていいなチャンネル】
Рет қаралды 8 МЛН
아이스크림으로 체감되는 요즘 물가
00:16
진영민yeongmin
Рет қаралды 60 МЛН
HAPPY BIRTHDAY @mozabrick 🎉 #cat #funny
00:36
SOFIADELMONSTRO
Рет қаралды 17 МЛН
Houdini: Quixel Megascans Displacement using Redshift
4:58
Break Your Crayons
Рет қаралды 10 М.
Houdini - Tessellation And Displacement Tutorial
13:05
Maxon Redshift
Рет қаралды 45 М.
Learning to trippy spin // 3 hrs and 97 attempts
12:01
Joshua Bardwell
Рет қаралды 39 М.
The Secrets of Photorealism
24:38
Blender
Рет қаралды 816 М.
[TUT] How to use PBR Materials in Redshift and Houdini
37:45
Right-Brained Tutorials
Рет қаралды 29 М.
Maya Pro Tries 3D Modeling in Blender
43:52
JL Mussi
Рет қаралды 153 М.
Alex hid in the closet #shorts
0:14
Mihdens
Рет қаралды 10 МЛН
Не по уставу #история #ссср
0:54
MOTIVATION
Рет қаралды 930 М.
СЛАБОВИДЯЩИЙ и ПОЛИЦЕЙСКИЙ
0:15
Клаунхаус Kids
Рет қаралды 1,4 МЛН
Эффект Карбонаро и нестандартная коробка
1:00
История одного вокалиста
Рет қаралды 9 МЛН