Showing posts with label Silvermoon. Show all posts
Showing posts with label Silvermoon. Show all posts

Monday, February 25, 2013

The Crest of Silvermoon - Part 2

The next step in the creation process was to model the Low Poly version of the shield. This model is absolutely crucial and requires maximum care as this is the model that will go into the game. It IS the game asset. It should be very resource friendly and not contain more details than it needs.

The focus with Low Poly models is to capture the silhouette of the High Poly as much as possible and then leave the rest of the details (surface details mostly) to the Normal Map, Color Map etc.

Here is my final LP:


Also, this mesh needs to be composed of triangles only as the game engine always triangulates the imported models. An artist should never leave the triangulation process to a program as undesired errors might occur. You model the LP in the typical quad-polygonal (four sided polygons) fashion and then just add more edges to achieve the triangles.

Here are the textures I have ended up with. I've used Photoshop to heavily paint over the color map I've created in ZBrush. I've added more depth and color change to the various surfaces to really sell the look of something rich and believable.
I've added various gradients here and there to keep the viewer's eye interested in looking at the entire asset. A successful model is not just about its shape, but the surface colors as well. Hand painting is everything here.
Color Map

Normal Map

Specular Map
I desperately needed some professional feedback, so I posted my work to Polycount.


I've learn that I had a big technical issue regarding the texturing phase. In order to paint over a model, I have to unwrap it onto a flat surface. The unwrapping phase is important, because if you do not do it efficiently, you will loose pixel space, hence decreasing quality of the texture itself. It is a very technical matter, but has massive influence on how the art itself is shown at the end.

The feedback also reflected on how the asset looks. I've gotten positive remarks from people who have been in the industry for years. People thought it looked accurate to the concept, which is a huge thing for me, as the number one challenge when creating 3D assets from reference images is to make it match as close as possible. It is so easy to get off track and create something that is just "similar" , instead of something that is just like it. 

I've learn a great deal from this project and even though it's one small asset it provides me with a better insight on what is required to create an entire environmental scene. Going from small to big is always a good approach.

Here is the final outcome, which I will be adding to my portfolio:


As a bonus, I've found out that the look of one's work HEAVILY depends on what monitor it is shown on. Older, less performant models can completely kill off all the small details you have added to the image. Not only that, but the lighting values and the contrast changes drastically as well. I am working on a IPS panel monitor, which is all about very high color accuracy. If I will be presenting my work somewhere I need to make sure that the screens are up to par in quality or it might have a negative effect on my art.

Lesser quality monitor on the right.

Friday, February 22, 2013

The Crest of Silvermoon - Part 1

My aim is to practice the "World of Warcraft style" as much as possible. My aim is to get into that kind of sector once I graduate. It is quite a distinct, unique way of producing art. Almost every form, asset, building and detail is an irony of its original self. Details are very chunky and elements like roof tops or foundation blocks are much bigger and curvy than in real life.

Colors and textures are of a cartoony nature, but not too much. The game does not look like a proper cartoon, but it incorporates several details from that style/genre.

Here are some of the WoW artwork I've looked at. I did not want to create a scene as that would have required my concentration to spread out on several elements. Instead, a single asset seemed like a good choice, as I can focus only on it and not be distracted.

Concept art:



I've decided to choose an artwork that requires me to touch as many aspects of 3D as possible and at the same time look really really good :) .
The Crest of Silvermoon was the chosen asset:

Crest of Silvermoon
I've decided not to use any photo source for texturing, rather hand paint everything. The style is all about hand painting and I really need to practice it.
Hand painted textures mean that you build up every detail, colour and shading information through sheer colour painting. In CG, you have the opportunity to take real life photos and overlay them on your models. That suits different styles than the one I am aiming for here. With hand painted textures, you have full control over the color values, the shading information and all the small details.

After I've decided on the technical roadmap, I've started blocking out the main form:

Main blockout

