Presentation on theme: "Poster Print Size: This poster template is 36” high by 48” wide. It can be used to print any poster with a 3:4 aspect ratio. Placeholders: The various."— Presentation transcript:
Poster Print Size: This poster template is 36” high by 48” wide. It can be used to print any poster with a 3:4 aspect ratio. Placeholders: The various elements included in this poster are ones we often see in medical, research, and scientific posters. Feel free to edit, move, add, and delete items, or change the layout to suit your needs. Always check with your conference organizer for specific requirements. Image Quality: You can place digital photos or logo art in your poster file by selecting the Insert, Picture command, or by using standard copy & paste. For best results, all graphic elements should be at least pixels per inch in their final printed size. For instance, a 1600 x 1200 pixel photo will usually look fine up to 8“- 10” wide on your printed poster. To preview the print quality of images, select a magnification of 100% when previewing your poster. This will give you a good idea of what it will look like in print. If you are laying out a large poster and using half-scale dimensions, be sure to preview your graphics at 200% to see them at their final printed size. Please note that graphics from websites (such as the logo on your hospital's or university's home page) will only be 72dpi and not suitable for printing. [This sidebar area does not print.] Change Color Theme: This template is designed to use the built-in color themes in the newer versions of PowerPoint. To change the color theme, select the Design tab, then select the Colors drop-down list. The default color theme for this template is “Office”, so you can always return to that after trying some of the alternatives. Printing Your Poster: Once your poster file is ready, visit to order a high-quality, affordable poster print. Every order receives a free design review and we can delivery as fast as next business day within the US and Canada. Genigraphics® has been producing output from PowerPoint® longer than anyone in the industry; dating back to when we helped Microsoft® design the PowerPoint® software. US and Canada: [This sidebar area does not print.] Pivot: Technical Details Michael Griscom, David Klimek, Frans Kurniawan, Shitianyu Pan, Joshua Ventura Department of Computer Science & Engineering, The Ohio State University, 2015 Neil Avenue, Columbus, OH SUMMARY CONTACT Michael Griscom David Klimek Frans Shitianyu Joshua Pivot is a single player puzzle game for the PC. It was created in the C# programming language using Microsoft’s XNA framework. The development took place over a span of 15 weeks. The Model-View-Controller (MVC) design pattern was used to provide a flexible, loosely coupled system. This was backed by further encapsulation of the various game components (e.g., the physics, graphics, and AI engines). GRAPHICS All the in-game textures and models are created procedurally; that is, rather than utilizing modeling software the functions that describe the appearance of objects are represented mathematically within the code. Table 1. VS2010 code metrics analysis results for the large projects in the game ARTIFICIAL INTELLIGENCE The enemies of Pivot follow a state-machine model, where an entity’s current state (e.g., “Idle”) can transition to another state (e.g., “Chase”) via a trigger (e.g., “Player Visible”). This allows for easy extension through the creation of additional, more complex states. Further, in the future alternate AI personalities could be added via the use of different state machines, such as those emphasizing exploratory or aggressive behavior. Figure 1. Portal nesting effect accomplished through the use of scissor rectangles Figure 5. Left to right: separation, cohesion, and alignment forces that create flocking behavior in the spiders (Source: Programming Game AI by Example, Matt Buckland) Figure 4. Spider navigation graph for a level; note that the wooden cubes are excluded as spider locomotion is restricted to metallic surfaces For the spiders, additional logic – in the form of path planning – is used to provide chasing mechanics. This is achieved through the creation of a navigation graph for the level. When they travel, spiders also are encoded with flocking tendencies to create more realistic and varied behavior. SAVING The game progress (i.e., which levels have been beaten and the best time for each) is stored, along with the game settings, in the user’s AppData folder. Additionally, custom levels are serialized in an XML format within the same folder to allow for convenient saving, loading, and sharing. Figure 3. Sample XML for custom level data (left) and game progress (right)Figure 2. Portal effects are created using an array of particles, each having a unique position and velocity and consisting of two graded triangles Portals are rendered by creating a “stencil” which informs the graphics device which pixels to render, then re-drawing the world in that stencil. Fill rate is optimized through the use of scissor rectangles, which enable the consideration of only those pixels which might lie in the portal stencil. Portal nesting is accomplished recursively, and is optimized using back-face culling (indicating not to draw the scene), followed by frustum culling and occlusion testing. TECHNOLOGIES Cross-Platform Audio Creation Tool (XACT) The GNU Image Manipulation Program (GIMP) Microsoft Visual Studio 2010 Microsoft XNA 4.0 QuickGraph, Graph Data Structures and Algorithms for.NET SOUND The Cross-platform Audio Creation Tool (XACT) library was used in order to play in-game music and sound effects. The sound effects are generated in a virtual 3D space, meaning that sounds (e.g., that generated by the end-of-level marker) become louder or softer based on proximity, in addition to having differing left- right speaker strengths. Project Maintainability Index Executable Lines of Code Framework83714 GameCore911,335 GameState841,658 Graphics761,884 MapEditor90554 Physics90973 Weighted Avg.84.4 CODE ARCHITECTURE The foundational organization of the code base is designed using the Model-View-Controller (MVC) architecture, which provides a loose coupling between the game’s business logic and its visual manifestation. This design philosophy was leveraged across the codebase in order to create a flexible, maintainable application. Using the Visual Studio 2010 code metrics analysis, maintainability indices were calculated for the code. This index is a value between designed to quantify the maintainability an application; Microsoft describes values greater than 20 as “good.” The results of this analysis are shown in the table below.