Here is our milestone for April 30th. We are well underway and learning a lot!
Project contributors: Me, Tiffany Yen and Selma Muminovic
What we've accomplished so far:
We have succeeded at emitting particles from a point using Python in Maya. This is a simple process, but learning how to achieve somewhat desirable results is proving to be really difficult. So far, we've written code that does the following:
1) Create an emitter to emit particles. This will be our vine's starting point.
2) track particle positions at a given time frame (using the particle class)
3) Create a curve along these positions (using the curve class)
4) Create a circle at the bottom of each curve (using circle and planarSrf)
5) Extrude the circles along their curves to give each curve volume (using polyExtrudeFacet)
6) Animate this extrusion to show the vines "growing"
Things like width, length, and bendiness of the vines are all mutable by changing input variables in our particle emitter and external force fields.
We had to learn a lot of things to get to where we are now - a basic overview of Python commands in Maya and how to do even the most basic things like creating curves with code, and also how nParticles and emitters work. It's more complicated than we thought it would be!

Emitting particles from a point
Emitting particles from a point
Turning particles into curves
Turning particles into curves
Extruding circles along the curves
Extruding circles along the curves
We also have modeled, textured and shaded three different leaf types in Maya, using some simple alpha-mapped shapes. See below:
Ivy leaf normal map
Ivy leaf normal map
Ivy leaf specularity map
Ivy leaf specularity map
Normal + specularity mapped ivy leaf
Normal + specularity mapped ivy leaf
Shader setup in hypershade
Shader setup in hypershade
Final Ivy leaf
Final Ivy leaf
Final heart leaf
Final heart leaf
Final oval leaf
Final oval leaf
All three leaves
All three leaves
Progress relative to plan:
Our intended progress by week two was to have the following done:
1) have some preliminary tests done (generating cylinders, varying cylinder width, 3D-modeling leaves, and 
2) branching cylinders. 
We accomplished the first task but weren't really able to get the second done. We under-estimated how much we would have to rethink to make the branching happen. Attempts were made to create a new data structure made up of "vine_node" pieces that could branch but this needs further exploration.

Updated work plan:
Given how difficult branching appears to be, we will most likely have to revisit the idea of creating our own data structure to hold the point values at each time step. This will allow us to branch vines and hopefully accomplish all of our original goals. Our updated plan is the following:
By week 3: Get branching working, and allow control with input parameters. Begin leaf generation if possible
By week 4 (FINAL DEADLINE): Finish leaf generation, and make adjustable with input parameters. Fix any issues that may have arisen.
Video of our project in action:
Project Presentation Slides
Back to Top