[Houdini] Week4 – Rendering

Introduction

This week Mehdi will tell us about the rendering content.

Tips:

1. Arnold can be rendered with GPU, so the speed will be faster.

2. Press the Render button more, because sometimes the rendering is not refreshed automatically.

Problems:

1. I don’t understand Linear workflow very well.

2. Unable to download OpenColorIO.

3. Unable to install Arnold into Houdini.

4. Gird’s textures are displayed incorrectly.

5. The picture cannot be rendered with Arnold.

6. In Obj, Geo (particles) does not display the Arnold option.

Process

Before starting the operation, Mehdi talked about some concepts about rendering. I referred to the blogs of crystal and Yu, and compiled the following knowledge:

Linear workflow

https://www.btbat.com/2541.html

HDRI

https://www.baidu.com/link?url=EcnkFx597H8_HDXh9J8DS0jkpDoIP-uahl0pWm8CY_UhH1c4xVEzSV6p8BNRV-Kuw-dhNm-WmlXZ6eeh0wesb896000deedc896603=&eqid=9dedc896603

https://hdrihaven.com/hdris/

sRGB

https://baike.baidu.com/item/sRGB

ACEScg

https://www.baidu.com/link?url=X6rnWdabkcL5BCUf2vH0mxL1zi3XLrUaiXCPovytdqAPW8INq-nobexqkud6dMduk_BkDuDqc-GlxJZgCnb21765a000a&wd=&eqid=8b21765a000a

https://zhuanlan.zhihu.com/p/102701796

Mantra

Renders the scene using Houdini’s standard mantra renderer and generates IFD files.

The specific parameters are more complicated, so you can refer to Houdini’s help for practical use. For example, Controls the number of primary rays Mantra will use to sample your scene per pixel. The two numbers represent an arrangement of samples in the X and Y axis and are generally the same number. Increasing Pixel Samples will result in a cleaner, higher quality image. However, since all other sampling values ​​are multiplied by the number of Pixel Samples, they should only be increased when necessary. Represents the arrangement of samples on the X and Y axis, and is usually the same number. Adding pixel samples will result in a clearer, higher-quality image. However, because all other sample values ​​are multiplied by the number of pixel samples, so They should be added only when necessary.)

IOR

https://baike.baidu.com/item/%E6%8A%98%E5%B0%84%E7%8E%87/788655?fr=aladdin

https://www.btbat.com/12032.html

Exercise

Now we create a Camera and Light to view the rendering effect, we can see that it is pretty good. Then I disabled light and replaced it with Environment light. The default Environment light is white light, so the model will be rendered white, but I can import a HDRI that comes with Houdini, which will produce ambient light!

But Houdini’s own HDRI is in rat format, not hdr, so this is only suitable for Houdini, not compatible with other renderers (such as Arnold).

Now back to light, the default is point light, but we can change to spot light, this is also recommended by the teacher, because it limits the area of ​​the light, instead of affecting the surrounding light like point light, so its rendering speed Will be faster.

There is also Distant light, which simulates sunlight, so use this if you need sunlight. But the sun option below is more useful because the edges of its shadow can be softer.

Now is to add material to the grid. We need to go to the mat contest, create a Principle Shadow, then create a new material in the grid, and select the required principle shadow.

We now need to review our ACEScg workflow, which requires us to download the OpenColorIO plug-in to reach the level required by the industry. I spent a lot of time debugging and downloading. Finally I succeeded. I can choose ACES to observe my graphics, which is obviously better than the default.

Then I have to try to render with Arnold. When I downloaded it for the first time, the installation was not successful. Houdini still does not have the option of Arnold. So I found someone to help me install Arnold. We can go to Arnold’s official website to directly download the version suitable for Houdini. After installation, cancel the mantra in Out contest and join Arnold so that we can choose Arnold when rendering.

We will find that the model rendered by Arnold has no material. This is because shop_material (a node) does not belong to Arnold’s material, but belongs to mantra. So we can use attribute delete to delete this primitive node and delete this texture.

We all know that Arnold has its own material, so we can add the corresponding material in the mat, and then drag it directly onto the object to add the material. In addition, we also need to add Arnold lights. This is the same as the operation in Maya.

The effect is good now!

But we can convert to Skydome, so that we can add HDR to the background, and change the angle by rotating the Skydome, so that we can get great lighting effects. Don’t forget, you have to press render once after adding the material, otherwise the scene will not change.

