Thursday 14 May 2015

Alice of the Map: Project Post-Mortem

Project brief:

In teams of six create a level to celebrate the 150 year anniversary of ‘Alice’s adventures underground’ by Lewis Carroll, choosing from three categories of either Underground, Oxford or Gardens. 
Anchor your work in the British Libraries collections.  

Project Duration:

11 Weeks

Brief overview of the project:

Starting the project in our allocated teams when began with basic research and inspiration before going onto level planning. Everyone came up with some ideas and we took parts of things we liked and mixed them together to produce our basic layout.

The environment modelling was divided up between myself, Mark, Anya and Becky while Dom worked on the engine and Denise worked on the characters. We created an asset list and divided the work up amoungst us and updated it was we went on and completed work so everyone could keep track.
We also all had access to the Max file full of assets used in the whitebox and a block to represent player height so we could all work independently but quickly where the scale of our assets were concerned meaning we didn't lose time later on returning to rescale our assets since they were fairly close to the correct size already. 
Meanwhile Denise dealt with the character side and Dom with the game play and scripting.

Our teamwork was pretty good and consistent. We tried to keep up with team meetings and give regular feedback. The project was fairly well managed having a set timetable and naming convention and I think an even distribution of work was the only thing that could have used improvement.

What went well:

Overall the 'Fable-esk' style guide we planned from the start was fairly consistent, none of the assets seems too stick out as too cartoony or too realistic and no colours used were particularly garish. The level felt cohesive in regards to our art.

There was a lot of variety in terms of game play. There were six different playable puzzles as well as an optional collectible system and all these features didn't feel forced in or out of place since they were either referenced in the actual book such as the White Rabbits gloves, painting the roses red or the Hatter and his riddles or there was just enough logic behind them that they seemed to fit, like the guard losing his key.

Overall organisation was good. People were almost never sat around with nothing to do, we had the objects from the whitebox to keep us in scale which was efficient and we had a set naming convention for the files so everything was easy to navigate.
  
What didn't work:

In my own opinion while I do like the 'Dark World' tea party level it received less attention than the rest of the game. In terms of atmosphere we got what we wanted but I felt we were very liberal with the glowing plants. They seem a bit everywhere.


This was one of the problems people who played through the game for us told me about, there doesn't seem to be much direction in this area and people automatically want to follow the glowing objects as a type of path. Naturally the flowers are scattered like plants in a forest would be so they wouldn't exactly get led anywhere. I think we could have been a bit more strategic with the emissives, such as using them as a 'hot and cold' system to help people locate the riddle items, the further from a item the flower is the dimmer it will glow. This would be very beneficial to a player who is unaware of where the items were placed and help prevent the puzzle becoming tedious as people search for things.

The miniature maze puzzle could also have benefited from some tweaking. The original plan was for the maze to be a rabbit warden under the flower bed but we encountered problems making the walls stand out from the floor. In the end the quickest solution was to leave the textured as a miniature hedge maze though people still had some problem keeping track of where Alice was once she was in the maze.  

Problems encounted:

I had a lot of problems regarding the hedges and getting a balance between ascetics and engine efficiency. Having tried various solutions including tessellation, adding geometry, normal maps, it was decided that leaving the hedges as simply textured meshes with a material to add colour variation was the best solution for us to take.

A large and recurring problem we also faced was with frame rate. Aiming for a minimum FPS of 30 at times we were hitting as low as 9 as we started putting in foliage. A massive about of time and energy went into fixing this, such as reducing the dynamic lighting to the bare minimum, cutting down the number of plants in the forests, revisiting assets such as the trees to thin out the alphas and make changes to reduce overdraw, lowering the quality of the shadow and many other things. This was one of the biggest challenges we faced throughout this project. 

At the end of the project our lighting build was plagued with problems and crashes. After four days of trying we could only get the build to work on preview lighting. Meanwhile in Dark world level kept giving up a 'Insertion failed' error and nobody has any idea what this is so currently we have no way to building the lighting in that area of the level.

What I would do next time:

Work faster. The distribution of work got every uneven towards the end and a lot of this was from people finishing work and taking on more. My work speed is something I have been trying to improve since first year and I need to continue to do so.

