{"repo":"yohamta0/donburi-ecs","free":true,"listed":false,"github":"https://github.com/yohamta0/donburi-ecs","clone":"git clone https://github.com/yohamta0/donburi-ecs.git","description":"Just another ECS library for Go/Ebitengine","language":"Go","stars":376,"topics":["ebitengine","ecs","gamedev","entity-component-system","game-engine"],"license":null,"category":"game-templates","readme_excerpt":"Donburi Donburi is an Entity Component System library for Go / Ebitengine inspired by legion. It aims to be a feature rich and high-performance ECS Library. Contents - Contents - Summary - Examples - Installation - Getting Started - Worlds - Queries - Ordered Queries - Tags - Systems (Experimental) - Debug - Features - Math - Transform - Events - Projects Using Donburi - Games - Libraries - Architecture - How to contribute? - Contributors Summary - It introduces the concept of Archetype, which allows us to query entities very efficiently based on the components layout. - It is possible to combine And , Or , and Not conditions to perform complex queries for components. - It avoids reflection for performance. - Ability to dynamically add or remove components from an entity. - Type-safe APIs powered by Generics - Zero dependencies - Provides Features that are common in game dev (e.g., math , transform , hieralchy , events , etc) built on top of the ECS architecture. Examples To check all examples, visit this page. The bunnymark example was adapted from mizu's code, which is made by sedyh. Installation Getting Started Worlds Entities can be created via either Create (for a single entity) or CreateMany (for a collection of entities with the same component types). The world will create a unique ID for each entity upon insertion that we can use to refer to that entity later. Components can be added and removed through Entry objects. Entities can be removed from World with the World.","default_branch":null,"files":null,"tree":[],"storefront":"/r/yohamta0","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/yohamta0/donburi-ecs/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}