So once lighting was built, and the errors removed, all i had left to do was cook the level! I changed the lighting system over to Production, and built everything for one final time, which took some time, and opened up Unreal FrontEnd. Ive never used this program so followed a simple video guiding you through the process.
http://www.youtube.com/watch?v=RRraO1dRtoA
The final compile took a while, but once it was finished my dissertation was complete!
I personally am quite happy with it. I have never created anything like this where i was soley in charge of working on the technical side of things, which is not my strongsuit, everything i did, i had to learn from scrath, and to be honest im quite proud of what ive created at the end of a long and often frustrating few months. Ive had fun doing so and learning along the way, and will continue to work on this project as i feel i can keep learning techniques in UDK and improve the aesthetic side of the level.
Monday, 14 May 2012
Lighting
The only thing left was to light my scene. Up until now i was working with the roof off and the default directional light which was up in the sky acting as the sun, which lit my whole level and made it easier to work in. So the roof went on and point lights went in. These were placed all over the map so that they covered and lit all corners of the map. I wanted to make it obvious to players which areas were considered thier base so coloured the lights red and blue in each base with progressively whiter lights as we got to the middle of the map.
http://forums.epicgames.com/threads/813050-StaticMesh-has-Invalid-LightMap-CoordinateIndex
As mentioned in the last post, i had a few errors concerning my assets when i first ran the lighting with them in place. This required me to setup a lightmap which i detailed earlier. Extra errors also show up, but these dissapeared as soon as i came to build it with production lighting.
I wasnt familiar with the new Lightmass system in place in UDK, so did some reading to get to grips with that system.
http://www.hourences.com/tutorials-ue3-lightmass/
http://www.worldofleveldesign.com/categories/udk/udk-how-add-lights-dominant-directional-light-point-light.php
http://www.teaching3d.com/c/index.php/tutorials-and-articles/notes/udk-notes/udk-lighting/
![]() |
The blue base, lit with blue lighting. |
As mentioned in the last post, i had a few errors concerning my assets when i first ran the lighting with them in place. This required me to setup a lightmap which i detailed earlier. Extra errors also show up, but these dissapeared as soon as i came to build it with production lighting.
I wasnt familiar with the new Lightmass system in place in UDK, so did some reading to get to grips with that system.
http://www.hourences.com/tutorials-ue3-lightmass/
http://www.worldofleveldesign.com/categories/udk/udk-how-add-lights-dominant-directional-light-point-light.php
http://www.teaching3d.com/c/index.php/tutorials-and-articles/notes/udk-notes/udk-lighting/
Paths/Pickups and Setting up the CTF game.
With the static meshes created and in place, i started placing my pickups and pathnodes around the map.
This is a fairly simple process of just selecting various pickups from the Actor Classes tab in the content browser and rightclicking and placing it into the stage. Path nodes are also easy to place, alt+drag to copy and set them up all across the map. I was building paths after every area that i had covered, making sure to remove any nodes that were deemed unnesesary.
http://www.worldofleveldesign.com/categories/udk/udk-how-to-add-player-start-weapons-items-pathnodes-vehicles-jumppads.php
Again i was following this video when placing my pathnodes. All the game mechanics and assets were in place so i started finding out how to setup your map as a Capture the Flag gametype, so that i could start judging the map and how it played against other bots in a game situation.
http://www.youtube.com/watch?v=NeH9iTEr7VY
Bookcase
I did some research into the best way of producing, texturing and importing assets into UDK some of which are below.
http://www.youtube.com/watch?v=ZiGmbH8nl_A
http://www.youtube.com/watch?v=Aw5sjBFvCKM
http://vimeo.com/11566466
First of all though i had to make my textures. Below are all my texture maps for my items, with the bookcase one pulled apart into its original images.
With textures done, i set about creating the models, simple geometry and once done used UVW Unwrap and applied the texture sheets to each object. Applying another UVW Unwrap on channel 2, effectively setting up a light map, helped to get rid of some error messages i got later once into UDK regarding LightImportanceValues.
Once textured, the assets were covered in a collision box, labled 'UCX_itemname' which lets UDK know where the collision mesh should be. It was then exported out as a .ASE file and imported into UDK along with its texture. Once the texture had been assigned its own material it was just a case of dragging the items out into the stage and placing them where i wanted.
http://udn.epicgames.com/Three/FBXStaticMeshPipeline.html#Collision
An example pipeline for creating, setting collisions and importing a static mesh.
http://www.youtube.com/watch?v=ZiGmbH8nl_A
http://www.youtube.com/watch?v=Aw5sjBFvCKM
http://vimeo.com/11566466
First of all though i had to make my textures. Below are all my texture maps for my items, with the bookcase one pulled apart into its original images.
![]() |
I used the Match Colour tool on this image with the wooden texture above, and cut out the contents of the sheleves to combine into the texture sheet. |
With textures done, i set about creating the models, simple geometry and once done used UVW Unwrap and applied the texture sheets to each object. Applying another UVW Unwrap on channel 2, effectively setting up a light map, helped to get rid of some error messages i got later once into UDK regarding LightImportanceValues.
Once textured, the assets were covered in a collision box, labled 'UCX_itemname' which lets UDK know where the collision mesh should be. It was then exported out as a .ASE file and imported into UDK along with its texture. Once the texture had been assigned its own material it was just a case of dragging the items out into the stage and placing them where i wanted.
http://udn.epicgames.com/Three/FBXStaticMeshPipeline.html#Collision
An example pipeline for creating, setting collisions and importing a static mesh.
Producing Assets
So from the list below, i wanted to create as many as possible to help fill out my map. Although ideal, many wern't completely necessary as they were just serving a purpose in my my level, such as blocking line of sight or creating an obstacle for the player normal path.
Here are a few links i read through when thinking about object placement, and how they affect the flow of a level;
http://www.worldofleveldesign.com/categories/level_design_tutorials/cover-object-placement-for-level-design.php
http://games.soe.ucsc.edu/sites/default/files/khullett-fdg-camera-ready.pdf
Below are screen shots of assets that i made for the final map, in the next post i'll run through the process of creating and importing one onto UDK, which i applied to the rest also.
As you can see, each of these items have a collission mesh stood next to them. I'll go through the process of making one of my static meshes, using the bookcase as an example.
Here are a few links i read through when thinking about object placement, and how they affect the flow of a level;
http://www.worldofleveldesign.com/categories/level_design_tutorials/cover-object-placement-for-level-design.php
http://games.soe.ucsc.edu/sites/default/files/khullett-fdg-camera-ready.pdf
Below are screen shots of assets that i made for the final map, in the next post i'll run through the process of creating and importing one onto UDK, which i applied to the rest also.
As you can see, each of these items have a collission mesh stood next to them. I'll go through the process of making one of my static meshes, using the bookcase as an example.
Friday, 11 May 2012
Enough updates for tonight.
I then got to work applying these textures, player starts, weapons pickups etc plus adding in some static meshes for assets which will be scattered around the level. Below is a quick asset list, but i will go into more detail about it tomorrow.
Models
Cabin
Desk
Computers/instruments
Papers/documents
Chairs
Window
Atrium
Chairs
Tables
Suitcases
Litter
Statues
Books
Bottles
Food
Library
Bookcases
Frontdesk
Broken edge of ship
Space
Space Skydome
Distant Planet
Broken half of ship
Debris
Aswell as these assets i also needed to work on the lighting and the space skydome effects. Again, i will go into more detail about how i implemented these tommorrow.
Models
Cabin
Desk
Computers/instruments
Papers/documents
Chairs
Window
Atrium
Chairs
Tables
Suitcases
Litter
Statues
Books
Bottles
Food
Library
Bookcases
Frontdesk
Broken edge of ship
Space
Space Skydome
Distant Planet
Broken half of ship
Debris
Aswell as these assets i also needed to work on the lighting and the space skydome effects. Again, i will go into more detail about how i implemented these tommorrow.
Item Placement
After a few playthroughs i had a feel for the map and where i felt pickups should be placed to create a balanced gameplay experience.
Heres a good guide for adding pickups and playerstarts which i followed.
http://www.worldofleveldesign.com/categories/udk/udk-how-to-add-player-start-weapons-items-pathnodes-vehicles-jumppads.php
Also a few guidlines to follow when thinking about placing weapon pickups.
http://forgedesign.wikia.com/wiki/Weapon_Placement
Although, for Halo, it still details the same chocies available in Unreal.
The following list details the various pickups available in this version of the UDK editor.
http://liandri.beyondunreal.com/Unreal_Tournament_3#Pickups
Weapons
Link Gun
Rocket Launcher
Shock Rifle
There are 3 weapons available by default. They each represent a key type of combat. The Link Gun is the default weapon available from the start, so a pickup point wont be nesecsary, the Shock Rifle is a useful weapon from range, so should be placed in high places such as the vantage points. The final weapon is the Rocket Launcher. This causes severe damage and should be only available at one location, ideally at equal oppurtunity to both teams and in the open where there is a measure of risk versus reward. As the forgedesign.com article mentions, it is not always beneficial to place weapons in obvious places.
Ammo
Link Gun
Rocket Launcher
Shock Rifle
As you start with the Link Gun, it is important to keep the player stocked up on ammo by placing plenty of ammo around the level for them. Rocket Launcher ammo runs out quickly, but ammo should not be easily obtainable. The Shock Rifle is really only going to be of use to players who are stationed up high, in close combat they are less effective, hence the ammo should be placed up on the balconys.
Health
Health Pack + 25 Health upto 100
Health Vial +5 Health upto 199
Super Health +100 Health upto 199
Health is vital for prolonging battles, players always feel safer if they know where to fall back on to get more health. It makes sense to make this place the bases. Health vials were placed in the bases, with the more powerful Packs and Super Healths out in the open level.
Armor
Base Armor +50 Armor
Thighpad +30 Armor
Sheild Belt +100 Armor.
The armour pickups follow a similar idea, with the Thighpads available in the bases and the more powerfull Base Armor out in the open. However Sheild Belts are way to powerful for this size of map. As there are no vehicles and given the tight fast-paced combat, Sheild Belts would carry too much of an advantage.
Items
Beserk
Jump Boots
Ultra Damage
As with the Sheild Belts, these pickups are too much of an advantage and wont feature on the map. The massive boost you get from these, outweigh the price you would have to play on this small map designed for close-quarters gameplay.
The images below detail locations of where pickups/weapons/spawns and bases.
Heres a good guide for adding pickups and playerstarts which i followed.
http://www.worldofleveldesign.com/categories/udk/udk-how-to-add-player-start-weapons-items-pathnodes-vehicles-jumppads.php
Also a few guidlines to follow when thinking about placing weapon pickups.
http://forgedesign.wikia.com/wiki/Weapon_Placement
Although, for Halo, it still details the same chocies available in Unreal.
The following list details the various pickups available in this version of the UDK editor.
http://liandri.beyondunreal.com/Unreal_Tournament_3#Pickups
Weapons
Link Gun
Rocket Launcher
Shock Rifle
There are 3 weapons available by default. They each represent a key type of combat. The Link Gun is the default weapon available from the start, so a pickup point wont be nesecsary, the Shock Rifle is a useful weapon from range, so should be placed in high places such as the vantage points. The final weapon is the Rocket Launcher. This causes severe damage and should be only available at one location, ideally at equal oppurtunity to both teams and in the open where there is a measure of risk versus reward. As the forgedesign.com article mentions, it is not always beneficial to place weapons in obvious places.
Ammo
Link Gun
Rocket Launcher
Shock Rifle
As you start with the Link Gun, it is important to keep the player stocked up on ammo by placing plenty of ammo around the level for them. Rocket Launcher ammo runs out quickly, but ammo should not be easily obtainable. The Shock Rifle is really only going to be of use to players who are stationed up high, in close combat they are less effective, hence the ammo should be placed up on the balconys.
Health
Health Pack + 25 Health upto 100
Health Vial +5 Health upto 199
Super Health +100 Health upto 199
Health is vital for prolonging battles, players always feel safer if they know where to fall back on to get more health. It makes sense to make this place the bases. Health vials were placed in the bases, with the more powerful Packs and Super Healths out in the open level.
Armor
Base Armor +50 Armor
Thighpad +30 Armor
Sheild Belt +100 Armor.
The armour pickups follow a similar idea, with the Thighpads available in the bases and the more powerfull Base Armor out in the open. However Sheild Belts are way to powerful for this size of map. As there are no vehicles and given the tight fast-paced combat, Sheild Belts would carry too much of an advantage.
Items
Beserk
Jump Boots
Ultra Damage
As with the Sheild Belts, these pickups are too much of an advantage and wont feature on the map. The massive boost you get from these, outweigh the price you would have to play on this small map designed for close-quarters gameplay.
The images below detail locations of where pickups/weapons/spawns and bases.
![]() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The lower base is well stocked in helath vials and armour. Also there are two large Armor pickups behind the steps |
![]() |
Shock rifles on the balconys, and a rocket launcher in the center of the map. |
Textures
Once the grey box was complete. I started collecting and creating textures which could be used on the walls, floors and ceilings. Just the basic textures would be applied, making the rooms looking quite bare, but extra objects will be added when i import static meshes into the map. More on this later.
I used http://www.cgtextures.com/ for the majority of my textures, combining several to create my final images. The tutorials on this site were useful for creating several of my textures, especially the Match Colour tool which i used frequently, especially when editing the colour of the wood for the library areas. Here are my final textures for each room, and how i created each one.
Cabin
Atrium
You can see below how these two pictures above were used and combined to create the wall textures. The Match Colour was used again to create the white colour on the plaster which matches with the border piece. The bottom texture is used on the bottom floor, and had a red colour overlay added to create the red colouration. This breaks up the repetitive textures on each level and also helps the player distinguish the floor from a distance.
Library
These are the final textures for the library;
I used http://www.cgtextures.com/ for the majority of my textures, combining several to create my final images. The tutorials on this site were useful for creating several of my textures, especially the Match Colour tool which i used frequently, especially when editing the colour of the wood for the library areas. Here are my final textures for each room, and how i created each one.
Cabin
![]() | |
This is the wall texture which is going to tile along all the walls of the top base. I created it by combining two existing pictures which are below. I used the Match Colour tool to make sure the two images combined well. |
I created two variations which will be placed at random intervals which breaks up the repetitive pattern of the first texture. By using the magic wand tool i easily selected areas filled them in brown, and reduced the opacity to create a nice effect of dirt/rust.
![]() |
This is the ceiling texture which was sampled from a much larger texture. I will use this texture for every ceiling tile on the level. |
![]() |
This will be the texture for the cabin floor. I cleaned up this image using the clone tool to remove some blemishes and patches of dirt, which would stop it from tiling well. |
You can see below how these two pictures above were used and combined to create the wall textures. The Match Colour was used again to create the white colour on the plaster which matches with the border piece. The bottom texture is used on the bottom floor, and had a red colour overlay added to create the red colouration. This breaks up the repetitive textures on each level and also helps the player distinguish the floor from a distance.
![]() |
These are the 3 wall textures that will b used on each level of the atrium/corridor areas. |
Library
![]() |
I also applied the match colour this neat little detail from a picture frame, and tiled it four times along the bottom of each wall texture. |
These are the final textures for the library;
![]() |
Floor |
![]() |
Wall |
![]() |
Wall Variation. |
Assessing the greybox build.
NOTE/ Due to the number of screen shots this is a fairly large post.
First thing to note, is that i have left the roof off at this stage. This was more of a practical matter than anything else, it helped when navigating the camera around the level and also left a natural light source which illuminated the level, as i had not yet gone through and added lights.
First thing to note, is that i have left the roof off at this stage. This was more of a practical matter than anything else, it helped when navigating the camera around the level and also left a natural light source which illuminated the level, as i had not yet gone through and added lights.
![]() |
Shot of the whole level. Can get an idea of the length of the map compared to the width, also it is a good view from which to see all the various routes between each base. |
![]() |
The top base. The flag will be positioned at the top of the stairs. To the left is a window looking out across the space landscape. |
![]() | ||
From the back of this base, there is no direct line of sight directly to the opposite bases flag. This stops players from 'camping' and gathering kills from a distance. |
Subscribe to:
Posts (Atom)