Hercules Javascript XRE Receiver - AnimatorManager updates for pxscene

Key Information

Register
Submit
The challenge is finished.

Challenge Overview

We have an existing application that is the client in a client-server application.  The client handles input and drawing based on commands sent from a server using the XRE protocol.
The client is currently implemented in Javascript, runs in a web browser, and uses http://www.pixijs.com/ for WebGL and Canvas rendering.   The code can also run in a custom drawing framework called pxScene.  
The code has gone through many, many iterations over a number of years and we recently brought it up to date with changes to the code structure and packaging.

This challenge will:
* Fix up the XRE animations when targeting pxscene to ensure that pxscene animation performance matches that of the browser.



Code

Access to the code will be covered by information in the forum.  Note that this challenge will cover the "develop" branch in Gitlab.  Don't use "master".
 

Requirements:

Currently, the main production XRE app (Guide, On Demand, etc...) animates and performs more smoothly in the browser than it does in pxscene.  One big reason for this is that the XRE animations aren't properly implemented using pxscene native animations, instead using Javascript loops and updates.  This challenge will fix up the AnimatorManager class and it's pxscene rendering to properly target pxcene native animations so that browsing the Guide, On Demand, and other parts of the main XRE app works as smoothly in pxscene as it does in the browser.

Latest code:
 

Please target commit hash fe6dbb96665709b4f5fe70825dd4249c46e47b37 in the "develop" branch in Git.

pxscene

Your submission must run properly both in the browser and in pxscene.  You must target the latest version of pxscene.  You can download the Mac app here:  http://www.pxscene.org/.  You can also build your own version of pxScene for Linux, but you must use a commit hash that is current when this challenge launched.


Deployment


Currently, the code is just deployed to Heroku by pushing the latest updates from Git.  Heroku handles all the webpack and other packaging steps.  This needs to remain in place.  All configuration is done through environmental variables set on Heroku.  Samples will be provided in the forum.

Reviewers should also test the Heroku deploy fully, both in the browser AND in pxscene!

Submission

Your submission must include a patch file against the Git repository and the develop branch commit hash fe6dbb96665709b4f5fe70825dd4249c46e47b37.  Details on getting access to the Git repo can be found in the forum.

Your deployment guide must cover how to properly apply the patch.

 


Final Submission Guidelines

Please see above

ELIGIBLE EVENTS:

2017 TopCoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30057378