Reflective Journal Week 4 (27/03/2017)
Monday 27th March/Tuesday 28th March: What? Recently I had had some issues with my home computer as it isn't capable of running some of the software at an efficient rate. Due to this predicament I decided to break away from my week to week proposal plan and go back into refining what I had already done.
I began the week by using one of the college's super computers (in comparison to my own) to unwrap the more intricate models that I have in 3DS Max such as a small oriental lantern. During this process it became painfully obvious to me that the lantern was too high poly and this led me to remodeling parts of it for a higher efficiency with a tiny decrease in quality.
After fixing my lantern I moved on and made other unwraps such as my temple much more efficient. I made pieces larger to take up more texture area that I knew where going to be more visible to the player. One thing in particular I did was make the hand railings that the player walks past a bit bigger so the grain of wood would look more appealing.
I had quite a few models that needed to be either unwrapped fully or improved. There are various ways this can be achieved but my personal preference is to highlight the faces of sections on my object and then "flatten mapping" each section and stitch it together before moving on to the next area.
After stitching areas together I like to "relax" the shape to make the unwrap take on the relative shape of the model. To check the texture has relaxed correctly you can go look at the top right of the unwrap window and press "check and pattern", this will apply a checkered texture over your object that will indicate whether it is stretched or not. If the squares are stretched, your texture is stretched.
After each section of the model is unwrapped I then scaled each piece according to how much detail I want. The bigger the area the more detail of texture gets applied. If you wanted to overlay the sections, you can, however this means that the overlapped area will share the same texture, I find this extremely useful when texturing multiple of the same shape.
So What? Unwrapping can be a tedious task and not many of us like it very much, however it has to be done and once you have your own preferable technique it becomes much easier. This has given me insight into how this sort of thing should be done.
Now i'm extremely confident in the basics of my unwrapping skills I am able to expand in to more advanced techniques such as "pelt mapping" which is kind of like skinning an animal in some ways, you get to make your own incisions into the model. Using these techniques I will be able to increase the efficiency of my unwraps and making them eligible for seamless textures.
Now What? I can now use these unwraps to create and add textures to my models. This experience has also lead me to unwrap things as I go along to prevent me having to do it all in one go and become fatigued. I will also unwrap models before instancing them along to avoid having to unwrap each one individually, I just have to remember to not change the model after unwrapping or the texture will become either stretched or incomplete.
Wednesday 29th March: What? Today as per usual I focused on polishing off my journal entry for this week and adding screen shots and images to make it more appealing for people to read.
I also knew that I would be making some more trees soon so I used the resources available (i.e Photoshop) and began creating some simple textures on which I could add opacity and normal maps.
As I knew I was going to attach these textures to a plane there was no need to unwrap anything before hand so I could go right into creating all of the maps.
This map will hopefully add a tiny bit of depth into the texture when plugged into "normal" in Unreal. ^
At the moment all normal maps will be generated via Photoshop. Filter - 3D - Generate normal map.
This map will make only the leaves appear when applied to the plane and will be plugged into "opacity mask" in Unreal. (These are also known as Alpha maps)^
I also repeated the exact same process but for a willow like tree during this lesson.
So what? I am clearly able to understand how the process is completed each time I have to transfer files back and forth from various software such as Photoshop, 3DS Max and Unreal. Now I am comfortable with this process I can expand on the limits of my ability by creating more in depth textures and improving the efficiency of what I create.
This process has also made me realise that I might be better off with using independent software when it comes to processes such as generating normal maps as in Photoshop when you look closely to the map the quality isn't great, especially around the edges.
Now what? Now I begin creating base trunks for both of these trees. When doing this I will remember to unwrap as I go along and also unwrap before I instance objects such as branches. I may also look into independent software to generate any maps I complete in the future. All of these textures and maps will be added to my example unreal file so I can see how it appears in the engine I will be using.
Thursday 30th March: What? Today was actually sunny for once so I decided to take the opportunity to go to the local park and take pictures to use a further reference when creating organic shapes such as foliage.
So what? I can use these images to get a more accurate representation of foliage in both my models and textures. The images will also be useful to me with regards to any project I complete in the future that involves any sort of organic modeling.
Now what? Now I will compare these images with the textures I have just completed to see how well I did. I will also be using the images to help me form the structure of the tree in 3DS Max. I believe when you consider the time scale and what i'm trying to complete the textures are completed to an adequate standard and if I manage to create a good base model to cover with my textures then it will come together quite nicely.
Friday 31st March: What? Today I went about modeling the base for both trees I am creating.
WARING!!! (The following tutorial features minimal detail and would require a basic understanding of 3DS Max to follow, however the images should help) if you wish for a more in depth tutorial feel free to watch the same video I did below.
- To begin with I started off with a box which I deformed a little by messing around with the vertexes to form the base of the trunk.
- .Using the border tool I selected the base of the tree after deleting the faces then extruded and rotated the base bit by bit until it was at a desired height.
- .I then extruded some of the faces towards the bottom of the tree to create the illusion of big roots going into the ground.
- I then created a curved line with the "line" shape and used a modifier known as "path deform" which allowed me to move my trunk onto the line and be warped to where it curved along with it. (Tip : at this point make sure you unwrap the base tree)
- I then used the "pyramid" shape to create a branch with many segments in the height node which I then unwrapped instantly.
- Using the instance method I created multiple branches of which I wanted to go onto my tree.
- To create realistic shapes for the branches I then created multiple curved lines once again and followed the same method as earlier. Add the modifier "path deform" then press "pick line" and choose the line you wish to follow and then "move to path" should make your branch follow the path.
- Once you have branches shooting off at multiple angles you can attach them to your base and weld the vertexes to make it official :)
So What? I will be able to use this tool with multiple models that follow a curved line which could be helpful for things such as vines or even pipes. I believe that learning this modifier now will help me with many more assets in the future. Organic shapes tend to follow a very non linear line so I am able to mimic that to a degree with this tool.
Now What? I am going to be moving the 3D models into unreal and applying maps, textures and particle effects to see how it looks when its all done. I will also be adding additional effects such as roughness to further increase the realism of the bark, however this shouldn't take too long as its simply importing files I have already created.
I also need to make collision boxes in 3DS Max which I will import in to unreal. The collision boxes will allow the player to move around the objects freely and I will make sure materials like the leaves do not have collisions.
Saturday 1st April: What? Today I've decided to add a particle emitter to my cherry blossom tree so that it appears that individual leaves fall to the ground.
First of all I used Photoshop to isolate an individual flower from my cherry blossom texture, I then copied and pasted this into a blank file to create a new texture.
I then used the "select pixels" feature and filled the flower in with white and the background in black to create an opacity alpha which I then saved as a separate file.
I then imported both the texture and opacity map into unreal. I right clicked the texture and pressed "create material" which speaks for itself really. Using the "masked" option I could plug the opacity map into "opacity mask" so that the flower appeared without a background.
I plugged the new material into a default particle emitter and then browsed through the options available to me. The first obvious problem I encountered was that way too many flowers were spewing out of the emitter. To fix this I went to the "spawn" section and turned down the constant which made the flowers appear much less frequently. Then I entered the "initial velocity" section and added a negative number on the Z-axis so all of the flowers fell to the ground instead of floated in the air. I wanted the flowers to stay on the floor for a short time so I edited settings in the "actor collision" section which allowed me to "freeze" the flowers for a few seconds before destroying them. My most challenging problem approached as I had to figure out how to get the flowers to fall from different locations all around my tree. Going into the top viewport I held space and dragged my mouse across the tree, this acts as a little tape measure. Once I knew the dimensions of my tree I had to halve the number and add min -the first half and max +the second half (1000 length= Min(-500) Max(+500) on both the X and Y axis). This allowed the flowers to spawn all around my tree in a desired radius area. To finish things up I added a slight delay to the emitter so the flowers fall more randomly my changing the "constant" variable in the "delay" section of the emitter.