Full Bloom - Production Booklet
Description:
Full Bloom is a virtual reality musical instrument inspired by Elliot Cole's Flowerpot Music. Use flowerpots and mallets to construct short Blooms, petal-laden representations of your notes. A virtual instrument fetches
complementary Blooms constructed by other users, playing these note sequences in order of similarity.
Throughout 2020, our development team has worked on an interactive virtual reality game under the guidance of percussionist Peter Ferry. A graduate from the Eastman School of Music, Ferry has explored the acoustic properties of
flowerpots through his work leading large group performances on flowerpots. Full Bloom expands upon the 'household musicality' of these instruments.
Through Full Bloom, we hope to demonstrate the potency of intimate audio-driven VR experiences.
Team:
❀ Peter Armstrong - Code, Engine Implementation
❀ Richard Swientonioski - Sound Design, Interaction Artist
❀ Zachary Talis - Team Lead, 3D Art, Engine Implementation
❀ Jennie Thomas - 2D Art, Promotional Design
❀ Elliot Cole, Peter Ferry, Joe Geigel, Susan Lakin - Project Advisors
❀ Joe Geigel, Susan Lakin - University Faculty
August 11th, 2021
RIT's Frameless Journal published our paper about Full Bloom! You can read it here.
June 6th - July 6th, 2020
Full Bloom exhibited at this VRTO 2020!
On the last day of the event, Zachary gave a talk regarding the title's development, and debuted "Fervor in Full Bloom," an interactive ambient musical piece that utilized Bloom methodology.
May 2nd, 2020
Ignore the red error text, that's just SteamVR acting up. This video gives a good sense of Full Bloom's core functionality as well as Richard Swientonioski's sound design for the project.
April 29th, 2020
Here's a look at the greenhouse with Jennie's 2D art assets implemented as sprites. This is the version for our class demo!
April 28th, 2020
Problem: We've got a huge gap in the greenhouse and a live demo happening shortly.
Solution: Fill in the gap with some bricks.
Peter fixed an issue regarding Bloom prop highlighting.
This brick texture serves as a stand-in for a fleshed-out shed.
April 27th, 2020
We'll tidy this up down the road, but Blooms are rolling down the conveyor belt!
Yep, this could use some polish.
April 23rd, 2020
Ooooops.
April 22nd, 2020
Peter Armstrong implemented functioning flower petal placement, a crucial step in the Bloom construction process!
Players can strike various flowerpot drums to place different petals onto each Bloom.
April 17th, 2020
Problem: Our lighting looks pretty unpolished.
Solution: Post-processing, and plenty of it!
Here's three different iterations on post-processed lighting for the game. We implemented textured conveyor belt models at the same time.
April 16th, 2020
Early version of the game's conveyor belt model. This model needed to look sturdy enough to continue functioning after decades of neglect, yet shabby enough to appear the result of unfinished R&D.
April 12th, 2020
Problem: We need to surround this greenhouse with a city, but don't have the resources to model an entire expanse of detailed buildings.
Solution: Take advantage of the nighttime lighting and cast the city in silhouette.
A better look at the city. This is before Zach figured out that the fog color should match the skybox color.
The city model within Blender. The origin of the scene is where our lovely greenhouse is located.
Problem: Casting the city in Unity fog affects visibility within the playspace.
Solution: Bake the fog directly into the skybox model texture, using Blender's top-down perspective view (not orthographic view) to snag a decent UV map projection.
Problem: Color banding is too prominent within the skybox model texture.
Solution: Disable texture compression on that particular model.
We use an altered shader for the skybox model material, one that doesn't render fog on top. This way, we can use Unity fog within the playspace without worrying about its effects on the skybox.
Here's our second stab at volumetric lighting for lamps. This uses an open-source package called LightShafts. Unfortunately, with VR rendering in mind, this solution isn't performant
enough, also it flickers from head movement quite a bit.
Our first choice for volumetric lights would only render in our headset's left eye, which was quite wonky to experience.
April 10th, 2020
Problem: The default game logo doesn't fit our 70s aesthetic, which means we can't include it within the environment.
Solution: Jennie put together this phenomenal alternatve version of the logo!
April 9th, 2020
Problem: How to model realistic dangling cables?
Solution: Bevel a cable path using a circular path. Blender is nothing but intuitive.
Here's the untextured drums, a very important model to get right. Design is based off of standard drum kits, with flowerpots placed in proximity to facilitate trills.
The model is made up of a bunch of separate meshes, to be exported indivudually.
Problem: What if we want to change the flowerpot colors later on?
Solution: Use texturing tinting, which is available in both Blender and Unity.
April 7th, 2020
A joyous day, the lamp is textured. Zach is becoming quite the fan of brushed metal.
April 6th, 2020
A flowerbed model, with the dirt texture looking oddly wet. Thank heavens Unity's got in-editor sliders for metallic/normal strength!
A lamp model with UV test texture.
Problem: How to convey transitions between flat and curved surfaced without using excess tris?
Solution: Extensive use of Blender's Mark Sharp tool.
March 30th, 2020
Denser greenhouse framework implemented. Quite the modelling hassle.
The density of the greenhouse framework leads to pretty shadows that guide the player's eye towards machinery.
March 29th, 2020
Here's a failed attempt to implement custom hand models. Without proper bone weights, the result is quite stretched! We scrapped this approach and opted instead to retexture the included SteamVR gloves.
Implemented the initial greenhouse framework. This model is based off a .fbx import of the tileable greenhouse panels used for blocking out the space.
March 13th, 2020
In this video, a controller runs out of battery unexpectedly. This causes its associated hand model (along with the in-hand flowerpot) to teleport below the surface of the floor...
Buffoonery aside, this clip is a VR phyhsics demonstration that serves as a milestone in the development of Full Bloom.