Tuesday, 26 April 2016

Displaying model on sketchfab

Along with putting my model into unity, I wanted to find a way to make displaying my model more acceptable. So I looked up way to do this on google and I found a website that I was previously unfamiliar with called sketchfab. This site allows users to upload a model and apply all the required textures to it that you need. 
As you can see above, the window to the left is the process of applying all the textures, it was as easy as dragging all the textures that I made within quixel into the right boxes. This final render of my object was made of three texture maps in the end, one for the head, one for the base and one for the body, and five materials for each one. 

I was then able to play around with the lighting quite a lot in this program, which aloud me to experiment a lot more than I was able to in unity and with half the time, as this didn't require as much effort to do, considering my lack of knowledge with unity this program was very helpful.
Bellow are some screenshots I took of different lighting effect defaults that sketchfab had to offer. The range of lighting set ups that they had to offer allowed me to see how my model would be shown as if it was in a game with real time lighting. As I had been lighting my model in a sort of day time lighting set up most of the time, it was interesting to see how my materials where effected by a much darker lighting setup like the first screen shot shows. 

With my final lighting set up complete I was then able to upload my object onto this interactive format that allows users to rotate around the object, and zoom in as they please. It also has features like being able to overlay the uv mesh and even showing the model without any materials on whats so ever.
Finding this site was great for me as it not only allowed me to display my model in a set up on part with that of unity, but it also means that I have a platform to display my model that is easily accessible by other people, as the site is also usable with smart phones it means that if i was to ever run into the opportunity where somebody wanted to see my work, I could easily just get out my smart phone and show them this model in a well lit environment in high detail.

Above are some final screen captures that I created by screenshoting my model inside sketch fab from four different angles and then putting them together inside photoshop.

I'm really happy with the final outcome of this project, I feel that all the work I have done prior to this meant that I could reach this level of detail with this model. I was skeptical at first before starting this project as I began to think that it might of been to much work with it being made of so many separate pieces. But I believe that I have managed to capture the essence of my original references in this object, in a more realistic and accurate representation that would work well if applied to a video game.

Setting up my model inside unity

In order to display my object in most visually appealing way I wanted to set up a scene inside of unity where I could create a build that allowed me to pan a camera around my model .
I will definitely admit that using unity is not my strong point as I haven't had much use for it in my other projects as I am usually a 3d modeler who would be giving my pieces to someone else who would be doing the coding part of the project, so I wouldn't need to interface with unity at all pretty much. Because of my lack of experience with the software I realized that going over the top with effects and camera work would not be something I would be able to achieve, so the first thing i decided to focus on was setting up my materials to apply them to my object.

I then wanted to ensure that my lighting was correct and it displayed my object in a good environment, as with my previous 3d project I definitely think that this was an area where my project fell flat as it looked good in quixel quite but when i took it into engine, I failed to light it correctly and it just didn't look as good as it should of.
I went for a pretty basic lighting set up in the end however, something that showed the shimmer of some of the armor parts but also cast a good shadow onto the banner,

My next focus was to implement the ability to pan a camera around my object, and as i stated previously my lack of knowledge in unity and coding was not help for me here, so i took to the unity asset store. I found a pretty helpful piece of free cam code that I was able to apply to my scenes in engine camera, this then allowed me when I played the scene to let me play it as if I had no clip on within a game. 

Above is a screen shot of my final model within my finished scene, you can see here I have walled off the scene and this is because I had some issues where when in play mode the camera would but out if it wasnt looking at anything other than the model or the floor, So i need to fix this. I also added a yellow area light to the bottom of the model so it would illuminate the bottom parts of the model and tint the banner slightley

The video above contains footage of the panning camera within the build that I created. I think it works pretty well as it gives the view the ability to have a thorough look around the model at there own pace, being able to look at particular parts as close up as they like. If i had more knowledge of coding I would of liked to of smoothed the camera a bit more, as it seems quite jagged when I moved the mouse and you can see that in the video. I would of also liked to of added a zoom function to the camera.

posing model and creating model base

I wanted my model to have a base that I could pose it onto, much like the base from the model that I have been using as my reference. Only, I wanted my base to have a bit of terrain on it like a rocky surface so I've posed my model so that he's lifting his leg up onto a higher rock. Posing my model in the position was made a lot easier because of the work I put in earlier on in my workflow where I positioned all the joints for each separate object so that they would move naturally.

I exported the base that I created within maya into Zbrush so that I could begin applying some detail into the rocks. This process didn't take so long as other work that I've had to do in zbrush as there was only a few cracks and wear that I had to apply to the rocks. 

Earlier on in my project, I had plans to attach a banner to the back of my model, but as I was creating my model, I began to realize how awkward and inappropriate it would be for this battle suit to have a flag waving around on his back while he had two cannons that have to swivel backwards and forwards. From a design stand point, the chances of the battlesuit getting the flag caught in the cannons would be high, so I decided to leave it off my final model. Not only did this design choice make more sense, but it also meant that the intricate detail on the panel on the battlesuits back wasn't hidden behind a banner. 

