{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:33:43Z","timestamp":1750307623788,"version":"3.41.0"},"reference-count":28,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2008,10,1]],"date-time":"2008-10-01T00:00:00Z","timestamp":1222819200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Comput. Entertain."],"published-print":{"date-parts":[[2008,10]]},"abstract":"<jats:p>This article concerns the use of a graphics processor unit (GPU) as a math co-processor in real-time applications in special games and physics simulations. To validate this approach, we present a new game loop architecture that employs GPUs for general-purpose computations (GPGPUs). A critical issue here is the process distribution between the CPU and the GPU. The architecture consists of a model for distribution, and our implementation offers many advantages in comparison to other approaches without the GPGPU stage. This architecture can be used either by a general-purpose language such as the Compute Unified Device Architecture (CUDA), or shader languages such as the High-Level Shader Language (HLSL) and the OpenGL Shading Language (GLSL).<\/jats:p>\n          <jats:p>Although the architecture proposed here aims at supporting mathematics and physics on the GPU, it is possible to adapt any kind of generic computation. This article discusses the model implementation in an open-source game engine and presents the results of using this platform.<\/jats:p>","DOI":"10.1145\/1394021.1394035","type":"journal-article","created":{"date-parts":[[2008,11,11]],"date-time":"2008-11-11T12:59:40Z","timestamp":1226408380000},"page":"1-19","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":9,"title":["A game loop architecture for the GPU used as a math coprocessor in real-time applications"],"prefix":"10.1145","volume":"6","author":[{"given":"Marcelo P. M.","family":"Zamith","sequence":"first","affiliation":[{"name":"Instituto de Computa\u00e7\u00e3o, Universidade Federal Fluminense, Brazil"}]},{"given":"Esteban W. G.","family":"Clua","sequence":"additional","affiliation":[{"name":"Instituto de Computa\u00e7\u00e3o, Universidade Federal Fluminense, Brazil"}]},{"given":"Aura","family":"Conci","sequence":"additional","affiliation":[{"name":"Instituto de Computa\u00e7\u00e3o, Universidade Federal Fluminense, Brazil"}]},{"given":"Anselmo","family":"Montenegro","sequence":"additional","affiliation":[{"name":"Instituto de Computa\u00e7\u00e3o, Universidade Federal Fluminense, Brazil"}]},{"given":"Regina C. P.","family":"Leal-Toledo","sequence":"additional","affiliation":[{"name":"Instituto de Computa\u00e7\u00e3o, Universidade Federal Fluminense, Brazil"}]},{"given":"Paulo A.","family":"Pagliosa","sequence":"additional","affiliation":[{"name":"Universidade Federal de Mato Grosso do Sul, Brazil"}]},{"given":"Luis","family":"Valente","sequence":"additional","affiliation":[{"name":"VisionLab\/IGames and PUC-Rio, Brazil"}]},{"given":"Bruno","family":"Feij","sequence":"additional","affiliation":[{"name":"VisionLab\/IGames and PUC-Rio, Brazil"}]}],"member":"320","published-online":{"date-parts":[[2008,11,6]]},"reference":[{"doi-asserted-by":"publisher","key":"e_1_2_1_1_1","DOI":"10.1109\/TVCG.2003.1196011"},{"doi-asserted-by":"publisher","key":"e_1_2_1_2_1","DOI":"10.1145\/882262.882364"},{"volume-title":"Proceedings of the Game Developers Conference. www.havok.com\/content\/view\/187\/77\/.","year":"2006","author":"Bond A.","key":"e_1_2_1_3_1"},{"doi-asserted-by":"crossref","unstructured":"Eberly D. H. 2004. Game Physics. Morgan Kaufmann.   Eberly D. H. 2004. Game Physics. Morgan Kaufmann.","key":"e_1_2_1_4_1","DOI":"10.1201\/9781482282801"},{"doi-asserted-by":"crossref","unstructured":"Ericson C. 2005. Real-Time Collision Detection. Morgan Kaufmann.  Ericson C. 2005. Real-Time Collision Detection. Morgan Kaufmann.","key":"e_1_2_1_5_1","DOI":"10.1201\/b14581"},{"doi-asserted-by":"publisher","key":"e_1_2_1_6_1","DOI":"10.1145\/1058129.1058148"},{"unstructured":"Feij\u00f3 B. Pagliosa P.A. and Clua E.W.G. 2006. Visualiza\u00e7\u00e3o simula\u00e7\u00e3o e games. In Atualiza\u00e7\u00f5es em Inform\u00e1tica K. Breitman and R. Anido eds. Editora PUC-Rio 127--185. (In Portuguese)  Feij\u00f3 B. Pagliosa P.A. and Clua E.W.G. 2006. Visualiza\u00e7\u00e3o simula\u00e7\u00e3o e games. In Atualiza\u00e7\u00f5es em Inform\u00e1tica K. Breitman and R. Anido eds. Editora PUC-Rio 127--185. (In Portuguese)","key":"e_1_2_1_7_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_8_1","DOI":"10.1109\/SC.2005.42"},{"key":"e_1_2_1_9_1","first-page":"25","article-title":"CULLIDE: Interactive collision detection between complex models in large environments using graphics hardware","volume":"2003","author":"Govindaraju N. K.","year":"2003","journal-title":"Graphics Hardware"},{"unstructured":"GPGPU.ORG 2007. General-purpose computation using graphics hardware. http:\/\/www.gpgpu.org\/cgibin\/blosxom.cgi\/index.html?find=FBO&plugin=find&path.  GPGPU.ORG 2007. General-purpose computation using graphics hardware. http:\/\/www.gpgpu.org\/cgibin\/blosxom.cgi\/index.html?find=FBO&plugin=find&path.","key":"e_1_2_1_10_1"},{"unstructured":"Green S. 2003. NVIDIA cloth sample. download.developer.nvidia.com\/developer\/.  Green S. 2003. NVIDIA cloth sample. download.developer.nvidia.com\/developer\/.","key":"e_1_2_1_11_1"},{"key":"e_1_2_1_12_1","first-page":"145","article-title":"Detection of collisions and self-collisions using image-space techniques","volume":"12","author":"Heidelberger B.","year":"2004","journal-title":"J. of WSCG"},{"doi-asserted-by":"publisher","key":"e_1_2_1_13_1","DOI":"10.1145\/311535.311542"},{"doi-asserted-by":"publisher","key":"e_1_2_1_14_1","DOI":"10.1002\/(SICI)1097-024X(199606)26:6%3C635::AID-SPE26%3E3.0.CO;2-P"},{"unstructured":"Joselli M. 2007. Uma Arquitetura de Motor de F\u00edsica para Games 3D com Processamento H\u00edbrito entre CPU e GPU e Distribui\u00e7\u00e3o Din\u00e2mica de Carga. Master's thesis Univ Federal Fluminense http:\/\/www.ic.uff.br\/PosGraduacao\/Dissertacoes\/370.pdf. (In Portuguese)  Joselli M. 2007. Uma Arquitetura de Motor de F\u00edsica para Games 3D com Processamento H\u00edbrito entre CPU e GPU e Distribui\u00e7\u00e3o Din\u00e2mica de Carga. Master's thesis Univ Federal Fluminense http:\/\/www.ic.uff.br\/PosGraduacao\/Dissertacoes\/370.pdf. (In Portuguese)","key":"e_1_2_1_15_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_16_1","DOI":"10.1145\/1058129.1058146"},{"doi-asserted-by":"publisher","key":"e_1_2_1_17_1","DOI":"10.1145\/1058129.1058147"},{"doi-asserted-by":"publisher","key":"e_1_2_1_18_1","DOI":"10.1145\/882262.882363"},{"unstructured":"Milne W. E. 1953. Numerical Solution of Differential Equation. Ed. Dover.  Milne W. E. 1953. Numerical Solution of Differential Equation. Ed. Dover.","key":"e_1_2_1_19_1"},{"unstructured":"NVIDIA. 2008. CUDA zone\u2014The source for CUDA developers. http:\/\/www.nvidia.com\/object\/cuda_learn_products.html. May 2008.  NVIDIA. 2008. CUDA zone\u2014The source for CUDA developers. http:\/\/www.nvidia.com\/object\/cuda_learn_products.html. May 2008.","key":"e_1_2_1_20_1"},{"doi-asserted-by":"crossref","unstructured":"Owens J. D. Leubke D. Govindaraju N. Harris M. Kr\u00fcger J. Lefohn A. E. and Purcell T. J. 2007. A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26. To appear.  Owens J. D. Leubke D. Govindaraju N. Harris M. Kr\u00fcger J. Lefohn A. E. and Purcell T. J. 2007. A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26. To appear.","key":"e_1_2_1_21_1","DOI":"10.1111\/j.1467-8659.2007.01012.x"},{"doi-asserted-by":"crossref","unstructured":"Rumpf M.\n     and \n      \n      \n      Strzodka R\n      \n  \n  . \n  2005\n  . Graphics processor units: New prospects for parallel computing. In Numerical Solution of Partial Differential Equations on Parallel Computers Lecture Notes in Computational Science and Engineering\n  . vol. \n  51 Springer-Verlag Berlin 89--134.  Rumpf M. and Strzodka R. 2005. Graphics processor units: New prospects for parallel computing. In Numerical Solution of Partial Differential Equations on Parallel Computers Lecture Notes in Computational Science and Engineering. vol. 51 Springer-Verlag Berlin 89--134.","key":"e_1_2_1_22_1","DOI":"10.1007\/3-540-31619-1_3"},{"unstructured":"Valente L. 2005. Guff: um framework para desenvolvimento de jogos. Master's thesis Univ. Federal Fluminense. http:\/\/www.ic.uff.br\/PosGraduacao\/Dissertacoes\/255.pdf. (In Portuguese)  Valente L. 2005. Guff: um framework para desenvolvimento de jogos. Master's thesis Univ. Federal Fluminense. http:\/\/www.ic.uff.br\/PosGraduacao\/Dissertacoes\/255.pdf. (In Portuguese)","key":"e_1_2_1_23_1"},{"volume-title":"Proceedings of the XVIII SIBGRAPI, Digital ed.","author":"Valente L.","key":"e_1_2_1_24_1"},{"volume-title":"Proceedings of the IV Brazilian Symposium on Computer Games and Digital Entertainment, 89--99","author":"Valente L.","key":"e_1_2_1_25_1"},{"volume-title":"Proceedings of the III SBGames. Digital ed.","author":"Valente L.","key":"e_1_2_1_26_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_27_1","DOI":"10.1109\/CGIV.2007.64"},{"doi-asserted-by":"publisher","key":"e_1_2_1_28_1","DOI":"10.1145\/1187112.1187158"}],"container-title":["Computers in Entertainment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1394021.1394035","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1394021.1394035","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T12:45:52Z","timestamp":1750250752000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1394021.1394035"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2008,10]]},"references-count":28,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2008,10]]}},"alternative-id":["10.1145\/1394021.1394035"],"URL":"https:\/\/doi.org\/10.1145\/1394021.1394035","relation":{},"ISSN":["1544-3574"],"issn-type":[{"type":"electronic","value":"1544-3574"}],"subject":[],"published":{"date-parts":[[2008,10]]},"assertion":[{"value":"2007-11-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2008-06-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2008-11-06","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}