= Chimera Animation Project = == Preliminary Goals (not specific) == Use and program Chimera. See the [http://www.cgl.ucsf.edu/chimera/docs/ Chimera documentation], including [http://www.cgl.ucsf.edu/chimera/docs/UsersGuide/framecommand.html commands], [http://www.cgl.ucsf.edu/chimera/docs/ProgrammersGuide/ programmer's guide], and [http://plato.cgl.ucsf.edu/trac/chimera/wiki/Scripts example scripts]. Notes on how to create a VirtualEnv for the custom Chimera python and notes on how to configure [wiki:ChimeraEclipse eclipse for Chimera]. Translate current movie/animation examples into storyboard GUI interfaces. * Look into the EMANimator extension, including: * http://www.cgl.ucsf.edu/chimera/related/emanimator/emanimator.html * http://blake.bcm.tmc.edu/eman/ * http://blake.bcm.edu/eman2/doxygen_html/ * Suggestion from Tom Goddard: * ''I think that your focus now should be on learning how to make simple animations in Chimera. I think you have to be a maker of animations to productively advance the code. Being a maker of animations will give you insight into what is needed. To make your own learning about how to create animations a productive enterprise it would be great if you could make screen capture videos to explain to users how to make simple animations. Also your own making of animations could produce interesting animations that might have value on Wikipedia to elucidate biomolecules of high interest. This could link to Chimera and encourage more people to make animations. A good source of interesting molecules are the Molecule of the Month entries at the PDB. They have very nice explanations. http://www.rcsb.org/pdb/explore/motm.do There's not a clear sense in the community of what makes a molecular animation useful. This is a fundamental obstacle and trying to make useful animations seems like the way to attack it.'' * May need screencast packages for Ubuntu 10.04, see http://screencasts.ubuntu.com/Creating_Screencasts * Chimera meeting discussion on Aug 23, 2010 * Collaborations drive the animation gallery, they may serve a purpose to define useful animation features for Chimera, which are required by specific users who have identified limitations in Chimera. * Review the presentations from the [http://plato.cgl.ucsf.edu/trac/Workshops/wiki/AnimationWorkshop animation workshop] * Proposal to implement [http://en.wikipedia.org/wiki/Key_frame key frames], with a simple GUI (a storyboard with transitions). * thumbnail images for each key-frame * key-frames may be named * maybe use a list of single-item-dicts like {'keyFrameName': 'keyFrameState'} * transitions between key-frames * automatic linear interpolations for many object properties * motion-specific transitions * 'selection inspector' may provide functionality to identify animation properties * extend the savepos and reset commands to include additional animation properties * develop functionality to save or export key-frame state * similar to save session or a subset of save session functionality ---- === Chimera user guide, tutorials and workshops === * http://www.cgl.ucsf.edu/chimera/docs/UsersGuide/movies.html * http://www.cgl.ucsf.edu/chimera/tutorials/tutorials.html * http://www.cgl.ucsf.edu/Outreach/Workshops/index.html * http://www.cgl.ucsf.edu/Outreach/Workshops/UCSF-Fall-2005/Agenda.html === Chimera: current examples of movies and animation === * http://plato.cgl.ucsf.edu/trac/Workshops/wiki/AnimationWorkshop * http://www.cgl.ucsf.edu/chimera/videodoc/videodoc.html * http://www.cgl.ucsf.edu/chimera/animations/animations.html * http://www.cgl.ucsf.edu/chimera/tutorials/movies08/moviemaking.html * http://www.cgl.ucsf.edu/chimera/tutorials/movies09/moviemaking.html * http://www.cgl.ucsf.edu/chimera/tutorials/volumetour/volumetour.html === Chimera: color and lighting background === * http://www.cgl.ucsf.edu/chimera/pubimages2009/ ---- === Animation Workshop === Consider [http://en.wikipedia.org/wiki/Computer_Animation computer animation] as an extension of computer graphics for molecular data. What are the tools and functionality most needed to produce high-quality animations of molecular structures and processes for scientists, publishers, and educators. * See http://plato.cgl.ucsf.edu/trac/Workshops/wiki/AnimationWorkshop ==== Animation Workshop Notes ==== * Workshop discussion on animation purposes at the end of http://plato.cgl.ucsf.edu/Workshops/AnimationWorkshop2010/Videos/3-YZ.mov * Animations for communication and education (animations without physical systems restrains or models) * Proposed specialty in medical illustration for biochemical systems * Multidisciplinary teams including chemists, biologists, computer scientists, illustrators, animators, etc. * Animations for scientific discovery, using physical systems * Physical models for biological systems require super-computer simulations * Physical simulations at the atomic level run in time-frames with very fine temporal resolution (<= ns), which is about an order of magnitude finer than biological systems simulations (>= ms) * Is it premature to expect physical modeling to apply to cellular biochemical systems? * Rapid advances in computing systems will enable faster calculations for better functionality * For example, uses of graphics processors can produce 10x to 100x faster processing * e.g., [http://www.nvidia.com/object/cuda_research.html NVIDIA CUDA] used in [http://www.ks.uiuc.edu/Research/namd NAMD] * Expensive, pre-computed trajectories can be saved and replayed in visualization software * Animations for insight and discovery or publications? * Scientists may use short real-time, interactive animations to gain insight into systems. * Detailed or complex animations or graphics may be time consuming, only required for important communications. * Course modeling and rendering for quick, easy perception vs. artistic modeling or rendering for publications. * Workshop discussion on animation software at the end of http://plato.cgl.ucsf.edu/Workshops/AnimationWorkshop2010/Videos/3-YZ.mov * Movie studio packages vs. molecular software packages * Studio packages (e.g., [http://usa.autodesk.com/ Maya], [http://www.blender.org/ Blender]) are "blind" to molecular properties. * Molecular software (e.g., [http://www.cgl.ucsf.edu/chimera/ Chimera], [http://www.pymol.org/ pymol], [http://mgltools.scripps.edu/ MGLTools], etc.) are not built with sophisticated animation GUIs. * What about integrated systems for "live" molecular models in animation suites? * eg: [http://molecularmovies.com Molecular Maya] and [http://mgldev.scripps.edu/projects/wiki/index.php/Main_Page ePMV] * Learning animation suites ([http://usa.autodesk.com/ Maya], [http://www.blender.org/ Blender], etc.) * Graduate programs for scientists to specialize in scientific visualization. * Animation suites have considerable learning curves. * Collaborations between content scientists and visualization specialists. * Most scientists have not learned animation suites. * Most scientists do not have time to learn complex software to create sophisticated animations. * Scientists interested in molecular animations are familiar with chemistry packages ([http://www.cgl.ucsf.edu/chimera/ Chimera], [http://www.pymol.org/ pymol], [http://mgltools.scripps.edu/ MGLTools], etc.) * How do we facilitate simple animations for scientists? * Molecular and cellular illustration resources * [http://www.molecularmovies.com/ Molecular movies and tutorials] * [http://www.pdb.org/pdb/motm.do Molecule of the month] ==== General Phases of Production in 3D Animation ==== * Audience, Content and Goals * Outline and Storyboard * Modeling and Detailing * Surfacing and Lighting * e.g., depth cues with [http://en.wikipedia.org/wiki/Ambient_occlusion ambient occlusion] * Animation and Dynamics * Rendering * e.g., [http://en.wikipedia.org/wiki/Non-photorealistic_rendering non-photorealistic representations] * Compositing and Editing * Integration of narration and computer animation * Audio complements visual presentation (preferred to sub-titles or annotations) ==== MGLTools "Scenario" ==== Scenario’s Basic Objects: * Interpolator: An object that interpolates between values * Keyframe: A (value, time) pair * Interval: A pair of Keyframes and an Interpolator * Actions: Key frames and Intervals * Actors: A list of actions that modify a given attribute of a Python object * Director: A list of Actors * !DejaVu-Scenario Interface * Actors for attributes of !DejaVu objects * e.g. Camera.translation, Geom.material ==== 3D Animation Packages ==== * All-rounders: Blender, Maya, Cinema4D, 3DS Max, Lightwave, !SoftImage XSI, Houdini, modo, EIAS, Carrara, Strata 3D, Truespace, Shade, Realsoft, ... * Modeling: ZBrush, mudbox, !FormZ, Rhino, Silo, !SketchUp, Hexagon, !PolyTrans/!NuGraf, !T-Splines, ... * Rendering: Renderman, mental ray, fPrime, Brazil r/s, finalRender, Turtle, vray, Maxwell Render, ... * Animation/Effects: Motionbuilder, Realflow, Massive, !SyFlex, Poser, Endorphin, ... * Compositing: After Effects, Shake, Nuke, Combustion, fusion, 3D Equalizer, Boujou, ... ==== Blender Development ==== Blender 2.5 is a redesign and reimplementation of Blender using python 3.1. * Tutorials: http://www.blender.org/education-help/tutorials/ * Development: http://www.blender.org/development/ * Architecture: http://www.blender.org/development/architecture/ * Blender build systems: http://www.blender.org/development/building-blender/ * API introduction: http://wiki.blender.org/index.php/Dev:2.5/Py/API/Intro * API reference: http://www.blender.org/documentation/250PythonDoc/contents.html * Python scripts: http://wiki.blender.org/index.php/Extensions:Py/Scripts * Python scripts manual: http://wiki.blender.org/index.php/Doc:2.5/Manual/Extensions/Python * Blender hotkeys reference: http://download.blender.org/documentation/BlenderHotkeyReference.pdf * MGLTools - ePMV API: http://mgldev.scripps.edu/projects/ePMV/api/index.html * BioBlender at Scientific Visualization Unit of the National Research Council in Pisa, Italy: * http://www.vimeo.com/user2518552 * http://www.scivis.ifc.cnr.it/index.php/videos * http://bioblender.wordpress.com/ * http://blog.mikepan.com/blender-workshop/ * http://blog.mikepan.com/mastering-blender-game-engine/ * http://blog.mikepan.com/biochemical-visualization-using-blender/ * "Why Blender? Blender is especially suitable for this task for several reasons. Its python support allows us to accomplish a lot of custom features in relatively very little coding. Having a game engine and a physics engine built-in means we can use do realtime visualization all from one software package. Its open source nature allows us to easily modify (at least have access to) the source code if needed. ... Surprisingly, the game engine performance is very fast, it manages to maintain 20fps on a laptop even with a fancy ambient occlusion shader." * Download BioBlender: http://www.scivis.ifc.cnr.it/images/stories/download/BioBlender02.zip ---- == Molecular Dynamics Engines == * Simbios at Stanford: http://simbios.stanford.edu/index.html * Molecular dynamics with NAMD and VMD: * http://www.ks.uiuc.edu/Research/vmd/ * http://www.ks.uiuc.edu/Research/namd/ * Molecular dynamics with MORDOR: http://mondale.ucsf.edu/science/mordor.html * Molecular Modeling Toolkit (MMTK): http://dirac.cnrs-orleans.fr/MMTK/ * Conformational Dynamics Data Bank (EM-NMDB): http://emnmdb.org/ * Protopedia article on molecular morphing: http://www.proteopedia.org/wiki/index.php/Morphs * Molecular morphing (with Chime): http://www.umass.edu/microbio/chime/morpher/morphmtd.htm ---- == Web services for molecular movies or animation == * Database of Macromolecular Movements: http://molmovdb.org/ * Yale Protein Morphing Server: http://molmovdb.org/molmovdb/help/morph.html, including examples at http://molmovdb.org/cgi-bin/movie.cgi This one has lots of options. Seems like many are for a single image or jmol setup, but there is also an animation settings section at the bottom. * Poly View 3D: http://polyview.cchmc.org/polyview3d.html These two servers allow the user to create simple molecular movies. Will give some idea of common goals and user options for molecular animation. * Movie Maker: http://wishart.biology.ualberta.ca/moviemaker/ * Protein Movie Generator: http://bioserv.rpbs.univ-paris-diderot.fr/~autin/cgi-bin/PMG UCLA Molecular Imaging Data Access Portal System (MIDAS) * http://midas.nuc.ucla.edu/index.html !SciPy 2010 track on bioinformatics: * http://conference.scipy.org/scipy2010/schedule.html * http://www.archive.org/details/Scipy2010-JanH.Meinke-ProteinFoldingWithPythonOnSupercomputers ---- == Other software with movie or animation capabilities == * Annotated bibliography of software: * http://molvis.sdsc.edu/visres/molvisfw/titles.jsp * http://molvis.sdsc.edu/visres/ * Software rankings (validity?): http://www.umass.edu/microbio/chime/top5.htm * pymol: http://www.pymol.org/ * pymol on youtube: * http://www.youtube.com/watch?v=EhQ4q37AUgA&feature=related * http://www.youtube.com/watch#!v=Ufzx188xWd4 * http://www.youtube.com/watch#!v=h-2fQCIsBnk * http://www.youtube.com/watch#!v=ARtd-UlI37w * pymol tutorials on youtube: * http://www.youtube.com/watch#!v=vDlyfk2zC-k&feature=related * http://www.youtube.com/watch#!v=voIxZ-qzey0 * pymol plugins: * APBS: http://www.poissonboltzmann.org/apbs/ * pymol installation for Ubuntu: {{{sudo apt-get install pymol apbs}}} * Jmol: http://jmol.sourceforge.net/ * Chime (Jmol predecessor): http://www.umass.edu/microbio/chime/ * MGLTools at Scripps: http://mgltools.scripps.edu/ * Open Mol: http://www.csc.fi/english/pages/g0penMol * GRASP: http://wiki.c2b2.columbia.edu/honiglab_public/index.php/Software:GRASP * !MolScript: http://www.avatar.se/molscript/ * Bio Studio animation: http://www.youtube.com/watch#!v=Ms_ehUVvKKk&feature=related * protopedia: http://proteopedia.org/ * Temporal domain in VTK: http://www.vtk.org/Wiki/VTK/Time_Support * Explore VTK tools for animation ideas: http://www.vtk.org/Wiki/VTK_Tools * Explore !MayaVi for animation features: http://code.enthought.com/projects/mayavi/ ==== Molecular Animation within Movie Suites ==== * Molecular Maya: http://molecularmovies.com/index.html * MGLTools - ePMV: http://mgldev.scripps.edu/projects/wiki/index.php/Main_Page === Commercial software === * Accelrys pipeline pilot components, incl. Discovery Studio: http://accelrys.com/products/discovery-studio/ * !MacroModel: http://www.chem.purdue.edu/computation/MacroModel.htm ---- == Historical Notes on Molecular Visualization == * http://www.umass.edu/microbio/rasmol/history.htm