Legoland Final Mission

Created in Unity for Windows

Final Mission is an on location experience installed in multiple Legoland Discovery parks around the world. Users approach one of the two kiosk systems and interact with the touch screen to scan the park provided Lego Minifigure. A motorized plate then rotates the Minifigure into the machine, where it is scanned. The generated image is then incorporated into a fun animation that plays on a large 4k display. A QR code is then provided to the user, which gives a customized digital souvenir for visiting the park.  

Was the lead developer on Final Mission, responsible for most of the technical aspects of the project. Created and managed two separate Windows PC applications, one for the kiosk small screen (client) and another for the large screen display (server). 

On the client, I implemented all UI, including gameplay, interface for the admin control panel, and an extensive suite of scanning calibration tools. Worked with OpenCV to create the scanning method of isolating the Lego Minifigure, giving it an alpha transparent background. System works with any color of Minifigure, allowing the parks to regularly swap out the characters without issue. Also aided in helping solve physical design challenges, pertaining to the lights, motor and camera setup.   

For the server, I developed all the technical aspects needed for the flow, such as showing the attract loop animation, playing the selected real time cutscene with the users scanned Minifigure superimposed, and then uploading that scan before providing a generated QR code. Server can properly queue and display figures if kiosks are used during a cutscene. 

Also created a system so that if clients scan at a similar time, they will synchronize through the network, and then present both Minifigures together in the same cutscene, providing a fun surprise to the users and to aid in throughput. 

PXL_20230531_134547694PXL_20230329_172650041CropPXL_20230805_150744067vlcsnap-2024-08-07-10h21m27s590PXL_20230802_204708626QRPXL_20230602_145334644PXL_20230801_180807907