Learning Unreal Blueprints for VR II


The second project for Udacity’s Unreal program was called “Hide in Seek”. Building upon the foundations taught in “Kitchen CleanUp”, the game required more complex blueprint coding. The premise was to initiate the game, hide an object around the apartment, and have the user utilize locomotion to move from point A to point B to “destroy” the object. Each destroyed object would gain the player a point. I decided I would create a can and a trash bin (both designed in 3dsMax) for the game so the user would effectively be “recycling cans” to gain points. Again, my job was to:

  1.  Create a player pawn with a controller that had the ability to interact with the can (using blueprint interfaces)
  2.  Spawn a can at a different location every time the user found and recycled the previous can (randomly spawned at target points, as used previously in KCU)
  3.  Create a recycling bin that would read if a plate was in it and destroy it (and once destroyed, a new can would need to be spawned)
  4. Develop a timer and score system that the player could see, a method to start and end the game (event dispatchers) and a start menu (interface widgets)
  5. Lastly, but most importantly, create a locomotion method that would move the user around the apartment. Here is the method I used- a line trace to draw a cylinder to identify a location where the player could move:


Here’s a preview (another grainy GIF rather than video):


Main menu created in Photoshop + Illustrator:


Can UV texture created in Photoshop + Illustrator:


Low-poly can:


Low-poly recycling bin (a basic blue texture was later added in Unreal):



Printing a Mount for the Oculus Rift

To start with:


Secondly, this is what happens when you leave a print running and go to work:


So maybe that doesn’t happen all the time, but I sure did waste a lot of wood filament. I was in the process of printing a wall mount for my Rift and touch controllers. I originally downloaded both models from Thingiverse, but I made some modifications to the mount for the HMD (scaled it along the X axis, added a curved surface since I’m constantly scared of UV light screwing up my lens):


During the middle of the second try (this time with ABS), the extruder clogged. Lucky for me, I’ve dealt with that issue before (see my post about extruder clogs…) and was able to quickly disassemble the extruder, declog it, and reassemble. Hey, it only took a few hours rather than a few days! For my third try, I decided to just go with Prusa’s standard PLA:


And the final products, mounted to the wall in all their glory:


Yay for useful prints!

Maya 2014 Tutorial

I had such a blast doing these tutorials by John Aurtur Mercader:

It’s been a few years since I actually completed his tutorials, but I was reminded due to my reignited interest in Autodesk modeling software, including Maya and now 3dsMax. I ended up with a model I was pretty happy with:





Right now I’m currently enrolled in a Udemy course for 3dsMax, so we’ll see where that takes me!

More VR Stuff, this Time with the Rift

I am fortunate enough to have a wonderful brother just as interested (if not more so) in emerging tech, specifically with virtual reality. He already owns a Vive, but decided to order an Oculus Rift a few months back. Due to some fluke, Oculus sent him two Rift Touches by accident, one of which he lent to me. I’ve been having tons of fun with it, but more importantly, I’m learning how it can be useful in existing fields. This is particularly due to the fact that I work at an architecture firm that is currently conducting research in how VR can be used with architectural visualization. This isn’t exactly a brand new topic, but I’m really excited to be personally involved in the research, both at home and at my workplace.

In terms of architectural visualization, I think the biggest, most exciting software for me right now is TwinMotion for VR. I learned about TwinMotion from one of Fabrice Bourrelly’s Unreal Archiectural Visualization webinars (check them out here when you get the chance). I am currently learning Unreal Engine as I am really interested in building my own VR environments from the ground up (textures, animations, lighting, the whole deal). Of course, this takes time and energy, which most of us don’t have much to spare. TwinMotion is a more “plug and play” software for VR, with built in material, lighting, and animation presets. Essentially, all you have to do is bring in a model (whether it be a Revit, Rhino, Cinema 3D model, among others) and add in whatever you like. Another pro: the software is compatible with most VR headsets. The software is still in its early stages, but I’m looking forward to seeing what they’ll have in store for us. Check them out here.

On to a more lighthearted, fun topic- Games and Apps with the VR! So I love messing around with my headset, and there are some really fun games and things to do while in virtual reality. Of course, my favorite moment was when both my boyfriend and brother played AFFECTED – The Manor, a horror game. I was a wimp, while both of them were very brave facing ghosts and goblins and scary things (though the bf did scream like a girl a couple times). Truly a terrifying experience. Another cool App I discovered was Medium, a sculpting app. Imagine 3DSMax or Mudbox, but rather than staring at a monitor and sculpting with a keyboard and mouse, you create models within VR. Your canvas is the virtual world within the headset, and your sculpting tools are your hands (well, the touch handset you hold… but you get the point).

I will try to post a time lapse video at some point of me using Medium, but for now I can share a few screen grabs of my latest creation- a silly octopus. The app was a little finicky with layers and resolution (Medium actually began to crash after I added too many suckers, but I should have expected that… I was modeling a large model in VR…) and my head hurt after a couple hours of being in the headset, but overall really fun. I can see artists using Medium to create large virtual environments with crazy creations.



