Monday, 22 February 2010

Week 6

22/2/10 - After discussions with Abi about the 3D bees, she suggested an alternative method to animation with bones. Because of the iPhone's constraints on 3D (low polygon and bone limit), I was keeping each bee to a sensible restriction of 5 bones; unfortunately this meant that the arms could not bend, which is problematic for the worker bee.

The other method we could try is to make static models of the bees in various poses, swapping them in at the right moment (for example, a soldier bee might have an idle stance and an attack stance). I need to check with the programmers if this is feasible, as I am not sure if swapping would increase the draw count or even work with swarming; but it is a very good alternative to animation if it works. Below are some views of two soldier bee poses I made based on the concept art:

Views of the soldier in different static stances

Hopefully we will be able to test how well it works to swap these models for each other in Unity.

23/2/10 - I spent today refining my case studies in the hope of starting the dissertation this weekend. I also set up a scene in 3DS Max to show turnarounds of my high-poly characters; I managed to render the ant and the worker bee. The video can be seen below:

I will probably look into good lighting techniques for turnarounds, since these models are backlit quite brightly. The 360 angle does a lot for the ant as it's nice to see the full extent of his pose.

24/2/10 - Wednesday was mostly devoted to working with the other members of the show reel group, collecting information from the master questionaire. We don't have everybody's information yet, so we cannot start on a storyboard until we have gathered it all.

25/2/10 - I started modelling the heavy ant enemy. I hope to make good progress with it over the next few days; tomorrow is development day so I might complete the first iteration of the model by the end of the day.

26/2/10 - I was able to spend Friday completing the first stage of the heavy ant model. I wish to work on the model some more this weekend. Here are some progress shots of the model so far:

The model will likely require some refining as I was only going on a concept picture, but hopefully it is along the right lines. Once this has been approved, I will proceed to take the model into ZBrush for smoothing.

27 /2 /10 - This morning I optimised a generic ant to just under 700 triangles. This is in case we opt for 3D characters; we're concerned that 3D bees versus rendered enemies would be inconsistent. Of course it would, so that leaves us with pure renders or low poly 3D. We've yet to come to a decision on this since we still don't know what the limits are for this particular project. In any case I am aiming for around 500 triangles per character, so the ant might need to be reduced a bit more.

In order to get this character anywhere near the polygon limit, his arms, legs and antenna have had to be reduced to flat shapes with no volume. This shouldn't be a problem if the ants do not move in 3D.

Monday, 15 February 2010

Week 5

15/2/10 - I started with some more research into iPhone games that use 3D; I found a very good example in Castle of Magic by Gameloft. As is evident from the screenshots below, Castle of Magic is a very attractive game which uses 3D environments and characters to complement its 2D side-scrolling action.

Castle of Magic has a wonderful colour scheme and the models appear to have very detailed textures, something that we can use to our advantage. The whole team has been looking at this game for inspiration to see what is possible on the iPhone; however, some reviews have mentioned slowdown issues (most probably related to the art) and have suggested that the game should not be played on older versions of the iPhone.

Graphical capabilities are also heavily dependant on the engine that was used to build the game - it is likely that Gameloft wrote their own engine as they are quite a large developer. We have to make do with what Unity offers; personally I think that the only 3D we will manage (if any) is for the bees or props.

16/2/10 - Below are optimised models of the soldier and worker bees. They both weigh in at just under 500 triangles, which I think is as low as they can be before sacrificing major details. I also drew some simple textures for them based on the colours in the concept art. They have been rigged, although they are not posed in these pictures; they each have five bones.

Low poly soldier

Low poly worker

These models are extremely simple and far less attractive than their detailed counterparts; however they should look fine on a small screen. Hopefully we can run tests this week to see how many polygons Unity can handle.

17/2/10 - Wednesday is our designated day for the grad show meeting, so most of this day was spent discussing the showreel. We agreed that we would draw a storyboard next week, once everyone has filled in a form with their information; we need this in order to make a start. The forms will provide us with information such as how many clips we need to show, the number of students on each course and how many pieces of work there will be from each media type.

18/2/10 - After a chat with Abi I proceeded to add some 2D layers to my environment; the results can be seen below. It is more or less the same, but there are now obstacles in the mid and foreground as well. I did this to see if it would add some depth to put the enemies on different planes.

Rendered bees and ants with an orthographic perspective.

