Autodesk Research


  • Coming to a Forge DevCon in the US or Europe? It turns out I’ll be talking at both!

    Well, this just happened: after having had three generative design-related classes accepted for AU 2018 (well, really two were accepted and one ended up getting a repeat slot at the Connect & Construct pre-conference), I wasn't due to talk about anything I've been doing lately with the Forge viewer. Which frankly was a shame, because between robots, skeletons and streamlines, as feel as though I've got lots of fun stuff to share, at the moment. That was until yesterday, when I got pinged by Stephen Preston (for the US DevCon) and Cyrille Fauvel (for the European one), to ask if…


  • Generative Design Day in Barcelona

    After a crazy (but cool) few days in Amsterdam at the beginning of last week, on Thursday night I hopped across to Barcelona for an event being organised by our Enterprise Priority support team. They had invited our larger customers from all over Europe to come and hear about the use of generative design technologies in the AEC space, both present and future. I woke up early in the hotel opposite Autodesk's nearly-beachfront office to see the morning light hitting it. The event itself was on the first floor of the office, so we were surrounded by autumn colours. My…


  • Adding smarts to the MX3D bridge

    I've spent most of this week in Amsterdam with colleagues from the Toronto office. Our group descended on the MX3D offices in the funky NDSM wharf area of the city, to make a big push and help get the world's first robotically 3D-printed steel bridge – and its supporting systems – ready for Dutch Design Week. Most of the team stayed in a hotel right next to MX3D, but we did get the chance to take the ferry across to "the mainland" (it isn't really: everything is connected, it just seems that way) from time to time. It was really…


  • About Bristlebots

    My world seems to be filled with robots, these days, whether seeing how they can be used in architecture and construction, animating them inside Forge, or seeing them 3D print steel bridges (I'm at MX3D again, this week). It makes me think I should probably dust off my HoloLens app for making robots dance in mixed reality: once we're using data inside the Forge viewer-powered Dasher 360 to show the position of a robot at a particular moment in time, it's hardly a huge leap to show that in XR. Anyway, I should get to the point… Given this current…


  • Animating robots in the Forge viewer

    The inspiration for this post has come from a variety of sources. (Feel free to skip this preamble where I talk about the history of the project: as much as anything it's so I remember myself how things happened when I come back to this post at some point in the future. 😉 My colleague, Simon Breslav, worked on an initial implementation in Dasher 360 that animated robots – and even mapped stress information to their surfaces – for a demo shown at AU 2017, back when I was travelling around the world with my family. One of the issues…


  • When in Rome

    It's been a great few days in Rome, at the Forge team's first ever Roman accelerator. Things kicked off on Monday morning, as we occupied the conference room at Rimond's office in Rome's Trastevere district. As is usual at these events, there are a number of companies doing really interesting things: several of them have specifically mentioned Dasher 360 as their inspiration for visualizing additional (even IoT) data in the Forge viewer. Very cool. Yesterday I joined Peter Schlipf to visit Roma Tre University, where we spent some time with Stefano Converso from the Architectural Design department, as well as…


  • Rob|Arch 2018

    I spent the latter half of last week at ETH Zurich, attending a conference entitled "Robotic Fabrication in Architecture, Art and Design 2018", or Rob|Arch 2018 for short. This is the biennial conference where luminaries in the AEC industry get together and plot how robots will replace millions of construction jobs over the years to come. Not really, of course: the big thrust of this conference is to work out how robotic fabrication technology might (or must) be applied to meet the housing needs of a planet whose population is expected to increase by nearly 30% over the coming 30…


  • Displaying streamlines in the Forge viewer

    The integration of the MeshLine library into the Forge viewer – which we're using for the display of skeleton data, as we saw last time – has opened the door to displaying all kinds of other cool stuff. Back in 2014 colleagues in Autodesk Research published a SimAUD paper entitled "Towards Visualization of Simulated Occupants and their Interactions with Buildings at Multiple Time Scales". It explored the use of various visualization techniques to display how a building's simulated occupants interact with it. One of these techniques was called Speedlines (we also use the term Streamline): The original visualizations were created…


  • Displaying skeletons in the Forge viewer – Part 3

    Right then… now it's time for the really fun stuff. Looking back over this series of posts, we introduced it then looked at adding simple geometry to the Forge viewer, followed by animated skeletons and animated skeletons with fixed meshes attached. Today we'll dig into making our animated skeletons properly visible. Having given up on using a SkinnedMesh, the remaining option was to tweak the underlying display of the SkeletonHelper object. This proved challenging for all sorts of reasons. Back in Chrome 55, it seems the ability to show lines with widths broke in three.js. This was fixed in three.js…


  • Displaying skeletons in the Forge viewer – Part 2

    We introduced the series, then looked at adding simple geometry to the Forge viewer, followed by animated skeletons. Now it's time to look at approaches for making these skeletons more visible. As mentioned last time, today's post is a bit of a "non-post": it talks about adding a SkinnedMesh to be animated alongside an underlying skeleton, which we already know doesn't currently work inside the Forge viewer. But it's instructive to see the process in case either the situation changes or someone wants the code for a pure three.js application. Basically it's possible to add a SkinnedMesh into a render…