Post date: Mar 27, 2014 8:46:36 AM
I'm back from GDC and it was such an amazing experience! I feel like I learned so much while I was there. So just to cover all my bases I'm going to do a play by play of what I did each day. Prepare for loads of info.
Monday
Initially I walked around the west building of the moscone convention center to see what was going on the floor. I saw the Ubisoft had booth on the third floor and watched as they had some promotional and explanatory video going on.
First I saw a video demonstrating all the new achievements and shaders that were made for Assassin's Creed Black Flag. One thing that pleasantly surprised me was their Destruction system. From what I could tell their destruction systems and trigger are what we have been learning in our programming class. It was really interesting and almost eye opening to see something that we were currently learning in school in a majorly successful and recently released game.
After I was done ogling at the monitors I went over to the demo that a Ubisoft technical artist was giving. He was demonstrating the Ubisoft engine and it's versatility. Firstly he went through the tools that showed where artist could see texal density and resolution density, it was extremely similar if not identical to UDK 3's systems. Then he started to show the major bells and whistles of the system. First he showed us, through the example of a Rayman demo level, the each 2D object could be placed within the 3D space and the each meshes position would be recognized by the engine allowing for lighting and fog volumes to act appropriately. Secondly he showed us that it was very easy for the artist and the modelers to work together through their frieze systems. Essentially you could "model" a shape you want to put in the level that most likely tiles. The ubisoft engine would automatically generate the appropriate UVs for the mesh and then the artist can take those uvs and start texturing. Thirdly he showed us how you could individually change aspects on meshes to fake certain effects. For the new app game they are developing they have to be extremely efficient so that the game will function at an acceptable fps. To accomplish that they have options within the meshes to add "fog." I put fog in parenthesis because it was only a simulation that happens over the mesh and therefore not dynamic as most fog are in games. This saved lots of memory and computing time making their game run smoothly.
After running around alittle more I went to the panel iOS Device Diversity and Performance Optimization. First the presenter went over the specs of all the iOS devices from first gen to the most current product on the market. First he explained what apples exciting retina display really meant, which was that they just doubled the pixels on the screen which lead to many problems with mobile games functioning on iOS devices. The gpu processor did not follow the increase in resolution as it should. Mobile developers were faced with the problem of having to meet the visual standards of the retina display while having the same GPU as the previous generation. This lead to lots of optimization and lots of tricks that Gareth Jenkins (the presenter) then proceeded to show us. One that I found was really cool was the at one point in his game they had a flashlight in which you think that they would have used a dynamic light to simulate. But because dynamic lighting is extremely expensive they did a trick where they wrote a script so that whatever direction the character was standing the texture in front of her would be toggled to an "on" texture, which a just the same texture but painted to look light light was shinning on it. It was very convincing looking and saved alot of performance. Overall he talked about how dynamically loading texture was way cheaper than lighting and would be over better for iOS games. He was awesome enough to post his power point from his lecture here so you should definitely check it out.
Last I went down to Microsoft's area where they had a programming challenge. It basically consisted of sitting down and seeing if you could complete one of Microsofts programming challenges in the language of our choice and do their challenge within 30min. If you did so you would win a ticket for their raffle as well as a niffy little blue tooth speaker. I choose to do their unity challenge which was nice introduction to how unity worked and how it worked with the windows interface. It was really nice to get antiquated with Unity because I noticed later that alot of companies and indie developers were using it. Overall it was a good way to end my first day at GDC
Tech Art Tuesday
Tuesday was the Tech Art Bootcamp day so I I was pretty much in room 2006 from 10am-6pm but it was so worth it because I saw and learned so much!
Ok so the first talk was Intro/Postmortem - Mecanim in Undertakers. This talk was given by two Columbia graduates about their thesis Undertakers and how they used Unity's mecanim to do their animations for their games. They showed how they used animation trees within Mecanim to create clean and efficient animation for their game. They also talked about how that because of their experience with mecanim that they eventually became mecanim consultants and now run a website called The Mec Warriors (www.mecwarriors.com). It was cool how to see that a necessity in their thesis kind of led them to the path of becoming tech artists and more specifically The Mec Warriors.
The second talk was Hacking MotionBuilder: 10 Things You Aren't Doing but Should Be! by Brad Clark. Now before this talk all I knew about motion builder was the program that I accidentally opened when I double clicked on a fbx. Now after this I realized its a pretty powerful tool for capturing multiple animations on one fbx file as well as a great mo-cap and animation editor. The biggest thing that I took away from this talk was that you could edit animation in motion builder non-destructively. He demonstrated by using animation layers in motion builder that you could blend animations together without having to be destructive to the original animation. Also a good resource for more motion builder tips from Brad can be found at the twitter@riggingdojo.
The Third talk was Asset Build Systems by Kris Lang. This talk was definitely the most technical and programmer oriented but I actually found this talk really interesting. Essentially a build system, from what I understand, it that it organized files coming in and out of the engine, sorting them into their proper places with their proper naming conventions eliminating a lot of the human error that comes with that part of the pipeline.Also you can program checks which do exactly what they sound like they would do, they check the submissions to see if everything is in working order, if not it will not allow the user to submit the package until they have fixed their problem which prevent bugs and errors from happening. He also explained to how to setup a assets build system pipeline and how using dependency diagrams on how the each asset was processed through would help anyone who was trying to workout how to go about the programming logic. Also he recommended that for those wanting to make their own asset build systems within their own company they should look at builder templates like SCons (scons.org). Overall the talk was extremely informative and made me super interesting in learning more about Asset Build Systems and maybe implementing one at school.
The forth talk was Halo 4: Content Performance Tips and Tricks by Wes Grandmont. This was an overall talk about making game perform better and how they went about optimizing Halo 4. First he talked about Performance Planning. Essentially performance planning for them was writing down in a spread sheet and identifying critical cost (HUD, Post Process, ect.) and then budgeting the rest on a per area basis so that they could try to keep costs down earlier in the pipeline. Also he said that level review in the early stages was an extremely good way about keeping an eye out on performance and identifying issues earlier when they are easier to fix. Next he went on to talk about what performance tools they used to identify issues. As the initial first alert system the in game FPS counter was used to identify obvious issue areas. Then the in game counters were used to show how much mms each component of the game was using. Another tool they used was datamine, which heat maps the map for the tech artists and by looking at this heat map they could determine the most expensive areas quickly rather than wasting time running around the level and watching the fps counter. Final he mentioned the PIX program, which is an xbox specific performance investigator. It has CPU and GPU capture which give the user a spread sheet of everything that is being rendered that particular frame which can allow the user to surgically pinpoint problem areas. Then he went to go on about the performance issue the he and his team face in Halo 4. The performance issues were as follows and solutions they they used:
small tris
telling the environment team to go back and delete the small tris
adjusting LOD distance
draw calls
distance culling
proxy geo
occlusion cards
Poor calling
caused by big meshes
chop large mesh into smaller pieces
Expensive Shaders
watch the instructions
carefully optimize to keep the same look
Ship vs Production
caused when production materials are being used in actual gameplay
reduce materials on objects
optimize model as much as possible
delete the details in the mesh if applicable
Overdraw
Ask the VFX artist to tune the effects
reducing the skybox by using a silhouetted edge
Lighting Cost
try and identify useless or unnecessary dynamic lights
reduce radius of lights
change to cheaper type of light
The last point he spoke on was how to work well with the art team. He emphasized that giving teams multiple options on how to optimize the scene worked out better and built a good level of cooperation between the tech art team and artist team. Also allowing them to make the decision on how to optimize allowed them to feel like they were still in control of their art rather than someone coming in an just hacking away at the art they had working on for x amount of weeks. Overall I felt like this talk was extremely informative and insightful because showed issues that I could be looking out for in future projects but also how I can go about working with people on optimization which I feel is sometimes overlooked.
The fifth talk I went to was the User Experience Design for Technical Art by Chad Moore. This talk was mostly about building tools in a way the were appealing and usefull for the artists who used them. He really emphasized that after the tool is developed you need to go to the people who are using it, find out how they're using it, if they like it, if they don't, why, and then go and revise. It was interesting to see how he went about creating his tools and that he really paid attention to the UX and kept commenting on how the easier it is the read the easier it is to understand and use for the artist. This talk really reminded me for when I start making tool that I also have to remember to make sure they're not only functional as a tool but also have a readable and functional design.
The last talk of the day was RYSE's rigging system for their characters. Ryse's rigging and over all facial animation in the game was beyond stunning and it was interesting to see how they accomplished it. I found it interesting the they took scans of people face for the blend shapes and then blended them together using he facial rigs allowing for an extremely realistic animation and facial movement. Also another interesting part of the talk is that they showed that they used physics on some objects on their models as well as their cloth. The though had never crossed me before tool add physics objects to characters let alone try and rig cloth with them. The ryse riggers managed to make a intricate system of rigs that allowed for a realistic real time movement of cloth to be capture in game which was pretty cool. Overall this talk was interesting because I got to see what was on the cutting edge of rigging and look forward to what future games will have in terms of cinematic quality with their game play.
Wednesday
On Wednesday the expo floor opened and we had a look around. The thing I was most excited about seeing on the expo floor was Unreal Engine 4. It had just been released that morning and everyone was excited to see it and get their hands on it. I managed to talk to a vfx artist who was at the booth and he explained how UE4 had changed from the interface to the blueprint system, which is Unreal's new way of visually scripting. Overall I was extremely excited the UE4 had finally been released and hopefully we will be using it next semester.
After I wandered around the expo floor for alittle I made my way over to the career center. There that day I had my portfolio reviewed by riot and insomniac. I got really good feedback and I realized that I had alot of revising to do to gear my portfolio towards tech art. A good crit I got was to go and find problem, fix it, and document how I went about fixing it in video form.
Lastly at the end of the day I went to the tech artist's round table. The main topic of discussion was how to get people to actually use the tools that you are making for them. Many went around telling their war stories of how senior artist were stuck in their ways and how they really didn't pay any mind to the new tools they made for them. The best solution that came from the massive discussion was to involve those who are the most opposed into the development of the tool. It was suggested to make testing the tool become a regular occurrence before official release so that the artists on the team could feel involved in the process and and feel more comfortable with the tool because they know they had input in its design. After the discussion we had a mandatory talk to someone in the room you don't know for 15min session. I thought this was great and we actually all stayed upwards of 30min because we were having great discussions and really liked getting to know fellow tech artists. It was a great way to end day.
Thursday
On Thursday I went to the career center to sign up for portfolio reviews I had missed the previous day due to being to late to sign up. I manged to get a portfolio review with WB games as well as Xbox. At the WB games portfolio review I got a good straight up crit. He also grave me some advice for technical art portfolio and that I should familiar myself on particles and VFX because being able to do both would make me an asset to many teams. He also had me walk through some of the shaders I had built and told me that I should have a good model that I made and textured and then have a whole sheet of the material break down following. At Xbox I also a nice critique from Sparth who suggested that I push some perspective in some of my environment shots so that it would be a more powerful image. He actually went through and roughed out what he though the composition should look like which was extremely helpful.
At the end of the day I went to the tech art round table again and this time our topic of choice was on how to get into the tech artist industry even when some of the requirements for job are x amount of years experience. This was interesting because it showed the there was a major HR wall within the hiring of some of the bigger studios. The conclusion that the group reached was that it honestly is who you know and how good you are as a technical artist. Many leads when sharing said that when the job listings go up sometimes they don't even have a say on what the requirements are. So their advice was to apply but also try and contact an artist that is already on the team so that you don't hit a dead end at the HR wall. This was particularly insightful for me cause it made me realize really how important connection are within the gaming industry.
Friday
Friday was a short day due to the convention packing up around 3 rather than the usual 6:30. First I went to the IGDA roundtable for women in game which was very interesting. They talked about how they were working on making women developers more prominent in the gaming community by having featured women developers of the month and having more awareness campaigns. Overall in was interesting to hear other womens experiences in the industry and how to deal with some of uglier sides of the industry when you encounter them .
Afterwards I walked around and checked out the expo floor some more and stopped by the Ringling booth to see what was going on. and checked out any software I could before the expo center closed.
Afterwards I went to the final tech art round table which its main focus was on education. They touched base on how python scripting would be a good base for tech artists and how MEL was becoming obsolete. They also talked about the difficultly of changing curriculums in public colleges and how to still manage to inspire students to become tech artists. I actually participated in this discussion and said that I thought that having visiting artists come and give demos and workshops could allow for students to get the exposure at least to tech art without having to go through the red tape of changing a curriculum to fit tech artists. Overall I thought it was really good discussion and I believe it might be still going on at tech-artists.org. I hope that ringling will slowly implement more technical aspects to the curriculum so to inspire more student to be technical artists.
5 Insights/Conclusions:
There's a difference between just exchanging business cards and networking
I noticed that lots of people at the didn't really make meaningful connections at GDC. I found that getting to know the person you're talking with rather than quickly exchanging business cards and moving on the next person was a better way of really meeting people and making sure they remember you.
The career center is great for portfolio reviews but parties are better and more direct
A lesson learned the hard way. I spent a good 2 hours waiting in the insomniac line for a portfolio review which i thought was the normal way to go about getting your portfolio looked at. Then when I was at the blizzard party I met up with a tech artist whom I met at the round tables and she introduced me to her friend, a technical artist at insomniac. Within 5 min of the conversation she asked to look at my portfolio and we just talked and got to know each other. Parties I found out are more like informal recruitment sessions at GDC and that they are very important networking tool if you are trying to get into the industry.
Efficiency saves time and (lots of) money
From going to all the Technical Artist talks and seeing what the game industry was up to I realized how crucial it was to be efficient. Time is a prized commodity within the game industry and being able to ship titles on time, meaning that everything is running smoothly, and that hopefully they won't be spending more than they will be earning in the long run.
You have to constantly be willing to learn and share your knowledge if you want to stay up-to-date and relevant within the gaming community
The game industry is always evolving with new technologies and it really is an adapt-or-die situation especially with technical art. Being able and willing to learn even after you have left school will make you a great artist and sharing knowledge you learn will help you better the game community. Its a win-win.
People who want to do a similar job as you usually have the same personality
One pleasant surprise for me was the every technical artist I met was really friendly. I realized though after talking to a couple fellow tech artists that it's almost a necessity for the job. We need to be able to be patient and kind with the artists, programmers, and problems we run into. Also the job of technical art requires both the left and right sides of the brain to function cohesively which creates a special breed of people. So at GDC this allows for like minded people to meet up bond over common quirks and ways of thinking which creates a great sense of community that I'm excited to come back to at the next GDC.
Also here's a picture of my classmate Justine (right) and I (left) at the Ringling booth on the Expo floor