Section 8 (Part 3): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Alas, I have wrapped up the final section of The Complete Blender Creator (Udemy) Course! It’s been almost a month since my previous blog post and at that time, my 3D human head model of Chagum was still far from completion. And when one of my online buddies, Casiodorus, had pointed out how my model reminded him of these creepy aliens from Galaxy Quest, I knew I had to give my model some hair! And so I did.

3Dchagum(addedhair)

To be honest, modelling the hair took an immense amount of time. In fact, it took me about the same amount of time doing the hair as I did modelling the rest of the head! Each individual lock of hair was modelled using Bézier curves following CGCookie’s YT tutorial. Once I was satisfied with the look, I converted each curve into a mesh and joined them together in order to apply a basic toon-shaded black material for the hair. As far as the rest of the model goes, I tried out different material node setups – some of which were shown/taught in the course. Here is an example of a node setup for the skin along with a screenshot of what the model looks like in the software’s 3D viewport:

skinbasematerialnodesetup

3Dchagum(materialized)

Keeping in mind that I wanted somewhat of a toon-shaded look rather than a realistic one, I experimented a bit with the lighting. Here, an industry standard three-point lighting was used and it wasn’t long before I felt confident in rendering a proper image of the model:

chagum front final render

3Dchagum(360spin)

Last but not least, I decided to construct a basic face rig. To do this, I followed Cherylynn Lima’s Basic Face Rig and Eye Track YT tutorial. As you can see, I had a bit of fun giving a quick, smarmy look of perplexity on Chagum’s face:

3Dchagum(riggedanimation)

Overall, I am quite proud of how my model turned out. Perhaps I should have made his hair a bit longer, layered, and thicker, but apart from that, I think he bears a resemblance to his two-dimensional self:

2D&3Dchagum

So now that I have completed the course, “What is next for Taklon?“, you might ask? Actually, I haven’t really decided! I will say that a new version of Blender (Blender 2.8) was released recently and the instructors in this course are adding new content as it pertains to this new version – and for very good reasons; I have heard a lot of amazing things about Blender 2.8, particularly with its physically based realtime renderer, EEVEE. However, the software interface, viewports/editors, and features have undergone quite an overhaul so that means having to learn and re-learn them. Still, when it comes to 3D modelling, I think it’s safe to say that I’ll likely be sticking to Blender and even making the transition to 2.8… relatively soon. Stay tuned for the next blog post! 🙂

– Taklon

 

Section 8 (Part 2): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

In the past two weeks since my last blog post, I think I have been keeping good pace with my 3D modelling of a human head. In fact, I have already completed all of the lecture videos for this last section of The Complete Blender Creator Course. The idea now is for me to apply the knowledge I have learned in constructing my 3D human head model of Chagum, second prince of New Yogo in the novel and animated series, Moribito: Guardian of the Spirit.

reroutingfaceloops

To recall, from my previous blog post, the last thing I had done to my 3D model involved creating an edge/face loop for the eyes and mouth with the knife and rip and fill tools. In the updated screenshot (pictured above), I had used those face loops to quickly create several loop cuts, generating more geometry and allowing higher LOD (level of detail) to be applied later to the model if necessary.

Using the knife tool, I then proceeded to create and re-route face loops across the entire head (i.e.- the nose, nose bridge and across the cheek towards the jaw, outer contour of the face). This was a process that was extremely challenging for me; the concept of using and creating poles (where 3 or more intersecting edges join) while keeping geometry consisting of just quads in order to re-route face loops was difficult for me to grasp theoretically and to visualize, let alone execute in practice. However, I did manage to succeed after a bit of trial-and-error and am quite proud of myself with the results:

routingfaceloops

After creating and re-routing face loops, the bulk (approx. 80%) of the remaining lectures addressed lighting and material node setups (recall that I had shown the node editor and some basic node setups in modelling a fluffy bunny back in Section 6). This is because the instructor wanted to address the concept of photorealism in 3D model rendering. That is, in order to construct a realistic-looking 3D model or scene, it is important to understand the real world implications of light and colour and how we perceive and see things as translated in Blender (under Blender’s cycles rendering engine).

Now I won’t explain the theory behind each of the following terminology involved in Physics Based Rendering (PBR)you can research them along with PBR if you are interested – but here are some nodes in Blender that are worth considering for rendering a 3D image of a realistic-looking human head: Diffuse BSDF, Subsurface Scattering, Glossy BSDF, Layer Weight, Colour Ramp, Fresnel (I thought this one was the most interesting), MixRGB, Geometry, Hue Saturation Value (HSV).

Since I picked an animated/hand-drawn character, and as a result, will likely apply materials and textures in a way as to render it ultimately in a toon-shaded style, I have the luxury of not worrying too much about high LOD or having complex material/node setups. I am not looking to achieve a realistic look/rendering – just an accurate one as it pertains to the reference images.

