GAM170 wk2

Programming Languages

The videos were great refreshers for what’s heavily used right now. After doing a bootcamp in Java, I have dabbled with C++ and C#, C++ because I was interested in Openframeworks and C# because of Unity.   I will take a look at Swift, it sounds interesting and I didn’t realize how friendly it could be to a beginning coder.

I am sad that PhoneGap was removed from the Apple App Store:

Due to Apple guidelines, the PhoneGap Developer App has been removed from the iOS App Store. New users will be unable to download. No impact to Android or Windows versions.

I did find an article on Medium on getting it set up through Git, I’ve put a link below but is a bit dated (Jun 2018). Apple and Adobe seem to have a real love/hate relationship.

https://blog.phonegap.com/update-on-the-phonegap-developer-app-ios-99e07e3309dd

Also an interesting blog article below on Git and GitHub.

https://jahya.net/blog/git-vs-github/

Github2

Photo credit: Andrew McWillams

GAM170 wk1.2

Week 1 Creative Piece
Theme: As long as we have each other, we will never run out of problems.

I thought about this for quite a while and then decided to riff on this theme by pulling together a couple of ideas I have been looking at recently. The idea of twins and duality struck me as an exciting way of viewing the theme, and I have been looking at simple 2d physics collisions and responses, flocking and steering and UI interactions that seem intuitive.

I had also just read an article in WIRED about “lunch break games” and the of jumping into a game for a quick moment of fun so, I wanted to play with wrapping these things into a concept game and see how I could get these things to work together.

Concept
A simple scrolling maze game using two circles paired at their center points that challenge the user to keep them as close to each other as possible using their thumb controllers so they can be moved as one. The player holds the phone like a game controller and controls the game piece by tilting the iPhone in six directions. He/She races against the clock and the ever-increasing scrolling speed. One of the circles will have some physics agency of its own, forcing the player to try and keep the two paired while moving them through the maze-like obstacles as quickly as possible.

The maze is generated using flocking like barriers where the separation, alignment, and is controlled using an algorithm with randomly generated parameters. The player chooses a game piece at the beginning of the game is unique form the other. Some will be harder or easier to control, while others will be faster or slower. This is left up to the player to discover. The game will use analogous color palettes. The game levels are colored by choice of game-piece at the beginning and will change in tint and saturation as the levels increase. The color will also change with the game piece as it collides with the maze. Players work to best their top score, and the speed and complexity increase the longer the is to push forward without crashing and burning.
The game will be developed using Flutter, and it is expected to be a challenge ( see link below ) but able to deliver to both popular platforms efficiently. I have been working on my Unity skills but fell a bit better with flutter at the moment. I have had problems with getting these keep from breaking on iOS with ARKit, so that was off the table this round.
I use a Mac, and the IDE will be Visual Studio Code. I have installed the integrated features for testing by installing Android Studio and updating Xcode for the simulators.

Screen Shot 2019-06-11 at 16.26.19

game look
https://blog.geekyants.com/building-a-2d-game-in-flutter-a-comprehensive-guide-913f647846bc

 

GAM170 wk1.1

Another big part of this week was spent on Pluralsight and Lynda. I really appreciate having access to these to learning sites and had used Lynda in the past but was surprised with Pluralsight. Normally I just logged in and know what I wanted to study but the approach Pluralsight was a pleasant surprise. After answering the interest questions and take the assessment tests after, I was surprised with the feed back and have started studying the Unity Developer course with a focus on Unity’s cross-platform AR Ecosystem, AR Foundation, ARCore and ARKit. I have dabbled with Unity quite a while back but happily remembered most of the basics of getting around the interface and file setup.  A new change was using Unity Hub.

I watched the “Mobile App Design and Prototyping in Photoshop and After Effects” video on Pluralsight and similar to a website mock-up using adobe, though I have never used after effects to screen transitions before. While I’m more familiar with this approach than the one take in the  video “Design an App with Android App Inventor” on Lynda, the speed of putting together a “working” app mock-up was amazing. While I don’t have an Android phone at the moment, I have found something similar for iOS with Famous (https://famous.co)

famous

Photo Credit: Famous.co

and am looking to try this out over the weekend. While not as function rich as the Scratch style drag and drop codeblocks of MIT App Intentor, it gives a functional app mock-up using the same barcode app loading feature. Again, more time saving than the Photoshop – After effects method.

I stumbled across Famous after reading through the IEEE paper on “Comparing Performance Parameters of Mobile App Development Strategies” using cross-platform development frameworks.  Looking through the paper there seems to have been quite a shakeout in this market with frameworks looked at but the main point was the runtime speed of the different frameworks on the main mobile platforms and the difference of running as a web app or running as a “standalone application by using
a Web-to-native wrapper”(Willocx, Vossaert, and Naessens 2) Having looked at the frameworks list in the paper :  Ionic (https://ionicframework.com), Appcelerator (https://www.appcelerator.com/mobile-app-development-products/) and Sencha Touch 2 (https://www.sencha.com), I have decide to stay with Flutter and Unity’s AR Ecosystem. They are both working on running at near native speeds and are able to access most of the OS API’s without relying on the phone browser that many of the web-app frameworks had relied on. As a student, Flutter and Unity offer full feature development for no cost, constantly being upgraded and improved and  have a healthy development community.

The one thing I hadn’t put much thought into was testing and the ACM Digital Library paper “Remote Paper Prototype Testing” was an interesting look at quickly testing and iterating on a concept. The feedback was simple and direct and was easily done with two people. I was glad that they had posted a support video that easily validated the concept and encouraged me to also take a simple approach to testing. I am going to enlist my students help with this one a have a concept that’s ready for testing.

There quite a few things to work on going forward,

  • Finish Wk 1 Concept assignment
  • Continue with Unity on  Pluralsight
  • Work on some Flutter
  • Brainstorming app ideas for sketchbook
  • Finish reading “Future Presence” by Peter Rubin

 

M. Willocx, J. Vossaert and V. Naessens, “Comparing Performance Parameters of Mobile App Development Strategies,” 2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems (MOBILESoft), Austin, TX, 2016, pp. 38-47.
doi: 10.1109/MobileSoft.2016.028

URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7832966&isnumber=7832858

GAM170 wk1

Spent the first week digging into resources, the most interesting being the Google Lightning Talks video from the 2017 Game Developers Conference from the GDC Vault. Of particular interest were the ATAP group’s projects with Tango and Soli. It’s a shame that all the amazing work on that project came to an abrupt end in March of 2018. (have a look at this article for more on the death of Tango – https://www.fastcompany.com/90154717/tango-googles-big-ar-experiment-is-over). I have been looking at third party dev kits that offer the similar depth sensing and 3D spacial mapping, such as Occipital’s Structor sensor (https://occipital.com) but it is more for content creation rather adding ar/vr experiences to a mobile device. Probably the most exciting piece of kit I would love to design an app around is Soli (https://atap.google.com/soli).

radar-visualisation-loop

Soli in action | Photo Credit: Google

This controller interface  uses mini radar quite different for other types of interfaces such as Jacquard (https://atap.google.com/jacquard). Having soli chip embedded in a wristband or bracelet would allow discreet app interaction in very public places as opposed to having to grab, pinch, rub and push some piece of clothing with a bulky  connective tag attached to it. Soli is yet to see a beta release but I have signed up for release news.