Be a better judge of tri-count. I have a somewhat different problem with tri-count than most in that quite a lot of the time I never use enough. While optimising our assets is always important as the game engines get more powerful there are a lot of instances of me sacrificing form for no reason, especially with round objects.

Conclusion:

I did like the level, it was a fairly lengthy gameplay experience for people who hadn't worked on it or previously seen us play it. It relates well to the story of Alice in Wonderland and altogether I think it looks good.

The team worked well, there were no major disagreements or in-fighting, everyone showed up usually everyday anyway but if not would come in when needed and while I wish I'd done more there were no cases of nobody not really contributing. Overall the level is a good example of what a good team dynamic can produce in comparison to the last group project I was part of where it was rather dysfunctional.
 
Action Plan:
I have a lot of areas I want to improve on over the summer. I want to get much more proficient with all the programs that I've used over the course of this project.  

Zbrush and Polypainting. Zbrush is a unbelievably useful tool and I want to keep getting better with it so I can produce better quality hi-poly bakes. I've used it throughout the Off the Map project and intend to improve with it further. Zbrush is also a program used widely through the industry so I consider it a necessary skill set.

Blueprints: In the projects leading up to Alice project I'd been working a lot with Unreal and Blueprints but the Alice project had me having next to no contact with them. I plan to allocate time to learning more about them.

Practicing 2D skills: Naturally I should always be allocating time to improving my 2D work but I have neglected them somewhat this year. Most of my time I will be working to get back to the level I was then continue to improve. After that I must make a conscious effort for the skills to not slip again.
During the early stages on this project I felt fairly useless because of the speed and quality of my concepting. I want to be much more prepared and capable ready for FMP.

Portfolio Pieces: Utilising any improvements I make from my other points I hope to produce a fair selection of portfolio ready pieces. As I said in my extended writing piece environment art is one of my areas of interest so I intend to create work demonstrating skills in this area.

Saturday 9 May 2015

And so Alice woke up and the Game Art students finally went to sleep. The End.

Looks like we made it. Just about.
There wasn't even a wave of relief at the end of this, just a load of stressed students eyeing the computers suspiciously like it couldn't actually be true.

It was a somewhat stressful conclusion, problems naturally started appearing that needed to be fixed. I came in and Dominic had me play through a couple of times for suggestions and to spot any issues, we spotted a few minor fixes then I found two game breakers.

The first being the collectible tart in front of the rabbit hole. I found while fooling around a little that if you jump right you can grab the tart as you enter into the rabbit hole, which will promptly crash the game. We guessed it was caused by the script trying to register the pick up and store it to be reloaded on the way back while loading the next level. So, to avoid it happening to a player we moved the tart safely out the way. 



Next up was with the riddle puzzle over in the Dark World. On my second play through of it I had some trouble picking up the bag of marbles and ended up kicking them through the world, breaking the puzzle and trapping Alice in the dark world with the Mad Hatter which does not bode well for the girl's future. So Dom scripted in a respawn for the pieces should they fall below a certain height on the map.

These were problems I found when I was just trying to play the game, the real headaches came when we asked classmates to play and their soul agenda was to break it. They well and truly put the blocking volumes to the test, which held up in the main level but once again the dark world proved tiresome.
Firstly one of them walked off straight down the river and wandered off into the black, empty abyss that would have been the gardens in the main level. After that they just started being all out destructive.

My mistake was assuming they'd play the puzzle, that was a foolish thought. Everyone proceeded to pick up the objects and swing them around the screen, attempted to throw them over the blocking volumes and into the woods, onto the roof of the house and naturally they flung the pieces through the world and across the map. Kicking them through the map wasn't a huge issue since I'd already found that but when they throw the marbles blindly around the area finding them becomes a very 'needle in haystack' situation. One player was particularly skilled at breaking things (looking at you Emily!) and after lobbing a vase at the Mad Hatter what happened could only be described as the Hatter activated a bubble shield. In reality what actually happened was they had actually managed to pick up the sphere volume around the Hatter that registers if you're carrying an item and this disabled player overlap so we couldn't get near the Hatter to finish the puzzle and Alice was doomed to her fate once again. Dom fixed that.

We went through several of these wonderful encounters and while every problem they managed to create was actually helpful since we could try and address the issue, it didn't make me want to beat them with the keyboard any less.

