tag:blogger.com,1999:blog-56031182023-11-16T07:40:46.135+00:00HiAsh.comJust some guy from London making games in America.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.comBlogger196125tag:blogger.com,1999:blog-5603118.post-60880640816887801172022-12-08T23:39:00.005+00:002022-12-08T23:39:57.601+00:00F1 Arcade (London) - Preview<p>If you're a fan of Formula One racing, you're going to want to check out <a href="https://www.f1arcade.com">F1 Arcade</a>, the new F1-themed bar that's set to open in London soon. The bar is the first of its kind and is being setup by the same team behind Puttshack and other social competition spaces. With the growing popularity of F1 since Liberty Media's takeover, thanks to projects like Drive to Survive on Netflix, it is great to see some fun spin offs like this. It's worth noting that the bar was supposed to launch at the start of December, but has delayed the launch due to some technical issues that are still being worked out. Having previously booked a session were made aware of the delay, so given the option to keep our slot, play for free and received a 25% discount on food and drinks as part of this testing period.</p>
<p>As soon as you walk into the bar, you'll be impressed by the high-end decor. The overhead lights are designed to look like tracks, and there must be over 100 simulators for guests to use. The atmosphere is electric and it's clear that a lot of thought has gone into the design of the space.</p>
<p>There is a good sized bar with a decent selection and the food menu was pretty good too. The drinks are about average for London, but the food seemed a little expensive for what we got. I ordered several sharing plates, but they were basically just normal sized starters in my opinion. Service was also a bit slow during our visit, but it's worth noting that the bar is currently in a soft launch/testing period, so these issues may be resolved by the time it officially opens.</p>
<p>There are several different options for participating in the racing at the bar. Groups of five or less can book a simulator each, or you can book as team and rotate through a single simulator. When we visited, we weren't able to book enough simulators for our group, so we opted for the team option. The cost would be around £20 per person for about an hour of play.</p>
<p>Once you've registered, your name will appear on the simulator. Sit down and adjust the seat, choose your difficulty level, and you'll be ready to start racing. Each race lasts for about 3-4 minutes and rotates through a selection of tracks. We recognized Monza, Spa, Silverstone, and Bahrain. Our group of four had two simulators, so two were able to race against each other while the others watched. It was a lot of fun and definitely something different to do on a night out.</p>
<p>We knew coming in that there may be technical issues with the games, so I'm not going to hold it against them at this point. During our visit, the steering would occasionally stop working and we had to reset the machines. The seats were also supposed to have motion feedback, but we're not sure if that was working on our machines. Despite these issues, we had a great time and our non-F1-fan friends enjoyed it as well.</p>
<p>Overall, the F1-themed bar is a cool and unique experience. The racing is a lot of fun and accessible for anyone with even a passing interest in driving. But if you are a fan of Formula One racing, it's definitely worth checking out. Here's hoping more locations open up soon.</p>
<div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOOfGJn6DztRyiVEODBCyoVYKSUnmSRWLVASc4eLHp3Gh4OxP1mezIFKCS37n30_jPVz-ZF7Wt70lbuKiuEOOe1Wd60Y5mbpYdiiOwaL_1SBCdMmR9TYspKtyyJy48XABl7-Lt/s1920/20221207_201011.mp4" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="320" data-original-height="1080" data-original-width="1920" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOOfGJn6DztRyiVEODBCyoVYKSUnmSRWLVASc4eLHp3Gh4OxP1mezIFKCS37n30_jPVz-ZF7Wt70lbuKiuEOOe1Wd60Y5mbpYdiiOwaL_1SBCdMmR9TYspKtyyJy48XABl7-Lt/s320/20221207_201011.mp4"/></a></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdrrppkUSavYMZCBe2HGy_kxurw6tbpZNtlEoG2tDs9atzxC6N-08yuCkXokqgCGE6-Ds0xsWffDkgbRkgJpKeUvJPd0l-SQW-ybwUU94VABj3toDr2zRuSw-pm4kq7PO984j8/s1920/20221207_200146.mp4" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" height="320" data-original-height="1920" data-original-width="1080" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdrrppkUSavYMZCBe2HGy_kxurw6tbpZNtlEoG2tDs9atzxC6N-08yuCkXokqgCGE6-Ds0xsWffDkgbRkgJpKeUvJPd0l-SQW-ybwUU94VABj3toDr2zRuSw-pm4kq7PO984j8/s320/20221207_200146.mp4"/></a></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFTo-304xwcyqSk8TuSupo6znmyF1Ss91tXmetFNvlBiyKlGu04u5-se3WTGpFqrm98fqjXAZznfRpZqJVFBooxfuN-2MKi57JIKKnZ-lnZu2bZHBQXDOME6Ii6ECI1fx1Cth1oU4PaNrLFFDTcAHWqRTMJzMbAucSqLn5PAaMFT_ZXqN6Sg/s4000/20221207_195054.jpg" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="320" data-original-height="3000" data-original-width="4000" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFTo-304xwcyqSk8TuSupo6znmyF1Ss91tXmetFNvlBiyKlGu04u5-se3WTGpFqrm98fqjXAZznfRpZqJVFBooxfuN-2MKi57JIKKnZ-lnZu2bZHBQXDOME6Ii6ECI1fx1Cth1oU4PaNrLFFDTcAHWqRTMJzMbAucSqLn5PAaMFT_ZXqN6Sg/s320/20221207_195054.jpg"/></a></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQDSJMkXvamnhAnVL6QyCNgox8EYfSf1uXr2hY1c9SG-WU0N0cniNWlFqUyuq4d3whASvoWB6B35tigFnqvGubaAGlH1hlKCMAIc4Fcam8B0b8n9U2XQ2C1BIFAGnrsZzmCmO28C7lLKUoaLyksu5ACI0FiydDbAtxR1ousWBpzpjDXFtvZw/s4000/20221207_195043.jpg" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" height="320" data-original-height="4000" data-original-width="3000" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQDSJMkXvamnhAnVL6QyCNgox8EYfSf1uXr2hY1c9SG-WU0N0cniNWlFqUyuq4d3whASvoWB6B35tigFnqvGubaAGlH1hlKCMAIc4Fcam8B0b8n9U2XQ2C1BIFAGnrsZzmCmO28C7lLKUoaLyksu5ACI0FiydDbAtxR1ousWBpzpjDXFtvZw/s320/20221207_195043.jpg"/></a></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMV0VImn1dQX8F4rZcEaThDfPA9u9c4zkjykmWr0hpVbb2UgPckJIE7BHPrjnErIDpeDgbKP2xO3XKAHp0ZQzdphrFHGBgJo7MhivtSAKg63EvP-msLbiZ9vU0Z8XRgb7ypsn2jKqQo5FNW7lxP8VB7wajmB5gPGzpgrZ740I4nrCuDCosAQ/s4000/20221207_192117.jpg" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="320" data-original-height="3000" data-original-width="4000" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMV0VImn1dQX8F4rZcEaThDfPA9u9c4zkjykmWr0hpVbb2UgPckJIE7BHPrjnErIDpeDgbKP2xO3XKAHp0ZQzdphrFHGBgJo7MhivtSAKg63EvP-msLbiZ9vU0Z8XRgb7ypsn2jKqQo5FNW7lxP8VB7wajmB5gPGzpgrZ740I4nrCuDCosAQ/s320/20221207_192117.jpg"/></a></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2jH2YgqXvB68UYHrul_1mgdkkKF1TPXbhIXR4hGvkKcmKrZCbX8Ujvz4-PHpBtJdWMXTXGMM-Bb5f9N5Ua3T1oQuwENMw6mkiRie9rAZWHy36IGK7ftqhnGQFAvAWbq86A-rH6Y3_5GGIfXHxcdjwuWMcuySMxFDOOi-y9X_XmtB82pdB7Q/s4000/20221207_191851.jpg" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="320" data-original-height="3000" data-original-width="4000" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2jH2YgqXvB68UYHrul_1mgdkkKF1TPXbhIXR4hGvkKcmKrZCbX8Ujvz4-PHpBtJdWMXTXGMM-Bb5f9N5Ua3T1oQuwENMw6mkiRie9rAZWHy36IGK7ftqhnGQFAvAWbq86A-rH6Y3_5GGIfXHxcdjwuWMcuySMxFDOOi-y9X_XmtB82pdB7Q/s320/20221207_191851.jpg"/></a></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiztzc44b2qFpZBcBQtOZIyz_yAwPwtMDgJNi8dOxhaqQZN7z5v_MW0bB6yXxZSkT0whM-HwgCEW61zgibrBLfU3jY-7_584cJZ_tV2PsDYQPusJLr67scum9OTJE3J3C_3LT0LmA_PrZwm_AFTD-JcVBHvZLrf-ASQbv8JiQbQAFOk4bXpIg/s4000/20221207_191847.jpg" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" width="320" data-original-height="3000" data-original-width="4000" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiztzc44b2qFpZBcBQtOZIyz_yAwPwtMDgJNi8dOxhaqQZN7z5v_MW0bB6yXxZSkT0whM-HwgCEW61zgibrBLfU3jY-7_584cJZ_tV2PsDYQPusJLr67scum9OTJE3J3C_3LT0LmA_PrZwm_AFTD-JcVBHvZLrf-ASQbv8JiQbQAFOk4bXpIg/s320/20221207_191847.jpg"/></a></div><div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMHD7MdS2Woql0S5tSqL2JGREsY96Qu5JFmVymDon4gchBD7mR5Y35KB1yDsDFQv2-RgwLi1tvXYDw3u7w2KeCTx_LlraQoai--3NFqNc_g15R-D_bi-QFwCl_K9a4eUnb19VLU7qCx3VHqAZFXo5goQuyDI8BE11dekn87ccMLEkX6S28rw/s4000/20221207_191818.jpg" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" height="320" data-original-height="4000" data-original-width="3000" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMHD7MdS2Woql0S5tSqL2JGREsY96Qu5JFmVymDon4gchBD7mR5Y35KB1yDsDFQv2-RgwLi1tvXYDw3u7w2KeCTx_LlraQoai--3NFqNc_g15R-D_bi-QFwCl_K9a4eUnb19VLU7qCx3VHqAZFXo5goQuyDI8BE11dekn87ccMLEkX6S28rw/s320/20221207_191818.jpg"/></a></div>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-9151950352738537752016-12-21T22:23:00.003+00:002016-12-21T22:25:41.014+00:00Get Ready for Launch: How AAA Games Do ItI was a speaker at the Game Developers Conference 2015 and the video has now been opened up to the public on <a href="https://youtu.be/npwAIFzLK7w">YouTube</a>.<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="180" src="https://www.youtube.com/embed/npwAIFzLK7w" width="320"></iframe>
<br />
<br />
I was explaining how some of EA's biggest titles plan their projects out, sharing recommended materials to prepare for launch, best practices to adopt throughout production, and techniques to best prepare your team for triaging issues in the live launch window.<br />
<br />
Happy to try and answer questions to anyone that asks.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-69074992144067442082016-09-14T20:38:00.001+01:002016-09-14T20:38:44.214+01:00Using a Phone as a PC VR HeadsetI've been toying with a few different options for using a mobile phone in a VR viewer as a PC HMD (Head Mounted Display.) Essentially this is a cheap way of trying VR on a PC without investing in an Oculus Rift, HTC Vive, OSVR HDK, etc. Honestly, the results aren't great so far and nowhere near the level of using one of those dedicated devices. Still, if you want to give it a try, this is what I have found. If you know of others, be sure to let me know via the comments, Twitter, etc.<br />
<br />
I was trying this on an older laptop, (i7-3612QM, 16GB RAM, Win 10 64-bit, NVIDIA GT 640M,) using an iPhone 6S in a Google Cardboard based case, ideally using a USB cable but otherwise over a corporate WiFi network since I was trying this at lunch time at work. I'll see if I can get an Android phone to try out some more options and perhaps give it a go from my newer MacBook Pro too, (if I can get a copy of Windows on it since I didn't see any options for OSX users yet,) then update here.<br />
<br />
Generally the setup involves running a server application on your PC, running a client application on your phone, adjusting some settings to get the image displaying well and enabling head tracking as mouse input if you want to, then running a game or app in windowed mode. The server app then sends the images to the client app while the client optionally sends back head movements as mouse input back to the PC. You can also enable image duplication, (i.e. left and right eye images,) for apps that don't have native VR support. I was having to do this since my PC, (really the laptop's graphics card,) wasn't powerful enough to run a real VR app to test with, so I was trying GoldenEye: Source and some simple "2D" apps like Notepad. This essentially made it look like a floating TV screen.<br />
<br />
<table border="1">
<tbody>
<tr>
<td><b>Name</b></td>
<td><b>iOS</b></td>
<td><b>Android</b></td>
<td><b>Windows</b></td>
<td><b>OSX</b></td>
<td><b>USB</b></td>
<td><b>WiFi</b></td>
<td><b>Comments</b></td>
</tr>
<tr>
<td><a href="http://kinovr.kinoni.com/">KinoVR</a></td>
<td>Yes</td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
<td>Pretty slick, but kept dropping the connection over WiFi. See <a href="http://kinoconsole.kinoni.com/">KinoConsole</a> as an alternative with WinPhone support, although it doesn't have VR support built in.</td>
</tr>
<tr>
<td><a href="http://trinusvr.com/">TrinusVR</a></td>
<td>Yes</td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
<td>Couldn't get the USB connection working, probably because of Apple restrictions.</td>
</tr>
<tr>
<td><a href="http://intugame.com/get-intugame-vr/">Intugame VR</a></td>
<td>Yes</td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>No</td>
<td>Yes</td>
<td>Also supports GearVR. Couldn't get this to connect over WiFi.</td>
</tr>
<tr>
<td><a href="http://gagagu.de/">GaGaGu VR Streamer</a></td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>No</td>
<td>No</td>
<td>Yes</td>
<td>Looks like just a side project. Couldn't get it to connect. Additional setup needed using OpenTracker for head movement.</td>
</tr>
<tr>
<td><a href="https://riftcat.com/vridge">Riftcat VRidge</a></td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
<td>Looks good, but didn't try this yet.</td>
</tr>
<tr>
<td><a href="http://www.swatterco.com/vr_streamer.php">SwatterCo VR Streamer</a></td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
<td>No</td>
<td>Yes</td>
<td>Yes</td>
<td>Didn't try this yet.</td>
</tr>
</tbody></table>
Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com2tag:blogger.com,1999:blog-5603118.post-79817520900049456192016-08-01T20:47:00.003+01:002016-08-05T06:30:44.740+01:00VR Teleportation Mechanic<b>Update 2:</b> I just posted my "View Marker VR Locomotion Demo" as a video on YouTube: <a href="https://youtu.be/ou8TKis23rc">https://youtu.be/ou8TKis23rc</a><br />
<br />
<b>Update:</b> I have started to prototype this out and have shared the code here: <a href="https://github.com/ashleydb/locomotion-vr-tests">https://github.com/ashleydb/locomotion-vr-tests</a><br />
<br />
Here is some quick programmer art of a virtual reality locomotion idea I had back in May.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi_UmiZAYNoe2l49tzDATgGWLCs5_ja4Ci_VbDCCEI02noFa_fcdPoh14fhmOS9h1hZYf06F7gN7mWcpwFPN4cR2Ww7wc5i8cs7szTI9_BqJ6AGL8lEXoD7OBhAY46eduXNiJm/s1600/MarkerViewTeleport.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="156" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi_UmiZAYNoe2l49tzDATgGWLCs5_ja4Ci_VbDCCEI02noFa_fcdPoh14fhmOS9h1hZYf06F7gN7mWcpwFPN4cR2Ww7wc5i8cs7szTI9_BqJ6AGL8lEXoD7OBhAY46eduXNiJm/s320/MarkerViewTeleport.jpg" width="320" /></a></div>
<br />
Essentially there are two actions the player takes. One is to place a marker in the world, (could be a physical throw, more likely just a point and click.) In the image above, this is the orange ball called the View Marker. The second action is to trigger the teleport to some other spot, (again, likely to just be a point and click.) This is the purple line above. The idea is that when you reappear after teleporting you will be facing in the direction of your view marker, (at least on the X/Z plane.) You could then use this to essentially circle strafe an object/character in a game.<br />
<span id="goog_11379383"></span><span id="goog_11379384"></span><br />
<span id="goog_11379383">I would love to get my hands on a Vive or similar to be able to test this idea out. Maybe it is more disorienting than I imagine, but if you always know what direction you will be facing then it seems like this could be a very simple idea that could boil down to one or two buttons, (depending on if you want to separate the view marker placement and the teleportation action.)</span>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-65589547803086742712016-08-01T20:09:00.002+01:002016-08-01T20:11:18.398+01:00Mr. Robot VRThere was a recent <a href="http://www.roadtovr.com/mr-robot-360-experience-streaming-major-htc-vive-oculus-riftr-vr-headsets-limited-time/">VR video marketing campaign for the TV show Mr. Robot</a>, from the USA Network, that I thought was interesting. I have never seen the show, but wanted to try this out since it was a somewhat unique campaign in VR in that the content would only be available during a limited time window. Here is a quick summary.<br />
<br />It was Thursday 21-July 10:45am PT. You needed to install the Within app, (I'm using an iPhone 6S with a Google Cardboard style case.) In there was a tile for the Mr. Robot episode. From there you could preload the data the day before, a 1.1GB download. There was a countdown until 10:45am PT.<br /><br />At that time I got a push notification on my phone that the episode was available to watch. Open the app, click the Mr Robot tile and you could see a 30 min countdown, which I assume was the only time could could actually launch the show.<br /><br />
So I watched it. Took about 10 mins. As I said I've not see the show, so I had no context, but it was kinda interesting. You are placed pretty close to the characters, they move around the scene a bit. I was sat in a swivel chair so I was able to follow them around me the few times they walked behind but that wasn't strictly necessary. They typically stayed within the main FOV in front of you, but your attention was drawn to the sides to some degree, (e.g. door knocking, light flashing, etc.)<br /><br />Once it was done I was back at the Within home screen briefly, but the app appeared to crash. I reopened, click Mr. Robot again and was told the episode has self destructed. So not just a timed experience, but a 1 time per device experience it seems, (although I wonder if I could quickly delete and reinstall the app to get a new IDFV and get around it, since I've not setup any kind of account with Within.)<br /><br />I wasn't sure if it had cleared the data off my phone, but checking my storage space usage for the Within app it looks like it did.<br />
<br />
<a href="http://uploadvr.com/mr-robot-vr-experience-may-return-week/">Note that this content may be coming back and not so limited after all...</a>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-89827552351230730272016-07-22T22:51:00.000+01:002016-08-01T20:11:18.403+01:00VR Case for iPhone 6S Google Cardboard QR CodeA couple of months ago I ordered a <a href="http://amzn.to/2a6uIoP">VR Case for my iPhone 6S from Amazon</a>. This meant my I always had a Google VR Cardboard viewer with me at all times for me to show off my demos or try new content. I was pretty impressed, (in fact, I'll paste my Amazon review below,) but it bugged me that there wasn't a QR code to properly align the images when I used it. So, I just fixed that and the results are incredible vs. the default settings I was using in most apps:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdx0j09Gjl9P3zBiIHq5Q4hsRXXflBgHMZmeHcw40061zAn6dolhC89yhduHGhTG-eOCEhgOiF-X7PFmoaHs6hosk78DzuH4_iychCYU3PicZZdpbnFv7nQxGduFnJBHpeIvvm/s1600/qr_viewer_profile.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdx0j09Gjl9P3zBiIHq5Q4hsRXXflBgHMZmeHcw40061zAn6dolhC89yhduHGhTG-eOCEhgOiF-X7PFmoaHs6hosk78DzuH4_iychCYU3PicZZdpbnFv7nQxGduFnJBHpeIvvm/s1600/qr_viewer_profile.png" /></a></div>
<br />
Here is how I did it for anyone that wants to do the same, (e.g. for the 6S Plus version of the case):<br />
<ul>
<li>Google offer this tool for viewer manufacturers:</li>
<ul>
<li><a href="https://vr.google.com/cardboard/viewerprofilegenerator/">https://vr.google.com/cardboard/viewerprofilegenerator/</a></li>
<li>Note that I had to use Chrome in order to get the QR code at the end, (Firefox setup worked but produced a blank QR code.) </li>
</ul>
<li>You pair your phone via a URL displayed on that page.</li>
<ul>
<li>I tried Chrome for iOS but it didn't seem to work, so I went with Safari which worked just fine. </li>
</ul>
<li>Since this is a non-Android device there is a pop-up asking for the display density. The iPhone 6S screen is 326ppi.</li>
<li>These are the settings I used:</li>
<ul>
<li>Company: VR Case</li>
<li>Product: VR Case for iPhone 6/6S</li>
<li>Button Type: Touch</li>
<li>Screen to Lens Distance: 51mm</li>
<li>Inter-lens Distance: 53mm</li>
<li>Screen vertical alignment: Top</li>
<li>Tray to lens-center distance: 39mm</li>
<li>Distortion coefficients: K1 = 0.54, K2 = 0.86</li>
</ul>
</ul>
Supposedly <a href="http://google.com/cardboard/cfg?p=CgdWUiBDYXNlEhdWUiBDYXNlIGZvciBpUGhvbmUgNi82Ux1g5VA9JYcWWT0qEAAASEIAAEhCAABIQgAASEJYAjV3vh89OghxPQo_9ihcP1AAYAI">these settings are saved here</a>, but the link doesn't work for me, just taking me to the Cardboard homepage.<br />
<br />
Feel free to print out the code and keep a copy in your wallet, or behind the lenses or something.<br />
<br />
As a bonus, here is my case review:<br />
<br />
<i>Bought this for my iPhone 6S as a replacement for a standard slim case.
Really this is two products in one; a phone case and a Google
Cardboard-like mobile VR viewer for iPhone. As such, I'll review it for
both functions.<br /><br />As a phone case it is pretty chunky; it doubles
the thickness of the phone. It looks like it would provide decent
protection to the phone from drops on the back and sides, but the top,
bottom and front are pretty exposed. I would have liked to have seen the
edges fold further around the corners onto the face of the phone to add
more protection there and allow me to place my phone face down, when
I'm in a meeting for example, without the screen touching the table. The
hinge on the right makes it harder to hold and the volume & power
buttons are harder to activate.<br /><br />As a VR viewer I was surprised
how well it worked actually. I tried a few cardboard demos and it worked
just fine in a bright room. There is no trigger button, but you can
touch the screen directly, so that was ok. The lens section doesn't lock
in place when open, so you need to be a bit careful to not lean on it
too hard, but stay close enough to get a good view of the screen. But it
is functional and the point of it for me is to always have a cardboard
viewer with me to show off some demos, while also having a fairly unique
looking viewer to impress with, both of which I think this case does.
The other added benefit is that since the screen is exposed it is much
easier to do testing while developing VR content, since you can easily
unlock the phone between builds, etc. without having to take it in/out
of the Cardboard.<br /><br />Overall the materials seem pretty good, with a
matte-rubbery grip. The matte-silver coloured plastic areas feel a bit
cheaper, with the lens covers having some scratches and the trigger
release buttons not sitting flush when the lenses are locked in place on
the back of the case. The lens cover buttons also add a tiny bit more
thickness to the device, would may hve been better solved by putting
them on the side of the lens holder.<br /><br />To sum up, this isn't a
great case, but is a pretty good viewer. Maybe not for everyday use, but
great in the right circumstances, (like during development or going to a
VR meet-up.) Still, I'll give it a try as my main case for a while and
see how it lasts. There are some improvements that could be made and
perhaps there is a more expensive alternative that does that, but this
was less than $12, so I think the value is good.</i><br />
<br />
Turns out I've kept this as my day-to-day case for about six weeks so far. If you are interested, you can <a href="http://amzn.to/29Ul3NR">buy the case now from Amazon</a> and have it in a day!<i><br /></i><br />
Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-14727429797040591832016-07-22T00:38:00.002+01:002016-07-22T00:38:29.617+01:00Learning Android: Installing an APK to the Android Emulator on WindowsI've started to learn some Android development by following a course on Udemy. One of the apps involved using the YouTube API, but I didn't realize at first that the API relies on the YouTube app being installed on the Android device. The Android emulator doesn't come with that, nor the Google Play Store so it is a little bit of a pain to get it setup. However, this is what I figured out:<br />
<ul>
<li>First get the YouTube APK from here: <a href="http://www.apkmirror.com/apk/google-inc/youtube/">http://www.apkmirror.com/apk/google-inc/youtube/</a></li>
<li>I chose the latest release, then picked the 480dpi version for x86. You might want x86_64 depending on how you setup your Android Virtual Device. </li>
<li>You need to use the "adb" command line tool which comes with the Android SDK. To find it, using Android Studio click "File->Settings."</li>
<li>Go to "Appearance & Behavior->System Settings->Android SDK"</li>
<li>Near the top is the "Android SDK Location", e.g. "C:\Users\<username>\AppData\Local\Android\Sdk"</username></li>
<li>Now you can use the Terminal tab in Android Studio and change to the "platform-tools" folder within the SDK directory, e.g.<br />"cd C:\Users\<username>\AppData\Local\Android\sdk\platform-tools"</username></li>
<li>Also copy the YouTube APK to that folder to make the command easier to run.</li>
<li>Then you can run: "adb install youtube.apk"</li>
</ul>
<br />
FWIW I also added some code to my YouTubeActivity.java to make it a little nicer on the user having a problem:<br />
<br />
<span style="font-size: x-small;"><span style="font-family: "Courier New",Courier,monospace;"> @Override<br /> public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {<br /> <span style="color: red;">youTubeInitializationResult.getErrorDialog(YouTubeActivity.this, 0).show();</span><br /> }</span></span><br />
<br />
Although since the Google Play Store isn't installed on the emulator the error dialog isn't as useful as it could be, since it directs you to install the app via a button click, but it at least tells you why the app isn't working.<br />
<br />
I also had a fatal exception after that, without any really useful error, but I hadn't added the INTERNET permission to my app so it all worked after that.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com1tag:blogger.com,1999:blog-5603118.post-14965386857379209932016-02-22T04:43:00.000+00:002016-08-01T20:11:18.395+01:00VR for Beginners: Cardboard, Unity and iOS - Part 2<em><strong>Update 23-May:</strong> Note that the Cardboard SDK has now been replaced with the <a data-mce-href="https://github.com/googlevr/gvr-unity-sdk" href="https://github.com/googlevr/gvr-unity-sdk" rel="nofollow">GoogleVR SDK</a>. In most cases you can simply replace Cardboard with GoogleVR or GVR in the text below. There may be some steps below that are no longer needed, (e.g. some of the XCode steps are already done for you, like disabling Bitcode and including security.framework.)</em><br />
<em> </em> <br />
I <a href="http://blog.hiash.com/2015/04/vr-for-beginners-cardboard-unity-and-ios.html">posted on this subject</a> before, but back then Google didn't officially support iOS with their Cardboard SDK. <a href="https://developers.google.com/cardboard/unity/get-started-ios">That has changed</a>, so things are a little easier now. Yesterday I decided to try it out and figured I'd share what I learned.<br />
<h2>
What I'm going to cover:</h2>
<ul>
<li>I'll point to a simple tutorial to build a quick 3D game. We'll be extending this a little too.</li>
<li>From there we'll convert that game to support VR mode using Cardboard.</li>
<li>We'll add the VR camera.</li>
<li>We'll add some interaction to the scene using gaze and clicks.</li>
<li>We'll add some UI, including HUD and 3D buttons.</li>
<li>We'll add support to switch between regular and VR modes.</li>
<li>Finally, we'll build through XCode to get it running on an iPhone.</li>
<ul>
<li>You could do these steps earlier to try things out on your phone at each stage, but I just used the built-in Unity player in the IDE most of the time since it takes a while to build.</li>
</ul>
</ul>
<h2>
Prerequisites/My setup:</h2>
<ul>
<li>I'm using the latest of everything at time of writing</li>
<li>A Macbook Pro, (El Capitan,) and an iPhone 6S, (9.2.1)</li>
<li>Unity 5.3.2 (<a href="http://unity3d.com/get-unity">Download and install this</a>, making sure to install the iOS features.)</li>
<li>Cardboard SDK v0.6 (<a href="https://developers.google.com/cardboard/unity/download">Download this</a>. We'll add it to our project shortly.)</li>
<li>XCode 7.2.1</li>
</ul>
<h2>
Getting setup and adding a VR camera</h2>
Unity offer a tutorial on their website for absolute beginners to learn about Unity fundamentals while making a very basic 3D game, <i><a href="http://unity3d.com/learn/tutorials/projects/roll-ball-tutorial">Roll-a-ball</a></i>. We'll be building from this, so I highly recommend following each stage of that tutorial if you are a beginner to become familiar with the terminology, interface, game structure, etc. But if you don't want to do that, <a href="https://github.com/ashleydb/Roll-a-Ball-VR">I've uploaded the base project to GitHub, along with the final result from the tutorial below</a>.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNtp_fP2gWUXvmjejJ0U3yJtLdfwaDcyEk_vp8jzFfevaoJ0icQe4JrbkhFzsCP2itSVE0lS_0aU40u7sbrrOi5jYyL74-Xb6g1YwIB0dqcUoWrGPzybavkMIM1Rylf1rfgBX9/s1600/Screen+Shot+2016-02-21+at+8.20.40+PM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="154" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNtp_fP2gWUXvmjejJ0U3yJtLdfwaDcyEk_vp8jzFfevaoJ0icQe4JrbkhFzsCP2itSVE0lS_0aU40u7sbrrOi5jYyL74-Xb6g1YwIB0dqcUoWrGPzybavkMIM1Rylf1rfgBX9/s320/Screen+Shot+2016-02-21+at+8.20.40+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Roll-a-Ball</td></tr>
</tbody></table>
Copy the <i>Roll-a-Ball</i> project folder and name it <i>Roll-a-Ball VR</i>. Open the project in Unity.<br />
Import the Cardboard SDK: Go to <b>Assets</b> > <b>Import Package</b> >
<b>Custom Package</b>. Select the <i>CardboardSDKForUnity</i> unitypackage where you
downloaded it and click <b>Open</b>. Since we are using Unity 5 we can uncheck any items marked <i>Legacy</i>. Notice the Cardboard and Plugins folders are added to your project.<br />
Delete the <i>Main Camera</i> item in your project hierarchy, (note that this means our <i>CameraController</i> script that we wrote as part of the Unity tutorial is no longer used.) Replace your camera by dragging <b>Cardboard > Prefabs > CardboardMain</b> from your project view to the scene hierarchy. Set the position of <i>CardboardMain</i> to <i>(x,y,z)=(0,10,-10)</i> and rotation <i>x=45</i> to get it to the same spot as our old camera. In your hierarchy select <b>CardboardMain > Head > Main Camera</b>, then set <i>Clear Flags = Skybox</i> in the inspector.<br />
Press <b>Play</b>, and you should see the game view showing a stereo rendering of the Roll-a-Ball board. While in play mode, press Alt and move the mouse around to pan
horizontally and vertically to simulate moving your head around. Use Ctrl to
simulate tilting your head from side to side. Your keyboard arrow keys or gamepad directional buttons will still work to move the ball around too.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizIswGCVjFcaoKzdJ7gH4aWNC5sjtwG2zWqEg3x8GB8tp2jJdDNrB9tyVbQL1NkaJCOhS6ShvMvv1JF_36YYZyJlRcYBJ4asvv9eAv1X3Z2RAzN1Q4u9oWNYs0wcSduOPmuhHq/s1600/Screen+Shot+2016-02-21+at+8.24.44+PM.png" style="margin-left: auto; margin-right: auto;"><img border="0" height="154" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizIswGCVjFcaoKzdJ7gH4aWNC5sjtwG2zWqEg3x8GB8tp2jJdDNrB9tyVbQL1NkaJCOhS6ShvMvv1JF_36YYZyJlRcYBJ4asvv9eAv1X3Z2RAzN1Q4u9oWNYs0wcSduOPmuhHq/s320/Screen+Shot+2016-02-21+at+8.24.44+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Roll-a-Ball in VR!</td></tr>
</tbody></table>
<br />
<h2>
Adding Interaction</h2>
We're going to add the ability to interact with the game world by just looking at it. In the hierarchy select the <i>Event System</i> and add a Script component <b>Cardboard > GazeInputModule</b>. Make sure to move this component above any other input components in the inspector, (you can use the cog button next to the component's name.) In our case, we need to move <i>Gaze Input Module</i> up once, above <i>Standalone Input Module</i>. Also in the inspector, check <i>VR Mode Only</i>.<br />
Next select <b>CardboardMain > Head > Main Camera</b> in the hierarchy and add a component <b>Event > PhysicsRayCaster</b>, (note, make sure not to pick a <i>Physics 2D Ray Caster</i>.) This will project rays from the camera into the world so we can detect collisions with the object you are looking at and react.<br />
Now we want something to happen in response to our gaze. We'll do something simple to start with to prove things are working, switching the colour of the ground. In the hierarchy select <b>Ground</b> and add an <b>Event > Event Trigger</b> component. Within that component click the button to <i>Add New Event Type</i>, <i>OnPointerEnter</i>, and set <i>MeshRender.material</i> to <i>Pick Up</i>. Do the same for <i>OnPointerExit</i> to have the material change back to <i>Background</i>.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeO53F6vktWz1t3mBpw3MsQmssAz6lP5MLrLYvoznseBXixRXH6rJnV65nSHUJuyE0vRUS0HteSo5nrXRzGTGQUQZMC7Ri9kaNFUzjewxArISaR7WKU5wcvz0GhSKtIddZvCVs/s1600/Screen+Shot+2016-02-21+at+8.28.29+PM.png" style="margin-left: auto; margin-right: auto;"><img border="0" height="203" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeO53F6vktWz1t3mBpw3MsQmssAz6lP5MLrLYvoznseBXixRXH6rJnV65nSHUJuyE0vRUS0HteSo5nrXRzGTGQUQZMC7Ri9kaNFUzjewxArISaR7WKU5wcvz0GhSKtIddZvCVs/s320/Screen+Shot+2016-02-21+at+8.28.29+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Setting up the Event Trigger</td></tr>
</tbody></table>
<br />
Click play and try looking around. If you have part of the ground in the middle of your view you should notice it change colour. Look away and it should change back. You may notice some flicker. Lets see if we can find out why.<br />
To make it easier to see what we are pointing at we are going to add a reticule to our view. In the project we'll drag <b>Cardboard > Prefabs > UI > CardboardReticule</b> to under <b>CardboardMain > Head > Main Camera</b> in the hierarchy. If you click play again you should notice a white point in the middle of the screen which changes size as it approaches objects. You should also now see that the ground doesn't change colour when we are pointing at some object in the way, (e.g. the player ball or pick ups.)<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglEQ_eP3w8D-nqkFk4GE7U7WzMYzafavCkzjvHhrrquGw-WwYJG3DaGUzfpXzhjkOvwozGlNZiXKyhOq5QaKek4ceyI5kvigz7vlPGUNf579KMNhWWNP0buGaRoX1pPN_HJ9-d/s1600/Screen+Shot+2016-02-21+at+8.29.07+PM.png" style="margin-left: auto; margin-right: auto;"><img border="0" height="154" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglEQ_eP3w8D-nqkFk4GE7U7WzMYzafavCkzjvHhrrquGw-WwYJG3DaGUzfpXzhjkOvwozGlNZiXKyhOq5QaKek4ceyI5kvigz7vlPGUNf579KMNhWWNP0buGaRoX1pPN_HJ9-d/s320/Screen+Shot+2016-02-21+at+8.29.07+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Look at the ground to change the colour</td></tr>
</tbody></table>
<br />
Now let's remove that Event Trigger component so we can add something more useful in a moment.<br />
<h2>
UI in VR</h2>
Where did our UI go from the original tutorial? You may notice it is still displayed at the top left of the screen in the Game view, but we wouldn't see that when wearing our Cardboard device. So we need to make it part of the 3D world. <a href="https://unity3d.com/learn/tutorials/topics/virtual-reality/user-interfaces-vr">Unity have a doc explaining more about this</a>. Select <b>Canvas</b> in the hierarchy and see the <i>Canvas</i> component in the inspector. Set the <i>Render Mode</i> to <i>World Space</i> and set <i>Event Camera</i> to <i>Main Camera</i>. Now in the Scene view if you just zoom out you should see a large rectangle, which is our UI canvas. We need to move it to a more reasonable/useful position. In the inspector set the <i>position</i> to <i>(x,y,z)=(0,2,0)</i>, <i>size</i> to <i>(128,128)</i>, <i>rotation</i> to <i>x=90</i>, <i>scale</i> to <i>(x,y,z)=(0.1,0.1,1)</i>. Select <b>Canvas > Count Text</b> in the hierarchy and change the <i>Anchor Preset</i> from <i>top-left</i> to <i>top-center</i>, (hold <i>Shift</i> and <i>Ctrl</i> when clicking.) Change the <i>Paragraph Alignment</i> to <i>Center</i>. Note I've removed the <i>Win Text</i> from the tutorial and just use the <i>Count Text</i> to show the win message, which you can see in a script a little later in this post.<br />
Click play and you should see the player's score hovering above the game board.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9iScIRXoLUJ5dRdolhunl6xd2nQ4YVgKIpbXQr3gYnVZkaL7nqdYfpyze9vsqz6IKC2XwkawuroRQk4zR38ZhCtMlpGWjHDA-NKphTBK9j68KXFEnheiyDe_A_5dzYDWXnWXm/s1600/Screen+Shot+2016-02-21+at+8.30.24+PM.png" style="margin-left: auto; margin-right: auto;"><img alt="Diegetic UI Image (in-world UI)" border="0" height="154" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9iScIRXoLUJ5dRdolhunl6xd2nQ4YVgKIpbXQr3gYnVZkaL7nqdYfpyze9vsqz6IKC2XwkawuroRQk4zR38ZhCtMlpGWjHDA-NKphTBK9j68KXFEnheiyDe_A_5dzYDWXnWXm/s320/Screen+Shot+2016-02-21+at+8.30.24+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">That text is <i>diegetic</i> UI, (in-world UI,) there at the top</td></tr>
</tbody></table>
For fun, put the <i>Canvas</i> object under <b>CardboardMain > Head</b> in the hierarchy. If you play now you should see that the UI follows the player's gaze, like a HUD. While this is a badly positioned example, it should give you the idea if you wanted to try this again in future. For now, move the <i>Canvas</i> back to the root of the scene hierarchy.<br />
We're going to add a button and some script in order to reset the game board which pops up once the player has collected all of the pick-ups. So select the <i>Canvas</i> and from the main menu click <b>GameObject > UI > Button</b>. Position it somewhere appropriate within the canvas, (I went for a bottom-center anchor preset.) Name this button <i>Play Again Button</i> and set a <i>Highlighted colour</i>. Now click to disable it, (top-left checkbox of the inspector.)<br />
On the <i>Canvas</i> object we'll add a <i>New Script</i> component in C#. Call it <i>GameplayMenu</i>. Very simply, we just need one function here:<br />
<blockquote>
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">// Reset the game and start again<br />
public void PlayAgain () {<br />
UnityEngine.SceneManagement.SceneManager.LoadScene ("MiniGame");<br />
}</span></blockquote>
Save the file and go back to Unity. Select the <i>Play Again Button</i>, set the <i>OnClick</i> event to use the <i>Canvas</i> object and choose the <i>GameplayMenu.PlayAgain()</i> action. If you have an issue finding that method, try clicking elsewhere in the editor and in the main menu click <b>Assets > Open C# Project</b> and try again.<br />
Finally we'll update the <i>PlayerController</i> win code to show the button:<br />
<blockquote>
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">// Reference to a UI element so the player can reset the game<br />
<span style="color: red;">public Button playAgainButton;</span><br />
<br />
void SetCountText() {<br />
if (count == 0) {<br />
countText.text = "Tap ground to move";<br />
} else if (count == 12) {<br />
countText.text = "You Win!";<br />
<span style="color: red;">playAgainButton.gameObject.SetActive (true);</span> // <span style="font-family: "courier new" , "courier" , monospace;">Ad<span style="font-family: "courier new" , "courier" , monospace;">d this line</span></span><br />
} else {<br />
countText.text = "Count: " + count.ToString ();<br />
}<br />
}</span></blockquote>
Be sure to go back to the inspector for the <i>Player</i> object and set the <i>Play Again Button</i> setting to point to the <i>Play Again Button</i> object.<br />
Try playing the app again, collect the pick-ups and see the Play Again Button appear. Try looking at it to see the colour change, then tap it to reset the level.<br />
Note, when I did this I noticed the world would go dark when testing within the Unity editor. To work around this you can click <b>Window > Lighting</b> on the main menu, then in the <i>Lighting</i> dialog box uncheck <b>Other Settings > Auto</b>, then click <i>Build</i>.<br />
<h2>
Bonus Interaction</h2>
We're going to make it so that you can control the game using only the Cardboard device. You'll be able to gaze at a point on the ground, click the button on your Cardboard device and the ball will move towards it. In the <i>PlayerController</i> script:<br />
<blockquote>
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">
// Position that could be passed in from Gaze, Touch, Mouse to move the player towards<br />
<span style="color: red;">private Vector3 moveTowardsPosition;</span><br />
// Only move after a player clicks/taps, not each frame<br />
<span style="color: red;">private bool shouldMove;</span><br />
<br />
// Called on first frame this script is active, (i.e. first frame of game)<br />
void Start() {<br />
rb = GetComponent<rigidbody>();<br />
count = 0;<br />
SetCountText ();<br />
<span style="color: red;">shouldMove = false;</span><br />
}<br />
<br />
// Happens just before Physics calculations<br />
void FixedUpdate() {<br />
// If we got input from clicks, taps or cardboard, move towards it. Otherwise, see if there is keyboard/gamepad input.<br />
<span style="color: red;">if (shouldMove) {<br />
// Get a vector from the player position to the point passed in<br />
Vector3 movement = moveTowardsPosition - gameObject.transform.position;<br />
<br />
// Multiply the input vector by the object's speed, then apply that result as a force to the object to move it<br />
rb.AddForce (movement * speed);<br />
<br />
// Don't do this every frame, only when we've been sent a new position, (e.g. OnClick)<br />
shouldMove = false;<br />
} else {</span><br />
// Get device independent input, e.g. keyboard keys<br />
float moveHorizontal = Input.GetAxis ("Horizontal");<br />
float moveVertical = Input.GetAxis ("Vertical");<br />
<br />
// Make a vector based on that input<br />
Vector3 movement = new Vector3 (moveHorizontal, 0, moveVertical);<br />
// Multiply the input vector by the object's speed, then apply that result as a force to the object to move it<br />
rb.AddForce (movement * speed);<br />
<span style="color: red;">}</span><br />
}<br />
<br />
<span style="color: red;">public void SetMoveTowardsPoint(Vector3 worldPosition) {<br />
moveTowardsPosition = worldPosition;<br />
shouldMove = true;<br />
}</span></rigidbody></span></blockquote>
Select the <i>Ground</i> object and add a <i>New Script</i> component called <i>GroundTriggers</i>. Add this code, which will forward the intersect point of the viewer's ray with the ground plane each time the player clicks their Cardboard device's button.:<br />
<blockquote>
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">public class GroundTriggers : MonoBehaviour<span style="color: red;">, IPointerClickHandler</span> {<br />
<span style="color: red;"> public PlayerController player;<br />
<br />
// Will work for clicks and Cardboard trigger presses<br />
public void OnPointerClick(PointerEventData eventData)<br />
{<br />
player.SetMoveTowardsPoint (eventData.pointerCurrentRaycast.worldPosition);<br />
}</span><br />
}</span></blockquote>
Be sure to set the <i>Player</i> object in the <i>Ground</i> inspector, then try playing again. Look around, point and the ground and press your Cardboard button. To simulate the button press in the Unity editor you can use a mouse click. Note you may want to turn off <i>Raycast Target</i> as an option on the <i>Count Text</i> object so that your rays still reach the ground behind that floating text.<br />
Awesome, we have a complete VR game for Google Cardboard!<br />
<h2>
Toggle VR mode on/off</h2>
But not everyone has a Cardboard device, so what if they still want to play our great game without us having to release a separate version from the original tutorial? Well why not have an option to toggle VR on and off?<br />
Add another <b>GameObject > UI > Canvas</b> to the root of our hierarchy. Name it <i>Canvas - Settings</i> so we can differentiate from our other Canvas object more easily, (perhaps name that <i>Canvas - Gameboard</i>.) Set <i>position (x,y,z)=(0,0,16)</i>, <i>size (128,128)</i>, <i>rotation (x,y,z)=(0,0,0)</i> and <i>scale (x,y,z)=(0.1,0.1,1)</i>. Add a <i>New Script</i> component called CardboardModeManager and add this code:<br />
<blockquote>
<span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;">
using UnityEngine;<br />
using System.Collections;<br />
using UnityEngine.EventSystems;<br />
using System.Collections.Generic;<br />
using UnityEngine.UI;<br />
<br />
public class CardboardModeManager : MonoBehaviour {<br />
<br />
// We need a reference to camera which <br />
// is how we get to the cardboard components.<br />
public GameObject cardboardMain;<br />
<br />
// This is to enable/disable the reticule<br />
private CardboardReticle cardboardReticle;<br />
<br />
public void Start()<br />
{<br />
// Save a flag in the local player preferences to initialize VR mode<br />
// This way when the app is restarted, it is in the mode that was last used.<br />
int doVR = PlayerPrefs.GetInt("VREnabled");<br />
Cardboard.SDK.VRModeEnabled = doVR == 1;<br />
CardboardHead head = cardboardMain.GetComponentInChildren<cardboardhead>();<br />
head.enabled = Cardboard.SDK.VRModeEnabled;<br />
cardboardReticle = cardboardMain.GetComponentInChildren<cardboardreticle>();<br />
cardboardReticle.gameObject.SetActive(Cardboard.SDK.VRModeEnabled);<br />
Cardboard.SDK.TapIsTrigger = true;<br />
}<br />
<br />
// The event handler to call to toggle Cardboard mode.<br />
public void ChangeCardboardMode()<br />
{<br />
CardboardHead head = cardboardMain.GetComponentInChildren<cardboardhead>();<br />
if (Cardboard.SDK.VRModeEnabled) {<br />
// disabling. rotate back to the original rotation.<br />
head.transform.localRotation = Quaternion.identity;<br />
}<br />
Cardboard.SDK.VRModeEnabled = !Cardboard.SDK.VRModeEnabled;<br />
head.enabled = Cardboard.SDK.VRModeEnabled;<br />
cardboardReticle.gameObject.SetActive(Cardboard.SDK.VRModeEnabled);<br />
PlayerPrefs.SetInt("VREnabled", Cardboard.SDK.VRModeEnabled?1:0);<br />
PlayerPrefs.Save();<br />
}<br />
<br />
// The Cardboard SDK can show a back button, (escaspe key<br />
// on keyboard,) which we will use to get out of VR view<br />
void Update () {<br />
if (Cardboard.SDK.BackButtonPressed) {<br />
ChangeCardboardMode();<br />
}<br />
}<br />
}</cardboardhead></cardboardreticle></cardboardhead></span></blockquote>
Make sure you set the <i>CardboardMain</i> value in the new <i>Canvas</i> object's inspector.<br />
Finally, under the <i>Canvas - Settings</i> object add a <i>Button</i> named <i>Toggle VR</i>. Set a <i>highlight</i> colour, set the label <i>text</i> and set the <i>OnClick</i> event to point to the <i>Canvas - Setting</i> object and use <i>CardboardModeManager.ChangeCardboardMode()</i> as the event.<br />
That's it! Try playing again and switching VR mode on/off.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1PSyskbocXoGhsQg_3zlvkasrQsDuD3aL0ZVpzTK1EXdve1LUPxpDvpgJslu9iTiLC9ZPGh-c72cJGgEl-TRiAtQwF1ZsSbbO6LHrPxPuDgWBG1pVXOnbp32_1Vn5X5NPEYAT/s1600/Screen+Shot+2016-02-21+at+8.31.31+PM.png" style="margin-left: auto; margin-right: auto;"><img border="0" height="154" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1PSyskbocXoGhsQg_3zlvkasrQsDuD3aL0ZVpzTK1EXdve1LUPxpDvpgJslu9iTiLC9ZPGh-c72cJGgEl-TRiAtQwF1ZsSbbO6LHrPxPuDgWBG1pVXOnbp32_1Vn5X5NPEYAT/s320/Screen+Shot+2016-02-21+at+8.31.31+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Our Diegetic UI Button</td></tr>
</tbody></table>
<h2>
Building for iOS and playing on your iPhone</h2>
From Unity we need to create an XCode project:<br />
<ol>
<li>Open up the Build Settings by going to <b>File > Build Settings</b>. </li>
<li>Select <b>iOS</b> under <b>Platform</b>. After selecting iOS, click the
<b>Switch Platform</b> button.</li>
<li>Click <b>Player Settings</b> to open the PlayerSettings panel in the Inspector.</li>
<li>In PlayerSettings, at the bottom under Settings for iOS,
click <b>Resolution and Presentation</b> to expand that panel, and set the
<b>Default Orientation</b> to <b>Landscape Left</b>.</li>
<li>Click <b>Other Settings</b> to expand that panel and find the <b>Bundle
Identifier</b> field. Enter a valid package name for your application (such as
com.mycompany.cardboarddemo) </li>
<li>Click <b>Build</b>. This prompts you for a save name, and prepares an XCode project
in the <i>[your Unity project]/[your save name]</i> directory. </li>
</ol>
From XCode we will build the app and put it on your iPhone:<br />
<ol>
<li>Open XCode. From the <b>File > Open...</b> menu, open the XCode project that
you created. It will be a file called <code>Unity-iPhone.xcodeproj</code> inside the
directory you just saved under in the last section.</li>
<li>Select the Unity-iPhone project by clicking on it.</li>
<li>In the project menu bar, click on <b>Build Phases</b> to open that section.</li>
<li>Expand the <b>Link Binary With Libraries</b> list. </li>
<li>At the very bottom of the Link Binary With Libraries list, click the <b>+</b> sign.
This opens a window that says "Choose frameworks and libraries to add:".</li>
<li>Type <code>Security</code> into the search box. When <code>Security.framework</code> appears, double-click on it to add it to the libraries.<code></code></li>
<li>Disable Bitcode by setting <b>Build Settings > Build Options > Enable BitCode</b> to <b>No</b>.</li>
<li>Now run the project, either by clicking the play button, or by going to
<b>Product > Run</b>.</li>
</ol>
If all went well, you should see a "Build Succeeded" and your game launches
on your iPhone!<br />
<br />
Hope that helped someone!<br />
Ash Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com2tag:blogger.com,1999:blog-5603118.post-51614545897934553362015-10-07T15:56:00.002+01:002015-10-07T15:56:54.939+01:00Web Scraping with RubyI was learning a little on how to use Ruby to do some web scraping today, following this article which is admittedly out of date: <a href="http://danwin.com/2010/04/coding-for-journalists-go-from-a-know-nothing-to-web-scraper-in-an-hour-hopefully/">http://danwin.com/2010/04/coding-for-journalists-go-from-a-know-nothing-to-web-scraper-in-an-hour-hopefully/</a><br />
<br />
I had to make a few edits along the way to fix some bugs and thought I would share. Look for "UPDATE" below.<br />
<br />
<pre># --- Get a list of all US Presidents' names, loop through to check for any with last names >6 characters and see if they have died. Calculate the average age for those Presidents ---</pre>
<pre>
</pre>
<pre># open the required libraries
require 'rubygems'
require 'nokogiri'
require 'open-uri'
# Using nokogiri, fetch Wikipedia's list of presidents page</pre>
<pre># UPDATE: Had to use https
list_of_presidents = Nokogiri::HTML(open('https://en.wikipedia.org/wiki/List_of_Presidents_of_the_United_States'))
# Using another nokogiri method, grab the second column (td) from every row (tr), and from those, grab the first hyperlink (a) which should also contain the President's name</pre>
<pre><pre># UPDATE: Had to modify XPath to match Wikipedia's current layout</pre>
an_array_of_links = list_of_presidents.xpath("//tr/td[2]/b/a[1]")
</pre>
<pre><pre># UPDATE: I changed the output a little, so used a few different variables</pre>
long_name_count = 0
dead_prez_count = 0
alive_prez_count = 0
total_age = 0
an_array_of_links.each do |link_to_test|
# This above statement can be read as: for each element in an_array_of_links, do
# the following code (until the end line)
# And as you go through each element, the variable use to reference the element will be named "link_to_test"
# break up the name string by spaces, then get the last element in the resulting array to get the last name
last_name = link_to_test.content.split(' ')[-1]
if last_name.length > 6
long_name_count += 1
the_link_to_the_presidents_page = link_to_test["href"]
# The value of href is going to be something like "/wiki/George_Washington".
# That's an address relative to the Wikipedia site
# so we need to prepend "https://en.wikipedia.org" to have a valid address...</pre>
<pre><pre> # UPDATE: Had to use https</pre>
the_link_to_the_presidents_page = "https://en.wikipedia.org"+the_link_to_the_presidents_page
# now let's fetch that page
the_presidents_page = Nokogiri::HTML(open(the_link_to_the_presidents_page))
# check if they died</pre>
<pre><pre> # UPDATE: Had to change this to remove .content for cases where there is no death_date, then change the the 'if' immediately below</pre>
death_date = the_presidents_page.xpath("//th[contains(text(), 'Died')]/following-sibling::*")[0]</pre>
<pre> if death_date && death_date.content && death_date.content[0]
# check what their age was</pre>
<pre><pre> # UPDATE: Had to change this to add .content and add * to the regex to get all digits of the President's age</pre>
age_at_death = death_date.content.match(/aged.+?([0-9]*)/)[1]
if age_at_death
# we only get here if there was a "Died" table cell AND a text pattern similar to: "aged XX"
puts "Age of #{link_to_test.content} is: #{age_at_death}"</pre>
<pre><pre> # UPDATE: Had to change to age_at_death.to_i to use the full age, not just a single digit</pre>
total_age += age_at_death.to_i # technically, age_at_death is a String. to_i will make it a Number so we can safely add it to total_age
dead_prez_count += 1
end
else
puts "#{link_to_test.content} is still alive"
alive_prez_count += 1
end
end
end
puts "Total Presidents: #{an_array_of_links.count}"
puts "...with Surname >6 characters: #{long_name_count}, (#{an_array_of_links.count - long_name_count} had short names)"
puts "...that have died: #{dead_prez_count}, (#{alive_prez_count} are still alive)"
puts "Of dead presidents, their total age is #{total_age} and average age is #{total_age / dead_prez_count}"
# OK, we're at the end of the each loop. Go back to the top
</pre>
Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-79901343998230062572015-04-21T21:12:00.000+01:002016-08-01T20:11:18.400+01:00VR for Beginners: Cardboard, Unity and iOSOver three years since my last post, so I better make this a useful one!<br />
<br />
I've been playing around with various bits of tech recently and wanted to capture some of the finer points as a reminder for myself later and for anyone else out there that is interested. This one will be about VR.<br />
<br />
VR & AR appear to be coming back in a big way and could be important "platforms" to consider for all kinds of development in the near future. Since things are taking off but still pretty new, there are a lot of options to look into in terms of devices and SDK's, not a lot of standards, etc. But what if you just want to get started working on some VR content to see how it works, learn some lessons, etc.? What is the cheapest and easiest way to do that? I decided the best option for me was to try using <a href="http://www.google.com/get/cardboard/">Google Cardboard</a>, weighing up these points:<br />
<br />
<b>Pros:</b><br />
<ol>
<li>Cardboard kits are cheap. In fact, I got mine for free at GDC 2015.</li>
<li>Google provide <a href="https://developers.google.com/cardboard/">SDK's to build Cardboard apps for Android</a>, including a Unity engine version.</li>
<li>There is now a <a href="http://unity3d.com/">free version of Unity</a> available. </li>
<li>Mobile devices are commonplace and are already an established platform for games.</li>
<li>There isn't much VR content out there right now for mobile devices.</li>
</ol>
<br />
<b>Cons:</b><br />
<ol>
<li>Google's SDK's only work with Android devices.</li>
<li>I have an iPhone right now.</li>
<li>I don't want to spend time writing a game engine, but I don't know Unity.</li>
<li>Cardboard isn't as good as more powerful devices, such as the <a href="https://developer.oculus.com/">Oculus</a> Rift, so I would need to limit the scope of my demos and learnings, but my time is limited anyway. </li>
</ol>
So, what was I going to try and do? I wanted to use my existing setup as much as possible and add any extra stuff I needed for free so I could rapidly learn some new skills through experimentation. I wanted to end up with a demo I could have on my phone to show people and maybe put it up on the App Store. What was the list of ingredients I was starting with?<br />
<ol>
<li>Google Cardboard kit - Already had this for free, luckily.</li>
<li>Unity engine 5.0.1f1 - I was <i>just </i>starting to experiment with this at work anyway. Not a tool I was familiar with, but it had to be easier to learn rather than spend time building my own engine. Note that v5 is pretty new though.</li>
<li>Mac with XCode 6.3 - Just making sure I had the latest version installed.</li>
<li>iPhone 5S - My current mobile phone.</li>
</ol>
What were the blockers?<br />
<ol>
<li>Learning Unity. </li>
<li>Finding a Cardboard SDK for Unity (v5) that supported iOS devices.</li>
<li>Starting to build content.</li>
</ol>
<b>1. Learning Unity</b><br />
I started out just doing a simple <a href="http://anwell.me/articles/unity3d-flappy-bird/">2D Flappy Birds tutorial</a> to get some familiarity with the toolset, which only takes about 30 mins, plus some extra time to try and do a couple of follow on improvements. It was a little out of date because it was based on Unity 4, but no big deal. I was doing this to help me at work anyway so I would understand what the tools were like when speaking to other engineers that use it in our games.<br />
Then I started looking at a 3D tutorial on the Unity site, <a href="http://unity3d.com/learn/tutorials/projects/roll-a-ball/introduction">Roll-a-ball.</a><br />
<br />
<b>2. Finding a Cardboard SDK for Unity that supported iOS devices</b><br />
As mentioned, the Google SDK's only support Android devices, but I have an iPhone 5S. So what alternatives did I dig up?<br />
<ol>
<li><a href="http://www.durovis.com/sdk.html">Durovis Dive</a> is another mobile headset adapter; essentially a more premium version of a cardboard device. They have an SDK that supports both iOS and Android handsets from Unity. Unfortunately this is for Unity 4 and I couldn't get it working quickly with my setup. I may get things running in the Unity emulator, but try to export to XCode and things wouldn't build.</li>
<li>There are other devices out there that have SDK's too, but I couldn't be sure they would work with my setup.</li>
<li>While looking through the Durovis forums I noticed <a href="https://github.com/AbandonedCart/OpenDiveUnity">some GitHub projects</a> to improve their SDK. They didn't quite fit what I was looking for, since they were still based on the Durovis SDK that wasn't working for me, so I kept looking.</li>
<li>There have been other attempts at porting <a href="http://challengepost.com/software/cardboard-for-ios">Cardboard to iOS</a>, but they don't necessarily include Unity support. </li>
<li>Eventually I came across three promising GitHub projects:</li>
<ol>
<li><a href="https://github.com/equinox2k/CardboardVR-iOS">CardboardVR-iOS from equinox2k</a> : A port of the Cardboard SDK to iOS, but without the Unity version.</li>
<li><a href="https://github.com/JScott/CardboardSDK-Unity">CardboardSDK-Unity from JScott</a> : An updated version of the Cardboard SDK for Unity that adds more input controls, (e.g. being able to hold the magnet trigger down.) But, only for Android.</li>
<li><a href="https://github.com/rsanchezsaez/cardboardsdk-ios">CardboardSDK-iOS from rsanchezsaez</a> : A port of the Cardboard SDK to iOS, including the Unity version. Doesn't have 100% parity, since there isn't input for Unity at this point, but a great start.</li>
</ol>
</ol>
I ended up getting the demos included with <a href="https://github.com/rsanchezsaez/cardboardsdk-ios">CardboardSDK-iOS</a> working on my iPhone last night. It is based on a slightly older version of Unity, so I had to rebuild the XCode project, but the instructions in the ReadMe helped, along with <a href="https://github.com/rsanchezsaez/CardboardSDK-iOS/issues/5">this issue</a>. It is also based on a slightly older version of the Cardboard SDK, but is good enough for me to get started.<br />
<br />
Now I'm wondering if there is a way to combine this with <a href="https://github.com/JScott/CardboardSDK-Unity">CardboardSDK-Unity</a> to get the best of both. I'm not really familiar with Git yet, (I've used other source control systems,) so I'll need to figure that out to see if I can contribute back in some way.<br />
<br />
<b>3. Starting to build content</b><br />
Now to start building stuff! First I'm going to finish up the Roll-a-ball tutorial and then add a VR camera to it. If I get that working, I can share here. I think the main challenge is going to be figuring out how input should work, but that is the point in trying to learn with these experiments! Then I've got an idea for a new, more in depth project that should work within the limitations of a cardboard device, (player in a stationary position, able to look around them with limited input,) but more on that as I get to it.<br />
<br />
After that, let's see what happens. Maybe it means getting a more powerful device such as Rift or Hive. Maybe it means looking into what Razer are doing with their open platform.<br />
<br />
Anyway, I hope that helps someone out there!Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-30731077484504377642012-01-08T21:32:00.000+00:002012-01-08T21:32:35.142+00:00<p>It seems to be an annual thing for me to come back and write a new post here! The big news this time is that I'm moving back to the <b>US</b> in just two weeks. I'll be working back at EA in Redwood City, CA, still as an <b>Origin Developer Relations Account Manager</b> but now working on US games rather than <b>EU</b> ones. We've announced some but not others, so I'll keep all it under wraps for now. Trust me though, there are some pretty exciting projects in there!</p>
<p>Stuff I've been working on for the past year include the launches of <b>Origin</b>, (as you can probably tell from the name change of our team,) and <b>Battlefield 3</b>. On the side I ported <b>Rack 'Em</b> to the <b>PlayBook</b> using <b>WebWorks and HTML5</b>. It's free, so if you have a PlayBook you can grab it from <a href="http://appworld.blackberry.com/webstore/content/26764?lang=en">BlackBerry App World</a>.</p>
<p>My brother was living in the <b>UK</b> last year but has now moved back to <b>Brisbane</b> and launched his T-Shirt site, <a href="http://www.cottonrobot.com">Cotton Robot</a>. I've been meaning to help with the website, but only done about half of the work unfortunately. Still, go there and buy a shirt!</p>
<p>Other things that happened last year include a visit to the <b>carnival in Brazil</b>, (can't believe that was less than a year ago!) watching <b>Arsenal lose the Carling Cup Final</b>, an away weekend in Manchester to watch <b>Bolton vs. West Ham</b>, a trip through the <b>Florida Keys, the Everglades & NYC</b>, seeing <b>Take That at Wembley</b> and <b>Foo Fighters at the MK Bowl</b>, an <b>Orlando</b> trip, a <b>Coopers 10 year reunion</b>, a tour around <b>Buckingham Palace</b>, some <b>DICE</b> visits, a holiday in <b>Vegas for my Dad's 60th</b>, a <b>supercar racing day</b>, being asked to be <b>Best Man</b> for a friend's wedding this coming Summer and hosting a cracking <b>Leaving/New Years Eve party</b>.</p>
<p>Hopefully this year will be as exciting!</p>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-47651442089836375132012-01-08T20:45:00.002+00:002012-01-16T11:33:38.417+00:00<p>Please help me out! I'm moving back to the US and this stuff won't be making the trip. Wanna buy something?
I'll be updating this page as new items are added or things get sold.
Thanks
Ash</p>
<p><b>For Sale:</b></p>
<ul>
<li>Crock Pot slow cooker: <a href="http://www.gumtree.com/p/for-sale/crock-pot-rival-37401-slow-cooker/94626863">http://www.gumtree.com/p/for-sale/crock-pot-rival-37401-slow-cooker/94626863</a></li>
<li>Shredder: <a href="http://www.gumtree.com/p/for-sale/texet-cc11l-cross-cut-shredder/94627400">http://www.gumtree.com/p/for-sale/texet-cc11l-cross-cut-shredder/94627400</a></li>
<li>TV Unit: <a href="http://www.gumtree.com/p/for-sale/tv-media-unit/94628114">http://www.gumtree.com/p/for-sale/tv-media-unit/94628114</a></li>
<li>CD Rack: <a href="http://www.gumtree.com/p/for-sale/cd-rack-for-80-cds/94630077">http://www.gumtree.com/p/for-sale/cd-rack-for-80-cds/94630077</a></li>
</ul>
<p><b>Sold:</b></p>
<ul>
<li>iPod Dock: <a href="http://www.gumtree.com/p/for-sale/intempo-ids-01br-ipod-dock-stereo-speakers/94264478">http://www.gumtree.com/p/for-sale/intempo-ids-01br-ipod-dock-stereo-speakers/94264478</a></li>
<li>Kenwood Smoothie Maker: <a href="http://www.gumtree.com/p/for-sale/kenwood-new-york-smoothie-sb200-series-silver/94626359">http://www.gumtree.com/p/for-sale/kenwood-new-york-smoothie-sb200-series-silver/94626359</a></li>
<li>Office Furniture: <a href="http://www.gumtree.com/p/for-sale/oak-office-furniture-desk-book-cases-filing-cabinet/94218605">http://www.gumtree.com/p/for-sale/oak-office-furniture-desk-book-cases-filing-cabinet/94218605</a></li>
<li>Samsung 50" Plasma HDTV: <a href="http://www.gumtree.com/p/for-sale/samsung-50-plasma-hdtv/94217277">http://www.gumtree.com/p/for-sale/samsung-50-plasma-hdtv/94217277</a></li>
<li>Samsung DVD-R & Freeview+ PVR: <a href="http://www.gumtree.com/p/for-sale/samsung-dvd-sh871m-freeview-160gb-hard-drive-recorder-and-dvd-recorder/94226487">http://www.gumtree.com/p/for-sale/samsung-dvd-sh871m-freeview-160gb-hard-drive-recorder-and-dvd-recorder/94226487</a></li>
<li>5.1 Surround Sound Speakers: <a href="http://www.gumtree.com/p/for-sale/acoustic-solutions-ds533-51-surround-sound/94223954">http://www.gumtree.com/p/for-sale/acoustic-solutions-ds533-51-surround-sound/94223954</a></li>
<li>DAB Radio & iPod Dock: <a href="http://www.gumtree.com/p/for-sale/intempo-rdi-ipod-speaker-dock-dab-fm-radio/94229425">http://www.gumtree.com/p/for-sale/intempo-rdi-ipod-speaker-dock-dab-fm-radio/94229425</a></li>
<li>DAB Clock Radio & iPod Dock: <a href="http://www.gumtree.com/p/for-sale/technika-cr-109idab-dab-ipod-dock-clock-radio/94268999">http://www.gumtree.com/p/for-sale/technika-cr-109idab-dab-ipod-dock-clock-radio/94268999</a></li>
<li>iPod Dock: <a href="http://www.gumtree.com/p/for-sale/intempo-ids-01br-ipod-dock-stereo-speakers/94264478">http://www.gumtree.com/p/for-sale/intempo-ids-01br-ipod-dock-stereo-speakers/94264478</a></li>
<li>Dyson Vacuum Cleaner: <a href="http://www.gumtree.com/p/for-sale/dyson-dc07-origin-silver-yellow-upright-vacuum-cleaner/94266446">http://www.gumtree.com/p/for-sale/dyson-dc07-origin-silver-yellow-upright-vacuum-cleaner/94266446</a></li>
<li>Morphy Richards Microwave: <a href="http://www.gumtree.com/p/for-sale/morphy-richards-microwave-oven-with-grill-ag820akf-800wcat-e/94224624">http://www.gumtree.com/p/for-sale/morphy-richards-microwave-oven-with-grill-ag820akf-800wcat-e/94224624</a></li>
</ul>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-89286374884293833052011-01-25T23:09:00.000+00:002011-01-25T23:09:14.548+00:00I said I would post some tips, so here we go with "Getting started with Blackberry Playbook WebWorks SDK for Mac OSX." These are just a few things that caught me out when I was getting started, so hopefully this will help you.<br />
<br />
As a bit of background, I'm more familiar with C++ coding on Windows with Visual Studio and more recently using XCode on OSX for iOS apps, so Blackberry and WebWorks was all new to me. I've done web development on both Windows and Mac before, so WebWorks seemed like a good way to get started.<br />
<br />
You should follow the <a href="http://docs.blackberry.com/23978">getting started guide on the Blackberry website</a>. It makes it pretty simple, but there are a few things that took me a few tries to get right.<br />
<br />
First, I needed to install the Adobe Air SDK 2.5. That just means unzipping <a href="http://www.adobe.com/go/getairsdk">a download from the Adobe website</a>, but it needs to be unzipped to a path without a space in it. You then choose that folder in the WebWorks installer, which asks where the Air SDK is installed. I kept getting an error along the lines of "incorrect Adobe Air SDK installed" because I had a space in the path at first.<br />
<br />
There isn't much to the WebWorks SDK itself, (although there are <a href="http://www.blackberry.com/developers/docs/webworks/api/playbook/">a few calls you might need</a>, such as detecting a wireless data connection.) You can just make any HTML5 web page in the tool of your choice and it should hopefully work. The main thing you need the SDK for is the compiler, "bbwp."<br />
<br />
When compiling apps you need to run bbwp. I was using Terminal to do that and it is much easier to do after adding the path to the bbwp folder to the $PATH environment variable. To do that on OSX you run<br />
<blockquote>sudo vi /etc/paths</blockquote>in Terminal and add your path, (e.g. "/Users/Ash/bbwp".)<br />
You can then open a folder in Terminal which contains a zip file of the app's source and run "bbwp my.zip" which will create "<folder>/bin/my.bar".<br />
<br />
Then you need to deploy the .bar file to the Playbook simulator. Here is an example command to deploy a compiled bar:<br />
<blockquote>./blackberry-deploy -installApp -password ***** -device ***.***.***.*** -package /Users/Ash/Downloads/Blackberry/bin/sketchPadStandard.bar</blockquote>In that example I haven't added the blackberry-deploy executable's path to $PATH, so I had to add ./ to the beginning and run it from:<br />
<blockquote>/Users/Ash/bbwp/blackberry-tablet-sdk/bin</blockquote>You get the device's IP address and set a password for the tablet by enabling developer mode in the device's settings, then clicking the hammer on the home screen.<br />
<br />
After getting my environment setup one evening after work, I managed to build a functional app in one day that weekend, (with a bit of help from <a href="http://www.w3schools.com/html5/">w3schools.com</a> to help me brush up on my HTML5 and JavaScript skills.) I've just been adding a bit of polish while I wait for my Blackberry developer account to be approved, then I should be submitting asap!<br />
<br />
I hope that helps! Let me know your tips in the comments section below.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com2tag:blogger.com,1999:blog-5603118.post-22230466661481077152011-01-24T21:52:00.000+00:002011-01-24T21:52:48.919+00:00Again, a year since the last update, apart from that little blip moving servers.<br />
<ul><li><a href="http://jointhedots.hiash.com/">Lotsa Dots</a> is now available from the iTunes App Store! <a href="itms://itunes.apple.com/app/lotsa-dots/id378749416?mt=8">iTunes Worldwide</a>. More news on that via Twitter, <a href="http://twitter.com/Lotsa_Dots">@Lotsa_Dots</a></li>
<li>Work is OK, with lots of changes happening at the moment. I've worked on several big launches over the last year, not least of which <b>Need for Speed: Hot Pursuit</b> with the brilliant <b>Autolog</b> features. <b>Bulletstorm</b> and <b>Shift 2 Unleashed</b> up next.</li>
<li>I've been working on <b>Blackberry PlayBook</b> apps this week in my spare time. I'll probably post up some tips on that soon.</li>
</ul>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-79307992944642313632010-03-29T21:29:00.003+01:002010-03-30T22:30:35.790+01:00Blogger shutdown their FTP publishing service, so this blog is now located on their servers, which you can get to using <a href="http://blog.hiash.com/">http://blog.hiash.com/</a>.<br />
You will be automatically redirected in 30 seconds or you may click <a href="http://blog.hiash.com/">here</a>.<br />
<br />
For feed subscribers, please update your feed subscriptions to<br />
<a href="http://blog.hiash.com/feeds/posts/default">http://blog.hiash.com/feeds/posts/default</a>.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-86081713180881316682010-01-07T20:24:00.000+00:002010-01-07T20:24:31.687+00:00Knocking on for another year since the last update.<br />
<ul><li>The <b>wedding</b> was great: <a href="http://www.louiseandashgetmarried.com">LouiseAndAshGetMarried.com</a>.</li>
<li><a href="http://www.travelcompanionapp.com">Travel Companion</a> is now available from the iTunes App Store! <a href="http://bit.ly/511EuJ">iTunes USA</a>, <a href="http://bit.ly/7MSEjA">iTunes UK</a>, <a href="http://itunes.com/apps/travelcompanion">iTunes Worldwide</a></li>
<li>Work is OK. The next big launch is <b>Battlefield Bad Company 2</b>. <b>Battlefield 1943</b> went down a storm, so here's hoping BFBC2 does too.</li>
<li>Once again, I'm off to <b>San Francisco</b> soon for a business trip. It's the first one since my last post I think.</li>
<li>I've been playing a lot more games recently, (I got a <b>PS3</b> for <b>Christmas</b> in the <b>Black Friday sales</b>,) which is a good thing, except it eats away hours from other stuff.</li>
</ul>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-73555340946292841512009-04-26T11:29:00.003+01:002009-04-26T11:45:36.878+01:00It is getting on for a year since the last update.<br /><ul><br /><li>The <b>wedding</b> is coming up very soon. I think we are there or there-abouts with the planning.</li><br /><li><a href="portfolio/rackem/">Rack 'Em</a> is now available from the <a href="http://click.linksynergy.com/fs-bin/stat?id=e1*RZKsoUGI&offerid=146261&type=3&subid=0&tmpid=1826&RD_PARM1=http%253A%252F%252Fitunes.apple.com%252FWebObjects%252FMZStore.woa%252Fwa%252FviewSoftware%253Fid%253D311352327%2526mt%253D8%2526uo%253D6%2526partnerId%253D30">iTunes Store!</a> Expect more soon.</li><br /><li>I was named in the <a href="http://www.developmag.com/interviews/387/30-Under-30" target="_blank">Develop 30 Under 30</a> list</li><br /><li>Work is going well. I'm very busy and have launched several titles recently, notably <b>Battleforge</b>, <b>Burnout Paradise Ultimate Edition</b>, <b>Family Game Night</b> and others I can't think of right now.</li><br /><li>I'm off to <b>San Francisco</b> soon for a business trip, so I'm looking forward to that. I haven't seen <b>Joe</b> and the others since <b>Thanksgiving</b> last year when I went out to SF for a couple of days since I was half way there in <b>Orlando</b>. I fell asleep at <b>Oakland Airport</b> while waiting for my return flight that time, which was a bad thing since I missed it...</li><br /><li>I feel like I haven't played a game in ages...</li><br /></ul>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-76039540755832935972008-06-10T20:30:00.002+01:002008-07-23T21:41:26.613+01:00My <span style="font-weight:bold;">Xbox 360</span> came back ages ago, but it has been almost two months since I updated this blog. Seems to be working fine. I've been playing lots of <span style="font-weight:bold;">GTA4</span> and finished the story mode last week. I have dabbled with a little <span style="font-weight:bold;">Battlefield: Bad Company</span> too, which has my name in the credits! <span style="font-weight:bold;">DICE</span> sent over a care package with a few free copies to say thanks for helping, which was nice of them.<br />Since the last update I have been to the <span style="font-weight:bold;">Wii Summit 08</span> and <span style="font-weight:bold;">Sony DevStation 08</span> conferences. I have a ticket booked for the <span style="font-weight:bold;">XNA Gamefest 08</span> in two weeks time as well. It will be interesting to compare swag, especially since the attendance fees differ so wildly. <span style="font-weight:bold;">Nintendo's</span> was free and main gift was a <span style="font-weight:bold;">laptop bag</span>. <span style="font-weight:bold;">Sony's</span> was €50 and I got a <span style="font-weight:bold;">PlayStation Eye</span> and <span style="font-weight:bold;">Spiderman Trilogy Blu-Ray gift set</span>. <span style="font-weight:bold;">Microsoft's</span> is around £200, so that may get me a free <span style="font-weight:bold;">Xbox 360</span>?<br />I have been away to <span style="font-weight:bold;">Tennessee</span> for <span style="font-weight:bold;">Louise's mum's 50th</span>. It was actually a lot of fun and something I would probably never have done otherwise. We went to see <span style="font-weight:bold;">Graceland</span>, <span style="font-weight:bold;">Jack Daniel's Distillery</span> and the <span style="font-weight:bold;">Grand Ole Opry</span>, amongst other things, (like shopping.)<br />I started up a new project of playing a new game demo each workday, (that I can,) and recording my impressions on a website cleverly titled <a href="http://demoperday.blogspot.com/">Demo per Day</a>. It is a quick way for me to expose myself to new gaming experiences, catch up with old games that passed me by, (even if it is just a taste,) and perhaps gain a useful knowledge into a gaming industry niche.<br />It is <span style="font-weight:bold;">my 25th birthday</span> this weekend. I need to deal with my early mid-life crisis.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com1tag:blogger.com,1999:blog-5603118.post-75584629868584858592008-05-25T20:06:00.000+01:002008-05-25T20:06:17.407+01:00If anyone out there was getting <span style="font-weight:bold;">spam</span> supposedly sent from HiAsh.com I apologize. It seems to mostly be coming from <span style="font-weight:bold;">Russia</span>, but I've worked with my host to try and prevent it in future. I was getting hundreds of bounced mails back to me each day which was my main clue into what was going on. So, sorry for any spam but it wasn't me and was just as annoying on this end!<br />I've been having a lot more ideas for new websites, other projects and potential products recently. Limited amounts of time mean I can't do all of them unfortunately. I'm still slowly working on one and have now started another that I hope to work on each day at lunch times. I'll post more when they are further along.<br />One idea that struck me a couple of months ago thought is "why not have a <span style="font-weight:bold;">Guitar Hero</span> controller as a real instrument?" Right now it could be achieved through software. We already have <span style="font-weight:bold;">Frets on Fire</span>, which I guess has an editor, (Guitar Hero 4 was announced this week with a built in band jam-session mode,) but why not have an instrument that is basically the same as a Guitar Hero/<span style="font-weight:bold;">Rock Band</span> controller but works in the same way as an electric keyboard? Also, sheet music has been around for hundreds of years and there must be good reason why that is so, but surely there must have been other ways of noting down music before now? Why not have Guitar Hero-like tabs be the new documentation format for music on real instruments, such as drums? There is no reason we need to have sheets for music any more. We could just as easily build an LCD screen into a piano these days, for instance.<br />I was interviewed and got a mention on the <a href="http://www.fullsail.com/news/12294-online-gaming-at-ea-ashley-bennett.html?section=degreeGeneral&pg=1&filter=none">Full Sail graduate news</a> website. I also got myself a nice little <span style="font-weight:bold;">promotion</span> at work this week!<br /><span style="font-weight:bold;">Louise</span> and I went to <span style="font-weight:bold;">Paris</span> for the weekend last month. It was actually much better than I thought and we had a great time. We went over on the <span style="font-weight:bold;">Eurostar</span> and grabbed tickets for an open top bus tour, jumping on and off wen we saw something interesting. We also spent one day at <span style="font-weight:bold;">Euro Disney</span> and the <span style="font-weight:bold;">Disney Studios</span> which I surprisingly enjoyed.<br />Louise's sister, working on the <span style="font-weight:bold;">Oriana</span>, docked in <span style="font-weight:bold;">Southampton</span> a few weeks ago so we went down to visit and had a quick tour of the ship. I was on the <span style="font-weight:bold;">maiden voyage</span> of it years ago, so it seems much smaller and tattier now. Makes me interested in doing another cruise though since it has been a few years since the last one.<br />This weekend we have been visiting more of Louise's family and got lucky with the weather. I'm a little <span style="font-weight:bold;">sunburnt</span> though. If it is still nice tomorrow, seeing as how it is a bank holiday, I might pop over to the <span style="font-weight:bold;">driving range</span> I visited last weekend. It was nice to hit a few balls again.<br />My <span style="font-weight:bold;">Xbox 360</span> made it to <span style="font-weight:bold;">EA</span> in <span style="font-weight:bold;">San Francisco</span> but then sat in their mailroom for more than a week since they couldn't see a name on it to deliver it to. After chasing that up it has been sent on and was with <span style="font-weight:bold;">Microsoft</span> at the end of this week. Word is I may have it back sooner than I thought, (which is great, but annoying that a week was wasted already.)Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-33633112884094664032008-05-11T11:10:00.002+01:002008-05-11T11:32:53.853+01:00On Wednesday I suffered the <span style="font-weight:bold;">death</span> of a friend... my launch day <span style="font-weight:bold;">Xbox 360</span>. I wanted to capture the process I went through with getting it replaced since its a slightly different case to most. I have a US 360 from my time living there, but right now I'm back in the UK with it. Would I totally blow <span style="font-weight:bold;">Microsoft's</span> mind?<br />I called the UK MS helpdesk about my Xbox the day it was dying, (system would hard lock after a min or two with graphical glitches on the screen. It may or may not restart, depending on how long I left it to cool.) First thing they said was it wasn't in warranty because it wasn't a <span style="font-weight:bold;">RRoD</span>, even though it was clearly heading that way, so I would have to pay, but they couldn't say how much it was because it depended on what was wrong. I made it clear that I had a US 360 and I expected a US 360 returned to me, (since I doubt I'm getting the same Xenon back. I expect a new model.) Anyway, he makes me go through the process of removing all the cables and putting it back together etc. and it then booted, (but then it was doing that before, you just needed to wait a min...) so he said call back if I was still having problems. It was clearly broken but I left it for the night.<br />The next day I tried it and it was an instant RRoD, which is pretty lucky really. I went to work and asked if there were any way I could speed this up through <span style="font-weight:bold;">EA</span>. They told me they call the same number I would. Fine, so I called the helpline again with the reference number they gave me the night before. I go through all the bullshit of getting the return setup and just before they hit OK I say, "You know this is a US system and I expect a US system back, right?". "Err, we'll take it and fix it but you'll get a PAL system back, OK?" No its not fucking ok, what use is that to me? So they cancel everything and I'm told to call the US. One thing to note is that they were going to email me a postage label, then I would have to package up the Xbox myself and call UPS to come and collect it.<br />So I wait a few hours for the US line to open and call them. Their automated line robot is a piece of crap but luckily I had seen an article a couple of days before with a different number to call to get straight to a human, as long as you had a case reference number. So I call that and they tell me they will fix it, and its all free now that it is RRoD, but they need a US address. Their process is to mail out a pre-paid postage box for me to put the Xbox in and mail out. Then when it is fixed they mail it back to that address. That obviously isn't going to work for me and the guy understands the situation so tries to help out. I ask if I can save some time and just mail it to them myself and then I'll find a US address of someone that can return it to me in the UK when it is done. They say that is fine but I'll be covering the postage myself. OK, thats cool, but let me check how much that postage is. It ends up at around £80 with UPS, just to send it one way. Great, so I need a US address and will be paying ~$300 to mail it both ways. That's not far short of a new 360.<br />I ended up using one of the admins in the Redwood Shores office as a US address. I mailed the Xbox to them on Friday and Microsoft have sent their box to the same person. Let see how long this all takes. The repair time was estimated at 2 to 3 weeks by the UK helpdesk. Add a week either side for mailing to/from the US and another week for mailing within the US and I would say that means mid-June.<br />So, a mixed start. I hate being told one thing that ends up being a total lie. What if I had sent it to get fixed in the UK because that first bloke said it would be fine? But then the assistant in the US tried to be as helpful as possible.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-56818624777925846462008-04-06T15:48:00.002+01:002008-04-06T16:25:22.784+01:00It has been a couple of months since the last post, but I put that down to being fairly busy. <strong>Louise</strong> and I have been trying to arrange the <strong>wedding</strong> and so far have close to 70 people confirmed coming away with us to <strong>Barbados</strong> for the ceremony. It is amazing how quickly time passes though, (it will only be a year away soon.)<br />I flew out to <strong>Vancouver</strong> for an <strong>Online Summit</strong>, internal to <strong>EA</strong>, and had to present a summary of some of the more interesting products EA had shipped with online functionality this year. Most of the rest of the time was spent listening to what other groups within the company have been working on and it was interesting to hear. At the weekend a few of us went up to <strong>Whistler</strong> which was a great place to <strong>ski</strong>. Unfortunately I only had one day of it due to illness, so I'll have to go back one day.<br />Easter weekend Louise and I flew out to <strong>Portugal</strong> to meet up with my parents to try and catch some sun. We got a little, but it was cold in the evenings.<br />I went back to <strong>DICE</strong> again on Friday and had a good trip. We flew out of the brand new <strong>Heathrow Terminal 5</strong> which opened with many problems last week. It seemed fine to me now after a settling period. The odd unfinished lamp post, some staff that didn't know what they were talking about and some odd layout decisions, but pretty nice overall. As for DICE itself, the projects coming out of there look great. <a href="http://www.Battlefield-Heroes.com" target="_blank">Battlefield Heroes</a> looked especially impressive and will be launching to a closed beta very shortly. I've been playing the <strong>Battlefield: Bad Company</strong> beta on Xbox 360 too, and I think its pretty fun. It has definitely raised my interested and impressions of the game so will be picking that up when it appears.<br />I've filed my <strong>US taxes</strong> but had them returned to me because I forgot a form. Hopefully that will all be sorted quickly so I can get my nice little rebate payment sent to me.<br />It is performance review season again right now at work and I think I have done well again this year. I have submitted my review and I'm hoping for good things from the meeting with my manager in a few weeks.<br /><strong>Chris</strong> is back from his <strong>Asia tour</strong> soon, which has now included a month in the US. I think he is in <strong>San Francisco</strong> at the moment and I would love to be there with him right now to catch up with him and my friends. I'm hoping for a trip out there soon, but there has been no mention.<br />Thanks to my <strong>Dad</strong> and <strong>Dagenham & Redbridge</strong> I went to the <strong>Carling Cup Final</strong> at the new <strong>Wembley Stadium</strong> in which <strong>Tottenham</strong> beat <strong>Chelsea</strong>. After seeing things from a regular punter's point of view at the <strong>England</strong> game it was quite a contrast to see the fancy part of the stadium. I was fed in a fancy hall along with the players from both teams that were not playing that day and had a cushioned seat. Not bad at all.<br />I'm trying to finish up some games so I can get to others. I'm rushing through <strong>Mario Galaxy</strong> right now and want to get to <strong>Burnout Paradise</strong> next before <strong>GTA4</strong> comes out.<br />I finally got my tools out and laid a new floor in our hallway. Its too much like hard work... all that bending and kneeling. My frail computer geek physique can't take it.<br />Randomly it is <strong>snowing</strong> here today. Crazy English weather.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-6377482418651134452007-12-30T16:43:00.000+00:002008-01-20T16:38:40.294+00:00Sometimes I make notes for myself on what to write for then next update for my blog. I haven't done that this time, so I totally forget what has happened.<br />Obviously it is <span style="font-weight:bold;">Christmas</span> at the moment. I decided to finally <span style="font-weight:bold;">propose</span> to <span style="font-weight:bold;">Louise</span> on Christmas Eve, so it will be non-stop planning for the next 18 months or so.<br />As for other stuff, I know I have been back to <span style="font-weight:bold;">Stockholm</span> to help out at <span style="font-weight:bold;">DICE</span>. I know we had our Christmas party, (boring after last year... just a lunch.) I know that EVERYONE loves to play the <span style="font-weight:bold;">Wii</span>, so much that even my Dad and Mother-in-law-to-be now have one. I went to see <span style="font-weight:bold;">I Am Legend</span> and went away impressed. <span style="font-weight:bold;">Chris</span> got us tickets to go and see <span style="font-weight:bold;">Jimmy Carr</span> at the <span style="font-weight:bold;">Hammersmith Apollo</span> which was pretty good, (I had heard a fair amount of the act but a lot of audience participation made it funnier.) Chris has gone off to <span style="font-weight:bold;">Asia</span> for a few months now, but we'll see how long his money lasts :)<br />After listening to others playing loudly near my desk for three days straight, I tried out <span style="font-weight:bold;">Rock Band</span> at work and it is a lot of fun. The drums were tough, but whatever instrument you play you have a great time. Although you are just making crappy clicking noises you are hit with the great sound of the real track so it makes you feel like a bad-ass, really playing.<br />I can't think of much else, so I'm going to get back to working on one of my projects.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-34040465242404745462007-11-04T11:36:00.000+00:002007-11-04T11:48:43.227+00:00I've been on a trip back to <span style="font-weight:bold;">EA</span> in <span style="font-weight:bold;">San Francisco</span> a couple of weeks ago. It was great to catch up with people there and, more importantly, I also found out that I have my first ever credit in a game! Take a look at this image from <span style="font-weight:bold;">Medal of Honor: Airborne</span>:<br /><a target='_blank' href='http://img411.imageshack.us/my.php?image=mohacreditsnp3.gif'><img src='http://img411.imageshack.us/img411/8844/mohacreditsnp3.th.gif' border='0'/></a><br />I picked up a copy for the PC, but so far I've pretty much only been to the credits section. I've got too many games to play at the moment and nowhere near enough time. I've been told I'll also have my name in <span style="font-weight:bold;">Need for Speed: ProStreet</span>, due this month.<br />I can't think of much else worth mentioning that has happened in the past few weeks. I did get to go to the <span style="font-weight:bold;">England vs Estonia</span> <span style="font-weight:bold;">Euro 2008 qualifier</span> at the new <span style="font-weight:bold;">Wembley Stadium</span> which was pretty cool. I didn't get to see the plush part of the stadium with the bars and restaurants though so in some ways it was underwhelming. The view when you step out of Wembley Park station is something special though. Luckily we were sitting at the end where all the goals were scored in the first half, though it was probably all for naught since we are unlikely to qualify for the tournament now.<br />I am supposed to be going back to <span style="font-weight:bold;">DICE</span> in a couple of weeks so it looks like I really am going to be doing a fair bit of traveling in this job.Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0tag:blogger.com,1999:blog-5603118.post-27498594184178484862007-09-17T21:10:00.000+01:002007-09-17T22:35:55.250+01:00Another long gap, but oh well. Louise and I are now back in the UK and have setup our little house. We've not explored <span style="font-weight:bold;">Guildford</span> too much yet since we keep going back and forward to Essex for various reasons.<br />Work is going ok. It's a little quieter here since most of the action is in the US, so I get to concentrate on what I'm doing a bit more, though new stuff gets dumped on me over night.<br />I got to go to <span style="font-weight:bold;">DICE</span>, who work on the <span style="font-weight:bold;">Battlefield</span> franchise, based in <span style="font-weight:bold;">Stockholm</span> two weeks ago. That was a pretty cool trip and I got to see the new games coming up and help out, (a little,) in planning them.<br />Just before I went it was Louise's birthday and I bought us both tickets to <span style="font-weight:bold;">We Will Rock You</span>. To be honest, I wasn't very impressed but it was something I wanted to try and can tick off my list.<br />I was given a copy of <span style="font-weight:bold;">Bioshock</span> from Mum which I managed to finish in three sessions. It was that good a game, I only stopped each time because something else came up :) Louise was in <span style="font-weight:bold;">Paris</span> visiting <span style="font-weight:bold;">DisneyLand</span>, so I made the most of the alone time with the computer. I also caught up with some buddies from Plymouth at a house warming over the weekend too. It was good to see them.<br />Nothing else jumps to mind, so I'm just going to throw up a few links here:<br />-<a href="http://www.facebook.com/p/Ashley_Bennett/738023237">Facebook</a><br />-<a href="http://www.linkedin.com/in/hiash">LinkedIn</a><br />-<a href="http://www.myspace.com/hiash">MySpace</a>Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com1tag:blogger.com,1999:blog-5603118.post-52377473934244438112007-07-24T23:09:00.000+01:002007-07-25T07:09:19.131+01:00Wow, this has been a long gap and much has happened. I'm just going to quickly rattle some of these things off:<br />It seems like ages ago, but was only about a month since <span style="font-weight:bold;">Louise</span> and I went back to <span style="font-weight:bold;">England</span> for a weekend. I saw my mates, made a visit to <span style="font-weight:bold;">EA UK</span>, (nice office, good meeting,) and went house hunting. We found a place and completed the purchase last week, so now we are <span style="font-weight:bold;">Homeowners</span>!<br />We've had a few other trips too. We went to <span style="font-weight:bold;">Sonoma Valley</span>, the wine country a little north of <span style="font-weight:bold;">San Francisco</span>. Unbelievably I actually liked some of the wines and I learnt what to look for.<br />We went to go and see <span style="font-weight:bold;">Jersey Boys</span> at the theatre which was surprisingly good. It means that I'm more likely to check out some other shows that I would otherwise skip when we get back.<br />We were here for <span style="font-weight:bold;">July 4th</span> and went to watch the fireworks over the bay by the <span style="font-weight:bold;">Golden Gate Bridge</span>.<br />This past weekend the two of us flew out to <span style="font-weight:bold;">Vegas</span>. I spent most of the time with my friends from <span style="font-weight:bold;">Full Sail</span> who all converged to meet up for a few days on the beer. While we were there Louise and I took a wander around the <span style="font-weight:bold;">Bodies</span> exhibit which was a very strange thing to see, but very interesting too, (FYI: if you go, skip the audio tour; its rubbish.)<br />We have seen <span style="font-weight:bold;">Live Free or Die Hard</span> which was a brilliant action movie, (though way over the top, where the other Die Hards were a bit more believable.) We also got free tickets to an early screening of <span style="font-weight:bold;">Harry Potter: OotP</span> since <span style="font-weight:bold;">EA</span> makes the game of the movie. It was OK, but was an obvious middling movie since there was no real end... just stuff that happens that leads towards the final movie/book. On Friday we get free tickets to see the <span style="font-weight:bold;">Simpsons</span> movie too!<br />Friday is also my last day in the office here and we head back next week. Wow, that year went fast!Ashley Bennetthttp://www.blogger.com/profile/05771309789880867491noreply@blogger.com0