Alas, back to modelling, the ear was the last requirement and was constructed separately from the head. Here, opposed to box modelling, the poly-to-poly approach was used to construct the outline of an ear from the side view. The ear comprised of two edge/face loops allowing for details such as ridges and the canal to be formed. The ear was then joined to the head mesh by bridging edge loops on both the ear and the deleted geometry on the head in order to obtain a single, seamless mesh. Of course, a mirror modifier was used/applied to acquire a pair of ears. Lastly, moving geometry about created a bit more definition in areas where it was felt they were needed the most:

presculpthead

As it stands, I am currently contemplating on whether to sculpt and add finer details to certain spots or just leave the model mostly as is. I would like to focus more on the material node setups to create the style that I want – that is, a more animated and toon-like one. Stay… tuned for the next update!

– Taklon

Section 8 (Part 1): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Just over a week ago, I started the last section in the Complete Blender Creator Course, a  series of online lectures on Udemy that I had begun taking and blogging about since last summer. Section 8 (31 lectures, 7hr+40min), The Human Head, was anticipated to be the most challenging for me on a personal level as I have struggled in drawing humans ever since I was little. That is, I could never seem to draw out accurate anatomical features and/or proper body and facial proportions. However, I believe there is definitely a learning process to this. And so it is my ambition to do well in this last section as to hold my head up high!

The first thing I learned when it comes to modelling the human head is that good mesh topology is critical, especially if the model will be rigged and/or animated. To begin, three constructions methods were advised for modelling the human head: box modelling, poly-to-poly, sculpting. These construction methods were used throughout the course in the previous sections and it is easy to see how each would have its own advantages and disadvantages in section 8. In any case, the instructor had chosen the box modelling approach and I simply decided to follow suit.

Next, we were given the freedom to choose and use our own reference pictures in order to create the base mesh. The base mesh can then essentially be used later as a template to model various different human heads which is analogous to the base chess piece used to construct different chess pieces way back in Section 4. After pondering about it for a while, I decided to model using reference pictures from a character in one of my favourite animated shows. This character goes by the name of Chagum from the novel and anime Moribito: Guardian of the Spirit (Seirei no Moribito):

chagum

It is to be noted that the above reference pictures were not ideal for 3D modelling purposes as the character is shown tilting his head slightly towards one side in both instances. Rather, it is essential that orthographic images are available which show the front and side of the head. Because drawing them myself was not an option (due to my aforementioned lack of ability in drawing humans), I did fortunately manage to procure some. After drawing out edge and face loops on the front reference image (outlined in orange) – a crucial consideration for 3D face modelling which I will explain in a bit, I proceeded to create the base mesh:

creatingthebasemesh

To create the base mesh using the box modelling approach, the mirror and subdivision surface modifiers were applied to a cube and geometry was extruded outwards to form the general head shape along with facial features via proportional editing. Afterwards, the first tool introduced was the grease pencil which was somewhat useful in order to map out where certain facial features would be located on the mesh:

greasepencil

Next, the eyes were defined using the knife tool. It turns out that having edge and face loops is a requirement for good mesh topology. My understanding is that having these edge/face loops allow independent control over increasing the LOD (level of detail) for various facial features and areas of the head at a later stage:

faceandedgeloops

Finally, in order to give some definition to the mouth, I had just learned to use the rip tool. Along with the knife tool, another face loop was used to construct the mouth. Again, this way, greater detail can be created in and around the mouth area eventually.

knife&riptool+vertexedgeslides

Obviously, my 3D model of Chagum still has a LONG ways to go! I just thought I’d update the blog a bit sooner (as to keep it shorter as well). Anyway, I hope all of you enjoy today’s blog post and can get some sense of how much time, effort, planning, and consideration it takes to construct a human head in 3D. I look forward to updating everyone on my progress again real soon!

– Taklon

Section 7 (Part 4): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Yikes… It’s been a long time since I last updated everyone on my progress in The Complete Blender Udemy Course! Although, to be honest, I had hardly opened up Blender since writing my last blog post back in early October 2018. If it is any consolation for myself, I did at least watch the rest of the lecture videos for Section 7, and wow, was there an incredible amount of information to absorb there…

When I began Section 7, I mentioned how ambitious and potentially demanding creating a game asset pack would be. To recall the scope of this project, the instructor had asked us to include at least 10 models/assets and, at that time, I think I exuberated a bit too much confidence and came up with a list of 16 models/assets instead. As a result, I eventually decided to narrow it down to 11:

section 7 - planning your room (final update)

From the above picture, you can see that I decided to exclude the vines, stone steps, barrel, mushroom, and door entrance in the asset pack. This left me with having to just model a pot and a well. Easy enough, right?

First, I chose to model the pot as it less organic compared to most of the other assets and it would be a good example of a non-modular game asset that requires especially good topology. Here, I used a bezier curve to obtain an outline of the pot and then converted the curve into a mesh. Still, even as something as simple as a pot, retopology was needed to reduce the geometry count, particularly around the opening/mouth of the pot:

