aframe-components

dat-gui component

Overview

You may be familiar with dat.GUI from the THREE.js documentation, for example pages like this: https://threejs.org/docs/index.html#api/en/geometries/BoxGeometry

This component dynamically creates a dat.GUI panel to view and adjust the properties of all components on an A-Frame entity, like this:

image-20240304150412011

There are some limitations (see below), but for the most part, this should just work for any A-Frame entity & component. It is a bit like A-Frame inspector, but doesn’t require pausing the scene, and allows you to focus on just a few specific entities.

Schema

This component currently has no schema.

In future we may offer a schema to filter in/out specific components/properties, or control the appearance of the dat.GUI panel.

Installation

Via CDN

<script src="https://cdn.jsdelivr.net/npm/aframe-dat-gui@0.0.3/dist/dat-gui.min.js"></script>

Or via npm

npm install aframe-dat-gui

Usage

Just add the dat-gui component to any entity, to display an entity’s components and settings.

For example, this…

<a-torus color="red" dat-gui></a-torus>

… will result in a panel like this appearing in the top right of the screen.

image-20240304145551473

You can add the dat-gui component to multiple entities in the scene, and each will appear as a collapsible folder in the dat.GUI panel.

Limitations

At this point, there are quite a few limitations. Requests, feedback and PRs are welcome.

Examples

Torus example

Also more examples in the \tests\ folder.

Code

dat-gui