= Chimera Animation Project = == Preliminary Goals (not specific) == Use and program Chimera. See the [http://www.cgl.ucsf.edu/chimera/docindex.html 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]. My wiki notes on additional [wiki:ChimeraDevEnv development features for Chimera]. Notes on [wiki:ChimeraAnimationDiscussions animation discussions] for Chimera. Notes on specific [wiki:ChimeraAnimationTasks development tasks] for animation. ---- === 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 animations for education * [http://vcell.ndsu.edu/animations/ Virtual Cell Animation Collection] * [http://www.youtube.com/user/ndsuvirtualcell YouTube Channel] * Simplification of complex systems to focus on key concepts relevant to specific education levels * [http://dx.doi.org/10.1371/journal.pbio.0050308 artistic license] * Molecular model simplifications (abstractions, not atomic representations) * Transparency, cutting planes, etc. * Spatial scales and temporal scales adjusted for education * trade-offs between difficulty of physical simulations vs. concept clarifications * where technology enables physical simulations, they may be preferable * Annotations and audio narrations for clarification and explanation * Narrations start with an outline provided by content specialists (professors) * The outline is revised and transcribed into an audio track * The audio track becomes the time-line for storyboarding animation * Review of storyboard may generate revisions in narrative content * Generally storyboard is a continuous "shot", but sometimes additional "insets" may elaborate specific points * Care is taken not to move around into too many different "shots" * Consider "movie grammar" (e.g., don't cross the view axis) * Learning (retention) may be better with text-book reading followed by animations * Hands-on work with animation package ([http://usa.autodesk.com/ Maya]) * Novice undergraduate students - 1.5-2.0 months learning curve * Lengthy production times * e.g., initial creation and academic review for transcription animation was about 12 months work * production process can be streamlined over time * staff turnover incurs time for training * The [http://www.pdb.org Protein Data Bank] * The PDB has [http://www.pdb.org/pdb/static.do?p=education_discussion/educational_resources/index.html educational resources], including a "Molecules in Motion Kiosk" for animations. * Automated algorithm for rotations and focus on 'special' components of PDB structures (e.g., heme in hemoglobin). * Available as open-source in the [http://biojava.org/ BioJava project] (cf. [http://biopython.org BioPython], [http://www.bioperl.org BioPerl]). * PDB also interested in [http://www.molsoft.com MolSoft] browser. * Useful combination of text with hyper-links to molecular views in 3D viewer, using smooth animated transitions between views, transparent surfaces, etc. * PDB preference is for EASY installation (e.g., java web-start). * PDB requirements for animation: * By types of entities: * ligand binding and binding sites * conformational changes and morphing (apo/holo, active/inactive forms) * enzyme catalysis * molecular machines * large assemblies - atom level to maps * looking inside large structures * molecular entities in the context of organelles and cells * Molecular and cellular illustration resources * [http://vcell.ndsu.edu/animations/ Virtual Cell Animation Collection] * [http://www.molecularmovies.com/ Molecular movies and tutorials] * [http://mgl.scripps.edu/people/goodsell David Goodsell] at the [http://mgl.scripps.edu/ Scripps Molecular Graphics Laboratory]: * [http://www.pdb.org/pdb/motm.do Molecule of the month] * [http://www.sbkb.org/update/featured_molecule_latest.html PSI Featured Molecule] ==== 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 * Blender with [http://www.ogre3d.org/ OGRE] rendering engine: * [http://www.ogre3d.org/tikiwiki/tiki-index.php OGRE wiki] * http://www.ogre3d.org/tikiwiki/Tools%3A+Blender * http://www.ogre3d.org/tikiwiki/Blender+to+Ogre * 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 * http://www.scivis.ifc.cnr.it/index.php/download ---- == 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/ * Used in the Protein Data Bank ([http://www.pdb.org PDB]) * [http://www.pdb.org/pdb/static.do?p=education_discussion/educational_resources/index.html Educational resources] includes a "Molecules in Motion Kiosk" for simple animations. * 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