So, to start off this donut rendering project, I did a little research into what it means to be a donut. Merriam-Webster defines a donut as a small usually ring-shaped piece of sweet fried dough. Well, these are neither fried or made of dough, so they must fall under the second definition, something (such as a mathematical torus) that has a round shape like a doughnut. Once I knew what it meant to be a donut, I could start.
For the most part, I relied on Blender Guru's donut tutorial. Here, he goes into the most basic parts of Blender, like moving the camera and editing shapes. It's a nine-part tutorial and probably totals over five hours, but I already watched most of it over Christmas break. I also found, while doing research on CGI donuts, the Stanford Donut Rendering Project. This website from 2006 seems to be a student's 3D modeling project. I wish I understood what tricks he used. With the much better software, I am sure it would have been possible to make the best-looking donuts ever.
I decided to start the project by modeling the plate as I knew I could easily do it without much trouble. I took screenshots throughout the process of nearly everything I did so I could show what I was doing instead of just explaining it. My father's Mac has a screenshot tool installed. When using it, I could choose to save the screenshot or to copy-and-paste it. I chose the latter to avoid having a file full of screenshots and also because the copy-and-pasted ones were of a higher resolution. I had spent a couple hours on taking screenshots of the plate and what I was doing to it when Blogger had a cow and wouldn't save. I did some searching and a guy said to go into HTML mode and copy-and-paste that somewhere else. However, there were a few thousand lines of text, and these lagged the computer badly. When I switched out of it, all the pictures were broken. As such, most of the explanation pictures of the basic functions will be shown on the mug. This tool can also take video with audio so I might do some videos to show what exactly is happening.
To make the plate, I started with a cylinder. Blender Guru said that you should always reduce the number of faces if possible, so I went from thirty-two faces to sixteen. From there, I deleted the top face. This made it hollow and like a trash can with an opening at the top. The mesh, or the object, was then scaled on the Z-axis. This was done by pressing S followed by Z. Pressing X or Y would scale it on the respective axis. S followed by Shift-X, Y, or Z would not scale on that specific axis. This is good if I want to make something wider and longer without making it taller. After that, I selected the top edge and scaled it out, creating a low-poly plate. I had to select each edge individually to do this. There is a shortcut to select an edge loop, but it wasn't working. Later I figured out that I needed to input this shortcut each time I start up the program or it will not do it.
The plate was all low-poly and had no thickness, so I applied a solidify modifier. With modifiers, you can put them on an object, but you don't need to apply them. I applied the solidify modifier so I could edit the mesh's new edge that was created by the modifier. After this, a subdivide surface modifier was added. This smoothed out the plate by creating thousands of new faces. This modifier was not applied. If I applied it, I would then have to edit thousands of faces if I wanted to change something. Some minor modifications for appearance were made and a material added to finish it.
Here is the start of the mug. Often when modeling a real-life object, you'll want to insert a reference image so you can get the shape and proportions right. If you are making a character, having both a front and side view can be of great help. Instead of deleting the top face, I insetted it. This was then extruded downwards and scaled appropriately. I could have done it the same way as the plate, but this saved me from having to do a solidify modifier.
Following that was the addition of the subsurface modifier, but would you look at that! It's not a mug! The modifier averages the faces so large faces with a sudden sharp turn will be smoothed out like that. To fix it, I added a series of edge loops. These made the faces near the edges smaller so the smoothing action was done for a smaller area. Jacking up the modifier also smoothed it out some more. The inside also looks ugly for the same reason. I fixed it using the same method, but it wasn't really necessary since you can't see the inside.
Next was the handle. Another set of edge loops were made around the top of the mug. Once it was rotated so the face was parallel with the camera, I extruded the face. Some rotations and more extrusions were all that was needed, but I ran into multiple problems.
While rotating and extruding, I got a double edge, and I had no idea how to fix it. This can be seen in the top image. The left one was me deleting and adding faces in order to fix that problem. Eventually, I scrapped everything and started over. I got the handle to work well, but when I connected it to the mug, I got that weird shading issue. The problem was because of an internal face. I deleted the face on the end of the handle, but not the mug.
Properly connected now, it looked beautiful. Some more edge loops to tighten the curves and some more thickness to the handle was added.
Time for materials! In Blender, there are three rendering engines. I will be using the Cycles rendering engine as it is the newest, and it is also the one everyone else uses. To set materials in Blender using this engine, you use nodes. There are many different ones for many different purposes. When combined with each other, you can create very realistic images. In this video of a castle being created in Blender, he uses many different nodes to achieve very realistic waves. The types of nodes in this video are very confusing, but they create some nice hair.
The nodes I used for the mug are very simple. They are a diffuse shader and a glossy shader fed through a mix shader. The diffuse shader reflects no light and the glossy shader is practically a mirror. By mixing the two, I can get an object with a reasonable amount of reflectiveness.
Finally, it's donut time! I start out with a torus. After changing the minor radius, I needed to add the frosting.
I press Z to go to wireframe mode. After selecting the top half of the donut, I duplicate it. However, when I move it, I find out it is still connected to the donut. Whenever you duplicate an object, it is still connected to the original. It is sometimes like this and other times they are simply linked together without any visual cues. I separate them by loose parts, creating two objects.
The frosting is placed on the donut, and then the solidify and subsurface modifiers were added. The donut looks too perfect, though.
When in edit mode, there is the option of proportional editing. If I were to choose one vertex and move it, the proportional editing would move other vertices in the surrounding radius. This is done on the edge of the frosting to add a wavy look.
Perfect! Now for the materials. The donut is pretty much the same as the mug except for different colors and ratios. However, there is the addition of a texture node. This generated noise across the surface and gave the frosting and dough a wavy texture. While messing around, I put one of these textures into a color node and got the image on the left.
The other donut was made by duplicating the first donut. I then deleted some of the faces on the frosting and added a new face to span the hole. This way, the donut would look solid despite the hole in it. This face, however, caused problems with the subsurface modifier, so small edits were needed for it to look good. It also affected the particle system. The jelly was a cylinder I shaped to look like it was coming out of the donut. I used glass as the material.
Particle systems are pretty complicated so I won't be going too in depth. First, I added a particle system to the frosting and changed it from emission to hair. However, the hair strands were going in the wrong way. This meant that the normals had to be reversed. Remember when we learned about normal lines in calculus? These are those normals. Once reversed, the frosting had to be solidified in the opposite direction.
Finally, it was time to add the sprinkles. The sprinkle was simply a low-poly cylinder. It was kept low-poly because hundreds of them were going to be in the scene. There are settings to change the randomness of size and rotation. More colors were added. In real life, there would not be sprinkles all over the frosting; they would be mostly on the top. This is where weight painting came in. I could choose which areas to add sprinkles and which areas would be sprinkle-free. The jelly-filled donut had pink sugar sprinkles, so the master sprinkle was made of glass.
This is where the wood texture came in for the table. I found a rather nice wood texture and used it. Unfortunately, most of the good textures are not free. This also prevented me from getting a normal map, so the wood doesn't look as good as it could. I was playing around a bit and made the table a mirror. I also made it look like an oil slick.
Finally, I got some settings I liked. I also added some noise to the table to give it some texture.
Woo, time for lighting. There are a number of different ways to light a scene. There are lamps, but you can also have an object emit light. This is useful in making a realistic reflection. The world itself can also emit light. I am glad I watched Blender Guru's video on this. Now, I have a general idea on how to light scenes.
The type of lamp I used is called an area lamp. These lamps focus light in one direction, and their strength and size can be changed. Strength makes them brighter while size creates harsher or softer shadows. This very much similar to real life. When photographing models, large lights are used to make softer shadows. There is also usually one main light and a number of smaller ones to help diffuse shadows. Walls are also added so a black void isn't in the final image.
In the final video, Blender Guru goes into the various settings of rendering and talks about general composition. The first thing he does is look at the donut and removes the colors that stand out. I do the same and remove the red and purple sprinkles. He also changes the saturation of the table a little. While doing this, I also mess around with the hue and made some blue wood. He also has a video on color theory, which I have watched. It should help me with my scenes, but also with any art I create in general. The jelly is changed a little. I also have moved the donuts and added sprinkles to the plate.
The final thing to do is set up the camera. In many ways, the camera in the program works like a real camera. Too bad I am not familiar with photography. Anyways, I move the camera to capture what I want. I also changed the focus to be on the donuts with the mug in the background.
The various settings for rendering are discussed as well. Now, I know how to get a great looking scene without it taking forever to render.
There it is! The finished scene! It's beautiful, isn't it? I already called up Pixar and sent them my resume. There was a little noise in the original, so I changed some settings to get this. The first one took an hour to render and the second took two and a half hours. I figured I might as well re-render it while I type my blog to get a better version. The noise isn't all gone, though. Weirdly, the second image has a file size nearly five times smaller than the first. I would expect it too be the same or be higher with the settings change. Click this link to see and download it.
I like the look of the scene. The warm light suggests it is morning. Perhaps you just woke up to find this plate of donuts on the table. I am also pleased with the sugar sprinkles. I was not liking the look of the glass sprinkles at first, but they turned out exactly as I planned. The clipping seen on the other sprinkles is a little annoying. There is probably some setting for that, but I will need to find it.
My plan for next week is to make a cheese pizza. The thing I am unsure of, though, is what exactly the scene will be. At first, I planned to go for the right, a sort of mysterious pizza on a checkered table in the darkness vibe. However, I have been thinking that a pizza on a table with a checkered floor might also be cool. You know, like it's in a restaurant. They both tell a story, but which story do I want to tell? I might just end up making both of them. Either way, there will probably be some soda in each scene and a picture or poster on the wall.
Overall, that donut scene took about ten hours to create. I would like to make one scene per week, but that may not be possible. Hopefully, I will be able to work faster and not have to rely on tutorials for the basics now. Nonetheless, I am a couple weeks ahead of schedule. This is because I actually started this scene right after the Shark Tank pitches and because I gave myself quite a bit of time to get it done. I knew I had a few more tutorials to watch and that I was going to have to rewatch one or two.
On a side note, this new show has begun airing on [adult swim]. It is titled Tigtone. I have not seen it, but it is CGI and, if it isn't clear from the top image, ugly. Perhaps I should try for some horrific CGI animation. Either way, I may have to start watching it for inspiration. However, most of [adult swim]'s shows are meant as filler for the wee hours of the night, so it is probably garbage.
Thanks for reading! I know this blog was really long, like twenty-five hundred words long. I had quite a few basics to explain. In future blogs, I will probably include fewer pictures and not explain the basics. No one is going to read my blogs if they are of a ridiculous length, and it also will save me a couple hours of typing.
Please tune in next week for a cheese pizza!
This is actually so cool. I don't doubt that this is difficult and time consuming. I just hope it is fun for you at least. It's fun for us to look at. It looks unbelievable and I can't wait to see what else you have in store. How long does this take you, like in all? And is this one of the shorter projects or a longer one?
ReplyDeleteThe main reason this took so long was because I wasn't all that familiar with the program. Hopefully, future projects won't take as long. I can't really say if this will be one of the longer or shorter projects. I know it was one of the more simple projects. Likely, the complexity will increase with my skill, keeping the time needed for a scene at about the same each week.
DeletePart of the problem was that I needed to research some of the basics and spend some time watching the final videos. As I learn what to do and how to do it, there will be less trial and error, and I will be able to go through a scene much more quickly.
Ten hours for the donut scene?????? That is amazing!!! I commend your patience! Are there any shortcuts you can learn so it is not so time consuming? Do you enjoy the painstaking process? I can't wait to see more!
ReplyDeleteI did enjoy making this donut a lot. As I learn more about the program, I will probably learn what tricks I can use to save me some time. For example, background objects in a large scene don't need to be so detailed. However, everything here was close to the camera, but this is something to keep in mind for later scenes.
DeleteTalk about an introduction! If this is just the tip of the iceberg I cannot even fathom what the rest of the program can do. I'm really excited to look at your creations. Will be one of the blogs I stay tuned into. Good luck!
ReplyDelete