For the latest Gamasutra technical feature
, Sony Computer Entertainment's Martin Linklater (Wipeout: Pure
) explains his process for utilizing dataports, a data structure which has has a unique global identity at runtime.
Linklater explains the benefits of using dataports in his introduction, which, he says, can cut down on compile time and source navigation:
"As game programming projects grow in size, more care must be taken regarding code and data dependencies between code modules. Without vigilant code construction, class and header file dependencies can spiral out of control, making your project both unwieldy to navigate and slow to compile. The current trend to more data driven game construction techniques and post-release downloaded content can also create extra complexities in code design. Dataports are designed to simplify code and make the data flows between code modules more dynamic.
The concept behind Dataports is very simple – data is bound at runtime rather than at compile time. Their implementation is lightweight and simple to integrate into existing code. First I will go through some Dataports concepts then finish off with example code."
You can now read the full Gamasutra feature on the subject
, including sample source for both the dataport's structure, and the manager that oversees the dataports (no registration required, please feel free to link to this column from external websites).