Friday, 12 April 2013

Toon Shading


                One of the most interesting looking shaders that were shown in our classes was the Toon Shader. This shader gives the models an interesting look that gives the models a more comic look. The Toon Shader uses cell shading and edge detection to create these comic like characters.

                In the program, cell shading happens before the edge detection program starts. The Toon Shader takes in 2 uniforms. These 2 uniforms are the qMap, and the image of the toon texture. The qMap shows the values of how much lighting calculations should be done on a section. It is a monochrome gradient that ranges from white to black. The toon texture is the texture that is to be applied on the model. This texture is usually simple, and uses bright colours.

                In the cell shader 2 varyings are needed in the vertex shader, the texture coordinates and the normal. The position, colour, texture coordinate and normal are calculated and given to the fragment shader for further processing.


The fragment shader uses the uniforms from the initial input and has a new constant, the light to eye direction which is a vec3 (x, y, z). In the main function the normal is normalized and the diffuse is calculated by taking the max value of the dot product of the normalized normal and the light to eye direction. The qMap is used with the diffuse lighting to calculate for the blocky value which only takes the ‘x’ value of the vector. The colour is calculated with the sampled texture image and texture coordinates. The shader then exports the fragment data that it has calculated.


                The second program after cell shading is the edge detection program. This program takes in the colour, normal, depth and pixel size to calculate for the edges of an object and to outline them. The edge detection program only has a fragment shader, no vertex shader. The edges are calculated using the Sobel operator which calculates the horizontal edges and vertical edges. Horizontal and vertical passes should be check separately because it is much more convenient. In the main the fragment shader calculates the fragment colour by multiplying the colour with the final edge of the algorithm. And now Toon shading is completed!



                Some of my favourite games that utilize the Toon Shader is a popular game known as Boarderlands. This game uses Toon Shading rather than to create a more realistic look, since their art style is more towards a comic book style game rather than military like game such as Battlefield. Another game that uses Toon Shading is Elsword which is a Korean made game but they also have an art style to look like a comic book.
                


Thursday, 11 April 2013

Being Prepared for GameDev!




                My second year of Game Development in UOIT is almost at its end and if there is one thing that I have learned, it is that being prepared beforehand gives you a big opportunity to develop and improve on your game much easier. The one person who really taught me this was Emilian from our year has shown the world his level editor and what it can do and potentially do.


                Emilian and his friend Cameron, had researched and prepared a level editor for their 2nd year game in GDW. When I had took a look at it initially, it had what a basic level editor could do such has load/save user generated levels, but it was completely out of the scope of what a first year game developer from UOIT could do without doing additional research. With this level editor, Emilian and his group didn’t have to create a new game from scratch when they could just build off the level editor. It saved time and it made creating the actual game much easier for his other group members. Throughout the year he had been adding onto his level editor such as to give a level in the game deferred rendering with a click of a button. It was really amazing and has inspired my group and myself to have something prepared for our third year.

                My group members aren’t as talented as Emilian is, but we can have other things to prepare. By talking with third and fourth years, we have a general idea of what the future of game development will be like in UOIT. We can create a new framework for our future game or other future projects that are related to GDW.

                We have also started a design concept of our 3rd year game as well. We have decided to go a beyond what we have done in our 2nd year game which was a top down shooter to a more dynamic 3D battle arena. We are confident in our abilities to create such a game, and with the confidence boost of what Emilian did with his level editor over the summer, we also plan to have a framework prepared so it gives us more freedom to create a more interesting game. The idea of being prepared before the year starts seems like common sense but no one but Emilian and Cameron thought of it. Good job guys and you deserve the Best Tech award at Gamescon and I encourage everyone to have some sort of framework for future years.



Winners of the Best Tech Award at Gamescon 2013
From left to right: Cameron Chodan, Stephen Li, Crystal Moe, Terry Fong, Emilian Cioca

Graphics vs Gameplay


            Ever since the video game industry has grown, there has always been a controversy between what is more important in a game, graphics or gameplay.


            To me both graphics and gameplay are both important for a game, where graphics is what draws the players in initially, and where gameplay gives the player a reason to keep playing the game.

            The reason why graphics is so important for video games, especially current generation games is the fact that graphics are the first things a player sees when playing a video game. A game with a great visual presentation definitely helps promote the game since it draws the player in. Visuals on the level of the recent Battlefield games and the Crysis series attract their players in with their jaw dropping graphics.  But realistic graphics doesn’t mean that they are the best graphics since how the game looks depends on the game’s art style. Games such as Limbo or even the Super Mario series do not have realistic graphics but their art style complements the games they create. The graphics for these types of games suit the style as well the intended audience the developers were trying to aim for.

            Where the graphics draws the player to the video game, gameplay is what keeps the player interested in the video game. Gameplay is how the player interacts with the game. Just like graphics, there is no correct gameplay. Gameplay is different from player to player since everyone has different interests. There are gamers who love challenging games such as Dark Souls but for others they prefer laid back games such as Angry Birds or Super Mario.

            Both graphics and gameplay are equally important and as game developers, no company should value one over the other. Developers goals to create a fun game, is to create a game that has graphics and gameplay that suit the game and the players.

Tuesday, 9 April 2013

My Experience in LevelUp


On April 3rd 2013, the Design Exchange in Toronto hosted the annual Level Up, which showcased a wide variety of games through the day. There were some interesting games ranging from the retro 2D, top down shooters, to the 3D exploration games.

My group went to showcase our game, Bullet Devil, a top shooter that uses 3D models. It was a generic top down shooter, with a few power ups, and unique enemy AI.

There were many games that were showcased there, but the ones I would like to mention first were created by the UofT/OCAD combination. The games that stood out to me the most was, the 3D horror/exploration game called Dollhouse and the puzzle game, Luminance. Although these games didn’t require as much programming or logical thinking than the games made by UOIT (since they all used Unity), they did have an interesting game concept.

The game, Dollhouse really used the “mood” to play with the user’s mind. It followed the concept of collecting tape recorders which was similar to Slenderman where in that game you collected notes. What was different though was the fact that as the player, you could not see who was chasing you since the antagonist was your inner conscious. As the player you couldn’t see the inner conscious but you can look from the point of view from your inner conscious, so you would use this to track where your inner conscious would be located at. Eventually your inner conscious would catch up to you and you would be dead, but with the use of a new, unseen, immortal enemy with the dark music and abandon building, it creates a great atmosphere for the Horror/Exploration genre.

The second game that really stood out to me was the game Luminance. This game used the combination of a tricky puzzle game and the concept of light specifically the light rays. You play as a shadow and your goal is to reach the end of the level. The only problem is you can only move where there is light. To advance you must use the lamps around you to change the direction of light so you can create a pathway to advance forward. Large pillars and high points in elevation could form shadows that would block your path.

These 2 games both won an award and I could see why. They both had interesting an interesting concept and it worked for them. The game was a fun game with a unique design. Congratulations to these two teams as they deserve the award.