Modeled bees and rendered ants with an orthographic perspective.

Rendered bees and ants with a vanishing perspective.

Modeled bees and rendered ants with a vanishing perspective.

From looking at these screen tests, the extra layers really add some depth. There are a couple of issues with the alpha showing outlines, but this is due to 3DS Max being awkward with transparancy and I am sure it won't happen in the game. The 3D bees against rendered ants look more natural in the perspective shot, but I am still not sure if they blend well.

My favourite image is probably the one of the rendered bees and ants with the perspective; the difference in size looks really good in my opinion. Hopefully we will be able to show these to Tag at the meeting on Friday and get their opinion on this.

19/2/10 - We spent most of the day developing before the meeting at 4.30. We managed to put some 3D bees and an ant render in, although there was a small problem with the direction the bees were facing.

20/2/10 and 21/2/10 - I made an animation for the soldier and worker bees - I hope to test these animations in the engine next week. Below are the videos; I only made idle animations in the time being. This is because we may need to make changes to the skeletons if there are problems with Unity.

Soldier animation

Worker animation

Monday, 8 February 2010

Week 4

8/2/10 - I optimised the soldier and worker bees to an extent, but did not go too far with it since we still do not have a solidified polygon limit. I do not want to make the models too low-detail. I also started preparing my PowerPoint slides for the pitch session on Thursday.

9/2/10 - I finished smoothing the worker bee after deciding that it would make sense to have a high detail and low detail version of the characters anyway; part of the investigation is about experimenting with art methods afterall. I then rendered my posed models using some settings and lights that Abi's boyfriend had showed me. Results below!

Ant in attack pose

Soldier in attack pose

Worker in cool pose

The first two poses are taken from Abi's concepts and are similar to how they might be rendered for use in the game; the third was just for fun, to test the skin.

This render setup involved a sky light, three directional lights and a glossy material. I am very grateful for being shown this setup as it makes the models look great!

10/2/10 - This morning I did some research on polygon and bone limits for Unity iPhone - the limits seem to be very low but I'll have to wait and see how the programmers' stress tests go. I plan to have a low-detail version of each character I create, even if they will not be used. I think it's a good idea to have models that are theoretically suitable for development if the game were in full 3D, since this is part of my investigation. Hopefully at the end I will be able to compare the renders, the models and Abi's drawings in context.

Below is another render of the worker bee. I posed him again to make sure that the skin on the arms was deforming properly, and assigned a matte material to see how it would look.

'Ready for business' pose

11/2/10 - Following my pitch presentation and supervisor meeting, I was comfortable with the idea of creating theoretical low poly models of each character for the sake of comparison. My aim is to submit mockup gameplay videos: one with the rendered assets and one with the 3D assets.

I conducted some research into iPhone games which use 3D assets; Touch Arcade and Pocket Gamer are two useful websites which feature articles and media concerning iPhone games. I looked at GTA: Chinatown Wars in particular because there was an article which compared the game on PSP, DS and iPhone. Interestingly, the iPhone version was deemed the most graphically attractive. The article can be found at:

Unfortunately, looking at other iPhone games for use of 3D does not seem to be particularly useful; the polygon limit on screen is heavily dependent on several factors, including the use of animation, physics and the number of models. This means that I still cannot guess at how many polygons or bones are feasible in a model - however I have started optimising the generic ant anyway. My guess is that the polygon limit will be very low, as will the bone and animation limit.

Low-poly ant is still over 800 triangles - ideally he should probaby have even less.

12/2/10 - At the moment I am unsure what would be feasible for our game as far as 3D is concerned; I have no idea what our approach would be if we used full 3D. Given the nature of our game, there will be many characters on screen at any time - the swarm can have as many as seven bees and the generic ants would likely attack in hordes. I am almost certain that animating these models would cause severe slowdown, so perhaps they would not be animated. But this would leave things looking very static, especially the ants since they should be walking.

A possibility is to use 3D bees with attractive swarming motion, with 2D rendered ants; this would probably be less strenuous on the iPhone but I'm not sure how good (or bad) it would look. I might run some tests with mockup screens this weekend to see what happens.

13/2/10 and 14/2/10 - Over the weekend I set up a scene in 3DS Max with a 2D rendered backdrop; I tested the scene with 2D rendered ants opposite rendered bees, high poly 3D bees and low poly 3D bees. Below are the results.