Then came the bane of all our lives for about four days.


Even with repeated attempts on several computers and even a couple of ritual sacrifices the lighting did not want to bake. It just kept crashing at random intervals leaving us stuck, confused and all together fed up. The only solution to be found was to bake on preview lighting which by Friday afternoon it was agreed was better than nothing.   

The end of the week we were taken out of action by documentation so that was end of working on the level for now.

So the project comes to a close. They team did great and I'm impressed with what we achieved in the end. I would like to have done more in terms of my own contribution but overall I feel the project was a success.
    

Sunday 3 May 2015

Endless saving cycles

The university computers seem to be as tired as us by this point. Most of our time this week was stolen by 20 minute saving processes and an opportunist autosave destined to make our life hell by triggering a save whenever we took our eyes off the screen for a moment. Among this we were also plagued by crashes.

This made Dominic's job much more difficult from not only having to work out scripting but having to do it while battling the engine but late this weekend he got the level fully playable and all the puzzles working.

There was finally a return to the second level map for the Hatter's 'Dark World' tea party which hadn't really been touched since the start of the project. Most of this was copying over the tea party laid out in the main level then creating emissive textures for the plants and altering a few things but the atmosphere was pretty much sorted from the second week.


I worked with some of Mark's textures to create masks for the mushrooms so we could apply glowing patterns to the meshes. I did some testing in a separate Unreal file, battling save times along the way, to see if I could come up with a slightly more interesting material other than a basic glow. Remembering a strange material I made back in container city I managed to get a panning material that faded in and out across the mask patterns but the emissive would always come out are green. After a far did of time looking through nodes I thought might help I found one for distance work that had the side effect of mixing shades of blue into the colour. It wasn't quite what I wanted but the results were interesting regardless. 
I also got some low poly rocks sorted out. Not completely sure if they'll get used in the level but they were good practice. Though unfortunately the really nice poly painted texture got absolutely destroyed once it was lowered down to a 512x512 but on the plus size the normals bake came out really nice after a few problems in XNormal which led to me giving up and just projection mapping it,

So onto the final stretch there's a few things to polish, puzzles to stress test and lighting to build, we're hoping for a good final week but this is Game Art so we fully expect the level to simply burst into flames next week. 


Saturday 25 April 2015

Damn it ZBrush work with me here!

We had a quick introduction to Zbrush from a 3rd year before Easter so I've been trying to put those notes to use and create some stepping stones to try and get to grips with sculpting and Polypainting. So starting from a simple base mesh over in 3D Studio and then over in ZBrush painting in some texture and a diffuse map I got this.


Nothing incredible I know but it was a start and I was only making a stepping stone which is what I got out of it.

So since I was obviously on my way to being a ZBrush master I thought I'd try something else and picked up the rocks from the asset list that were meant to be Dominic's models but the level scripting were given more priority. So I tried a couple of new things for these, first off I went straight into ZBrush without a low poly based mesh something I felt from the start would spin around and bite me but we'll get to that. With no based mesh I instead started using ZSpehres to get my basic shape and went in after with the planar brush to define the forms.


Pretty sure I over worked it. It would work for a more stylised world I think but I'm working from a Fable based style guide and their forms are a lot smoother and not quite so busy.


Regardless I keep working with it, it's rare I use my first model for anything but practice and testing anyway. I added wear and damage to the edges and surface and neatened it up using a morph target which is a stored copy of the model in an undamaged state so if I think I've taken too much off somewhere I can use a morph brush to put more of the original form back into it to lessen the damage. Finally I added noise to the surface and I had a pretty decent first attempt at a rock.

Then I hit the low poly problem. I decimated the mesh and brought the tri count down but the topology was a mess. I know in organic shapes we can be forgiven for triangles but this thing had never seen a quad in it's life. I tried to retopologise in ZBrush but the tri count would skyrocket then brought it into Max to see if I could do anything by hand. In the end it wasn't working, Pro Optimiser did it's best and I tried to clean up after it but in the end the base shape was changing too much and there wasn't a hope that this would match the Hi poly model enough to bake out the normal map cleanly so I'm thinking that it's best to put this one down as a fail and when I go back to try again, this time I'll be producing my low poly first. 

