Skip to content

The solution for the DreamWorks Animation Challenge - October 2016

Notifications You must be signed in to change notification settings

ganeshbelgur/dreamworks-sparks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DreamWorks Animation Challenge - October 2016

Problem Statement:

You will need to use your coding ability to create ‘sparks’. You are provided with some models/assets, a reference scene and a rough sketch for visual direction. You can start with the reference scene and its coding language or create your own from scratch in your language/platform of choice (You are free to make your own desktop program with OpenGL). You are not allowed to use any physics/collision engines such as Bullet, unity, unreal etc. You essentially have to write code for the mathematics (external vector/math library allowed) and physics (external library not allowed as mentioned above) of the motion of the sparks.

Various Levels of Complexities:

L0: Basic natural motion of sparks (projectile motion, air and ground friction)
L1: Collision with ground plane
L2: Sparks should split randomly post collision to give variation
L3: Collision with a minimum of one of the given primitive shapes
L4: Collision with the ‘Stanford Bunny’

You are free to use graphical enhancements (sprites/glow/complex-lighting etc.) on your output to make it visually appealing and look natural/realistic.

alt tag alt tag

My Submission:

The objective of my hack was to simulate the motion of sparks from a saw blade. I managed to achieve the all important projectile motion of the particles, basic collision detection and the splintering effect of spark particles on collision. I wanted to implement a bounding volume hierarchy if time permitted me to do so. The collisions would have become more accurate and efficient to compute.

Preview: YouTube

DreamWorks Animation Challenge | Ganesh B R

Instructions to run the Code:

1: Start a simple HTTP server at the root directory

sudo python -m SimpleHTTPServer 4000

2: Go to any browser and type in the following URL

localhost:4000

Test Environment:

Ubuntu 16.04
Google Chrome Browser

About

The solution for the DreamWorks Animation Challenge - October 2016

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published