GDC

CONFERENCE  

|    
    PROGRAMMING

As new platforms emerge and existing platforms evolve, programmers face an ever increasing challenge to produce games that capture the attention of the public and the media. The Programming Track focuses on these challenges and the opportunities presented by next and current generation development including: mature consoles, new handhelds, a highly competitive sales environment, and increased demand for very high production values in games.

Arrow View all GDC China 2012 sessions

HIGHLIGHTED SESSIONS

Learning from the Production and Development of TiaoJiaoSanguo
Rock Tang (TipCat Interactive Inc.)
TiaoJiaoSanguo is a successful mobile game from TipCat, a multiplayer online MMORPG. In this session, TipCat wants to share how the team learn from the production and development process.
Using The New Flash Stage3D Web Technology To Build Your Own Next 3D Browser MMOG
Daosheng Mu (XPEC Entertainment Inc.)
Eric Chang (XPEC Entertainment Inc.)
This Talk will discuss how the Flash 3D engine developed by XPEC solved the challenging technical issues for 3D browser MMOG. Topics will include how to build a high-performance Flash 3D engine, how to effectively overcome the garbage collection memory management problems most Flash developers suffered, and fast loading tricks by streaming techniques, and so on. This engine has been used for the development of several Flash 3D browser MMOGs at XPEC. We will also share the experiences we have learned from the development of the Flash 3D browser MMORPG "Maze Myth", which has been expected for online operations in Q4 2012 in Taiwan first.
Cutting the Pipe: Achieving Sub-Second Iteration Times
Niklas Frykholm (Bitsquid AB)
Short iteration times both improve the quality of content and reduce the time it takes to produce it. When creators can see immediately what their content looks like on the target hardware they can quickly fix problems, add flair or play with different design ideas. This session will show how we designed the content pipe for War of the Roses and the Bitsquid Tech to achieve sub-second iteration times (from a change is made, until it can be seen in-game, on the target hardware) without compromising on the runtime performance. The talk will present a number of ideas and techniques that the attendants can apply to their own pipelines to improve compile times and achieve a more dynamic and iterative workflow.
Runtime CPU Performance Spike Detection Using Manual and Automated Compiler Instrumentation
Adisak Pochanayon (Netherrealm Studios)
This is an advanced talk on code instrumentation which will first cover manual instrumentation, code detours and function trampolining and compiler specific options including compiler automated (or compiler assisted) instrumentation (CAI), naked functions with platform specific inline assembler, and linker function wrapping. Then, some time will be used to describe a spike detection profiler API used by MK that is implemented using both CAI and manual instrumentation on multiple platforms.
Effects Techniques Used in Uncharted 3: Drake's Deception
Marshall Robin (Naughty Dog)
This talk will examine the technology and tools used to produce particle effects in Uncharted 3. We use a highly data driven system coupled with a node based shader editor to control particle behavior and rendering. The particle runtime is SPU based and all particle processing is done without PPU synchronization. The presentation will give an overview of the tool pipeline used to author and process particle assets, a detailed walk through of the simulation and rendering runtime, and some shader techniques used in our effects.
Faster C++: Move Construction and Perfect Forwarding
Pete Isensee (Xbox Advanced Technology Group, Microsoft)
For performance engineers, the most exciting new features of the C++11 Standard are move construction and perfect forwarding. Anybody who has analyzed C++ performance issues knows that the most inefficient aspect of C++ is object copying. Games often get bogged down copying objects inside frame loops. Rvalue references, a new C++ language feature, enable move semantics and perfect forwarding, completely eliminating unnecessary copies. The problem associated with the creation and destruction of temporary C++ objects goes away. The result: major performance improvements in common code. Simply recompiling with C++11 gives an automatic performance boost, but the true power comes when you add move constructors and move assignment operators to your own classes. This talk shows how to branch at compile time based on the condition that an object is moveable or not, with background on how rvalues really work, along with recommended idioms and best practices.

 

ALL PROGRAMMING SESSIONS

Cutting the Pipe: Achieving Sub-Second Iteration Times
Niklas Frykholm (Bitsquid AB)
   
Effects Techniques Used in Uncharted 3: Drake's Deception
Marshall Robin (Naughty Dog)
   
Faster C++: Move Construction and Perfect Forwarding
Pete Isensee (Xbox Advanced Technology Group, Microsoft)
   
Learning from the Production and Development of TiaoJiaoSanguo
Rock Tang (TipCat Interactive Inc.)
   
Runtime CPU Performance Spike Detection Using Manual and Automated Compiler Instrumentation
Adisak Pochanayon (Netherrealm Studios)
   
Using The New Flash Stage3D Web Technology To Build Your Own Next 3D Browser MMOG
Daosheng Mu (XPEC Entertainment Inc.)
Eric Chang (XPEC Entertainment Inc.)
   

Follow Us

facebook  Facebook          twitter  Twitter
UBM Tech

<script type="text/javascript"> var _bizo_data_partner_id = "1816"; </script> <script type="text/javascript"> (function(){var b,a,u;a=document.createElement("script");a.type="text/javascript";a.async=true;u=(window.location.protocol==="https:"?"https://sjs.":"http://js.")+"bizographics.com/insight.min.js";a.src=u;b=document.getElementsByTagName("script")[0];return b.parentNode.insertBefore(a,b)})(); </script>