ULTCorner URTCorner  
ULSCorner Christopher Adams Technical Animator Logo
Christopher Adams Technical Animator Logo URSCorner
Christopher Adams Technical Animator Logo Christopher Adams Technical Animator Logo

MEL Tools:

Jump To:

Screenshots:

 

Overview

Proxy World was created as a means to allow any user to open up Maya, launch the editor and start building a Maze Madness level no matter how well that user new how to use Maya.  The tool would be flexible enough to allow for expansion to other projects, and rely on standardized data output for code implementation.  The tool should automate and simplify as many daily to expedite level production.

Workflow

  1. Level Plotting:   Designers used the tool and a blank canvas to carve out the world.  Once they were happy with the layout, the rough block world was passed over to the art team for skinning.
  2. Level Skinning:  Artists took the blocks and...
    • Used the optimization tools to optimize a collision mesh for each target platform
    • Used the rough blocks as a template to create a high resolution skin over top of each collision mesh
  3. Entity Creation:  Designers created and placed icons that contained data element to represent gameplay mechanics.
  4. Export:
    • Artists exported the collision data and the skinned level using the projects native Maya geometry exporter.
    • Design exported the entity data into an XML file
  5. Implementation: Once code received the collision and the entity data, they created the code necessary to utilize the new data and level art.
  6. Revision:  Once implemented...
    • Design was free to modify entity data. Existing data would show tweaks interactively, which new additions had to take another pass through programming before appearing.
    • Art was visually tweaked the level skin to account for the modified design.

Features

  • Simplified Creation Environment:
    • Users do not need to understand Maya to create a 3d Level using this editor.
    • Designers are given 6 basic shapes to build mazes with.  All pieces snap to grid by default preventing gaps and spacing errors on large maps.
    • Painting Geometry or Entities using the coordinate cursor brush allowed designers to quickly rough out level Maps.
    • No guessing or question in regards to scale. Grid spacing, block scale and wire shading are built into the editor.  Launching the editor adjusts global settings while closing the editor restores Maya to it's previous settings.
    • GUI interface makes editor feel like a native extension to seasoned Maya users.
    • Keyboard shortcuts allow advanced users to minimize the GUI and still build levels.
  • Designer Driven Entity System:
    • Game objects are represented by colorful and customizable icons, which also snap to grid by default.
    • Defining AI Pathing as simple as selecting two entity nodes and creating a "link", which is a visual arrow denoting motion flow.
    • Game data defined via external Entity Definition text files created using GUI functions.  Designers could easily add or remove entity data without having to worry about file format.  Externalizing these files allowed for data merging and per level customization.
  • XML Entity Data Output:
    • XML output allowed Programming to add or remove gameplay functionality as data changed.
    • Standardized XML output allowed for quick text modification of the data during implementation stages.
    • Text files allowed for easy porting of data from one target platform to the next.
  • Robust set of tools to deal with large amounts of data:
    • Level Tools:
      • Center World -- Adjusts the entire level to be centered over the origin in case you mapped your level favoring one quadrant.
      • Find Cursor -- Quickly locates your cursor on a large map.
      • Find Duplicates -- Eliminated objects accidentally placed on top of each other
      • Rotate 90 Around Cursor -- Allows designer to re-orient their level using the cursor as the pivot point.
    • Display Tools:
      • Annotations allowed designers to visually explain complex areas to artists or programmers
      • Coordinate cursor w/ text description -- Allowed users to know where and what they were painting at all times.  Text description could be toggled off if desired.
      • Quick Select -- select all geometry, all entities or all annotations in a scene.
      • Layered modes -- Geometry and Entities placed on separate display layers, allowing designers to hide, template or reference all data elements.
    • Entity Tools:
      • Retype Entity -- Change the classification of selected entites, including icon and data templates.
      • Refresh Lists -- Reload externally modified Entity Definition files, updating modified icon and data templates.
      • Show/Hide -- Control the visibility of all entities of a particular type.
  • Built-in Optimization tools:
    • Blocks could be combined into a single mesh, stripped of interior faces and unnecessary coplanar edges, resulting in a single, clean, quadrangulated mesh.
    • Instead of combining all blocks into one optimized mesh, block worlds could be combined into multiple "chunks" using a user controlled tolerance quad tree optimizer.  The result would be a grid of larger blocks optimized individually using the method mentioned above.  This optimization technique increased draw speed dramatically on certain target platforms.
    • Faces all pointing in a common vector within a user-defined tolerance could be selected with the SelectFacesOfVector tool.  This tool allowed artists to grab all backfacing faces or downward facing faces quickly for deletion.

 

Sitemap | All content Copyright © 2008 Christopher Adams.