Given the huge number of transactions going through the Bitcoin network at any given moment, we felt that there would be some sort of cool way to visualize the data using VR. The final product could also be used as a teaching tool to teach people about how Bitcoin operates.
What it does
A webapp pulls in real time unconfirmed transactions and newly created blocks from the Blockchain.com Bitcoin Websocket API. Using Threejs's WebVR functionality, each unconfirmed transaction is turned into a cube that floats around the user in VR. The size of each unconfirmed transaction is proportional to the estimated amount being transacted. When the user looks at an unconfirmed transaction, its age, estimated amount and hash are displayed.
When a new block is mined, the webapp removes all unconfirmed transactions from the scene that are a part of the block and forms a new cube in the scene to represent the block. When the user looks at this cube, the block's number of transactions, height and age are displayed in the HUD.
How We built it
The application itself is a webapp created using Three.js and WebVR. The webpage can be viewed on a phone supporting WebVR and slotted into a Samsung Gear VR headset.
Challenges We ran into
We at first wanted to use the Oculus Rift however we were unable to drive it without any dedicated graphic cards on our laptops, so we had to use one of our phones to serve as the display device alongside the Samsung headset. We also had difficulty working with this unique environment, at one point spending two hours trying to debug why a static block wouldn't spawn, before we realized it had been spawning all along just rendered behind the camera!
Accomplishments that We're proud of
We managed to get all of the intended project finished as how we visualized it at the start of the hack! Finishing the bulk of the work this early is something none of us had never done before, and was a welcome surprise as it meant we would actually be getting some sleep.
What We learned
None of us have ever worked with any virtual reality or 3D modelling before, so we all learnt a large amount in regards to how each work and developing with them. We also developed our programming skills, in particular with JS, and had to adapt to working in a team using Git. Though problems came up along the way, we've ended now understanding both Git and JS to a much larger degree than before.
What's next for virtual crypt-ality
Supporting a more powerful VR headset such as the Oculus Rift would be nice, as the image quality could be improved. Additionally, we'd like to add more elements to the project in general to more effectively teach people about the Bitcoin network and blockchain technology.