Testing my game on the big screen

As a game developer I have always dreamed of making a game for Consoles and seeing how my game performs with a game controller. Unfortunately I don’t have access to a PS4/XB1 developer account and GameMaker Studio currently does not support Android TV yet. So I turned to the next best thing and decided to hook my tablet up to my flat screen TV and connect a Bluetooth controller to it to see how my game fairs when placed on a larger screen. In short the results are a lot better than I ever hoped. Below I will detail my experience getting my game up and running on a HDMI enabled screen using an Android tablet as my console. This is a fun and easy exercise I recommend anyone try out since these devices are currently a lot more powerful than several devices in the past like the original PlayStation or even the Dreamcast.

Why put a phone game on a TV?

Because I have a device already as powerful as a console. Most modern smartphones are a heck of a lot more powerful than people think. Most devices are strong enough to run emulators of advanced platforms like the Dreamcast or even GameCube if you have a beefy enough rig. The issue is that most developers see the platforms as disposable and thus don’t put in the effort required to make experiences that scale with screen sizes. This is why you see people developing games for iOS and tvOS separately despite both using the same hardware. This limits the audience a game can have since the same code can be used across platforms but isn’t due to control or screen sizes.

Hardware requirements

To get my game on the big screen I needed an android device that can be plugged into a TV via HDMI. While there are many models already on the market I wanted something I knew would perform under all situations. So I ordered a Project Tango tablet directly from Google. I believe this is the most powerful Android Tablet ever made since it is sporting an Nvidia Tegra K1 in it along with other bells and whistles like a 3D depth sensing camera.

For this exercise I will just use the built in micro HDMI port.

The TV has to be connected via HDMI. I do not recommend using streaming solutions such as Chromecast since wireless streaming introduces a lot of delay between the player input and the screen. While some people swear that lag is not that bad, for a platformer I need as much precision as I can. Wireless streaming is too unreliable for this sort of game.

Next I recommend getting a good bluetooth controller. With the devices like the Amazon Fire TV, Apple TV and Nvidia Shield TV, I recommend all mobile game developers to get at least one in order to take advantage of the platform. I use a Moga Pro 2 controller. It is nice and comfy and emulates the feel of a Xbox controller. It even has a slot for you phone so you can play on the go.

Testing

After connecting the device to the TV via HDMI the next thing is to connect the Controller to the android device. This is simple since Android has a dedicated area for connecting bluetooth devices. Take note of the name of the device since this will be later used in game.

After doing so you can now start up Kyle’s berries. On the big screen it looks a lot better than I had hoped. Despite running at 960×540 the game looks better than on my Motorola droid.

The controller needs to be selected from the options screen where controller support is disabled by default. To enable it just select the “Bluetooth controls” button and the game should detect the connected devices. Select the device you want to use and you should be good to go. You should see an indicator appear that you can now use to select options.

And there you have it. I was able to play the entire game using this method. Since I streamlined the touch controls to be as responsive as possible there is little difference tapping on the screen and pressing a button. Both versions retain smooth jump controls.

On a Samsung oled TV

The game was designed to run at 30 fps due to most mobile devices not being well optimized for smooth gameplay. While the default speed for many console platformers is 60 fps some modern OLED screens can go as high as 120Hz. I tested the game first on a Philips “Smart” LED TV that ran at 60Hz and got an image that looked close to what I would expect on the tablet. But then I ran it on a Samsung smartTV with motionPlus turned on and the game looked way better than the original. Everything was smoother with the camera movements and backgrounds looking way nicer. There is a catch though. With the improved motion there is a bit of a disconnect between the image on the screen and the players inputs. The game “feels” a bit stiff despite “looking” smooth. I would recommend this mode when you have friends over but if you really want precision gameplay turn this feature off.

Lessons learned

I found the Bluetooth controller quite responsive making me feel like I was playing the SNES games of my youth but now with modern graphics. This proves once and for all that Android games are ready for TV and we need more games like this for the platform. We technically can make more like this but YoYogames¬† needs to get it’s act together. They seems to have put code in android that cuts off TV support. Since all of the tools are working fine I see no reason why Yoyo has to decide what platforms GameMaker games can run on and not the developer. Especially since the tech works fine.

CODE:

FATAL ERROR in
action number 1
of <Unknown Event>
for object object38:

Incorrect Android target... this executable targets Android TV devices. This build is for Android.

Share

Add a Comment

Your email address will not be published. Required fields are marked *