In the level there's been a pretty simple yet effective change. From this:


To this:


The switch to evening lighting was probably one of the best decisions we've made in the project. The light shines through the trees better, the colours work better with the environment and colours of the flowers pop more.

I also got some decorations finished this week.

And used the ribbon, sash...thing to decorate the fences in the garden.


The main things left now are mostly scripting to finish and a few small things such as sounds. We're getting there. 



Saturday 18 April 2015

Is it too late to have our level set in the desert?

Trees! Of course it's the trees because trees were sent to punish game artists for their sins. We got back this week and located one of the main problems with our lag and frame rate issue which turned out to be the alphas on the trees, the water shader is also pretty engine heavy but it mainly the trees fault. So what's the solution to that? Less leaf planes altogether or try to maintain the look of density by putting more branches onto the alpha planes. Regardless either on off these options mean revisiting the trees and changing them again.

So we've located the problem, that's a start. As for the level...






Looking pretty good I think. The work everyone did over the Easter went in, Dominic's been working on scripting in the puzzles and the end is in sight but we still have pretty big to do list and there are some things we've accepted probably won't get done for the DMU hand in such as having the Mad Hatter over at the tea party but we aren't too worried about that.

Importing the palace brought up the Unreal 'Degenerate tangent base' error but after all the trouble when had with this and Mark's archway we were prepared for it this time. Back over in 3D Studio I simply attached the palace to a quickly drawn box mesh, deleted the box and re-exported the palace and all fixed. There was still an incorrect shading issue but I fixed that by increasing the light map resolution up from 64 to 128.

The main worry is that it's not completely playable yet, some puzzles aren't in and so the game isn't set up to let you into the gardens or end the game so that's our biggest problem currently. This is all Dominic's work since this is a level of scripting at is just sailing over our heads so we can't even help. He assures us it will be done and he's fast and good at it so we aren't particularly concerned.

This week was also the presentations so that was..something. I'd spent all Easter worrying what I could present at would be three minutes of cool and funny information, then I remembered that I'm a art history and Ancient Greek civilisation nerd and really should just embrace that. So I gave a presentation on the three stages of Greek sculpture, though an extremely butchered one as fitting an era into under a minute is harder than I expected but it went ok, my timings were mostly on track and I didn't have to throw up afterward so a big improvement on last year at least. 
Everyone else gave a good show too, lots of broad subjects and I left with new knowledge of the genetics of horse colouration and a few more interesting facts about slugs under my belt so in my eyes, it was a good day.



Saturday 11 April 2015

Still hate trees

I finally got around to fixing that awful tree I made to make it a slightly better looking awful tree. Still can't get the flowers to pop from all the green leaves but they're there if the player gets close.

There are a few things left to make for it, like the stages of LODs we have in the level to try and help our frame rate out but that's work for back at the labs because I'm not making trees on my birthday. Now lightmaps on the other hand.....


Wednesday 8 April 2015

I may have eaten my chocolate early

I'm not completely sure when Easter is but the result was the same, I once again have no chocolate.

I had hoped to get all my work out of the way by the second week but I was instead challenged to a Ninja throwing fight on Saints row 3 and everybody knows it would be dishonorable to not accept.
I wasn't quite so idle this week. Got that the texture for the remodeled palace done.



I also made some really small changes to my character project based on the feedback I received. The feedback was pretty minimal, 'add more contrast to the colours'. What I'd done so far gotten me a score in the low 50's so I was left wondering if contrasting colours were all I needed to change...where are those other 50 points? But I did what I could without feeling like it was damaging the dichotomy of the colours, neatened up some topology and added some extra finger loops for better deformation.


Again, not much was changed at all. I put some trim on their shirt patterns using their opposing colours, made the bishop symbol on their crowns a shade of the opposite colour too and altered some on the contrast slightly so none of their whites and pure white and the blacks aren't pure black. I did also give Stonewall fingerless gloves to break his arm up a bit more since it doesn't differentiate in shape as much as Gambit's.

I don't expect my marks to change by much if they change at all but it gave me a chance get some better renders of them than the ones I initially had and I fixed some mistakes I over looked in my naming convention so who knows, maybe there's a point or two in there somewhere.