Last night was a success! The program ran without errors for 4 hours and plenty of people got to experience and enjoy creating and moving energy balls.
I put a lot of effort into continuously interacting with the experience as a performer in order to draw in crowds, encouraging people to join me, then quietly exiting the frame once I felt they were engaged. At that point I’d turn on my phone camera and do my best to capture footage.
Cute videos, I know. But it also highlights my first issue—the presentation of the experience was not conducive to capturing quality footage.
Since I didn’t know beforehand exactly where I’d be set up (I was just told “3rd floor terrace”), I brought both a 55” flatscreen TV and my 300 ANSI lumens Yaber Pro Y9 projector with a 6’x8’ black projection canvas I grabbed from work. I’d also ordered a 5’x7’ gray background canvas from Amazon late Wednesday but it didn’t arrive in time. To my surprise, the area we were assigned was outdoors. Considering it was still daylight when the 7PM event time kicked off, going with the TV over the projector was a no brainer.
In doing so, however, I shrunk down my potential canvas from 120” (10 ft.) to 55”. This meant the screen itself had to be closer to the participants, and in turn, so did the camera. Ultimately, this resulted in less people being able to fit into the frame, and the camera losing tracking capabilities on the outer edges of the screen.
I also had a few issues with the presentation on the software side. The most glaring (unintended pun) was the overexposure of my camera feed caused by my scene volume configuration. Coupled with the fact that I never added color to my particles (they were pure white), this definitely hindered users’ ability to understand what was going on. In particular, the edges of the screen were way too bright, which actually helped push users closer to the center of the scene where tracking was most accurate. Two wrongs do make a right!
My other gripe with the scene configuration was that gravitational attraction between the energy balls was slightly too high. In cases where more than two people interacted with the experience at a time, it became very difficult to separate energy balls once they merged—like o(1) more difficult.
Alas, one could say that all of the fidelity issues I ran into yesterday were due to a lack of calibration. This brings me to the most apparent needed feature: on-the-fly calibration available in a pop out menu during play mode. I vaguely recall deeming this a needed feature after my last exhibit too. I’ll have to check the old logs and report back.
Ok, I never suggested that feature before—(I feel better now??)—it’s absolutely a must have. I don’t think switching between different scriptable object configs is the way to do this, either. There’s probably a way I can just load in default scene config settings as a JSON object, change settings on the fly with sliders and toggles, and quickly swap between saved profiles (and save new profiles).
The other overlay I realized I absolutely need to have is a small banner that includes my instagram profile name. I only got 3 new followers out of the dozens of people I interacted with last night. By any metric, that’s poor performance. Looking back, it’s ridiculous that I went through the effort of printing and handing out business cards as a digital experience creator. Exhibit in digital, advertise in digital. I favor a text banner over a QR code because of how much less screen real estate it requires. Besides, “5dayfl0” is only 7 characters.
Now, onto some other new features I’d like to experiment with:
- Dynamic scene configuration values: How cool would it be if scene settings oscillated on sine waves between ranges of values? If done right, this could lead to a more organic experience, but if done wrong, it smells of confusion and added chaos.
- Stereoscopic particles! My friend Jon gave me that idea. If I wanted to, I could bring only three pairs of 3D glasses with me and naturally limit the amount of participants, which would solve some of the headache introduced by having too many users being tracked at once. However, that also sounds like a potential sanitation hazard. I don’t care about that stuff, but other guests might. The customer comes first.
In preparation for launching energyball.dev, I’ve been experimenting with media optimization. Yesterday, I built a script for optimizing images for web, and today, I built a companion script for optimizing videos/GIFs. The two videos in this entry were processed via the latter.
Also, with my todo list growing in complexity, I’d like to simplify things by turning it into a single linear list of tasks . When I create a task, I’ll assign it a score and a category (ex. “Feature”, “Bug Fix”, “Research”, etc.). Ideally, an agent could do this for me.