Blender Tutorial - Fake Interior mapping shader (Parallax mapping)
HTML-код
- Опубликовано: 1 авг 2024
- You can now download this shader as a node group ready to use:
cedeagler.gumroad.com/l/cegbj
Hello, after so many hours (between the shader and the tutorial) here is the tutorial.
The Unity video I used is this: • UNITY SHADER GRAPH wit...
** Get 10 ready to use interior mapping room textures for just $1: cedeagler.gumroad.com/l/prfixh
Voice courtesy of readloud.net
Songs used: Fillmore North - Where were you (WIWTG)
Karmawin - Sunset beat
Tags: blender, parallax, mapping, interior, shader, tutorial
if u have issues rotating it, stick a ''vector transform'' node between ''geometry'' and ''multiply'' nodes, and it will work
gracias, te amo :D
xD glad it helped!@@worldother2080
Man you completed this shader, now it's 1000 times better. Pinning this.
What settings should I set?
Object - world - camera?
I have (Vector) (World) (Object)@@esarchiart
This is great! I am now going to export a ton of parallax shaders! For anyone who needs it, here are the settings to export the proper image format I used:
Render Properties:
-Cycles (Eevee won't work)
Camera
-Place camera in the exact center of the cube you're decorating.
-Rotate (x:90, y:0, z:0)
-Camera Type: Panoramic
-Panorama Type: Equirectangle (only available in Cycles)
Output Properties
-Resolution X: 1000 px
-Resolution Y: 500 px
-Aspect X: 1
-Aspect Y: 2
-Image format: OpenEXR
-Codec: DWAA
I also found it helpful to send the node tree output to the Principled BSDF shader's emission to give my material more light.
Not sure what I did wrong in the node tree but the parallax material was pointing the wrong way so I had to face the camera towards the cube opening instead of the back wall before rendering an image.
tysm
You are a life saver even though you wrote this 4 months ago it still helps me. Tysm!
does the room have to be a cube? can it be rectangle?
thank you
When you say to place the camera in the center of the cube do you mean the origin or the front part so it doesnt clip in to the wall?
Unfortunately this shader is created on the back face of the plane. To fix it so it works on the front face switch that Combine XYZ Y value to -1 instead of 1. Then change the Vector Rotate node to -90 instead of 90.
Hope this helps someone.
Another, at least for 3.3.0 version, next to Geometry, Multiply incoming for (-1, 1, -1), and Texture Coordinate must be Generated instead of UV
This is so good. I discovered about this technology few days ago, and today I finally found how to actually use parallax mapping. Thanks!
Omg it's here! I liked it before but just had the time to watch and comment. I really appreciate the work you put into this to even show us how to create the hdri. Thank you so much.
Thanks, comments like this is why I make the effort 🙏🏻🙏🏻
thats really really awesome man! just found out about parallax mapping and i already starting to love it. great job
Thanks for the tutorial!
If anyone is wondering why step around 1:57 looks so different in a new Blender scene: Go to Render (camera icon on the right side) -> Color Management -> View Transform, and here, switch from AgX (new default) to Filmic (default from when the video was made)
After following this tutorial the second time at .5 speed I got it :) Amazing, thanks for sharing!
omg dude this is amazing! Thanks so much for the tutorial
Dude really awesome tutorial 🤩👍🏼
Thanks a lot this will help me increating complex building rooms
I want to try this out later, thanks!
Thanks. This seems perfect! Exactly what I was looking for!
very helpful and simple lecture, thanks for sharing!!
Wow ! It's magic ! 🧙♂️
Thanks a lot 👍🏼
Dude, thank you.
I had to go through a bunch of other videos that talk about the shader but don't actually explain how to make it
Or those godforsaken "premade node group" videos ugh
It took me so long to realise you used a enviroment texture instead of a texture 🤦
Oh, that can happen. Fortunately you realised what was wrong.
GOD THANK YOU
You can fix the shader not working on other axis by using a Vector Transform node after the Geometry.Incoming input (Vector, World to Object), then Vector Rotate (Euler, Rotation: (90,0,-59) )
I'm not sure why it's -59 degrees so I can't give an exact value but it works good enough
edit: something was weird with my scene, in another scene I just needed (90, 0, -90)
OMG THANK YOU!!!
@@sintelaris Happy to help :)
@@marshmallow_fellow doesnt´t work for me. I tried to rotate the plane 90 degrees on the y-axis instead of 90 degrees for the x-axis, but your solution also doesn´t work for me. Can you explain me what´s wrong or (if ok for you no pressure) share me the shader of your solution. Maybe you read this comment and you may can help me. Greatings
@@schuaaro0912 you need to light the plane up correctly in edit mode and rotate it in object mode. I couldn't find a solution that worked for faces facing in different directions in the same object. it should be facing the positive x direction when the object has 0,0,0 rotation. If I find a better way to do it I'll let you know, for now I hope that helps :)
@@marshmallow_fellow found a solution. A Vector Transform Node was enough and I connected one node the wrong way. Sorry, was stupid me, but thanks for your help :)
A life saver. Thank you Bro
Thank you for your comment 🙏🏻
lovely, thank you!
thnks bro. you have my support 😘
Great job🎉
This is so good!!! Thanks. I had one issue - right to left movement in final projection went the wrong way. I triple checked but did not find any errors, so i changed the first Vector multiply right after Geometry(incoming) from (-1,-1,-1) to (1,-1,-1). If anyone know why please let me know
insane guy
amazing
incredible
:D
Saving this just in case :D
Thank you so much
Awesome!
Great job thank you
great video thank you! subbed :)
Muchas gracias
Brain explosion, amazing
I ended up making a blend file with the shader and a sample HDRI for free, you can get it here:
ruclips.net/video/CB7xU_txbuM/видео.html
It only works when you're looking at the object from Y axis. to fix the issue, just add vector rotate after "incoming", rotate it all by 90 or whatever your object's current rotation is.
You can change the shader to make it work on the desired axis, I got a video with this shader inside a node group and it's just changing one number
How can I do the room from the HDRI? How should I crop it to make look like a 3-walls room? How I can cut the 4th wall?
Hi, as far as I know it shouldn't matter if your 360 HDRI room has 4 walls, I made it without a wall and just render with transparency but it should work with 4 walls.
You can also get the shader ready to use in one of my most recent videos.
@@cedricaguilar4501 Thanks! it is a really good tutorial!
Hi, when I rotate the plane on the x axis the image is distorted, I've tried to correct it by changing it to 0, 90, 180° and it doesn't correct it, is there any other way to fix this?
So useful tutorial, you earned a sub. But I am thinking where to use it, its use case is less. Only night time. In daytime sunlight will come inside through windows
If you want to use it on daytime scenes you would need to make daytime interior renders.
So cool, thank you.
I notice the camera needs to sit in the middle of the room.
What if u would like there to be a curtain in front of the room?
Is it possible with this method?
It would be possible but using something else. This method + the curtain in a different mesh. I got a video that might help you with building windows and using this method.
Hi. How to rotate your shader on the Z axis by 90?
Genius
I was just porting a Unity shader to Blender but it was kind of complicated, thanks
I hope every blender artist doing archviz can see this
Thanks, I appreciate your comment 🙏🏻
This is really awesome. One question, does this work on a subdivided cube for each faces of it?
There's probably a way to do it that way but I haven't tried it.
yeah but can u go inside of the portal or is it just for show. I want to try what Stankey Parable did. they made portals like that in doorways, but want to know if there is any way the camera can go inside of it
if you want to go inside, just make the interior. This method is for background interior details, not for close ups
The room is facing the Y axis, but if i rotate the plane for example 90 ° around Z the image of the room is not correct anymore. Did I miss something ?
I would not rotate the plane if possible, it's a tricky shader.
Try applying any rotation as long as the plane sits vertically (I doubt the shader would work if the plane is on the ground)
Can you post a blender file with the setup you show so we can follow it easier? This is great, thanks!
hey, I ended up uploading the blend file to gumroad, if you want it go to my last video
@@cedricaguilar4501 Great. thanks for the help tried following your video and still messed it up several times 😀
Now can you add a another paralax shader within the paralax shader? Say for example adding a 3d person standing in the middle of the room? Because the couch is actually now 2D. you can't actually see the side of it, nor does it extrude out to the floor
I mean you probably can add an object in the scene but this shader is not for closeups, it's for details at the background without the extra modeling of the interior and saving render time
I fail on first step , how to create a plane ?
3:39
Why do you add a multiply node with 1 for all values?
It will return the exact same value as input, what is the point of this node?
When changing that multiply it actually changes the shader, trust me. By the way, I got a video with the shader done and ready to use
hey please reply , can it be exported to game engine with same effects?
Hey, I haven't tried that but I guess it won't work.
If you want this effect in Unity, there's already a tutorial for it. If you want this for Unreal, I've seen there's also a way to achieve this effect.
This tutorial is great! That said, I have some additional questions:
How do you do this for non-rectangular windows? And can you do this where the interior is a corridor? How about when you have two windows that share an interior?
I haven't tried it with non-rectangular windows unless you mean the window frame.
You can use it for a corridor-like room by adjusting the node groud (the one I published in a different video) but your HDRI has to be made for that shape, hard to explain with words.
If you want to use 2 windows for 1 room with this effect I'd probably do a wider room HDRI and create a wall with 2 window frames in a different mesh.
@@cedricaguilar4501 Thanks for the timely response! As for clarifying the questions, yep I mean the window frame, since when I tried changing the shape of the window in the example you gave with your node download, it warped the output image. So if there's a way to keep the texture projection the same despite it being displayed across varying window shapes, it'd be great!
As for the corridor solution, I'm not too familiar with HDRI so I wouldn't know the first thing about how to make it a different shape (at least, at this time), so all I assume you mean for me to follow the panorama render tutorial you posted at the end of this video but instead do it in a corridor instead of a tiny room.
As for the two/multiple windows for one room, if I'm understanding this correctly, it sounds like I have to pretty much repeat what I have to do with the corridor above but for the "window" proper, I would have to have a mesh with the matching number of windows, which makes sense enough!
I don't understand how to make the square room he dint make any sense to me does anyone know what he meant
I mean, use a cube for the room, put the camera at the center and render as equirrectangular image with 2x1 aspect ratio
is there a way to make this work on a cube building? if i look at it from another side of the building its just black
Hey, I think I know what you mean. This shader works for 1 side, if you want to see the same from other angle you probably need to duplicate the shader and rotate it. If your HDRI has all faces rendered, you just need to rotate in the shader.
@@cedricaguilar4501 the problem is that I would like to use this on a whole city and there are many buildings at different angles
Is it possible to put this shader on a moving object? I've been fiddling around with the nodes, but I am not getting the result I want.
Ah, nvm, solved it!!! with the Vector Transform node between Geometry and Multiply nodes, you gotta set that to Vector> World and Object
Why the multiply by one node though? :D
Honestly because that's how the Unity tutorial was but you can change the 1 to transform the shader, scale or move on an axis
Can I use this shader for VR?
I haven't tested that yet, feel free to try it and let me know if you can
hi sir, you talked abouzt changing aspect ratio, but you didnt made it as i see its same 1920 x 1080 and you didnt changed it ? how does it strechet ? i followed everything, but the end is littlebit fast to understand, can you help me on this ? i just want to make my own image and struggle. i try change rotation in the shader but the result is wired. would be epic. thanks showing your skill sir. have a nice day
Hi.
I didn't change the aspect ratio of the render because I forgot (but did it later, off screen) if the room is a square and the image is 2x1 (for example 1000x500, Equirectagular) it should work right away with the shader, maybe rotating as I did before showing how to create the room. If you have any questions please let me know.
@@cedricaguilar4501 ok solved, thank you sir ! awesome
@@cedricaguilar4501 Hopefully you see this: What if the room I'm working with isn't square? I'm working inside a room approx 8 feet deep and 20 feet wide 8 feet tall (scaled 1:1 in blender). How should i set this up?
@@dylanreid3955 hey dude, did you figure it out? im in the same situation as you now
@@AshKetchup123 Still haven't figured it out. Closest I've gotten is by creating my own parallax HDRI by rendering a panoramic of the right size and adjusting the dimensions in the nodes accordingly. Hope that made sense...
doesn't work in 3.6
it gives a weird warping effect like its curving inwards. i followed the tutorial exactly.
Maybe you could try the shader, I posted it ready to use in another video. Keep in mind right now it only works in certain rotations (XZ and YZ axes if I'm correct)
Hello, can you show a video of 3DMAX making parallax map?
Hi, I'm sorry but I don't use 3DMAX.
There's probably a method for this in 3DMAX but I don't really know.
@@cedricaguilar4501 OK, thank you for your tutorial. Have a nice day
1:02 node viewer?
With Node wrangler add-on Ctrl + Shift + Left click if I'm not mistaken
now level 2: is it possible to export this into my mobile phone and have this effect wile rotate my phone ? this would be legendary + epic Sir ! i would pay for this if you can show how to export this have this effect on my phone. awesome sir
that's a tough question, you mean a video where this effects works? an image or a game?
Right now I know how to make 360º videos or images and you can watch them with your phone but I don't know what exactly you mean
@@cedricaguilar4501 yea a video is easy just render out and go,...but i want to control this with my phone, when i move my phone to left the interior will move to left too. you tutorials are showing the effect is controled by camera, when i move the camera in blender the shader / mapping is reacting on this camera view. but how i can bring this to my phone, so the camera is like my phone, and when i move my phone the picture is also moving and showing the effect ? hope you got it.
i think you have to record full 360° video of this effect and call it with your phone, yeah i think its a programing thing need to make on your phone :( ok was just a idea. but its harder to realize i think. outside of blender the shader dont work, maybe in Unreral Engine, but on android i think its not working ...hm would be cool to have but im not programming
@@blackswan6386 Moving the camera with your phone would be possible but only at rotating, basically a 360º video. This effect should work for a 360º video but it would only be deformed by the position of the rendering camera.
I did not understand at all how, with a conventional perspective camera, we got a panoramic image (HDRI) of the room in the last part of the video.
To be honest I just replicated a workflow from Unity to make it work in Blender.
It just works. You can download the node group in a later video and you can improve the shader with the information of the pinned commen in this video.
Yeah. The tutorial skips the part where you set the camera to Panoramic with Panorama Type set to Equirectangular. These options are only available in Cycles.
i follow the node you set, but the result is totally different.
I actually had to remake this shader 2 times for the tutorial because of that, so try to make it again and make sure you follow each step. I had the viewer node so it's easy to follow along.
@@cedricaguilar4501 yea, i follow twice, the result is still wrong.
ok, i found out the issue, the place rotation affect the result. need to rotate the place to same as yours
is that possible to make it look from other angle too? maybe always facing camera angle?
Hi, i managed to make it look from angle as well. thanks for you tutorial
it didnt work for me
You can download the node group ready to use.
5:04
Dear Sir!
How can I export the model I have created to keep the paralax effect when I import it into another blender project? Unfortunately, every time I export it, I get a white or black blank page.
Thank you for your reply!
Hello
Do you mean you have created a room interior and you want to use it for other projects?
Keep in mind this shader only works if the plane with the shader is 90º on X or Z axis, it can't be tilted
What I would like to achieve is that if I create a parallax room as shown in the video, in which format should I save it to be able to use it in Godot or Unity?
Unfortunately if I save it currently, I only get an empty (white or black) plane.
How did he just figure this out!
What do you mean exactly?
@@cedricaguilar4501 As in, figure out the correct math nodes and everything, is it like a thing you just learn one day or something
You didn't explain the meaning for each vector node manipulation, I ended throwing my cat into the laundering basket. Serves you right!
If you want to know why and how it works, check the Unity tutorial it's based on, the link is in the decription.
1 year later, I'm struggling to understand the math here...
Don't worry about understanding why it works, if it works it works.
But if you are talking about making the shader you can just download it.
Maaan , how to do this in unreal?:)))
I looked up while trying to make this for blender, I think there's a pack that includes a shader for similar results