The Architecture of the Dalí Main-Memory Storage Manager
Multimedia Tools and Applications
The Gamma Database Machine Project
IEEE Transactions on Knowledge and Data Engineering
VLDB '88 Proceedings of the 14th International Conference on Very Large Data Bases
Aurora: a data stream management system
Proceedings of the 2003 ACM SIGMOD international conference on Management of data
Fast computation of database operations using graphics processors
SIGMOD '04 Proceedings of the 2004 ACM SIGMOD international conference on Management of data
Dynamic plan migration for continuous queries over data streams
SIGMOD '04 Proceedings of the 2004 ACM SIGMOD international conference on Management of data
ScriptEase: Generative Design Patterns for Computer Role-Playing Games
Proceedings of the 19th IEEE international conference on Automated software engineering
Interpreting the data: Parallel analysis with Sawzall
Scientific Programming - Dynamic Grids and Worldwide Computing
Scaling games to epic proportions
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
Monitoring streams: a new class of data management applications
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
SGL: a scalable language for data-driven games
Proceedings of the 2008 ACM SIGMOD international conference on Management of data
Communications of the ACM - Being Human in the Digital Age
Queue - Game Development
Behavioral simulations in MapReduce
Proceedings of the VLDB Endowment
Hi-index | 0.00 |
Most game developers think of databases as nothing more than a persistence solution. However, database research is concerned with the wider problem of declarative processing. In this paper we demonstrate how declarative processing can be applied to computer games. We introduce the state-effect pattern, a design pattern that allows game developers to design parts of their game declaratively. We present SGL, a special scripting language which supports this design pattern and which can be compiled to a declarative language like SQL. We show how database techniques can process this design pattern in a way that improves performance by an order of magnitude or more. Finally, we discuss some design decisions that developers must make in order to adopt this pattern effectively.