Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

144 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

funiki

Implementation of the Funiki Project in godot.

getting started

'main.tscn' contains the main text scene. Opening this with Godot and entering debug mode should be enough to run the simulation.

Godot Nodes

The basic node structure is as follows:

Main
└───Player              // Controlling the player
└───Locations           // A branch for locations
│   └───Location 1
│   └───Location 2
│   └─── ...
└───Sources             // A branch for sources 
│   └───Source 1
│   └───Source 2
│   └─── ...
└───Sensors             // A branch for sensors 
	└───Lights
	└───Sound

We do not distinguish between light and sound sources explicitly here as a single source could emit both light and sounds.

Folder structure

The folder structure is ordered functionally. That is, the function of entities are at the forefront rather than the type of thing that they are. It roughly corresponds to the node structure.

  • locations - locations, such as rooms.
  • sensors - source code for light and sound sensors.
  • sources - different types of light and sound sources. A source might emit both light and sound (such as a fire) and could even be dynamic. We may also want to reuse sources across different locations.
  • player - provides a main view into the scene for debugging.
  • utils - general purpose utilities such as color utilities.
  • main.tscn - this is the entry point for the Godot application.

Tethering

Hue Lights

Hue lights are connected via a Hue bridge that provides an API to the lights. They must first be registered with the bridge.

Hue lights are associated with 'Light Sensors' which are basically viewports with a low-res camera pointing at a point of interest. The GUID of a Hue light must be provided to Godot to know which light to send information to.

Bluetooth speakers

tbc

About

Implementation of Funiki in Godot

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages