Engineering ROBLOX for the iPad

ROBLOX iPadROBLOX isn’t your typical video game company. We’re unique in a lot of ways, one of which is our openness about what we’re working on and our plans for the future. Today, we’re happy to stop teasing and start going in-depth on our progress toward releasing ROBLOX for iPad.

ROBLOX for iPad will launch in a couple phases. First, we’ll update the existing ROBLOX Mobile app, which has been available in the App Store since 2011. The update will improve the visual style of the app and is optimized for use on iPad. It will allow us to test all non-game components of the ROBLOX app.

The following release, in which a significant fraction of our company is currently involved, will add the anticipated Play Games feature. We’ll let you know when to expect these releases in the future. In the meantime, keep an eye on the ROBLOX blog to learn about challenges our developers have encountered and overcome in pursuit of our ultimate goal: a polished, optimized, intuitive ROBLOX experience on the iPad.

Sticky Note Wall

Engineering tasks move from one end to the other on this living wall of sticky notes

Setting the stage: engine and library upgrades with David York

When you’ve created a large-scale, PC- and Mac-compatible platform using various engines and libraries – some of ROBLOX’s most crucial are OGRE (graphics engine), Boost (C++ library), RakNet (network engine), XCode (Mac IDE) – upgrading any of them has the potential to break something, somewhere down the line. We reserve these sorts of updates for times when they’re needed. Porting ROBLOX to iPad was such a time.

While engine and library updates were first made and tweaked in a test environment, they’re now deployed and quantifiably benefiting our iPad development. Not only have the upgrades given our developers things like new tools and better bug reporting, upgrading XCode from 3.2.4 to 4.5.1 has actually cut the Mac and iPad build time – the time it takes to compile ROBLOX’s code and libraries into a working program – in half. The team is currently building ROBLOX (around 1.88 million lines of code, libraries included) roughly five times a day, so going from an average of 20 to 10 minutes saves significant time.

XCode 4According to David York, lead engineer on ROBLOX’s iPad development, the process “broke a lot of things and we fixed them all. It was about a week and a half to get everything to compile again.” One of the blockers to error-free compiling was an overlap in function names between Boost and XCode. Function names in Boost can’t be named the same as those of the iOS source code, which required David to rename Boost functions.

This process enabled ROBLOX on an iPad, and has the side benefit of performance increases for the PC and Mac versions; David estimates a roughly 10% improvement, with much more to come.

Diving into the games

When we kicked off development of ROBLOX on iPad, we compiled a list of important ROBLOX games and then we tested them – 58% would load without crashing the app. These are not necessarily the most successful games; we tried to pick a sample that represented all the different types of games you can build on ROBLOX to make sure that all genres of games will work on iPad.

We’ve found that games with a large memory footprint – many of the role-playing game variety – were particularly prone to crashes. While we’re reducing the memory footprint of all games and profiling code to optimize resource-intensive areas (more on those in a future article), we’re also working with select ROBLOX developers to identify ways users can optimize their games and worlds to run well on an iPad.

ROBLOX Games in Testing

ROBLOX games in iOS testing; click to enlarge

The above screenshot is part of our spreadsheet tracking what games work on what devices. Our goal is to turn all the columns to the right green. Today, performance improvements allow 74% of these games to load without crashing. Crossroads, our go-to testing ground thus far, plays smoothly with multiple players and we’ve seen frame-rate increases of 50% in the level.

Toby Teel explains migrating web pages to iPad

ROBLOX is more than game-play; it’s also a social network, virtual economy and online store. Most of those features are web-based, and our Web Team has already started optimizing them for display on the iPad.

MVC Concept DiagramThis year, we started building ROBLOX web pages using the Model-View-Controller (MVC) framework. MVC separates the representation of information from the user’s interaction with it; or, as Web Team Lead Toby Teel puts it in more conversational terms, MVC separates the way things look from the functionality and data. This means we can use shared code to display pages in different ways. For example, the iPad version of the Builders Club page uses two columns, while the mobile site (for smartphones and handheld devices) uses a single column. Both versions use the same code base. This offers flexibility in displaying pages for multiple devices and formats.