pot

Next, I chose to model the well as I thought it would give some variation to the asset pack. Furthermore, it gave me an opportunity to dive into a bit of fluid simulation – pardon the pun:

well

To wrap up Section 7, I tweaked a bit of the proportions for some of the assets previously made. And after readjusting the camera, a final render was taken of the room containing all the assets. I hope the render isn’t too dark for some of you to see on your screen; I decided less lighting was necessary to resemble the ambience you would find in an underground laboratory as, after all, that is the theme of the asset pack:

prototype_final (lightingadjusted)Edited Jan. 23/2019: Brightened the image so it should be easier to see on some devices now.

Whoa… We’re almost at the end of the course now! So the next and final remaining section (Section 8), entitled “The Human Head”, is just over the horizon. As a matter of fact, I am feeling quite nervous about it. You see, growing up, drawing humans was the hardest thing ever for me… Don’t laugh, seriously! In any case, I will do my best to learn and I shall also try my best to update the blog frequently in 2019!

– Taklon

Section 7 (Part 3): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Alright, time for a quick update (I promise this will be a short read this time)! I think I am now about halfway through finishing all the models for my game asset pack. Circled in green below are what I have completed to date:

Section 7 - Planning Your Room (midpoint update)

If you had read my previous blog post, you will have noticed that since then, I have been working on a bookshelf, table, and chair. From the reference pictures, it seems that most of the wooden assets (with exception to the crate) are made up of the same kind of wood. As a result, I modeled the bookshelf, table, and chair similar to how I modeled the room entrance’s wooden frame: using mirror modifier(s) along with scaled cube(s) as plank(s) for the general shape, subdividing, sculpting, decimating, and texturizing. Last but not least, I re-made the cobblestone floor and am actually quite satisfied with the result.

