Spelling suggestions: "subject:"antity component system"" "subject:"dentity component system""
1 |
Implementation and Analysis of the Entity Component System ArchitectureHarris, Shawn M 01 March 2022 (has links) (PDF)
The entity component system architecture (ECSA) is a data-oriented composition pattern and a data-driven design pattern. Data-oriented software takes into consideration generalized knowledge of hardware. Data-driven design is a methodology used to replace inflexible code with reusable components that can be added, deleted, or modified in interactive systems and games. This thesis explores the ECSA and its alternatives and their strengths and weaknesses. The paper details the creation of an ECSA and benchmarks its performance against object-oriented architectures. The hypothesis of this thesis is that the ECSA has CPU cache performance advantages over object-oriented architectures as tested by multiple benchmarks. The results suggest that the ECSA provides superior CPU performance. These results could be valuable for interactive game developers to get higher frame rates out of their games, MMORPG server developers to process millions of entities per second, and mobile developers to create battery-efficient apps.
|
2 |
Comparison of ’Fog of War’ models in digital wargames : Using Entity-Component-System architecture and ArcGIS / Jämförelse av krigsdimma modeller i digitala krigsspel : Med användning av Entity-Component-System arkitektur och ArcGISObeia, Karim Osama, Wójcik, Agata Łucja January 2023 (has links)
Fog of War is a term for uncertainty in situational awareness. Fog of War is an essential part of a wargame which causes the participating units’ perception of the environment to be distorted and altered. Introducing a certain amount of uncertainty helps to better mimic the situation on the battlefield. Fog of War comes in multiple forms and levels, whereas the visual detection level is of primary interest for this thesis. Two forms of visual detection have been implemented to simulate a simple and advanced form of Fog of War. The simple level is based solely on the distance between two units, while the advanced level determines whether two units possess a clear line of sight between them, to decisively add realism to a played scenario. The two models were created based on the Entity Component System software architecture, and the maps used for the wargame were based on data from ArcGIS. Extensive testing of the two models, for different types of terrains, show good performance and computational efficiency, however with the expected caveat that flat landscape requires significantly more processing power and memory capacity than a hilly terrain. / Krigsdimma är en term för osäkerhet inom situationsmedvetenhet. Krigsdimma är en väsentlig del av ett krigsspel och medför att deltagande förbands uppfattning av miljön förvrängs och förändras samt att ett visst mått av osäkerhet introduceras för att bättre efterlikna situationen på slagfältet. Krigsdimma kommer i flera former och flera nivåer, där visuell detektering är av primärt intresse för denna avhandling. Två former av visuell detektering har implementerats för att simulera en enkel och en avancerad form av krigsdimma. Den enkla nivån bygger enbart på avståndet mellan två förband medan den avancerade nivån kan avgöra om två enheter i verkligheten har en fri siktlinje mellan sig, något som på ett avgörande sätt kan tillföra realism till ett spelat scenario. De två realiseringarna skapades baserat på en Entity Component System mjukvaruarkitektur, och kartorna som användes för krigsspelet baserade sig på data från ArcGIS. Omfattande tester av de två modellerna, för olika terrängtyper, visar på god funktion och beräkningseffektivitet, dock kräver flackt landskap betydligt mer processorkraft och minneskapacitet än kuperad terräng.
|
3 |
[en] A SOFTWARE ARCHITECTURE TO SUPPORT DEVELOPMENT OF MEDICAL IMAGING DIAGNOSTIC SYSTEMS / [pt] UMA ARQUITETURA DE SOFTWARE PARA APOIO AO DESENVOLVIMENTO DE SISTEMAS DE DIAGNÓSTICO MÉDICOS POR IMAGEMRICARDO ALMEIDA VENIERIS 02 August 2018 (has links)
[pt] O apoio diagnóstico de exames médicos por imagem utilizando técnicas de Inteligência Artificial tem sido amplamente discutido e pesquisado academicamente. Diversas técnicas computacionais para segmentação e classificação de tais imagens são continuamente criadas, testadas e aperfeiçoadas. Destes estudos emergem sistemas com alto grau de especialização que se utilizam de técnicas de visão computacional e aprendizagem de máquina para segmentar e classificar imagens de exames utilizando conhecimento adquirido através de grandes coleções de exames devidamente laudados. No domínio médico há ainda
a dificuldade de se conseguir bases de dados qualificada para realização da extração de conhecimento pelos sistemas de aprendizagem de máquina. Neste trabalho propomos a construção de uma arquitetura de software que suporte o desenvolvimento de sistemas de apoio diagnóstico que possibilite: (i) a utilização
em múltiplos tipos exames, (ii) que consiga segmentar e classificar, (iii) utilizando não só de estratégias padrão de aprendizado de máquina como, (iv) o conhecimento do domínio médico disponível. A motivação é facilitar a tarefa de geração de classificadores que possibilite, além de buscar marcadores patológicos
específicos, ser aplicado em objetivos diversos da atividade médica, como o diagnóstico pontual, triagem e priorização do atendimento. / [en] The image medical exam diagnostic support using Artificial Intelligence techniques has been extensively discussed and academically researched. Several computational techniques for segmentation and classification of such images are continuously created, tested and improved. From these studies, highly specialized systems that use computational vision and machine learning techniques to segment and classify exam images using knowledge acquired through large collections of lauded exams. In the medical domain, there is still the difficulty of obtaining qualified databases to support the extraction of knowledge by machine learning systems. In this work we propose a software architecture construction that supports diagnostic support systems development that allows: (i) use of multiple exam types, (ii) supporting segmentation and classification, (iii) using not only machine learning techniques as, (iv) knowledge of the available medical domain. The motivation is to facilitate the generation of classifiers task that, besides searching for specific pathological markers, can be applied to different medical activity objectives, such as punctual diagnosis, triage and prioritization of care.
|
4 |
DOTS OCH ENERGIFÖRBRUKNING : Hur påverkar DOTS energiförbrukningen jämfört med objektorienterad programmering? / DOTS AND POWER CONSUMPTION : How does DOTS affect power consumption compared to object-oriented programming?Bergfeldt, Ellinor January 2023 (has links)
Det här arbetet undersöker hur implementering av Unity DOTS (Data-Oriented Technology Stack) påverkar energiförbrukning jämfört med objektorienterad programmering. I studien har en scen från ett existerande projekt som använder objektorienterad teknik återskapats i ett projekt som använder DOTS med Entity Component System. Studien mätte batteriförbrukning genom att köra simuleringar på en laptop och samla in mätvärden med batteriprocent i förhållande till tid förfluten och antal renderade frames. Studien kommer fram till att implementering av DOTS kan minska batteriförbrukningen, men att resultaten varierade mellan olika mängder objekt i scenerna. En minskad batteriförbrukning gick dock att se i alla scenarion som testades förutom i en med väldigt få objekt.
|
5 |
Investigating the effect of implementing Data-Oriented Design principles on performance and cache utilizationNyberg, Frank January 2021 (has links)
Game engines process a lot of data under strict deadlines. Therefore, measures to increase performance are important in this area. Data-Oriented Design (DOD) promotes principles that are meant to increase performance by better cache utilization. The purpose of this thesis is to examine a selection of these principles to give a better understanding of how DOD affects CPU time and the rate of cache misses, with focus on the area of game development. More specifically, the principles examined are removal of run-time polymorphism, iteration over contiguous data, and lowering the amount of data in hot loops. Also, the Entity-Component-System pattern is examined, which is based upon DOD principles. The approach was to first present a theoretical background on the subject, and then to conduct tests by implementing a simulation of movement and collision detection utilizing said principles. The tests were written in C++ and executed on an Intel Core i7 4770k with no rendering. CPU time was measured in updated entities per μs, and cache utilization was measured in the form of cache miss rate. The results showed that the DOD principles did increase performance. Cache miss rate was also lower, with the exception of when removing run-time polymorphism. The conclusion is that Data-Oriented Design, used in game development, is likely to result in better performance, mostly as a result of better cache utilization.
|
6 |
Optimizing your data structure for real-time 3D rendering in the web : A comparison between object-oriented programming and data-oriented designChristoforidis, Constantin January 2021 (has links)
Performance is something that is always of concern when developing real-time 3D graphics applications. The way programs are made today with object-oriented programming has certain flaws that are rooted in the methodology itself. By exploring different programming paradigms we can eliminate some of these issues and find what is best for programming in different areas. Because real-time 3D applications need high performance the data-oriented design paradigm that makes the data the center of the application is experimented with. By using data-oriented design we can eliminate certain issues with object-oriented programming and deliver improved applications when it comes to performance, flexibility, and architecture. In this study, an experiment creating the same type of program with the help of different programming paradigms is made to compare the performance of the two. Some additional up- and downsides of the paradigms are also mentioned / <p>Det finns övrigt digitalt material (t.ex. film-, bild- eller ljudfiler) eller modeller/artefakter tillhörande examensarbetet som ska skickas till arkivet.</p>
|
7 |
Benchmarking and Analysis of Entity Referencing Within Open-Source Entity Component SystemsHansen, Hugo, Öhrström, Oliver January 2020 (has links)
Runtime performance is essential for real time games, the faster a game can run the more features designers can put into the game to accomplish their vision.A popular architecture for video games is the Entity Component System architecture aimed to improve both object composition and performance. There are many tests for how this architecture performs under its optimal linear execution.This thesis presents a performance comparison of how several popular open-source Entity Component System libraries perform when fetching data from other entities during iteration. An object-oriented test is also done to compare against and verify if the known drawbacks of object-orientation can still be seen within these test cases. Our results show that doing a random lookup during iteration can cause magnitudes worse performance for Entity Component Systems.
|
8 |
Prestanda jämförelse mellan webbaserade 3D-ramverk med olika arkitekturer / Performence comparison between webbased 3D frameworks using different architecturesLindström, Emil January 2023 (has links)
Denna studie jämför två olika 3D-ramverk i form av A-Frame med Entity component system och Babylon.js utan Entity component system för att undersöka hur arkitekturen i ramverket påverkar renderingstiden. För att mäta renderingstiden mäts frames per second på ett utvecklat tower defense spel per ramverk med 3D-grafik i webbläsaren Google Chrome. Detta är i form av ett tekniskt experiment för att utesluta utomstående variabler. Det utvecklades tre nivåer av komplexitet inom spelen för att undersöka hur komplexiteten påverkar renderingshastigheten men efter mätningarna visade det sig att de olika nivåerna av komplexitet i artefakterna hade ingen signifikant påverkan på resultatet. Dock fanns det en signifikant skillnad mellan de olika ramverken där A-Frame med Entity component system fick sämre resultat. För vidare arbeten behöver antalet webbläsare i experimentet utökas samt en högre nivå av komplexitet testas för att få mer verklighetstrogna resultat. / <p>Stavningsvarierade titlar på svenska och engelska:</p><p>Prestandajämförelse mellan webbaserade 3D-ramverk med olika arkitekturer</p><p>Performance comparison between web-based 3D frameworks using different architectures</p>
|
9 |
Evaluating the efficiency of general purpose and specialized game engines for 2D gamesThomas Michael Brogan III (18429519) 24 April 2024 (has links)
<p dir="ltr">In the ever-changing landscape of game development, the choice of game engine plays a critical role in deciding the efficiency and performance of a game. This research paper presents a comparative analysis of the performance benchmarks of large general purpose game engines, specifically Unreal Engine 5, Unity, and Godot, versus small genre-specific engines in the context of a simple 2D projectile dodging game. The study focuses on two-dimensional games, which are particularly popular with small studios and indie developers. All three general purpose engines evaluated claim to support building both 2D and 3D applications, however since 2D game logic tends to be smaller scoped and more compact such games are impacted greater by any overhead and bloat the engine introduces, which this research paper intends to evaluate. A series of controlled experiments are conducted to assess each engine's performance in processor utilization, power consumption, memory usage and storage space requirements.</p>
|
Page generated in 0.0917 seconds