Zipping Together Two Mummy Bags

My boyfriend I are avid backpackers and do a lot of camping trips in the spring and summer time. We have increased our inventory of gear since we first started dating (I had most of the gear at the beginning of the relationship, now we are about even). He purchased a new sleeping bag last year (the REI Helio down, right zip) and I knew at some point I would need a new sleeping bag as well. I had been using an REI Radiator sleeping bag leftover from my childhood backpacking trips with my family- literally, this thing is 20 years old. It held up amazingly, though! Check out this picture from circa 1997 and one my boyfriend snapped today- same bag:



You can see I’m on top of two other sleeping bags, which leads me into the fabrication topic of the day. Many sleeping bags cab zip together, which is really great as you can cuddle and steal warmth from a significant other. In order to zip together, two mummy bags must each be one right-zip and one left-zip. They also need to be of the same zipper manufacturer. I knew that when I would purchase my next sleeping bag, I would want it to zip together with my boyfriend’s Helio bag.

I went to REI to try to find an REI brand sleeping bag that could potentially zip with the Helio. I spoke with a very helpful REI rep, who recommended the REI Flash sleeping bag. Since my boyfriend is very tall and has a tall sized sleeping bag, the rep also recommended going for a regular size men’s bag as it was left zipping and might fit a little better next to a tall bag. However, he wasn’t positive the Helio and Flash would zip together and unfortunately, they had none left in stock. The bag had all the specs I wanted (correct temperate range, great weight for backpacking), so I decided to take the risk and order the bag online. However, when I received the Flash, we immediately realized it would be impossible to zip the bags together for two reasons:


Firstly, both of the zipper fasteners were on their respective bag’s top zipper. One would have to be on the bottom and one would have to be on the top in order to zip properly. You could potentially flip one of the bags over, but then the head part of the mummy bag would cover your face- not ideal.


Secondly, even if the zipper fasteners were on their correct side, you couldn’t attach the fastener to the zipper due to a blocker (item circled).

I realize the reason this all probably happened was because both of the bags are men’s sleeping bags and REI only guarantees that their REI brand men and women’s bags will zip together. I was so happy with the Flash bag that I didn’t want to return it and go through the trouble of finding another great sleeping bag that could zip with the Helio. It was time to figure out a possible solution using 3D printing!

I took the measurements of the zippers using a caliper and snapped a couple photos from plan and elevation views. I then brought the images and measurements into Rhino and modeled the zipper. I modeled two zippers, one the same height as the bag’s current zipper and one a millimeter taller in order for the blocker piece to fit through it. Check it out:


Two poly-surface zippers with different heights and two meshes, exported as an STL to be printed.


Ready to go!


I printed two of each of the two-sized zippers on the Mojo 3D printer at Techshop (printing away in the image above). Once the support came off, it was time to test them:



And it works! This video shows just one zip fastener, but in reality each zipper on the bag, bottom and top, has two zip fasteners, like so:


Our two mummy bags finally zip together! We did run into one problem though: even when the bags are zipped together, the Helio bag still has an open foot area at the bottom as the starting point of the Flash’s zipper is higher than the Helio, like so:


You could potentially start them at the same point at the bottom, but then the Flash’s head would be much shorter than the Helio. Either my boyfriend’s feet will be cold, or my head will be at his chest- so I think I’ll be buying him a bunch of wool socks 😛 Jokes aside, I am still trying to come up with a solution for this, and will update my blog once I can come up with something viable. In the meantime, happy camping!


Electroplating 3D Prints

I’ve always been interested in 3D printing in different materials or even possibly coating prints with paint or metal. During my time at UVA’s architecture school, I printed in nylon, wood filament, and many other crazy materials. I’ve also tested smoothing ABS with acetone vapor (works wonderfully). However, I really wanted to try something new, especially now that Techshop was at my disposal. My friend/coworker Brett runs an electroplating class, which I decided to take one day after work. Basically, the idea of electroplating is to use an electric current to coat a conductive object (typically some sort of metal) with, well, a different type of metal. It’s extremely useful and can be used for many different things, such as to decorate, to harden objects, or to protect from corrosion. In Brett’s class, we plated a copper penny with nickel- the process was far simpler than I originally imagined. You mix together nickel acetate (easy buy from Amazon) with vinegar in a plastic container. Once that’s all nice and mixed up, you connect whatever you are trying to electroplate (in our case, copper) to the cathode aka negative side of a small power supply  (6V battery) and the metal you plan to electroplate with (nickel) to the anode aka positive side. Place both in the nickel acetate vinegar bath, turn on the power supply to about 4 V (best to keep the voltage low) and wait. You will begin to see a coating form over your penny!