How do we improve the rendering speed? You can go to Out to change the Arnold rendering device and change the CPU to GPU. Although this will increase a lot of noise, once it completes a rendering, the speed will increase when the parameters are modified later.

Change the parameters in Mat to change the effect of the material!

There are some questions the teacher said here. Why can’t I import textures? Because the geometry created directly by Houdini cannot generate UV directly, we need to add it ourselves. At this time, we need a new node:

uvproject: Assigns UVs by projecting them onto the surface from a set direction.

But my UV still looks weird. It may be a problem with my UV. After I checked, I think it might be a format problem. I can display it with jpg images, but png can’t. Later, I tried it again. It should be because the size of the picture affected the display. Anyway, I successfully solved the problem!

Because of the linear workflow, we may need to correct the color. But I can’t see any changes in my render photo.

I can try to render an image. We come to Arnold, and you can select the desired name and format in the Output of Properties. Then you can check the rendering status in the Render Scheduler. But I just couldn’t render it, and only successfully rendered one. According to my guess, I tried to open it before it was rendered, so an error occurred. I can also check the difference between LUT and OpenColor in the image viewer. 29 30 31 32

Now we can render the particles and robots of week2! In preparation, we will create three geos, particles, robot and grid, and an environment light. In order to display only the particle effect, I need to modify the source file and create a filecache. In the robot, I only need to copy the copied object to the object merge. Rendering with mantra in this way looks good.

object merge: Merges geometry from multiple sources and allows you to define the manner in which they are grouped together and transformed.

But we should use Arnold, so I have to delete the lights and textures. Add Arnold light to Obj. Add Arnold to Out. Add Arnold material to Mat and associate it to the model. Here I forget that I did not press the Render button, so I must remind myself that I must press Render to change some important parameters.

But we want to separate the robot from the hammer. So I can go back to the robot and create a material, where I can select the group, because this test model has named each primitive, so we can quickly select the hammer and add the material. Of course, to avoid problems, we can remove the material in the geo and add a new material to the new group created by the material. Among them * means all (you can also see it when choosing the export format, ^ means except)

Mehdi talked about some rendering tips.

For example, you can shift+drag to select the rendering area in the Render View, which can speed up the rendering. You can cancel by shift clicking in the black area outside the rendering area.

For example, add flat to the network of Arnold Material Builder. Flat: A simple color shader node which just allows a color with no other effects.

For example, add curveature to the network of Arnold Material Builder. Curvature: A collection of mathematical shaders. Math shaders can work on color or vector inputs.

For example, add ramp_rgb to the network of Arnold Material Builder. This can be used in conjunction with curveature, otherwise it has no effect.

Or we can connect these to create interesting effects.

Now we start to render the particles, but we know that the particles are very large at the beginning. We used Attribute VOP to change the size and color of the particles, so I need to modify the node tree and press render. I can even modify the shapes mode directly in the geo list. Obviously, my screenshots are from the robot, not from the particles, because I don’t know why the particles don’t show the Arnold option!

It’s ok, I modify it directly in mat. In addition to changing the color, if I make the particles transparent, although I can use transmission, this will be slower. Therefore, Mehdi recommends Opacity, and reduce the RGB value together, which can also become a transparent effect.

But we can also add nodes to change the color and transparency of the particles. Because we can’t use bind in Arnold, we can add user_data_float instead of it. It should be noted that Cd, age, and life should be filled in the attribute, and capitalization should be paid attention to. Then output rgb and use ramp instead of control transparency.

Next is motion blur. Because my particles still don’t show Arnold, I still use the robot in Geo to take a look. This needs to be used in conjunction with pointvelocity. Because I can’t experiment, I can only use the teacher’s screenshots. In this way, the particles and the hammer have a motion blur.

Finally, if I need to render, go directly to the Arnold of Out. For the parameters inside, I can interrupt the connection in Start/End/Inc through delete channels. Halt Precision can increase the rendering speed by reducing the bit. Of course, if you want to learn more about Arnold, you can go to this link:

https://docs.arnoldrenderer.com/display/A5AFHUG/Arnold+for+Houdini+User+Guide

In the beginning, I waited for a long time to render only one picture, which was so strange.

Conclusion

This week will be easier than last week, mainly because we need to understand the rendering of Arnold. But I also encountered a lot of problems. Although I can solve some of the problems by myself, I still have unsolved problems. Maybe I can ask Mehdi.

This entry was posted in Advanced and Experimental 3D Computer Animation, Houdini & Lighting. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.