kevin clow: artificial intelligence programmer level designer 3d modeler matthew vaughan: project...
TRANSCRIPT
![Page 1: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/1.jpg)
Tank Battle 3DTeam: Something Soft
Kevin Clow & Matthew Vaughan
![Page 2: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/2.jpg)
Roles and ResponsibilitiesKevin Clow:• Artificial Intelligence Programmer• Level Designer• 3D modeler
Matthew Vaughan:• Project Manager• Graphical User Interface Programmer• Audio Programmer• 3D modeler
![Page 3: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/3.jpg)
Tank Battle 3D!•3rd person tactical shooter with hover tanks
•Science fiction setting
•Enemy tanks, turrets, and mobile mines
•Player must fight through a maze full of enemies to reach the end goal
![Page 4: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/4.jpg)
Gameplay Features• Mazes are dynamically created
• Multiple ammunition types
• Control tank using Xbox 360 controller or a keyboard
![Page 5: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/5.jpg)
Target Market
• Players who enjoy
• 3rd person shooting games
• strategy style gameplay
• maze style maps
![Page 6: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/6.jpg)
Marketing
• Free and low-cost advertising• dedicated website for player’s to view,
comment on, and download the game• domain will be through GoDaddy.com• links to social websites on game website
• social networking websites• Facebook, Twitter, Google+, etc.• be able to reach about one billion people
![Page 7: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/7.jpg)
Competition• Introducing our competitors
• Wii Tanks for the Nintendo Wii
• Crazy Tanks for mobile devices
• Tank Recon 3D for mobile devices
We aren’t the only ones to think of this!
![Page 8: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/8.jpg)
Competition: Wii Tanks
Image courtesy ofmonstersandcritics.com
![Page 9: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/9.jpg)
Competition: Wii Tanks
Similarities:• Different types of enemies
Tank Battle 3D has:• Dynamically created maze maps• Much larger maps• Pickups & Power-ups • More types of enemies• Difficulty setting
![Page 10: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/10.jpg)
Competition: Crazy Tanks
Image courtesy ofitunes.apple.com
![Page 11: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/11.jpg)
Competition: Crazy Tanks
Similarities:• Large maps• Pickups & Power-ups• Difficulty setting
Tank Battle 3D has:• Differing types of enemies• Dynamically created maze maps• More types of power-ups
![Page 12: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/12.jpg)
Competition: Tank Recon 3D
Image courtesy ofitunes.apple.com
![Page 13: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/13.jpg)
Competition: Tank Recon 3DSimilarities:
• Large maps• Pickups & Power-ups• Difficulty setting
Tank Battle 3D has:• Differing types of enemies• Dynamically created maze maps• More types of power-ups
![Page 14: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/14.jpg)
Development Methodology• Core development is done in parallel
• Kevin works on A.I., Matthew works on menu• A.I. and menu system integrated together
• Unity game engine (free version)• C# used for script development
• Most art assets are created using Blender• some projectiles created within Unity
![Page 15: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/15.jpg)
Development Methodology cont.• Iterative Use Case Driven Development
• 23 cases total• 2 - 3 life cycles for each case• requirements • development • testing
• Weekly Updates• Senior project instructor: Professor Duncan• Technical advisor: Professor Bahrt
![Page 16: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/16.jpg)
Version Control• Google Code
• cloud storage
• Tortoise SVN (Subversion)• version control system
• WinMerge• manual file merging
![Page 17: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/17.jpg)
Testing
• Testing occurred during each feature implementation
• Play testing using multiple subjects for feedback
![Page 18: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/18.jpg)
Unity!• Compared to Unreal Engine 3, Unity gave
us:• ability to layer objects for collision
• on the fly variable changes using the Inspector
• on the fly compilation when executed in the editor
• rapid implementation of the game
![Page 19: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/19.jpg)
Graphical User Interface• Link menu system to empty Game Object
• developed using Unity’s stock GUI system
• switch between menus using a delegate • a data type that references a method• behaves like method once assigned one
• HUD (Heads Up Display)• also uses Unity stock GUI system• textures used for health & power-up meters
and for ammo and power-up type icons
![Page 20: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/20.jpg)
How we designed our maps
Example layout created with MS Paint
Layout of maze when generated within Unity
![Page 21: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/21.jpg)
Artificial Intelligence
• Enemy tank
• Enemy turret
• Enemy mobile mine
• Group level behavior
![Page 22: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/22.jpg)
Procedural Maze Generation• Given the dimensions of the space, structure
of existing rooms, the start point, and end points.
• Based on available space from unconnected Doors to edges determine all possible rooms to place
• Remove rooms from possible rooms that conflict with others
• Select room from possible rooms.• Create, and place selected room.
![Page 23: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/23.jpg)
Setting up for success• We have reached this point to better provide
for future implementations:
• more behavior states for the A.I.
![Page 24: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/24.jpg)
Lessons Learned• Developing the game using C++ and DirectX
• integration• knowledge
• Procedural Room Generation
• Explosion SFX• one reference script for each explosion
• We overcame each other’s differences
![Page 25: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/25.jpg)
Demonstration
![Page 26: Kevin Clow: Artificial Intelligence Programmer Level Designer 3D modeler Matthew Vaughan: Project Manager Graphical User Interface Programmer Audio Programmer](https://reader036.vdocument.in/reader036/viewer/2022062422/56649f1c5503460f94c32f2c/html5/thumbnails/26.jpg)
Q&A