Sculpted + base colors
After the main blockout was finished, I've went ahead and imported the asset into the sculpting program called ZBrush. ZBrush is an essential tool as it takes the modeling from a very accurate and technical stage to one that is way more artistic and loose. When I am blocking out the main form, I'm using my mouse to match the concept as close as possible. Accuracy and layout is key here, but you need to add that unique, self touch to the asset that can separate it from the rest.
In ZBrush I use my Wacom tablet and it feels like I'm drawing. It follows the movement of my arm and it feels as if I`m cutting into the surface myself. Makes modeling more fun, which it should be.

After I've added some scratches, bevels, tear and wear etc. through the sculpting phase, I've went ahead and applied some base colors as well. ZBrush provides painting features as well, so before I go ahead and start painting the final texture in Photoshop, it's good to have an already present guide on how you asset should look.


The model I have created so far is the "High Polygon" version, which is NOT suitable for gameplay. It has way too many polygons and would consume too much computer resource for a game to run at an acceptable frame-rate.
I need to create the, so called, "Low Polygon" version and then bake the details onto that from the High Poly. The details will come from the Normal Map, the Color Map and the Specular Map. Specular Map controls where and how the surfaces reflect light. It's crucial, because there are several types of materials on this model that have different characteristics on how they behave in real life.

To be continued in the NEXT post.

Monday, December 3, 2012

Compositing and finishing

I have rendered three different passes to be used for the compositing stage.

The first pass was the color/raw render pass which contained the color information of the scene. Sicne the color now contained the Global Illumination data in it, I've killed two birds with one stones, there was no need for a separate GI pass.

The second pass I have rendered out is the Ambient Occlusion. As mentioned before, this is necessary to bring all of the small details and darker areas to life. The color pass by itself cannot grab all the detail needed, so Ambient Occlusion is a must have.

The last pass rendered out was a so called RenderID pass. This pass gives every model a different, solid color. This allows me to mask out anything within the scene if needed. For example, if I add in a volume light effect, I can block that light out now and simulate it being behind a tower or another building. The light can shine through the leafs of a tree, but in a realistic manner, where the leafs actually obscure the light.


I didn't have to render out a separate alpha bass for the background as that was included in the color pass.

The next step was to take these into After Effects and begin the compositing.

First, I need to combine the maps and then begin to tweak the colors and add an appropriate background as well as the chosen audio.


Here are some images from the final footage:



To create the final image, I have used RedGiant Magic Bullet software, which I've found to be amazing for creating different visual styles and not having to be very technical about it. 
I've also used the Knoll Light Factory plugin for After Effects to quickly add in some very appealing lighting effects, such as simulating the glow of the sunlight and the glow on the blue crystals as well.

I have added an intro scene to the animation to slowly catch the viewer's attention before the main animation part begins. The audio chosen is from the game itself, thus providing the authentic Blood Elf feeling and carrying the animation through.

Friday, November 30, 2012

Feedback

I wanted to get constructive criticism to help better my work and to see what I might not be doing "right" when it comes to recreating the Warcraft style.

There are a lot of online forums that could be suitable for this, but I was thinking if there might be some.. or one that would be the best choice for this specific project. There are several CG websites that could point out technical issues or just generally say if the work was good or not, but I figured that the biggest World of Warcraft fansite would be a great choice in order to get honest opinion.
The people over at MMOChampion.com are amazingly helpful and the community is huge. I've gotten loads of replies and people started to really build up interest around my work.
I've felt that it would be embarrassing and wouldn't help my reputation much if I don't keep the community updated, so I have often posted work-in-progress images
The forum thread can be found HERE.

This was a good way to test if I've applied the theoretical elements correctly. People over here did not care about the technical stuff. For the technical feedback, I have used websites like Polycount, CGArena etc.


Thursday, November 29, 2012

Optimizing the scene for final rendering

