
GameLoop is an annual one-day game industry unconference — a self-organizing conference — that originated in Boston in 2008. Think BarCamp but focused specifically on the industry of games. Philadelphia will be the second city to host GameLoop.Yesterday saw Philadelphia's first GameLoop non-conference: a conference organized and moderated by its attendees. About 75 registrants attended the non-conference, participated in suggesting topics for discussion, voting for topics to be discussed, and then moderating and actively participating in discussions presented throughout the day. The following are notes from sessions and discussions I attended and participated in:
Session 1: Misconceptions of Programming Languages
Moderated by Tim
A brilliantly informative presentation by the moderator. Identified what commonly passes for knowing a programing language, and what it means to have a mastery of a language. Described mastering a language along two paths: legally, or what it can do; and ethically, or how you should use it. Compared understanding and mastery of programming languages to spoken languages. Identified inefficiencies present in using one language as a crutch, or as a way of understanding and using another language. Also pointed out how a native speaker, fluent in two spoken languages, would be able to identify the subtle differences between the languages semantics, and would therefore know which language might express a concept better in certain situations. Correlated this anecdote with how a programer of one language might misconstrued the capabilities of a lesser understood language. Recommends that everyone master at least three different languages in order to better understand their capabilities and apply them more appropriately and efficiently in practice.
A few languages discussed or mentioned include: Lua, Haskell, C/C++, Java, Python, Perl, PHP, JavaScript, NoJS, CoffeeScript, and HTML5.
Session 2: 3D Environment & Lighting
Moderated by Rich
Identified two types of environmental design for games: linear and sand-box. Explained that cues for direction through the environment are critical for gameplay. Players that become lost often become frustrated, may loose interest, and ultimately stop playing the game. Some examples of cues are visuals (such as color, in game items, or effects), lighting cues, and sound cues. Use of game elements such as stat lists suggesting hidden rooms or items, or the necessity to find an use items for progression can encourage players to further explore an environment. Focus on creating a series of experiences for the player that both build up tension and provide a sense of relief from the experience. Environments can be quickly created by procedurally generating terrain with software such as World Machine and alpha maps specifying the environment layout. Note that lighting and shaders are resource intensive and are therefore the limiting factors in environment development. Bake lighting the texture map to avoid wasting resources, and avoid using dynamic lighting. Poly crunchers automatically reduce the number of polygons used in 3D assets.
Session 3: 2D in Unity
Moderated by Jake & Matt
Discussed the implementation and handling of 2D sprites in Unity. Working in a 2.5D with 2D textures in a 3D space. Unity is optimized to port to multiple platforms. Sprite Manager 2 can be obtained from the Unity Asset Store. A good reference source is the Unify Wiki for Unity. Begin with a simple primitive, such as a quad made of two triangles. Sprites are then mapped to the quad plane. Utilize a single texture to support multiple sprites. By compacting as many sprites onto a texture as possible will reduce the number of draw calls and thereby increasing the draw speed. Use of a sprite atlas helps to arrange and map sprites to texture sheets. Since light shaders are resource intensive, only use shaders that do not respond to light. When considering orthographic vs. perspective design, keep in mind that no parallax code is needed for an orthographic layout. Unity is also optimized to use Nvidia PhysX. When calculating collisions for multiple assets, use a single collider object instead of one for each asset. RageSpline can be obtained from the Unity store and used to draw smooth 2D graphics inside unity editor. iTween is a tween animation tool for use with Unity.
Games referenced: OMG Pirages, Battleheart, and Snuggle Truck.
Session 4: Procedural Narrative
Moderated by Shane
Identified procedural narrative as a story that emerges from a base set of rules through gameplay, as opposed to a choose-your-own-adventure where the narrative is limited to a designers predefined number of outcomes. Eve Online was an example given to identify with procedural narrative. Players provide the character development, and based on their decisions and ambitions unfold the story through interaction with other players. The complexity of the game allows for a narrative to emerge. Which is something most other titles lack. Multi-player modes in those titles are considered meta-games that are non-narrative. Single player modes for titles that attempt to generate an emergent narrative are reliant on -- and limited to -- the granularity of the gameplay, which usually results in a developer generated narrative.
Session 5: Coexistence of Art & Code
Moderated by Mike
Mantra: communicate effectively, establish understanding, cooperate, and repeat. Office organizational structure and layout can directly influence the level of communication between groups within a company. The work system should encourage and support intermingling between groups (i.e. programmers, artists, musicians, designers, writers, actors, tools developers, QA, marketing, PR, and management). In an ideal world, everyone is proficient in each area of the workplace. Efficiency is largely lost in communication. Keep in mind that humans are limited to begin with. Refusing to expand one's knowledge and understanding is not only tragic, it should be seen as unacceptable in the workplace. The constraints of technology is no excuse for limited creativity, which goes for programmers as well as artist.
After yesterday, I am both humbled and inspired by the breadth of knowledge and experience shared by the event's participants and speakers. I eagerly await the next GameLoop event.
For more coverage, visit: http://phillygameloop.com/coverage/



0 comments:
Post a Comment