Bookshelf (Asset #12)

bookshelf

Table & Chair (Assets #7 & #8)

table+chair

Cobblestone Floor (Asset #2; re-made)

cobblestone floor (re-do)

Shoutout and thanks to one of my blog followers, redboarwiiingers, for commenting in my previous blog post and suggesting to embed the stones for the floor. Great suggestion!

Here is what the prototype scene looks like now:

prototype_#6

First thing you will probably notice is that the proportions are completely out to lunch – kind of funny actually if you look hard enough! The door entrance and wall torches should be bigger and everything else could be smaller as well. Next, the lighting could use a bit of work; however, that will be one of the final things to tackle. And while the scene is still relatively low poly (taking only a few hours to render 5000+ samples in full HD), I do want to mention that there is one key step that I have left out in modelling my assets (primarily those that involved sculpting) which is retopology. Retopology is the process of re-creating good mesh topology, usually as a result of it becoming poor during the modeling process. I mentioned about the importance of good mesh topology when modelling the queen piece in the chess set back in Section 4. As an example, it is better for a mesh to consist of just quads and/or triangles; ngons are not ideal! Furthermore, retopology can greatly reduce the poly count without affecting the level of detail – something which is greatly sought-after for game assets in general.

I aim to finish watching the rest of the lecture videos and modeling the rest of my assets by the end of next week. This will leave me with the remainder of October to polish up the entire asset pack. If time permits, I may delve into Unity and see if I can have some of these assets imported from Blender. Stay tuned!

– Taklon

Section 7 (Part 2): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Update time! If you have not read my previous blog post, perhaps it is worth checking out first before reading on to understand the work scope for Section 7, Game Asset Pack, in the Blender course I am taking. Recall that I mentioned I will be concentrating on the following assets circled in red:

PlanningYourRoom (focus #1,2,4,6,10)

Most of the assets circled in red are essential and modular meaning that they are necessary and should be able to assemble together like building blocks. This way, when exported to – say a game engine – it will allow the user to quickly construct a room or building of any size with varying levels of lighting aesthetics (i.e. – number and placement of wall torches).

Just as a reminder, I am and have been deviating away from most of the content in the course (I explained why in my previous blog post). In turn, I’m learning that using additional, external resources and tutorials and also experimenting and doing things on your own helps! And now, onto modelling the assets!

Brick Wall (Asset #1; essential + modular)

wall(textured)

For the brick wall (very low-poly, 82 faces), I had initially used a simple plane to map and bake an image texture onto it. I then realized it would be problematic though if the wall was viewed from the side. While it likely would not be viewed from the side since a room is almost always contained entirely by its walls, this was a concern for the room entrance (see Asset #6 below). So, I added a bit more geometry simply by extruding the plane out and then re-mapping the texture. Bear in mind that I do have a high poly version of it with individually-sculpted bricks – ideally used in a rendering of a scene with up-close camera angles/shots rather than a game asset as with this low-poly version.

Cobblestone Floor (Asset #2; essential + modular/tileable)

cobblestone floor

For the cobblestone floor (relatively low-poly, 506 faces), I struggled with this particular asset the most. I had actually re-done it several times and am still thinking of re-doing it differently (I followed pananag’s tutorial for constructing tileable medieval stone floor on YT). This particular asset was tricky for two reasons: 1) individual cobblestones should look round as in the reference picture, 2) it not only needs to be modular/tileable but should also appear seamless when assembled together. For point 1), subdivision surface and/or multiresolution modifiers could easily make the cobblestone appear round, however, this greatly increases the geometry – which for the floor, should be kept low-poly. For point 2), making it tileable without the entire floor looking patterned once assembled together was impossible unless I increased the size of it, but this would make it useless to construct small rooms. Furthermore, since there are two different material types, it was difficult to make it look seamless. Anyone have thoughts/ideas to get around these two issues? I will have my ear to the ground for this – pardon the pun!

Room Entrance (Asset #10; essential + modular)

room+wall entrance

For the room entrance (relatively low-poly, 4343 faces), I started with a simple cube (lol). I scaled the cube by flattening and elongating it. I then sculpted it to resemble a wooden plank (following most of Grant Abbitt’s tutorial for sculpting wood on YT). A second wooden plank was constructed and the two pieces were duplicated and given some variation using proportional editing. All four pieces were then aligned and joined to form the doorframe. I then took the existing brick wall asset (see Asset #1 above) and removed some geometry in the middle to make a doorway. Finally, I joined the wooden doorframe with the wall. Once this high-poly version was completed, a decimate modifier was used to bring down the insanely high poly count.

Wall Torch (Asset #6; essential)

walltorch

For the wall torch (low-poly, 453 faces), I started with a cone for the rigid joint. Two cylinders were used to construct the arms and just simple extrusion and beveling was done to create some of the detail. The internal Blender physics engine in cycles render was lastly used to generate a flame (following Olav3D’s tutorial for creating a quick fire animation on YT). I then added a simple material node setup (glossy BSDF, ColorRamp, and Layer Weight) to generate a chrome-like material for the torch.

Rock (Asset #3)

rock (medium)

For the rock (low-poly, 175 faces), I started off with a metaball, which was immediately converted to a mesh so sculpting could be done on it. Once I had the general shape of the rock as pictured in the reference image, I added a decimate modifier to bring down the high poly count. Using a simple yet ingenious material node setup (following Blender Smoothie’s tutorial on making a rock using built-in textures on YT), a rather realistic look was given to the rock. I won’t show the node setup here as it is massive and you won’t be able to see any of the parameters, but have a look in the linked video if you are interested!

Crate (Asset #4)

crate

For the crate (low-poly, 664 faces), I started off with a cube (of course…). Keeping it entirely a single mesh, I subdivided it several times – just enough to construct the outer housing. I then UV unwrapped and mapped two different textures: one for the inner planks and another for the outer housing. This was the first non-essential asset I had modelled actually (before the rock) in which I didn’t follow any tutorials so I’m pretty proud of how this one turned out. I’m equally excited to do the same with the barrel.

Alas, this is pretty much what I have so far! Here’s a quick prototype scene I put together in a few minutes. This full HD rendering (1024 samples) took approx. 20-25 minutes:

prototype_#2

I will likely be re-doing the cobblestone floor (I think I have some ideas actually…) and continuing to model the rest of the assets (or at least have a general idea to low-detailed versions of them over the next week or so). Hope you enjoyed reading today’s blog post and I look forward to writing the next one as always!

– Taklon

Section 7 (Part 1): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Yikes! Has it already been almost an entire month since my last blog post?! Indeed, I’ve been rather busy with other priorities and haven’t had as much free time as I would like for Blender. Nevertheless, I did have some time to continue with The Complete Blender Creator Course and thus started on Section 7, Game Asset Pack. It turns out that Section 7 is by far the lengthiest one in the course, consisting of nearly 11 hours worth of lecture time (by comparison, Sections 5 and 6 were only 5 and 7 hours respectively). Section 7  is also comprised of the most ambitious and demanding project to-date, utilizing nearly all the skills learned previously and then some, along with additional techniques through external tutorials (i.e.- YouTube).

Unfortunately, unlike all the other sections in the course, the content in Section 7 seems to be quite poorly organized. Heck, there was never any mention on what a game asset pack even was to begin with – this was left entirely for the student to research or find out along the way. And while the objective itself was clear, the requirements and specifications for it were rather vague. You see, the goal in Section 7 is to design and construct a room or a building. Here, the instructor used a Gothic church as an example for students to follow along. The issue then presents itself by way in which the course is designed; that is, each lecture presents different “challenges” that the students should complete in order to show an understanding of the lecture material while simultaneously adding progress to their personalized project, but not everyone will be constructing a Gothic church! As a result, most of what the instructor showed simply should not and cannot be followed due to the stark differences in the scope and style of a particular student’s project compared to the instructor’s.

On top of it all, the instructor introduced several ways to help manage a larger project: Version Control (via SourceTree, a free Git GUI software), File Structure and Naming, Level of Detail (LOD), Modular Design, Linking Datablocks and Linking Blend Files. These are all optional but beneficial considerations in larger projects despite the variability in their usage. Although for the sake of keeping this blog post short, I will not delve into how each of the above works. However, I will explain the importance of LOD and Modular Design further below.

Now obviously, with a much larger-scale project, the design and planning phase is absolutely more crucial. Not to mention, there is far more freedom to choose what will be included in the scene. For instance, we were told to come up with a list of at least 10 models or assets for the room or building. After some deliberation, I decided to model one of the stages in an online Japanese 2D Flash MMO game called Puppet Guardian (パペットガーディアン);  here, the room is an underground laboratory within a castle tower:

Section 7 - Planning Your Room

At this point, it became apparent to me that a game asset pack (in Blender) is a specific set of 3D models that can be exported easily to a game engine such as Unity or Unreal Engine. As mentioned earlier, I found there are two useful considerations that the instructor described and demonstrated in his example of a Gothic church: LOD and Modular Design. I have learned that the best way to design and make a game asset pack is to try and start with a low LOD; details may be added later if desired, necessary, and/or possible. Some models, particularly essential assets such as walls or floors, should also be modular. In other words, they should be modelled in a way such that they can be used as building blocks. This way, if exported to a game engine, they can be used to quickly construct large stages, levels, environments, etc.. It was at this point that I decided to poke around and look for external tutorials on YouTube in order to model my first two essential assets: brick walls and cobblestone floor.

First, I modelled a high-poly brick wall via sculpting (click here to see the tutorial I followed along on YouTube). For the purposes of keeping a low-poly count and considering the notion to start with a low LOD, I also constructed a low-poly brick wall through texture mapping and baking; the latter which appears to be something that the instructor teaches much later in Section 7 except I felt there was a need to learn ahead.

highpolybrickwall

lowpolybrickwall

Next, I modelled a low-poly and high-poly modular (tileable) cobblestone floor (click here to see the tutorial I followed on YouTube):

lowandhighpolycobblestonefloor

Still, despite having completed both of these assets, neither are set in stone – pardon the pun; for instance, I may decide to re-design and re-model the floor later. I guess for the next while, I will be be primarily focusing on the essential assets and then moving onto some of the other assets (see below circled in red):

PlanningYourRoom (focus #1,2,4,6,10)

Actually, as a matter of fact, I do have some progress with low LOD modelling for a few of the assets; bear in mind that details still need to be added by increasing geometry (e.g.-subdivision, sculpting, etc..), UV unwrapping, texture mapping and baking, material nodes, and so forth. Nonetheless, here is a quick screenshot of a prototype scene in the Blender 3D viewport (not an actual render):

prototype

No doubt, Section 7 has completely dashed my hopes of completing this course by the end of this month. As such, I will definitely need to set a new deadline. Anyway, thanks for reading as always and I look forward to sharing more of my progress so stay tuned!

– Taklon

Section 6 (Part 3): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Alas, I have made it to the end of Section 6 of The Complete Blender Creator Course on Udemy. Looking back, there was an incredibly large amount of material covered for this section. Modelling Mr. Rabbit took up the bulk of the project while creating the environment for him – despite being lean -required many iterations (i.e.- very low quality test renders) in order to pull the final scene together. As a re-cap on where I had left off, here is a look at a high quality render from my previous blog post:

rabbitrender (CPU, 100 smp, 586 min 37 sec)

The next task was to add a plant and a tree to the scene. At this time, the Sapling Tree Generator was introduced and I can’t describe this tool better myself than the course instructor when he says it is (as with many of Blender’s capabilities) “extremely powerful”. To give you an idea of how the sapling tree generator works in Blender, I will run through a quick example on how to construct/model a basic tree and as you are reading and visualizing with the help of associated pictures, I want you to try and visualize how the system could work to create a small plant such as a bush.

Let’s begin. Once enabled, the sapling tree generator add-on in Blender works by first adding a curve named, “Sapling tree gen”. In the operator panel, the Geometry settings shows up by default. A stick figure tree is shown in the 3D viewport and by clicking bevel, the trunk/stem and branches appear to look 3D. Here, the resolution can also be increased. In addition, a Secondary Branching system can also increase the distribution and number of rings on the tree trunk as well as to increase/decrease the overall size of the tree:

saplingtreegen(geometry)

Next, under the Branch Radius settings, the thickness or radius of the trunk and branches can be adjusted. The base of the trunk can also be tapered and flared out to allow for roots to be sculpted outwards if desired:

saplingtreegen(branchradius)

Furthermore, under the Branch Growth settings, the length, angle, and curvature of the branches can be adjusted:

saplingtreegen(branchgrowth)

Afterwards, under the Branch Splitting settings, branches can be split to multiple levels and the number of branches at each level can be increased/decreased (think tree diagrams). The base/trunk can be split into multiple levels as well and its splitting height can also be altered.

saplingtreegen(branchsplitting)

Finally, under the Leaves settings, we can add basic polygonal leaves (i.e.- rectangular, hexagonal, etc..), increase/decrease the number of leaves in the branches, and/or adjust the angle of the leaves:

saplingtreegen(leaves)

How about that tree generator! Extremely powerful indeed… So, have you tried to picture how this could work in order to create a a small plant? Yes, in fact, the sapling tree generator was used to help model a bush for the final scene with Mr. Rabbit. But there were a few extra tricks employed to construct something more original (rather than just simply using the tree generator). Using most of the knowledge that was learned earlier in modelling Mr. Rabbit along with reference pictures, I successfully modelled a small bush:

saplingtreegen(plantbush)

At this stage, I felt I had just about all the elements I wanted and had initially conceptualized in the design for the final scene. Before a final render, I added a couple of things and made a few alterations: changed the skybox and adjusted the lamp lighting, applied a pink material for Mr. Rabbit’s ears and nose, added a second tree, altered the landscape. And so without further ado, here is a full HD render of the final scene:

rabbitfinalrender (CPU, 100 smp, 16 hour 46 min, 1920x1080 HD)

Looking pretty sharp, huh? But perhaps too sharp?! Evidently, one final requirement and learning task for this section was to render a DOF (Depth of Field) image. Similar to what was done in section 4 for the chess scene but in the Cycles Render engine this time, a DOF was added for the camera, and thus, created a blurring effect for the tree in the foreground along with the tree and grass in the backdrop. And so again, here is another 100% uncompressed, 1080p long render of the final scene:

finalrabbitscene (CPU, 120 smp, 1080p, 24h render)

Overall, I am pretty content and proud with how this render turned out. Thinking back on all that I have learned so far in this course and looking at the course discussion board, I cannot help but think of all the things I can do now and how I can improve this scene if I just put more time and effort into it. However, in the spirit of trying to complete this course by the end of next month, I feel that it is time to move to the next section. Section 7, entitled “Game Asset Pack”, will be a pretty exciting one for me as no doubt, it will pertain to game design – something I am very passionate about as of late. I look forward to diving into this section and writing my next blog post! Thanks for reading!

– Taklon

Section 6 (Part 2): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

Last week, I started writing about Section 6, A Fluffy Bunny, and anticipated that I will have to blog a three-part series for this particular section of the Udemy course I am taking. Indeed, due to the sheer amount of material in Section 6, I will have to write a third and final part later this month. As a re-cap on where I left off in modelling my rabbit, here is a small compilation of progress pictures from my previous blog post:

timelapsebunnypart1

No doubt, there’s still a lot of work left to do on Mr. Rabbit before constructing a proper environment for him. For starters, those plain, beady, evil-looking eyes could use a bit of work. To begin, you may recall that I mentioned about the Node Editor in the previous course sections (once for achieving depth of field for the camera in the chess set and pieces scene and a second time for adjusting material colour and specularity along with light emission in the animated desk lamp). This time around, the node editor was first used to assign basic colour and specularity to the eyes – a Diffuse BSDF (Bidirectional Scattering Distribution Function) node connected to a Mix Shader node for assigning colour and a Glossy BSDF node for applying specularity. Below is a screenshot/example of how the aforementioned nodes in the node editor were used and interconnected to assign a basic black and a minor reflection of light in the pupil (note: although not shown, there are separate node editors for the eyeball and iris since they have different coloured materials):

combiningshaders(rabbiteye)

Still, the eyes seemed rather basic/simple at this stage. Rather, the eyes should be a lot more intricate to match the detail in the rest of the rabbit. However, up until this point in the course, if greater detail was desired in a model or object, this was primarily achieved by increasing its geometry. As such, it was learnt that another way in getting around this was by adding a texture (recall that this was briefly touched upon when a wood texture was applied across the entire surface of the chessboard in Section 4). But what happens if we are unable to procure a specific texture that we want? What if we cannot use any of the textures that we are able to find? Or what happens if we only want a part of an object to be texturized? To get around these issues, we can first create that specific texture that we want and/or cannot procure directly in Blender. Subsequently, we can use the UV/Image Editor to perform something called Texture Mapping and UV Unwrapping – the process of projecting a 2D image onto the surface of a 3D model. And this was exactly what was done to construct higher-detailed eyes for Mr. Rabbit.

First, a texture for the iris was created from a circle (which through modelling had undergone subdivision, facial triangulation, and proportional editing). Next, a colour material was applied to the object (a brownish-red colour was chosen). Afterwards, a top-view of the image was rendered and saved as a .png image, which in turn, had become a texture to use subsequently:

createtextureiris

The rendered image or texture for the iris was then opened up in the UV/Image Editor. Through texture mapping, a portion/geometry of the eye (around the pupil) was selected and would then be assigned the texture; by clicking UV unwrap in the UV/Image Editor, the iris texture was projected across the mapped surface of the eye. Voilà!

UVunwrappingiris

Finally, as a finishing touch, some lens were modelled and a Glass BSDF node was applied to create a greater and more accurate reflection of light in the eyes. Below is a screenshot of the node editor for the iris (note: the lens is a separate material so again, it has its own node editor which is not shown here):

texturemappingiris

Alas, I think it’s time to move onto Mr. Rabbit’s surroundings! So the first thing we were taught was how to add a “Skybox“. A skybox is a background image or environment texture used to make the background in a scene look more realistic and/or bigger than it really is. In Blender, this was done by clicking “World” in the properties viewport, adding a “Background” surface, and applying an “Environment Texture” using an image. In addition, a mixture of the colours visible in the image would then also be projected as coloured light onto the scene. For example, if the background image is a daytime photo, then a natural daylight colour would be projected onto the objects in the scene. Conversely, if the image is a nighttime photo, then a dimly-lit scene would be rendered. Of course, that is not to say that the strength of the light projected cannot also be adjusted. And depending on the image as well, the image can be projected in either of two ways: equirectangular (for latitude and longitude projection) and mirror ball (for orthographic projection of a mirror ball image).

environmenttexture(skybox)

Next, for the grass, textures were used again instead of modelling from scratch. Additionally, unlike the iris earlier, the grass textures were not UV unwrapped and mapped to any pre-existing geometry. Rather, images of different blades of grass were readily available and imported as planar geometry (plane meshes):

importingimagesasplanes

And with the node editor, using a Transparent BSDF node and the alpha channel (which controls transparency) in the Image Texture node, the background in each of the images were made transparent:

makingimagestransparent

Afterwards, the light path render settings were then adjusted to ensure that a glitch in Blender would not occur whereby graphical distortions would appear in the render due to light striking through a specific/set number of objects (not really sure why this happens as of now). As equally important, in order to make the 2D textures appear 3D (as if they were actually 3D objects), each blade of grass was duplicated and rotated about its Z-axis, then scaled and rotated inwards/outwards (this process was repeated several times):

makingtextureslook3D

Lastly, in order to generate an entire field of grass, the particle system was re-visited. Here, proportional editing was first used to transform a plane mesh into a ground with small hills. The mesh was then assigned to four particle systems for each type of grass plant, each with varying parameters in its seed (random distribution) and number (amount of objects):

grassobjectsparticlesystem

Alright then! To give you all an idea of what sort of render times I am dealing with currently, here are four transitioning renders with sample sizes of 1, 5, 20, and 100. It took nearly 10 hours to render only 100 samples! *gulp* Clearly, I need to find a way to lower the detail a bit and get rid of any “extra” geometry where possible if I were to generate a high resolution image at the end in a reasonable amount of time…

timelapsebunnypart2

In any case, it looks like I am almost at the end of Section 6 now! I believe the only thing left to do is to add a tree and saplings to the scene to make the scene look a bit more lively?! I do want to polish and tidy up some things on the rabbit and the grass though; I feel like I did not stay completely lean and am now finding the urge to go back and fix some things to speed up the rendering time without compromising the quality…

I look forward to writing the next blog post! Today’s post was incredibly lengthy. I am going to try to keep future blog posts significantly shorter. Either way, I hope today’s blog post was a good read for you!

– Taklon

Section 6 (Part 1): Learn 3D Modelling – The Complete Blender Creator (Udemy) Course

It has taken some time getting around to writing this blog post as the next section in the Complete Blender Creator Course I am taking is quite content-heavy, even more so compared to the previous section. As a result, today’s blog post will be the first of a three-part series for Section 6. At this point, I just want to mention that there will be some Blender-related terms I will use which I explained/described earlier in previous sections of the course – so if you have not read some of my previous blog posts, some of what you will read may seem like jargon. Either way, I hope you get a good read out of it! 🙂

In Section 6 (40 lectures, 6hr+40min), A Fluffy Bunny, the objective is to model and render a scene of a rabbit in its natural environment. We first begin with an initial plan and design phase much like what was done in the previous section with the animated lamp. One key consideration in the rabbit’s design is to avoid modelling any part(s) of its body that would not appear in the final render. As a result, I am sad to inform that my rabbit will be indeed, without limbs, as the tall grass would cover its legs in the final scene rendered.

After the planning and designing phase, the concept of layers was introduced. In computer graphics and animation, a layer typically contains a single object or element. Each layer is stacked on top of one another – often in a meaningful order (e.g.- from the foreground objects to the background elements in a scene). Thus, layers are often worked on independently and combined at a later stage. The instructor then proceeded to show how to hide and unhide a layer in Blender. No doubt, layers will be re-visited later in this section when all the different objects and visuals in the scene have been modelled. For now, all attention is turned towards the focal point of the scene: the rabbit, of course.

Modelling the rabbit began as soon as it was learnt that a new object can be added, the Metaball. I like to think of a Metaball in Blender as a sort of soft clay, putty, or dough. Two or more metaballs coming together can meld into one another (or leave a dent in the other if so desired). Using a side reference picture and three metaballs, the outline of the rabbit’s body and head was quickly formed:

1. metaballs

Next, two ears were created using a UV sphere and a mirror modifier. The metaballs were then converted into a mesh and joined together, which in turn provided a decent amount of geometry to allow for potentially high-detailed sculpting afterwards:

2. metaballsculpting

With sculpting in Blender, a number of brushes can be used to add or subtract geometry in a model. The size and strength of the brush can be quickly adjusted as well. By using the computer mouse and literally moving back and forth across the mesh like a brush, a bit of definition was added to the rabbit:

3. sculptedbunny

At this stage, the particle system, found under the properties viewport, was introduced. In Blender, there are two types of particles: hair and emission. In this case, hair was selected and a number of parameters were then shown and adjusted. The first two parameters were the emission/hair number and length; the number indicates how many strands of hair there are and the length indicates how long each strand of hair is. Furthermore, the number of strands of hair that can be adjusted are parental, meaning that each parental strand could have a number of children strands as well. The importance of children strands is that, when interpolated, they can control everything you can possibly think of when it comes to the appearance and distribution of the hair such as uniformity, size, endpoint, roughness, randomness, clumping, etc.. The aforementioned are all numerical parameters that can be adjusted in order to generate on the rabbit any kind of hair imaginable! For my rabbit, I chose 10000 parental strands with each parental strand having 10 interpolated, children strands to begin (Note: I have not adjusted any of the parameters in the children strands at this point):

4. hairbunny

In addition to assigning a material to a mesh (in this case, I’ve picked a medium-brown for the skin), a material can also be assigned to a particle system. And so, for the hair, I’ve chosen a light brown (fun fact: in many cases, an animal’s fur actually looks much darker than its skin due to the apparent density).

5. colouredbunny

As soon as a particle system is generated on a mesh, Particle Editing is enabled. Like sculpting, a number of different brushes of adjustable size and strength were available to allow for high-detailed editing across the particle system – in this case, the rabbit’s hair: Comb, Smooth, Add, Length, Puff, Cut, and Weight. I won’t go into detail of what each of these brushes do as they are fairly self-explanatory. As such, I proceeded to comb my rabbit:

6. combedbunny

Now, the rabbit is starting to take form alas?!?! I think I’ll call him Mr. Rabbit from now on… 🙂 Still, his hair looks a bit odd – for example, tufts of hair are coming out in unusual places and the hair seems to be a little too uniform throughout the entire mesh. To tackle the issue of hair being where it shouldn’t be or too much hair growing in certain areas,  vertex groups were created for different parts of the rabbit and the instructor then showed something called Weight Painting. In 3D modelling, different parts of a model can be assigned varying weight values. In Blender, weight-painted areas cover from red (100%) to blue (0%) as a colour spectrum. The rest of the colours fall in between these two opposite ends in our colour spectrum; for example, green-painted areas would have a weight value of ~50%, whereas yellow-painted areas would have a weight value of ~75%. In the case of Mr. Rabbit, this weight value is assigned a percentage of the particle system as long as it is linked/applied to the vertex group. For simplicity, I weight-painted in red the following vertex groups: Body, Ears, Whiskers, Head, Chest (not shown):

weightpaintingbunny

It should be noted that after weight painting, any changes done in particle editing mode are lost (i.e.- combing). So planning ahead and staying lean, once again, is important! After weight-painting and re-combing, I think Mr. Rabbit looks a lot cleaner, hmm?

7. weightpaintedbunny

*Breathes heavily* Phew, okay, I’m not done yet! I mentioned about the importance of children strands in hair particles a few paragraphs back and how a bit of randomness and variation can be adjusted in our model. Well, at this point, we were then told to adjust some of those parameters for different weight-painted, vertex groups in our mesh. We also added different materials for chest hair and whiskers during weight-painting.  After a bit more particle editing as well (mostly combing.. lol), here is the last progress picture I have to share:

8. addedrandomnessbunnyIf you’ve made it this far in my blog post, just want to say thanks for taking the time to do so! I hope it interests you as much as I had learning all of this. It may not look like it, but in fact, I have spent quite a bit of time up to this point. Organic modelling (can and usually) takes a LOT of time and I finally have a proper taste of it… Anyway, I look forward to finish modelling Mr. Rabbit and moving into creating the world/environment he lives in. Stay tuned and I look forward to writing my next blog post!

– Taklon