Everything was OK up until this point, except for the render time.
I am aiming for an animation that consists of about 900 frames and I don't have more than 3 days to render. The render time at this moment at 800x600 resolution was 14 minutes. 3 days means 4320 minutes in total, which for 900 frames allows me a MAXIMUM of 4.8 minutes/frame.
I need to lower my rendering time below 5 minutes, that's the key.

But, how to do this? This is a third of the current render time. I need to look at the rendering process and identify the most influencing factors.

Global Illumination has the biggest impact on time it takes to render. This is the process where the program looks at your lights and determines what surfaces they hit. Then, the program needs to calculate how the light bounces off that surface and illuminates other surfaces as well. The light keeps bouncing until it completely decays. The color not only bounces with its original color, but picks up the color of the surface it touched, hence making the calculation of these procedures even more complicated.

So, my idea was to somehow play around with the GI to get a decent enough result, but with less than a third of the current render time.

I have a very animator friend, Kosza Arnold, who has created several animations with a lot of environments in them. I have talked to him about my GI issue and he suggested I look into Lightmap baking.


Lightmap baking is the process of taking the Global Illumination information and putting it straight into the color textures of your objets. Up until now, the color of my objects contain the pure color information, blended together with the Ambient Occlusion map. What Lightmap baking does is that you put the illumination information straight into the color map. So, basically that is the color and you don't have to render the GI out for each frame.
This would significantly lower my render times.

I've done research on how to go about this technically and have found an amazing plugin for 3DSMax, called Flatiron. Flatiron allows you to create Lightmaps in a very fast way. Although, I did not really know how to properly use the plugin at first, as the tutorials provided on their website are not thorough enough. I took a lot of time experimenting and re-doing the lightmap baking process, but in the end it completely paid off.

The result was that I had a scene in my viewport, in FULL REALTIME looking like my 14 minutes long render. Basically, rendering out a frame with all the necessary passes took around 50 seconds. Compare that to 14 minutes and it becomes clear how innovative this procedure is.

Before
After
Before
After

Tuesday, November 27, 2012

Final lighting system

I've done some research on common lighting setups and how they can have different affects on the final outcome. This was done to create a logical setup for my scene as well.


I have also looked at Digital Tutors' Exterior Rendering Techniques with mental ray and 3ds Max to translate the theories to actual technical practice. Even though I am using VRay to render out my animation, the main technical elements are pretty much the same in both renderers and any technique can be easily "translated" from one rendering engine to another.


I have used a 3 point lighting setup, where I have a dominant light (orangy color, high intensity) coming from behind the gate, simulating the sun. I`ve also set a fill light in front of the gate (redish color, half the intensity of the dominant light), high up in the sky and another light (redish color, but more towards the whites) in the middle of the scene to brighten things up so the details are more visible.

Sunday, November 25, 2012

Texturing

Texturing was done neither in ZBrush by actually hand painting color and texture onto the models in real-time. I painted these onto the high poly versions of the meshes, so in order to get a color map from the painting I have done, I had to bake out the texture. I've also baked out normal maps and ambient occlusion maps so I can combine these and apply them to the low-poly versions of the models'.









Texturing high poly vs low poly was a bit different. High poly had all the detail modeled into it, so the textures needed only to contain color information and ambient occlusion. But, because of the low polys limited polygon count, some details had to be created through texture information. This is very common in games, when you see certain bumps and extrusions from afar and they actually look like they are physically modeled into the object. Whereas, if you go close to that object, you can notice from an angle that it is actually a flat surface with painted on illusions of surface detail.
I wanted to practice this, hence I`ve created all of the garment models (flags and Kael'thas robe) in low poly and painted the wrinkles and folds into the texture. There are numerous ways of doing this. I`ve chosen the burn and dodge tool found within Photoshop to darken and lighten up the necessary areas to create the illusion of folds. They actually worked :) .

Without Ambient Occlusion Pass
With Ambient Occluson.
With post-work: color correction, applying glow, vignette etc.