Key Information

Register
Submit
The challenge is finished.

Challenge Overview

For the Hercules client, we are going to be doing some work that involves a couple of their drawing technologies, name "pxCore" and "pxScene".  The links below offer a lot more details on these particular technologies.  pxscene is a graphics drawing library that has Javascript hooks exposed thorugh Node.js and v8.  This challenge will look at a couple of existing demos that were restricted due to limitations in pxCore and will expand pxCore to support better graphics drawing abilities to enable better demos for pixi.js

Pxscene

Pxscene is a platform independent drawing platform that will be used on a wide variety of embedded devices for the Hercules client.  You can find more information here, and you can download the app to be used for testing:  
http://www.pxscene.org/

The code for pxCore / pxscene is available in Github here:  https://github.com/johnrobinsn/pxCore

Pixi.js

Pixi.js is a Javascript graphics library that has a lot of nice features and the ability to target either WebGL or Canvas2D.  We've used it extensively for a project for the client here that may eventually be ported to work on pxscene.

Pxscene limitations

Previous pixi.js --> pxscene challenges have run into issues with two demos and this challenge will explore if we can expand pxCore to provide graphics support.  The two demos are:

* basics/graphics.js
* demos/graphics.js

You should investigate extending pxCore to provide graphcis capabilities for:

* Drawing lines
* Drawing polygons
* Drawing circles  
* Borders around lines and polygons and circles
* Color / animation / alpha channel

Your code should extend both pxCore and the JS API for pxscene so it can be consumed by pixi.js.

Pxcore code:

Note that your pxCore changes should follow all code structure, naming, commenting, and code practices already seen in pxCore.  Your code should be indistinguishable from the existing pxCore code and should be flexible and well encapsulated.

Goal:

The goal of this challenge is to be able to do a new build of pxscene that can run on Mac or Linux that provides the necessary API to perfectly render the two graphics examples so they match what's seen in a browser:

* basics/graphics.js
* demos/graphics.js

Codebase

A previous codebase is available in Git already.  This challenge will provide Git patch files for the pixi.js and examples repositories to implement the requirements below.  You should also provide a git patch against a recent commit hash of pxCore / master that implements the functionality needed above.

Existing code

The existing pixi.js code that targets pxscene can be found publicly in Github:

https://github.com/topcoderinc/pxPixi
https://github.com/topcoderinc/pxPixi-examples

Submission

For this challenge, please submit:

1.  Patch files against the pxPixi and pxPixi-examples code in Github
2.  Patch file against a recent commit of pxCore in Github

2.  Any updates needed to the examples (basics/graphics.js and demos/graphics.js)
3.  A video showing the examples being tested in pxscene
4.  A README documenting any setup that needs to be done, and any limitations that your ran into while investigating.
5.  Deployment instructions for putting the examples on Heroku


Links

Pixi.js
Pxscene 
http://johnrobinsn.github.io/pxScene2d/docs/
 


Final Submission Guidelines

Please see above

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30056781