When you browse ROBLOX pages on the iPad, things load quickly. Our web developers know what pages users will visit from the app’s home screen, and pre-load them when users launch the app. There’s no blank screen when you load the Catalog, for example, because the app already grabbed the data. It’s a small step toward a great user experience. You’ll be able to see it yourself in the updated version of ROBLOX Mobile.

One of the key challenges to porting ROBLOX’s web features to iPad is deciding what should be native to iPad – that is, designed from the ground up for the iPad – and what should retain the more traditional look of Roblox.com. It would be great to render all pages natively for iPad, but that would require replicating functionality and would double the support needed for all pages. ROBLOX pages are also widely connected (for example, a game might have badges, gear, game passes and more, all of which link to somewhere else on the site), adding to the challenge. Still, that’s the goal.


These are some of the few challenges involved in bringing a world-class ROBLOX experience to iOS and we’ll have more insight as more engineering work reaches completion. In the meantime, download ROBLOX Mobile from the App Store. The current app lets you do basic social networking and purchase Robux and Builders Club subscriptions using iTunes credits. Plus, you’ll receive an App Store notification when the new version is released in the next couple weeks.

125 thoughts on “Engineering ROBLOX for the iPad

  1. Great, I have an iPad 2 and can’t wait for this to come out! No, it won’t come out for iPhone and iPod touch, go buy an iPad.

  2. I cant wait!! I also noticed that the “Welcome To ROBLOX Building” was tested on the iPhone 4S, and worked.. It would be nice to have ROBLOX available to all of Apple’s Dual-Core Devices. I guess that means it’s time for me to upgrade!

  3. Great job. As more and more people buy tablets instead of laptops, expanding horizons to ipad is neccessary for roblox. Roblox, when this is finished, will be pretty much a take-anywhere platform. I do recommend,however,expanding to android and windows tablets as well, and certain high end phones. Like I suggested in the roblox mobile forum, a forum tab would be a great addition. Keep up the great work, and keep us informed.

  4. Come on guys, android isnt impossible, besides, ROBLOX4Linux is out and Android is linux based… I think ROBLOX will soon be available on nearly all platforms, (except Java phones such as the Orange Miami.)

    This looks quite promising however and i cant wait to see the outcome!

  5. Putting roblox on ANY touch screen only tabled is a BAD idea. First without use of external controllers and keyboards a soft (touch screen) joystick are very very bad. They feel horrible you have to look at them while you are playing 20 times and they are over all non responsive even on a capacitive touch screen. Also IOS is a bad operating system to port anything on too because Apple will get rid of all their computers and then there will be a HUGE drop in sales and Apple will go into bankruptcy. Android is just plain horrible. Half of all the units that use the Linux-based OS are bad rip offs. Over all people have GOT to wait to play roblox. Checking messages is okay, but playing is wrong.
    Absolute waste of money and time.

  6. Pretty much will be laggier if there are games you can play like… uumm… Base Wars.

  7. “In the meantime, download ROBLOX Mobile from the App Store. The current app lets you do basic social networking and purchase !!->Robux<-!! and Builders Club subscriptions using iTunes credits."

    Wrong,you cannot buy ROBUX on the mobile app.

  8. Now, what about Android devices? If you put it on Android, It will support a wide number of devices from the start. And with Androids, you get the Sony Xperia play (It is a great gaming device indeed). I would love to see Roblox on android.

    • Did you not know? Andriod scripting is harder to mess with so they are starting with iDevices. But they will add andriod play later.

    • It will get more people playing roblox so well done everyone for such a great game!!!!!!!

  9. Wow… ROBLOX has flaws and benefits… yet… I believe that I am more on the people who believe in the beneficial side….

  10. I ALWAYS go on my IPad!!!! and I rarely can go on my computer for Roblox!!!! So I would LOVE that!!!!