Tuesday, 19 April 2016

Games Production - Spring Submission (M5/5)

Towards our final hand-in and alongside wrapping up texturing the models for our game, I looked at particle effects and the best visual optimisation possible. 




Here I have made a camp fire for the start of our game in the forest. I made my own customized image of a flame that could be inverted as a translucent file in a material shader.




I played around with various settings in the inspector to get the real-time movement of the flames right; as well as the scale. While making all of the textures and models I was not thinking about the end result and how it may make the game run slower. Above is one of the processes that helped with the particle effects. By using the stats feature I could check things like the games FPS which adjusted to a reasonable fifty eight (after reducing the amount of max particles from one thousand down to two hundred).




In Unity's Standard Assets package, is a water prefab I used for our lake and river (suggested by a fellow student). This allowed me change various settings (in no time at all) to get a moving plane texture to transition with another on loop; producing the illusion of running water. I enjoyed playing around with this and would love to experiment with this in the future.




One practise I followed was organising my folders into an easy to read order (scenes, models, textures, materials and scripts). As a group we decided on a day and night cycle for our game. This entailed a lot of fiddling with a rotation script to get the right timing (as well as the time included to get around the Vertical Slice). Here I added in a directional light acting as the moon in the hierarchy, on to that of the standard directional light sun. While being on an opposite direction on the axis, when the sun goes down the moon comes up. 




Above is the cart wagon UV unwrapped in Maya. The player encounters this crashed on its side in the game. I enjoyed trying to work out features that were more important and recognisable to keep when it came to building at a low stylized topology.




Here I have the wagon in-game in Unity with the textures applied that I made in Photoshop, exported as a TGA file and placed on as material shader.





As our game is an RPG with turn based combat, I had to model a set of dice. After the modelling stage I knew I would have to spend a fair amount of texturing and to help with the medieval theme, I put together some font ideas for the numbers on the dice.




Eventually I went for the second to last font in the previous image (Sanvito Pro) and positioned all of the numbers for the D6, D8, D12 and D20 dice.




I dropped the four dice in to the test scene I built in Unity to play around with the lighting emission for the die (each dice illuminates softly as a light source for the player to navigate at night).




I was really pleased with the results above of a barrel I modelled, unwrapped and textured. I was able to do all of this in under forty minutes. After practise on all of the other assets, I knew the stages required to create the barrel quickly and efficiently.




In our game is a small village with several houses in. Here I have unwrapped a Tavern as accurately as I can (with the building stages behind the highlighted).




As I placed the houses into the game, I realised that it did not feel alive. To help make an atmosphere, I made a watermill building so I could animate a wheel rotation in simple code (as seen above). After a few errors within Maya with axis orientation, I was able to get the wheel to spin on the centre point and I was really satisfied with the results overall.




In addition to the atmospheric elements, I made a torch light particle effect and a smoking chimney emission. Although I looked at a few tutorials for smoke, I was able to tweak the lifetime to last long enough to fade at the right height elevation. However, there were a few problems with positioning and I also made sure to debug the environment (become aware of the collision mesh/ nav mesh issues etc).




These are the two images I made to generate the texture for the particle systems. The Photoshop 'cut-out' effect was a popular feature throughout each texture I made and helped promote the three layered 'stylised' approach we were aiming for. 




