This week I had a quick trip to attend this year’s Barcelona Forge Accelerator. This year the event started on Tuesday – on Monday it was the festival of San Juan – so I arrived “fashionably late” at the end of Tuesday morning. Just in time to pop down to the beach to have lunch with current and former colleagues.
For some reason I end up staying in a different hotel every time I come to Barcelona. This time it was the SB Diagonal Zero, which is just across the street from the Princess (where I stayed for OTx).
This was the largest accelerator I’d been to, having a full room focused on the Inventor Design Automation API with another focused on other Forge APIs, such as the Viewer and BIM360. I hung about in the “other” room:
Here’s the room focused on Inventor Design Automation, with members of the engineering team there to support.
There was also some overspill into the common areas, where people could work as long as they didn’t mind the risk of being hit by a stray ping pong ball.
As usual the Forge team did an outstanding job helping unblock people with their technical problems.
There were some really interesting projects going on, and once again many related in some way to digital twins. A team from Skanska were integrating data from a really cool computer vision-based tracking system into the Forge viewer, for instance. Our friends at Moicon were also fleshing out their offering: it was really cool to see how Dasher 360 has inspired them… they have animated robots, streamlines and now a timeline, too! Very cool.
From my side the timing of this event was particularly good (despite being the week after AU London). We’ve been heavily focused on pushing forward with generative design projects over the last few months, so it was naturally time to refocus on Dasher for the summer (give or take). This event was the perfect kickstart for that work, and allowed me to discuss plans with the Forge team of where we want to go with the project.
Technically speaking I was focused on three main tasks during my time in Barcelona (aside from helping other people out when they had questions I could answer): firstly I wanted to upgrade to v7 of the Forge viewer, which does have some breaking changes (at the time of writing the release notes haven’t been published, but I fully expect Jaime Rosales to post something on it soon). This actually proved much quicker than I expected, which meant I could move onto the second task of investigating the use of OTG rather than SVG inside Dasher 360.
OTG is really interesting: it’s a new geometry format supported by the viewer – which can be generated from SVF, the existing format – that allows for much more efficient storage and viewing of models. Meshes are all stored individually and streamed in via WebSockets, but models also need way fewer meshes when stored as OTG: the creation pipeline detects instances of similar meshes and deduplicates them. “Similar” is broad enough to allow any cuboid (including most walls) to be represented by a single unit cube with different scale factors and its own materials, for instance.
This reduces the amount of data that’s transferred when loading an OTG, of course, but also allows the viewer to use GPU instancing when rendering model. There’s a noticable performance improvement.
Having meshes segmented spatially also creates interesting opportunities to do spatial queries, bringing in – and discarding – geometry as needed. Things are going to get interesting!
The best source of information on OTG is on Michael Beale’s GitHub. It’s currently a little complicated to translate SVF models to OTG and to have the viewer load them: I hit a blocker that needs some help from Engineering, and so decided to move onto a third task for the week and come back to this later.
My third task was to rip out some old server-side Forge client code and integrate one of the newer Node.js libraries. I ended up opting to use Petr Broz’s forge-nodejs-utils package, which works really nicely. My main goal in the longer term is to make sure Dasher 360 connects well to BIM360 Docs, but as a first step I just wanted to make sure issues we hit don’t relate to the use of outdated Forge client code.
(Incidentally my old friend Jeremy Tammik also spent time creating an interesting solution to the common problem of getting room volumes in Forge… check his blog for more details on his solution.)
Beyond these various activities, I spent an hour talking the Barcelona-based AEC Sales team about generative design. I covered various projects Autodesk Research has worked on, as well as the tools Autodesk is working on in the generative design for AEC space (i.e. Dynamo and Refinery).
And there was also plenty of fun in the evenings, too. Interestingly it was quite a bit cooler in Barcelona – which has a lovely sea breeze – than back home in Switzerland. I’d very much packed for sweltering heat, so was a little surprised to regret not having long sleeves with me when I went out of an evening.
On the Tuesday night Jaime organised a dinner at the Moritz bewery, which was really nice.
Aside from the beer itself, a highlight on the menu appeared to be the beer-can stuffed chicken.
On the Wednesday night a smaller group headed across to the historic centre of Barcelona to eat at a restaurant named Pla.
It was really nice, and very quiet when we got there at a little after 9pm. (It soon got relatively busy, though.)
The food was outstanding!
A really nice meal with great company.
Afterwards we headed across to try to take the last metro back to our hotel (we failed, so ended up grabbing a cab instead).
We did get to pass by the Barcelona Cathedral, so at least I had a tiny dose of culture alongside all the code and coffee.
I left the Accelerator a bit early – on Thursday afternoon – which meant I missed the last night’s evening event. I did get to see a few pictures – including the one below – and it seemed everyone had a great time.
Many thanks to the Forge team for inviting me across and letting me participate in another fantastic Accelerator. I feel as though I had a great deal of value from the event – not just from helping others, which is the usual way – and I now have plenty of inspiration of things to do with Dasher over the coming months. I’m looking forward to the next one!