High detail renders of ants and bees. This is method 1 - the one we are most likely to use.

Rendered ants and high detail 3D bees. This is not going to be used for the game and serves as a comparison between high poly and low poly 3D on a small screen.

Low poly 3D bees and rendered ants. This is method 2 and is being looked into. I am not convinced about this method as it is quite jarring, but it will need to be tested in the engine.

Friday, 5 February 2010

Week 3

Week 3 started with working on a model of the soldier bee which I had previously made; I simply smoothed the model out in Zbrush. This was a useful exercise in discovering how much the texture would deform when a UV mapped model is tweaked. (2/2/10)

It was good to find out that a skin can be detached from a posed skeleton, replaced and re-attached without any hassle. This is good news if I wish to pose a model *before* adding detail to the mesh. (2/2/10)

From this I have come up with an ideal production pipeline for these models:

Initial modelling in 3DS Max
UV mapping > send map to Abi for texturing
Build skeleton and rig model in 3DS Max
Add detail to the model in Zbrush
Pose high-detail model if this hasn't already been done
Set up lights and rendering

(3/2/10) I have now sent the UV map for the generic ant to Abi to texture, and have had the smooth soldier approved. I have also added details to the generic ant (he has a spiky blue and red counterpart) and UV mapped those. Here is what the spiky ant looks like:

He is rigged and ready to be posed for rendering.

(3/2/10) I have written some notes concerning the dissertation: structure, chapters etc.

(4/2/10) I found a better way to rig and bind models so that there will be much less need for skin weight painting; I used this method to skin the spiky ant. Also re-posed the generic ant to match a position in Abi's concept art and set up some lights for a nice render; this will be put in the game as a placeholder at some point.

This model is still rigged the 'old' way; imperfections in the skin will not be noticeable at iPhone size so for the moment this is not a problem. However, I will consider re-skinning this character when it's time to make posters.

(5/2/10) After a day developing together as a team, we have become indecisive as to whether the bees should indeed be flat renders; the placeholder assets looked so nice swarming around in Unity, even at a small size. A decision needs to be made soon, because I can't progress with any more bee models until I know what the limitations on polycount and bones are.

Unfortunately, if the full 3D method is chosen for the bees it means that my hard work on the soldier and worker bee (see below) will have been for nothing. I think the ants will remain high-detail renders whatever happens, so this isn't so bad.

This is the worker model - the skeleton has been fully built and the model has been UV mapped. All that was left to do was the smoothing, but this model may never be completed; it is probably too high detail at the moment to be used as an actual 3D asset in the game. I will have to reduce or re-do the model and start the skeleton from scratch as well if the model is to make it into the engine.

(7/2/10) I mostly spent the weekend going over my case studies for the dissertation, and taking notes concerning the show reel. Looking at other multimedia show reels and last year's Abertay show reel has given me some ideas as to how this year's show reel could proceed. Progress is still stalled concerning the character modelling.

Week 2

I spent week 2 working on the ant enemy; adding detail in Zbrush, UV mapping and skinning and posing. Below are a couple of progress shots of the ant being detailed:

At this stage the model had been smoothed to a satisfactory standard, but some fine details still needed to be added. (26/1/10)

This version of the model has had the fine details added to his arms, legs and torso. This image was approved, so I proceeded to UV map and rig the model. UV mapping and skin weight painting was rather difficult with such a high-detail model, so I plan to change my workflow for the next model. By the end of week 2 the ant was very close to being complete; a few more skin weights just needed to be painted. (28/1/10)

Week 1

Since it was the start of term, we did not achieve very much this week. I met with my project group to discuss a day each week when we could work on the game together, as well as determine which software we needed and whether we could access it yet. We began our first day of development on Friday.

The first character I worked on was a generic enemy in the game; following concept art and guides, I was to model, rig and pose him whilst adding extra detail in Zbrush. By the end of the week, the ant model looked like this: (22/1/10)

I also spent some time at the weekend experimenting with various methods of cartoon
shading in 3DS Max; the results are shown below. (23/1/10)

Ant with toon shading
Ant with outline shading

Soldier bee with toon shadingSoldier bee with outline shading

Whilst the cell shading is quite nice, volume and detail are better retained on the textured versions. After presenting these experiments to Abi, the art director, it was decided that we would use the outline shading for our renders rather than the cartoon material. (24/1/10)