As I had to work from my own designs (issues revolving around the Concept Artist) a lot of the time for the environment, I worked from reference images of my own or from my own knowledge. However, there were a few designs, towards the end of the project, that I could use such as the weapon sheet above (Concept Artist's work) I used as a template for the characters swords and enemy mace.




The castle ruins, situated at the end of our vertical slice, took longer than expected and I had to manually position several dozen vertices that did not want to flow well with the UV map.




Here is an early build of our game with the nav mesh re-baked. Assigning all of the models materials and sizing within the exported unity package took many many hours but the results paid off. While we were importing all of our groups work into a single organised build, I made sure to organise structures in the same order that I built my models; following a list that I had made on paper.




Something I regret not checking was the object sizes to the 4K resolution textures I used through out the map. For example, something like the ruins needed a 4K texture (4096 x 4096 pixels), whereas the small torch posts did not need that sort of size file. If I was able to go back I would have definitely improved this area of my work for an efficient running and less memory taken up build.




Above and in the previous image are screen shots of our game with occlusion culling (suggested to me by a group member). This fantastic feature, that I thought would be very time consuming, enables and disables rendering objects to help with frame rate and increases a games performance; which we needed after combining several dozen scripts and UI etc. Unity's manual overview was very clearly laid out and it took me no time to customise the tool and bake for our game.




I took quite a large collection of photographs to use for texturing in and around Farnham (a town with quite a few post-medieval buildings and environments). For many of the images such as the wood, I used a few effects in Photoshop to make the 'cut-out' stylized effect seen on the right side of the image overhead.




One of our limitations of the unit was a a total polygon triangle count of 300,000. To accurately measure that I was on track with this, I added into a scene afterwards all of the OBJ & FBX files (55). In total, our low poly stylized environment only came to 57,371 (without the duplicated objects).




I have had a lot of challenges in the environment building and have learned that going back over something can sometimes be more efficient such as in the topology flow. I attempted to construct the world to the best of my ability in our stylized theme; while following the concept art as closely as possible. Above is a before and after side by side of the first build with very simple elements, to the second to last, with almost all the assets in place. Overall, I enjoyed working in a different style to my normal work and strived to make the game look and feel good all in all.

Wednesday, 13 April 2016

Games Art: 2D Pathway - Environment (M3/4)

While experimenting with certain painting techniques, I planned to either photo-manipulate or fully paint my compositions towards my model sheet and final piece. Moreover, I found both practices very difficult when it came to perspectives and hard edges; to show the scale of the ships.




Here is my first variation piece. I wanted to capture both the positives and negatives to the colossal floating container ships set in a dystopian future. One example of this is in the foreground, with the decaying 'ordinary' ship been left for scrap while the other soars over towards an ever increasingly bleak horizon; an overpopulated earth.




While struggling to find the best perspectives/atmospheres, I was at the same time modelling simple ships in Maya, to produce renders that could then aid me and I could then paint over them. Above is the result of one of these, following the same composition and angles. I enjoyed playing around with the depth and thickness of the cloud obscuring the giant ships structures.




I experimented with several settings to get the best mid-day sun effect for my third composition idea I had (using the rendering feature mental ray in Maya).




I placed a blinn shader on some of the ships to get a chrome effect which reflects nearby shapes as well.




This is my third comp I did. I really enjoyed playing about with brushes and forming hard light with the sunny environment. The image depicts the launch of one of the largest anti-gravity ships (AGS) and perhaps the last hope of transporting hundreds of tonnes of goods for humanity. 




After changing the weather and time of day in the previous comps, I wanted to try a night scene (of which I have never painted before and also posed lots of small challenges). Keeping the same perspective as before, I wanted to show in more detail the exterior environment such as a working dockyard setting; which could then be used in a games setting/map etc.




To make the lighting seem more vivid and cinematic, I created my own lens flares in Photoshop following an anamorphic example. I was able to make this in just five minutes and think it added a bit more character to a few of my pieces. 




After speaking to a fellow student, I was suggested to play around with light in a global mental ray ibl setting (skylight & environment lighting). This required a little trial and error with nodes and attributes in the editor, till I was able to place in a HDRI image which acts like a global illumination, for the scene I would then render.




Here I have the render settings I placed on a low final gather and quality, to get a quicker result that I could then just keep tweaking to till I was happy. As I continued with this however, I realised I was not managing my time in the best way I could and decided to just go with a fog and area lit rendered comp from earlier.




Overhead, is two attempts I tried with lighting the night scene. I wanted to give an artificial mood with the large fluorescent tube lamps. Although I spent quite a long time 'testing' and not using the features for my final ideas, I think I have gained a lot more knowledge independently with rendering models in mental ray and hope to go back to this in the future.

Sunday, 10 April 2016

Games Production - Spring Submission (M4/5)

In the fourth milestone, we had to present a content complete stage version of the game. 




Above is a step by step of the process of UV unwrapping one of our tree branches in our game properly. In the time it takes to unwrap one tree, let alone the nine versions in our game, I would be massively behind the milestones and deadlines. To work against the tight schedule carried out by only one environment artist in our team, I relied alot on Automatic unwrapping objects.




Here is one of the final colour palette textures I made and placed on to the Oak tree models UV's. While using Automatic unwrapping to an advantage, there were slight issues in warped and distorted faces. As there is a stylized approach to our game, I only had to tweak the layout of the UV's for around half of the time; as opposed to laying them out from scratch and taking longer than was necessary.  




Once I had completed all the UV shells, along with the textures on all nine trees, I made a little diorama base to render out in mental ray.




 Previously, I noticed that all the trees blended too easily in the lighting. As the colour theme was autumn tones, I made three sets of palettes for each nine types of trees.




I was very happy with the outcome of these diorama renders and hope to do more in the future.




With all the trees complete, I moved on to placing them in the game space. As trees are dominant in the natural environment, this was an area I knew I would have to put a fair amount of time into (our game being set around the edge of a forest). After finding out I could not export scene obj files from Unity into Maya, I had to manually position all of the four hundred or so trees in Maya. I was only able to successfully match some of the trees thanks to being able to display two windows at once as seen above.




Thanks to help from a fellow student, I found out that I could convert Nurbs to Polygons via the Modify settings in the overhead tab. To save wasted faces underneath the ground, I masked out a lake shape to match the topography of the landscape.




Here is the final map and tree positions in Maya, textured via Lambert - file, using the hierarchy structure method (rather than manually adding all four hundred materials or so)!




I followed this same process in Unity using Materials with the textures assigned to them. After highlighting all the trees I wanted the matching texture to go on, I simply dropped the material onto the inspector to the right. To achieve the autumn colours and to make the trees feel unique, I slotted in irregularly, individual textures from the three different palettes onto the trees in the scene view.




In a recent update of the free Standard assets package on the Unity Store, they enabled camera effects and visual adjustments. This was something I was very interested in as I have done colour correction and other effects previously in college, so being able to add them to our games medium for the first time was alot of fun. 




Here is a screen shot in game with textures and a few of the effects in place. I added a subtle vignette and tilt shift effect aiding the autumn colour correction. I also was playing around with the idea that the mini map could be displayed in black and white for easy viewing and to stand out against all the greenery.




As the game map development came along, I created more and more objects. To help, I made sure to keep my hierarchy organised and all the items named. Here I have all the posts in our game placed out to be exported.

Monday, 7 March 2016

Games Production - Spring Submission (M3/5)

Our third milestone required a working build with core gameplay. We also tested other team's games in our Year and gained valuable feedback on certain aspects with what to improve on for our next milestone aims.




After finishing the nine different tree models for our game, I started placing them into a scene into Unity so I could then build the nav mesh collider. This would then act as a barrier and limit the player from being able to walk all over the environment. As I went along duplicating the trees, I was also thinking about composition and whether the camera panning would clip with the edge of the map (or with the tree border edge).




Once I had placed enough trees in as a guide, I took an ariel top down shot of the map and brought it into Maya. I did this by resizing a plane and adding in a JPEG image of the map for reference for the nav mesh collider. Above is the first stage of a very long and unexpected process where I did not correctly make the nav mesh barriers. I originally thought to build a wall to prevent the mouse click (ray cast) from landing outside of the player area.




Here, I took another ariel view of the final walls in Maya. After this I then had to combine an outer wall cube with the inside, as I thought that was what was causing the nav mesh bake to be wrongly place out. 




As you can see I have no idea why I did this as I basically made more clutter atop the mesh.




I imported these into Unity to test out again with the map and as expected the 'roof' of the nav mesh barrier became another base. On playing the game, the orthographic camera kept interfering with the walls and I suddenly realised (along with some help from our group's game designer) what I then had to do.




Back in Maya, I selected in the side view, all the faces from the Boolean difference and then deleted the map. This then gave me a height elevation blueprint that I could use.




Above is the result of cutting away the mesh walls from a fill hole action and a clean-up of faces with more than four sides. From this, I could then judge (if it worked in Unity) how much longer I would have to spend on this whole task; as all I would have to do is quad draw a topology correct one atop in 'make live' mode.




After some tweaking of several features in the inspector tab in Unity, I managed to get the nav mesh base to work with the point and click controls!




Here I took a shot of one of the major fix's I had to mend at the bridge which was a separate object to the map when I Booleaned it back in Maya.




I spent around four hours working on the final nav mesh base seen above and below. All I had to do was neaten up the clean-upped one. I did this by popping in and out of quad draw and extruding the paths in make-live surface mode which snaps the faces to a corresponding one.  




Here is a before and after, side by side of the collision mesh bases. I highlighted the correct one to the right.




And finally the baked nav mesh atop the map in Unity. This whole process has taught me a lot, before going into something I have not done before, for the future and that independent learning can be helpful some times and not with others.