I was extremely pleased with the results and wondered if I could somehow use the same technique to coat a 3D print. I did some research online and saw that many people had tried it and got some pretty awesome results. It seemed that the cheapest method was using a graphite based coating, which would make the 3D print conductive. I decided I would try out a combination of acetone and graphite powder- the acetone, in theory, would cause ABS plastic to melt a bit (remember acetone vapor smoothing) and therefore act as a adhesive for the graphite. I purchased some graphite powder and acetone and mixed it. Oh my goodness, the graphite got everywhere! My hands were covered in this stuff for days. But, the mixture turned out very well in my opinion. I found an old ABS print I didn’t mind testing on and coated it with my solution. Here is how the solution looked and the graphite powder I purchased (noticed I kept it in a plastic baggy at ALL TIMES):

Once it was coated, I used the same method as Brett showed in class, but rather than connecting a copper penny to the cathode, I connected my graphite covered 3D print (well, I wrapped nickel wire around the print to ensure it was secure and connected that the cathode). Unfortunately, I did not take any photos of that rig, but I do have a picture of how it turned out:


First try went way better than I expected. I honestly didn’t think it was going to work at all (my coworkers at Techshop had their doubts as well). The dark gray areas are places that didn’t take the nickel, but the lighter areas are locations coated in nickel- success! Now that trial 1 was over, it was time to move on to bigger things. Such as JEWELRY.

I designed a basic parametric bracelet in grasshopper and printed it on a Stratasys Mojo. It came out with a lot of support material, so it had to sit in the bath for a while. Here it is covered in support:


Afterwards, I coated the bracelet with my acetone graphite solution. I did about 3 coats since the design was so complex; I had to ensure I got every little crevice. Here it is as I’m beginning to coat it:


Alright, now it’s time to electroplate it! I set up the rig and connected the 3D print using A LOT of wire. I then carefully placed it in the nickel acetate bath and let it sit for 7 hours. It’s like watching paint dry:

Here you can finally see what the rig looks like. That rectangular object is my chunk of nickel, connected to the anode of my power supply. I had to rotate my bracelet every so often since my solution didn’t fully cover it. You can see the nickel beginning to cover the print:


After seven long hours, I pulled the print out and was amazed at the results and how well the graphite took the nickel. Of course, it wasn’t perfect. There were areas of the print that didn’t take as much and some areas looked a little clumpy. Additionally, the metal was not polished. I purchased some Simichrome and used that the polish it up. It actually worked pretty well. Here is an image of the final product:


Pretty cool stuff. I plan to test it on other objects, but for now I’m pleased I created a new trendy bracelet I can wear 🙂

Digital Documentation for Heritage Preservation: DC Symposium

I was fortunate enough to attend NCPTT’s Digital Documentation for Heritage Preservation Symposium yesterday, hosted by Mount Vernon. There were some pretty cool people there, including a group from the National Park Service (I got into a great conversation about diversity in parks with a young woman from NPS) and some architecture firms specializing in historic preservation. In my past, I worked at Monticello as an intern sorting through all of their old architecture documents (random side note: I once found a signed letter from Franklin Roosevelt while working), so I’m very interested in overlaps between technology and historical preservation.

There were two lectures that really stood out to me. Firstly, there was the HABS, HAER, HALS lecture by Richard O’Connor from NPS. Richard first discussed how HABS, which was developed 1933, set a precedent for documentation standards in preservation. He also discussed how HABS, HAER, HALS were the first heritage documentation programs to be digitized due to their value for K-12 education (apparently before this, you would have to go to the Library of Congress to view any of the documents). He then spoke on the pros and cons to laser scanning and digital documentation over manual documentation. He told us that some issues with laser scanning were that 1) people working with laser scanners had to have a clear understanding of the tech and specific training on how to use both the hardware and software and 2) there is a huge amount of data that comes from laser scanning a site, therefore an office must have high computing power to handle and sort the data. On the other side, laser scanning is extremely useful for fragile resources. Some sites won’t let preservationists conduct manual documentation because the site is easily damaged, whereas laser scanning is not disruptive and allows data capture in a timely manner. My office at the Department of State hopes to digitally preserve our overseas buildings, so conversations on laser scanning are particularly interesting to me.

The second lecture was led my Terry Kilby regarding drones being used to capture 3D data. Terry owns and runs his own drone company called Elevated Elements-he’s collected 3D data on multiple Baltimore sites using his drones. Currently, most drones use photogrammetry, which means taking photos in a grid pattern with 70-80% overlap to capture a site. He also discussed how some drones will utilize laser scanning capture in the future, which I thought was really cool. And just recently, sense and avoid drones were developed, meaning the drones will sense an obstruction in their flight path and move around it. Though I’ve never personally flown a drone, the technology is something I am interested in (specifically because 3D printing drone components is possible nowadays).

Overall, a great lecture series! I’m looking forward to seeing where this tech moves in the future.