All Projects → Namek → artemis-odb-entity-tracker

Namek / artemis-odb-entity-tracker

Licence: other
🎲 Visual Entity Tracker for ECS library: artemis-odb

Programming Languages

kotlin
9241 projects
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to artemis-odb-entity-tracker

ECS-Phyllotaxis
Learning ECS - 100k Cubes in Phyllotaxis pattern
Stars: ✭ 17 (-37.04%)
Mutual labels:  ecs, entity-component-system
ecs
🐰 Entity Component System
Stars: ✭ 62 (+129.63%)
Mutual labels:  ecs, entity-component-system
Uecs
Ubpa Entity-Component-System (U ECS) in Unity3D-style
Stars: ✭ 174 (+544.44%)
Mutual labels:  ecs, entity-component-system
gdk-for-unity-blank-project
SpatialOS GDK for Unity Blank Project
Stars: ✭ 33 (+22.22%)
Mutual labels:  ecs, entity-component-system
ECS
Entity-Component-System
Stars: ✭ 122 (+351.85%)
Mutual labels:  ecs, entity-component-system
Flecs
A fast entity component system (ECS) for C & C++
Stars: ✭ 2,201 (+8051.85%)
Mutual labels:  ecs, entity-component-system
Egocs
EgoCS: An Entity (GameObject) Component System framework for Unity3D
Stars: ✭ 211 (+681.48%)
Mutual labels:  ecs, entity-component-system
Edyn
Edyn is a real-time physics engine organized as an ECS.
Stars: ✭ 113 (+318.52%)
Mutual labels:  ecs, entity-component-system
SpaceWar-ECS
A space war game made with ECS and JobSystem in Unity.
Stars: ✭ 26 (-3.7%)
Mutual labels:  ecs, entity-component-system
Octopuskit
2D ECS game engine in 100% Swift + SwiftUI for iOS, macOS, tvOS
Stars: ✭ 246 (+811.11%)
Mutual labels:  ecs, entity-component-system
imgui entt entity editor
A drop-in entity editor for EnTT with Dear ImGui
Stars: ✭ 146 (+440.74%)
Mutual labels:  ecs, entity-component-system
TinyECS
Tiny ECS is an easy to use Entity-Component-System framework that's designed specially for Unity3D.
Stars: ✭ 20 (-25.93%)
Mutual labels:  ecs, entity-component-system
Pyro
A linear Entity Component System
Stars: ✭ 125 (+362.96%)
Mutual labels:  ecs, entity-component-system
Ape Ecs
Entity-Component-System library for JavaScript.
Stars: ✭ 137 (+407.41%)
Mutual labels:  ecs, entity-component-system
Gdk For Unity Fps Starter Project
SpatialOS GDK for Unity FPS Starter Project
Stars: ✭ 119 (+340.74%)
Mutual labels:  ecs, entity-component-system
Awesome Entity Component System
😎 A curated list of Entity-Component-System (ECS) libraries and resources
Stars: ✭ 180 (+566.67%)
Mutual labels:  ecs, entity-component-system
Entitas Sync Framework
Networking framework for Entitas ECS. Targeted at turnbased games or other slow-paced genres.
Stars: ✭ 98 (+262.96%)
Mutual labels:  ecs, entity-component-system
Entitas Lite
Entitas-Lite is a No-CodeGenerator branch of Entitas, and also a fast & easy ECS framework for C#/Unity.
Stars: ✭ 106 (+292.59%)
Mutual labels:  ecs, entity-component-system
Entitas Cpp
Entitas++ is a fast Entity Component System (ECS) C++11 port of Entitas C#
Stars: ✭ 229 (+748.15%)
Mutual labels:  ecs, entity-component-system
ent-comp
A light, fast Entity Component System in JS
Stars: ✭ 25 (-7.41%)
Mutual labels:  ecs, entity-component-system

PLEASE NOTE! This branch is deprecated!

This branch holds an old prototype of the Entity Tracker which is a discontinued version. Instead, there is a WIP version on the develop branch. To read more about its current state see gh-pages website: http://namek.github.io/artemis-odb-entity-tracker/

Entity Tracker

Build Status

Server and Client that provides online tracking of artemis-odb World state.

screenshot

Installation

Note: Due to #7 about artemis-odb 2.x support, the latest version of Entity Tracker is commit 0703ecdbcb11c1554e312a4f9b195f19b02ef228. If you need this please apply the version to the following configuration.

Maven

<dependency>
	<groupId>net.namekdev.entity_tracker</groupId>
	<artifactId>artemis-entity-tracker</artifactId>
	<version>0.4.0-SNAPSHOT</version>
</dependency>

<!-- uncomment in case you need GUI inside your game -->
<!--dependency>
	<groupId>net.namekdev.entity_tracker</groupId>
	<artifactId>artemis-entity-tracker-gui</artifactId>
	<version>0.4.0-SNAPSHOT</version>
</dependency-->

Gradle

dependencies {
	compile "net.namekdev.entity_tracker:artemis-entity-tracker:0.4.0-SNAPSHOT"

	// uncomment in case you need GUI instantiated directly from your game
	// compile "net.namekdev.entity_tracker:artemis-entity-tracker-gui:0.4.0-SNAPSHOT"
}

How to use

Option 1. Simple Usage

Import both Entity Tracker and Entity Tracker GUI libraries into your project.

artemisWorld.setManager(new EntityTracker(new EntityTrackerMainWindow()));

Option 2. Network Connection

Host Entity Tracker Server inside your game:

EntityTrackerServer entityTrackerServer = new EntityTrackerServer();
entityTrackerServer.start();
artemisWorld.setManager(new EntityTracker(entityTrackerServer));

There are 2 options to run Entity Tracker GUI that connects with EntityTrackerServer:

  1. run external app (you can download *-app from releases) or build it yourself (see Build section below)
  2. run StandaloneMain.java file or setup GUI manually:
final EntityTrackerMainWindow window = new EntityTrackerMainWindow();
final Client client = new PersistentClient(new ExternalInterfaceCommunicator(window));

client.connect(serverName, serverPort);

Custom Local/Networked Listener

Generally speaking, EntityTracker expects WorldUpdateListener interface implementation, e.g. it may be some window listener.

To achieve network version one can just mimic implementation of ExternalInterfaceCommunicator by implementing Communicator interface and passing it to Client.

Build

Build libraries with sources:

mvn clean package

Build GUI client app as external executable:

mvn clean package -P app and you'll find artemis-entity-tracker-gui/target/artemis-entity-tracker-gui-{version}-app.jar

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].