Game Engine Comparative Anatomy. Ullmann, G. C., Politowski, C., Gu�h�neuc, Y., & Petrillo, F. In G�bl, B. & van der Spek, E., editors, Proceedings of the 21<sup>st</sup> International Conference on Entertainment Computing (ICEC), pages 103–111, November, 2022. ACM Press. 9 pages.
Paper abstract bibtex Video game developers use game engines as a tool to manage complex aspects of game development. While engines play a big role in the success of games, to the best of our knowledge, they are often developed in isolation, in a closed-source manner, without architectural discussions, comparison, and collaboration among projects. In this work in progress, we compare the call graphs of two open-source engines: Godot 3.4.4 and Urho3D 1.8. While static analysis tools could provide us with a general picture without precise call graph paths, the use of a profiler such as Callgrind allows us to also view the call order and frequency. These graphs give us insight into the engines' designs. We showed that, by using Callgrind, we can obtain a high-level view of an engine's architecture, which can be used to understand it. In future work, we intend to apply both dynamic and static analysis to other open-source engines to understand architectural patterns and their impact on aspects such as performance and maintenance.
@INPROCEEDINGS{Ullmann22-ICEC-GameEnginesAnatomies,
AUTHOR = {Gabriel Cavalheiro Ullmann and Cristiano Politowski and
Yann-Ga�l Gu�h�neuc and Fabio Petrillo},
BOOKTITLE = {Proceedings of the 21<sup>st</sup> International Conference on Entertainment Computing (ICEC)},
TITLE = {Game Engine Comparative Anatomy},
YEAR = {2022},
OPTADDRESS = {},
OPTCROSSREF = {},
EDITOR = {Barbara G�bl and van der Spek, Erik},
MONTH = {November},
NOTE = {9 pages.},
OPTNUMBER = {},
OPTORGANIZATION = {},
PAGES = {103--111},
PUBLISHER = {ACM Press},
OPTSERIES = {},
OPTVOLUME = {},
KEYWORDS = {Topic: <b>Video game development</b>,
Topic: <b>Program comprehension</b>, Venue: <c>ICEC</c>},
URL = {http://www.ptidej.net/publications/documents/ICEC22.doc.pdf},
PDF = {http://www.ptidej.net/publications/documents/ICEC22.ppt.pdf},
ABSTRACT = {Video game developers use game engines as a tool to
manage complex aspects of game development. While engines play a big
role in the success of games, to the best of our knowledge, they are
often developed in isolation, in a closed-source manner, without
architectural discussions, comparison, and collaboration among
projects. In this work in progress, we compare the call graphs of two
open-source engines: Godot 3.4.4 and Urho3D 1.8. While static
analysis tools could provide us with a general picture without
precise call graph paths, the use of a profiler such as Callgrind
allows us to also view the call order and frequency. These graphs
give us insight into the engines' designs. We showed that, by using
Callgrind, we can obtain a high-level view of an engine's
architecture, which can be used to understand it. In future work, we
intend to apply both dynamic and static analysis to other open-source
engines to understand architectural patterns and their impact on
aspects such as performance and maintenance.}
}
Downloads: 0
{"_id":"HFun7kmsh6aQ9Bbc9","bibbaseid":"ullmann-politowski-guhneuc-petrillo-gameenginecomparativeanatomy-2022","author_short":["Ullmann, G. C.","Politowski, C.","Gu�h�neuc, Y.","Petrillo, F."],"bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"firstnames":["Gabriel","Cavalheiro"],"propositions":[],"lastnames":["Ullmann"],"suffixes":[]},{"firstnames":["Cristiano"],"propositions":[],"lastnames":["Politowski"],"suffixes":[]},{"firstnames":["Yann-Ga�l"],"propositions":[],"lastnames":["Gu�h�neuc"],"suffixes":[]},{"firstnames":["Fabio"],"propositions":[],"lastnames":["Petrillo"],"suffixes":[]}],"booktitle":"Proceedings of the 21<sup>st</sup> International Conference on Entertainment Computing (ICEC)","title":"Game Engine Comparative Anatomy","year":"2022","optaddress":"","optcrossref":"","editor":[{"firstnames":["Barbara"],"propositions":[],"lastnames":["G�bl"],"suffixes":[]},{"propositions":["van","der"],"lastnames":["Spek"],"firstnames":["Erik"],"suffixes":[]}],"month":"November","note":"9 pages.","optnumber":"","optorganization":"","pages":"103–111","publisher":"ACM Press","optseries":"","optvolume":"","keywords":"Topic: <b>Video game development</b>, Topic: <b>Program comprehension</b>, Venue: <c>ICEC</c>","url":"http://www.ptidej.net/publications/documents/ICEC22.doc.pdf","pdf":"http://www.ptidej.net/publications/documents/ICEC22.ppt.pdf","abstract":"Video game developers use game engines as a tool to manage complex aspects of game development. While engines play a big role in the success of games, to the best of our knowledge, they are often developed in isolation, in a closed-source manner, without architectural discussions, comparison, and collaboration among projects. In this work in progress, we compare the call graphs of two open-source engines: Godot 3.4.4 and Urho3D 1.8. While static analysis tools could provide us with a general picture without precise call graph paths, the use of a profiler such as Callgrind allows us to also view the call order and frequency. These graphs give us insight into the engines' designs. We showed that, by using Callgrind, we can obtain a high-level view of an engine's architecture, which can be used to understand it. In future work, we intend to apply both dynamic and static analysis to other open-source engines to understand architectural patterns and their impact on aspects such as performance and maintenance.","bibtex":"@INPROCEEDINGS{Ullmann22-ICEC-GameEnginesAnatomies,\r\n AUTHOR = {Gabriel Cavalheiro Ullmann and Cristiano Politowski and \r\n Yann-Ga�l Gu�h�neuc and Fabio Petrillo},\r\n BOOKTITLE = {Proceedings of the 21<sup>st</sup> International Conference on Entertainment Computing (ICEC)},\r\n TITLE = {Game Engine Comparative Anatomy},\r\n YEAR = {2022},\r\n OPTADDRESS = {},\r\n OPTCROSSREF = {},\r\n EDITOR = {Barbara G�bl and van der Spek, Erik},\r\n MONTH = {November},\r\n NOTE = {9 pages.},\r\n OPTNUMBER = {},\r\n OPTORGANIZATION = {},\r\n PAGES = {103--111},\r\n PUBLISHER = {ACM Press},\r\n OPTSERIES = {},\r\n OPTVOLUME = {},\r\n KEYWORDS = {Topic: <b>Video game development</b>, \r\n Topic: <b>Program comprehension</b>, Venue: <c>ICEC</c>},\r\n URL = {http://www.ptidej.net/publications/documents/ICEC22.doc.pdf},\r\n PDF = {http://www.ptidej.net/publications/documents/ICEC22.ppt.pdf},\r\n ABSTRACT = {Video game developers use game engines as a tool to \r\n manage complex aspects of game development. While engines play a big \r\n role in the success of games, to the best of our knowledge, they are \r\n often developed in isolation, in a closed-source manner, without \r\n architectural discussions, comparison, and collaboration among \r\n projects. In this work in progress, we compare the call graphs of two \r\n open-source engines: Godot 3.4.4 and Urho3D 1.8. While static \r\n analysis tools could provide us with a general picture without \r\n precise call graph paths, the use of a profiler such as Callgrind \r\n allows us to also view the call order and frequency. These graphs \r\n give us insight into the engines' designs. We showed that, by using \r\n Callgrind, we can obtain a high-level view of an engine's \r\n architecture, which can be used to understand it. In future work, we \r\n intend to apply both dynamic and static analysis to other open-source \r\n engines to understand architectural patterns and their impact on \r\n aspects such as performance and maintenance.}\r\n}\r\n\r\n","author_short":["Ullmann, G. C.","Politowski, C.","Gu�h�neuc, Y.","Petrillo, F."],"editor_short":["G�bl, B.","van der Spek, E."],"key":"Ullmann22-ICEC-GameEnginesAnatomies","id":"Ullmann22-ICEC-GameEnginesAnatomies","bibbaseid":"ullmann-politowski-guhneuc-petrillo-gameenginecomparativeanatomy-2022","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/ICEC22.doc.pdf"},"keyword":["Topic: <b>Video game development</b>","Topic: <b>Program comprehension</b>","Venue: <c>ICEC</c>"],"metadata":{"authorlinks":{}}},"bibtype":"inproceedings","biburl":"http://www.yann-gael.gueheneuc.net/Work/Publications/Biblio/complete-bibliography.bib","dataSources":["cy4HQkWZAA34xFEsF","8vn5MSGYWB4fAx9Z4"],"keywords":["topic: <b>video game development</b>","topic: <b>program comprehension</b>","venue: <c>icec</c>"],"search_terms":["game","engine","comparative","anatomy","ullmann","politowski","gu�h�neuc","petrillo"],"title":"Game Engine Comparative Anatomy","year":2022}