After briefly using Ncloth in my game design project, I decided to come back to it again and use it to create the banner that I originally wanted to attach to my battlesuit, and instead stick it into the base that the model will be placed onto. This would then mean that the battle suit would be free to move without the banner impairing its movement.
I wanted the banner to look as real as possible if I was going to be putting it besides my model which has a lot of detail so using Ncloth was a must. To create the banner I had to first convert the flat plane into an ncloth object that could be effected by gravity. I then constrained the vertexs along the top of the flag so that the top of the flag would not be effected by gravity, so I alined these vertexes along the banners pole, mimicking the sense that its hung up over it. I then added some frames to the animation window at the bottom so that I had more time to play with the ncloth animation. Before applying the ncloth simulation, I also made sure that the flag wouldn't clip through the banners pole. So then when I pressed play in the animation window the flag began to flow in the wind, according to the settings that I put it too so that it would blow away from the battle suit. I then exported the banner as an OBJ in the position I found the most appropriate and then added it to the base.
 Above is the final high poly model that I created after exporting the base and the banner together into Zbrush to add some small amount of detail. I also added the Tau insignia to the top of the banners pole so that when I baked my normal maps onto the low poly version it will have that extra level of detail again.

After creating my low poly model from quad drawing over my high poly model inside maya, I decided to play around with the idea of adding grass to the base. Instead of placing my model on a base where the terain was just rock, I considered instead him being in a field where there would be a small amount of rocks among the grass that he was on top of.
I decided against this idea in the end however, as it wouldn't really fit the theme of the reference that I was following. The warhammer 40k universe has a very dark theme and placing my model on a stand thats supposed to mimic the idea of it being within a lush field wouldn't make as much sense. 


Much like the process with my previous albedo material, I decided to tweak this one a little bit as well so that I could add some detail to the flag. 




Uv layout

Final base rendered inside of quixel. Im really happy with the final outcome of the base for my model. I think it has just the right amount of detail so that it doesn't draw too much attention away from the main model standing on the rocks. 

Final revisit of texturing body within quixel suite

As you can see in the above screen shots, I resolved a lot of the issues that I stated I had with my texture sheets in my last post. I got rid of the gaps that where left behind in some parts of the albedo and I also made sure that the colours where all just the way that I wanted them to be, to match the references that I had been using from the beginning of my projects. I also carried through with my idea of making the red paint appear as if it had scratched off more and underneath was the same sandy colour. 

 After a closer look back at the models I was using for reference, I realized also that the broadside battlesuit often has a lot of white markings painted onto the armor, for decoration. So I installed a tau font into photoshop and started creating small words that I could put around the armor, and intricate lines where also added to match the reference pieces. 

 I however ran into an unfortunate problem at this stage though. After reaching this stage of completion and exporting my materials from the quixel suite, I decided to clean up my hardrive to organize my file structure a bit more, deleting old test materials and out dated files. During this process I accidentally managed to delete the materials that I had previously exported. Fortunately for me, I was able to load of my project in quixel, back to a save point before I had applied the decals to my armor.

This then only meant that I had to reapply the white decal detail to my model, So I decided that this time around I was going to be a lot more careful with the process, as I noticed that some of the decals that I applied to my albedo material came out slightly distorted when applied the model.

Below are screen shots of the final material's that I exported after accidentally deleting the first ones.



Colour ID map, re worked again so that there where no colour's that had baked through where they shouldnt of, like what had happened with my initial attempt. I found that that was the problem with the top of the gauss cannon, all I had to do was fill in the colour where it was missing and it fixed the issue. For some reason this didn't work for the other texture issues that I showed earlier on however, so to fix those issues I simply layered over the parts that needed adjusting on the albedo material. 


Creating the normal maps and the AO was a Long process as I had to bake a few objects at a time to avoid any issues where one object would end up baking on to another. meaning that I had to group up some of the objects that where furthest away from eachother, like I would bake the feet and the torso at the same time for instance.
Some editing was required of the normal maps latter on within photoshop as well, to get rid of a few mistakes that would of been easier sorted it out within photoshop rather than xnormal. I did however have to split up some objects into two pieces, for instance the bottom half of the arms had to be split into two objects as it was obscuring the bake, making parts of the arm bake onto other pieces of the body.


Unwrapped UV's
My UV snapshot was very useful during the editing process of my materials within photoshop. I used it to overlay all the materials that I had to edit so that there wouldn't be any distortion when I applied them to the model. It was patriotically useful when working over my albedo material. This time around, I over layed the uv's so that when I was applying the decals to the armor they would line up much better with the uv's so that they wouldn't distort.

Above are the screenshots of the the final outcome of my model with all its materials applied within quixel. Im far happier with this iteration that the previous one that I lost my files for. I'm glad that I had to come back as it meant this time around I noticed my mistakes with applying the details on top of the albedo the first time around within photoshop, meaning I had a better quality outcome this time.

First attempt at full model texture

There are noticeable mistakes with the textures on this model at this stage. I will have to go back and look for where the problem lies within the maps and fix them within photoshop.

I'm not particularly happy with the colour of my model at this stage either, now looking back at it I think that it needs to be a lot darker, the sandy colour needs to be a lot more brown and the reds need to be a lot more of a burgundy colour, but I can also go back and change this. I do however like the scratched paint effect, it may be something that I play around with a bit more, perhaps making it appear that the red paint is flaking off more and you can see the sand colour underneath

Above are a few screenshots of some key errors that I found within my models textures, for some reason after applying textures to my colour Id maps, I was left with these strange gaps within my texture sheets where no texture was being applied. The only fix I found for this was too layer over the albedo within photoshop to block out the grey parts where the models base texture was coming through. You can see how I have attempted this with the middle screen shots on the leg armor, I've not done a very good job here however so I think next time I come back to this process I will be have to take more care with how I fill in these parts.