Jump to content

Contributions:UnityBCI2000: Difference between revisions

From BCI2000 Wiki
Tytbutler (talk | contribs)
No edit summary
Tytbutler (talk | contribs)
No edit summary
 
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==Synopsis==
==Synopsis==
UnityBCI2000 is a tool for integration of Unity applications with BCI2000.
UnityBCI2000 is an extension for the Unity game/3D application development platform that enables control of and communication with the BCI2000 brain-computer interface research platform. It consists of a .NET library for communication with the BCI2000 operator and a Unity package which provides integration with Unity itself.


==Tutorial==
==Prerequisites==
For information on how to use Unity itself, see the Unity [https://docs.unity3d.com/Manual/index.html manual]. This tutorial assumes knowledge of how to use Unity. It is recommended to know how GameObjects and Components work.
Alongside UnityBCI2000, install Unity per the instructions at [https://unity.com/download the Unity website], and the [[Programming_Howto:Building_and_Customizing_BCI2000|BCI2000 setup tutorial]].


==Adding UnityBCI2000 to a Unity Project==
Download the latest release of UnityBCI2000 from [https://github.com/neurotechcenter/UnityBCI2000 GitHub]. Place the <code>UnityBCI2000.cs</code> and <code>BCI2000RemoteNETStandard.dll</code> files in the <code>Assets</code> folder of the Unity project.


Add the <code>UnityBCI2000.cs</code> script to a Unity object as a component.


First, download UnityBCI2000 from [https://github.com/neurotechcenter/UnityBCI2000 GitHub]. As of now, UnityBCI2000 is not a full Unity package, but it works the same. Place the C# files from the Runtime folder, as well as BCI2000RemoteNET.dll, within the Assets directory of your Unity project.
For a comprehensive tutorial of integrating BCI2000 with a Unity project, see [[User Tutorial:UnityBCI2000]].  


Create an empty GameObject and add the script UnityBCI2000 as a Component. This will serve as the central connection to the BCI2000 Operator. As of now, it is not possible to use multiple scenes with one BCI2000 connection.
For a minimal tutorial on using BCI2000 as a logging service for Unity, see [[User Tutorial:UnityBCI2000 Barebones]].


Add a UnityBCI2000.cs to the GameObject as a Script Component. Specify the path to the operator using the Operator Path field, as well as the names of the modules to start up alongside it. If you have an instance of the operator already running, specify the IP and port it is listening on using the Telnet Ip and Telnet Port fields instead.


You can also set a custom log file location, as well as tell the program to log sent states and received prompts.
 
==Documentation==
[https://bci2000.org/BCI2000Unity/classUnityBCI2000.html Interface documentation]

Latest revision as of 14:51, 16 August 2024

Synopsis

UnityBCI2000 is an extension for the Unity game/3D application development platform that enables control of and communication with the BCI2000 brain-computer interface research platform. It consists of a .NET library for communication with the BCI2000 operator and a Unity package which provides integration with Unity itself.

Prerequisites

Alongside UnityBCI2000, install Unity per the instructions at the Unity website, and the BCI2000 setup tutorial.

Adding UnityBCI2000 to a Unity Project

Download the latest release of UnityBCI2000 from GitHub. Place the UnityBCI2000.cs and BCI2000RemoteNETStandard.dll files in the Assets folder of the Unity project.

Add the UnityBCI2000.cs script to a Unity object as a component.

For a comprehensive tutorial of integrating BCI2000 with a Unity project, see User Tutorial:UnityBCI2000.

For a minimal tutorial on using BCI2000 as a logging service for Unity, see User Tutorial:UnityBCI2000 Barebones.


Documentation

Interface documentation