Uncategorized

Call for feedback: Redcurrant high-level requirements

24 July, 2014 |  85 Comments | by bart

Redcurrants by Vicky Brock 2

Animation projects are increasingly run by ad-hoc groups of artists from all over the world. And once these projects become complex enough, Dropbox or SVN won’t be enough to run such ‘virtual teams’ on. You need a serious asset management and collaboration tool if you want your project to succeed. 

With Redcurrant, the Blender Institute will create such a tool. Using only open source technology, it will allow artists to collaborate on any kind of digital project. It will manage the assets, provide centralized team communications and streamline their workflow. It will also allow the Blender community (or any other community) to follow any project and to contribute to it.

Designing this tool has proven to be a difficult task, with each artist having different ideas of what’s relevant for such a tool. We have now taken a step back and created a set of ‘high level requirements’. We want to check these within the Blender community before creating more detailed specifications.

Have you worked in an animation team before? Or do you have experience with asset management systems? Then we’re especially interested in your feedback!

Please read the high-level specifications and leave your thoughts in the comments below.

Thanks!

PS: Wondering about the name? The redcurrant is a small, red berry. It seems to go along quite well with gooseberries!

Image: Redcurrants by Vicky Brock (Creative Commons)


85 Responses

  1. Konrad Kleine says:

    Hello,

    I think that taking a step back from a problem and getting a clear vision about the requirement is a great idea. Thank you for letting us participate in this process.

    My ideas are probably motivated by all of the different tools for managing agile teams in the software world. I’ve been working with tools that didn’t allow for a tight integration of each other. For instance you have a bug tracking tool on the one side and a scrum tool on the other side. In practice they eventually will run out of sync. This is too bad because the scrum tool can add great value to the performance of your developments. For instance it offers a burn down chart (http://en.wikipedia.org/wiki/Burn_down_chart) that is based on your estimations for a task. A burn down chart basically answers the question if you can keep the release date for your product or if you need more time. Smart systems can also take into account when people typically over- or underestimate their tasks.

    This is not only good for managers. As we all observed, many CG studios have been shut down because they went bankrupt. I once saw the documentory on Rhythm and Hues and one thing they said was that they had to work under an extreme pressure. Artists had to travel to different countries and were parted from their families and friends just to work in a country with lower tax rates. Then, when a shot was done, the director decided to go for a complete change. That basically means, days, hours, weeks and maybe month of creative work went to the trash. Maybe if you can see ahead of time what a change would mean to the project’s deadline and it’s budget you consider a different route.

    For Recurrant the situation is probrably different because it is a distributed project. But does this make things easier? Probrably not. Communication is paramount here as well as a good overall understanding of “where are we?”. Not locally of course but “where are we” in terms of progress and the targets everybody has as well as the project has.

    That said. I suggest to build some for of reporting into Redcurrant:

    * Show a timeframe with milestones and then show if you’re ahead of planning or if you’re falling behind.

    The requirements deduced by that are:

    * Allow for planning of assets and production steps in a way that you describe an asset before you actually create it and put a number of days on it that you think it will take you to complete the asset.
    * Associate an asset to a milestone.
    * A milestone should not be made up of just a time when it shall be reached but what should be reached. For example you could make a milestone for all the steps in a production: from storyboarding to showing the final movie in cinemas.
    * Calculate when a milestone is estimated to be finished based on the assets or tasks associated with it.

    Don’t get me wrong, I completely understand that creativity isn’t completely plannable. But an experienced artists probably can tell if something takes hours or days to complete. Remember, this is not a battle of who can do more in a shorter period of time.

    I hope you find this idead of monitoring and reporting tools interesting.

    Have a nice day!
    Konrad

    • Hi Konrad,
      thank you very much for taking the time to write this. Your suggestions about milestones are definitely part of the requirements for the project.

    • Randy LIttle says:

      I would suggest you guys go download the opensource project manager Clockingit.com and then modify that to be a better CG tool. I use it all the time to manage jobs for my studio. It should be quit easy to start with this amazing thing and then add cg specific features. But why reinvent the wheel.

      http://www.clockingit.com

  2. Benjamin says:

    The ability to preview .blend files in the browser would be extremely helpful :)

  3. stephen says:

    Something that would be hugely useful for commercial work is different levels of users which have access to different areas of the project. E.G.

    1. Super user – Complete access to all assets, can moderate certain aspects of Redcurrent.

    2. User – Complete access to all assets.

    3. Client – Access to certain assets (e.g. dailies, storyboards, renders, animations). Has the ability to upload certain assets via a web interface (e.g. logos, brand guidelines, scripts).

    I know it’s stated that the aim isn’t to have a fully fledged project management system, but by allowing different levels of access for different users will make this tool very useful to users who make a living out of Blender.

    This is probably already planned, but having the ability to easily install onto a web server using readily available frameworks (PHP, MySQL etc) would be very useful. I’m thinking something along the lines of the WordPress installation would work great.

    Really excited about this.

  4. Brian Lockett says:

    It would be helpful to have an asset browser where you can not only preview your assets available to you in a project, but you can optionally share assets seamlessly across your team.

    If someone finishes an asset and chooses to make it a “live” asset, where other members of the team will see the asset downloaded into their asset browser windows (perhaps with an update message that new assets have arrived), it would help a team accelerate their project.

    There could be an option you could choose which assets you wish to have shared across the team, to choose which among your team to share the assets (individuals or entire team), a preview window for each asset (maybe an asset preview camera render setup is needed to allow custom asset previews), and asset information (asset creator’s info and notes).

    I think I saw you guys already mention some sort of asset management system in mind, so I would consider this suggestion just an expansion upon that general idea.

    • Hi Brian,
      asset browsing, representation and management is a wide topic. Most of your suggestions are valid requirements for the project! Thank you for taking the time to write this.

  5. Ciriaco says:

    I think a good starting point would be to develop a plugin for some existing CMS like Joomla. The collaboration tools for managing users and permissions, security, PHP libraries, skins, mobile devices, cache, documentation, etc ….. is already developed and could save a lot of time and focus on basic development tools for Blender and render farm. In addition there is a large development community that might help.

    =:-)

    • We are investigating several solutions (C/AMS like Tactic or OpenProject). It’s not clear yet how much we will benefit from using them.

  6. I have managed a few animation projects in recent years. I’ve explored many project management solutions along the way.

    The main problem is that most of them are too complicate to use, too many texts, too many options, too many menu items.

    As an artist who thinks graphically, I hate anything that looks like another CMS.

    Interface wise, I love Trello. It’s clean, It looks fun, It’s generic enough to adapt to any
    kind of usage. My crews had no trouble adapted to it. But it can only be used for shot management, not the project time plan or asset control.

    I have tried the Google Sheet to manage shots. and it proved successful. With Google’s feature, we could chat inside the Sheet. so our collaboration is at ease.

    By coloring each cell which represent a shot in our animation, we could identify the progress within a quick glance. If all cells turn green we could raise a toast! This visual presentation makes the artists more comfortable with the tools.

    For the assets management, I could not find any solution but to keep back up. SVN or other version control are too complicate for the artists. the versioning tasks falls upon the manager(read: me).

    I used an owncloud server to centralize the project. Each workstation would sync the files and work on them locally. Once in a while I see some files got conflicted and it automatically saved as another copy, I’m safe here.

    Another measure I’ve experimented is to host the Owncloud server in Amazon Cloud and use S3 as its storage. By enable the S3’s versioning feature, I don’t have to worry about versioning at all.

    S3 will keep every changes intact at the cost of growing storage size. I never lose a single version of any file this way. (But retrieving the previous version takes a little more effort.)

    This mean my whole project is available in the S3, which has one more benefit in case I render it with Amazon Cloud, I don’t have to upload anything. It’s all there.

    I have a chart of what I think my Virtual Studio could be. please let me know if you’re interested.

    • Konrad Kleine says:

      Own cloud looks like a thing worth looking at. I know that we’re collection requirements and not solutions.

      Maybe the types of assets/content that the system can handle need to be specified and after that the actions you want to perform on them. Right off the bat I can think of:

      * Text Documents (incl. Word processing, Spreadsheets)
      * obviously edit them
      * preview them
      * Image based documents (from JPEG to OpenEXR)
      * preview
      * annotate
      * maybe compare to another image or version of the file
      * Video content
      * playback
      * still preview
      * commenting based on time markers
      * 3D content (incl. blend files, maybe some standard OBJ or Collada)
      * quick-render on upload for preview
      * long-running render on the press of a button.
      * Audio content
      * listen to audio
      * commenting based on time markers
      * visualize spectrum

      Feature that should be present for all assets are:

      * Simple versioning. Going back to an older version of an asset would be great. Things like branching probably only cause problems and are hard to implement in non-text based formats. Apple does something like that with time-machine but not out of the box for all files. Only for those adapting their API and for the iWork suite, I guess.

      * Commenting

      I understand that those requirements are quite detailled.

      Also it is not clear how an artists or a group will work with the content in the system. Questions like how to update your working directory probably need to be addressed.

    • Thank you Boonsak for your input!
      Feel free to reference here your studio/pipeline idea, we are open for suggestions!

      One question: did you have any TDs working your past productions in the past?

  7. Anders Kirchenbauer says:

    I feel that Google had a good thing when it was still playing with Wave, but it was cancelled and didn’t quite go far enough on some tech. What I feel could be pulled from there is the idea of a near-instant messaging system that is asynchronous and on-the-record with multiple people.

    This emulates the functionality of a meeting, with the concept of meeting minutes being partially encoded by the transcription, but then you add the capability for people to highlight and link an index out of that transcription as the keypoints or minutes to the meeting.

    Keep that searchable and indexable, and possibly later integrate with something like Redmine or Jira (or the internal tasking system mentioned in the original reqs document) to assign tasking.

    Sidenote for scripts, syntax highlighting and numbering would be a very good feature so that it doesn’t become a wall of code.

  8. Andy says:

    I don’t have experience in animation collab, but I have lots of experience in video collab. Vimeo Pro and Plus memberships are generally what ad agencies use to generate unbranded, private or password-protected wip versions of the project for review and feedback. I have heard of various other tools such as Frame.io

    Personally I’m wary of changing my own workflow too much, as email is a useful paper trail and I’m organised with attention to detail in text notes, correct folder systems etc, but I can imagine that a system that handles communications and tracks revisions, client comments etc can be useful.

    Perhaps a helpful task would be to figure out what items people are not going to change about their workflows (eg Dropbox?) and work around those instead of trying to reinvent the wheel.

  9. Eibriel says:

    Hi!
    An asset management is a huge project, because need to be flexible to the needs of every project and every team (and every department inside a team).
    My advices:
    – Don’t try to keep tracking of small tasks. People will use Google Drive instead. Only keep tracking of large tasks like “Animation”, or “Rigging”.

    – Split the movie in Sequences, then in Scenes, the in Shots (order is irrelevant, will most likely change at edition stage).

    – Put effort on make it look nice and user friendly (is the most important note, because people will just not use it if not). People will start using Google Drive or LibreCalc for small, every day changing tasks.

    – Lot of different “Views” of the database is needed, every member of the crew need to use different data. I have the following views for Kiribati:
    — Scenes
    — Shots
    — Characters
    — Sets
    — Props
    — Envs (avandoned)
    — Matte
    — Concept Tasks
    — Matte Tasks
    — Layout Taks
    — Stereo Tasks
    — Animation Tasks
    — Rigging Tasks (avandoned, Tactic is ugly people uses Google Drive)
    — Shading & Texturing Tasks (avandoned, art team using LibreCalc, small tasks can’t be traked)
    — Modelling Tasks (avandoned, art team using LibreCalc, small tasks can’t be traked)
    — Lihting Tasks
    — Render Tasks

    – The manager need to respond this questions:
    1) How many shots are?
    2) Which shots are Layouted/Animated/Lighted/Rendered/etc..? Which not.
    3) Which are my tasks? Which are the tasks of my team members?
    4) Can I start with my task? Or someone else is still working on the shot/model/etc..
    5) When I must finish my task? (start is irrelevant)

    – The tasks need to be packaged. And every pack have a deadline (not the individual tasks). For example: Shots 5, 9, 12 need to be ready at X time; Props A, B, C need to be rigged at X time; etc..

    – “envs” are just impossible to track, don’t try it. Focus on tracking “props”.

    – A Finished task don’t mean that is Approved, an Approved task don’t mean that is ready to go to the next team (Layout->Animation). A task need to be marked explicitly as ready to go to the next team.

    – Is hard to track deleted, added, moved, streched, shortened shots on editing stage.

    – Put effort on tracking Macro tasks, Micro tasks just go.

    – Miscelaneous tasks will go to GoogleDrive or LibreCalc.

    – Allowing people to leave comments (with images!) on a task update in a social way is *very* important (new model, new shading, etc..)

    – Storyboard and Layout is not a shot task, is a scene task. The Shots don’t have animation deadline, but Sequences.

    • Konrad Kleine says:

      Very cool ideas!

    • Francesco says:

      There are many interesting thought in your post but I think it’s not a good idea to have something tracked and something not.
      I believe everything have to be tracked but information have to stay relevant for the people who need them.

      Probably small task cannot be the most relevant ever but they are part of the production and have to be adressed as well otherwise caos comes up in a matter of seconds…

      The most important thing is to develop a pipeline and tools that help make the production smooth and the communication relevant…

    • Hello Eibriel,
      thanks for sharing!

      If I recall correctly you are working with Tactic on Kiribati. How is the experience, how much custom work did you have to do on the framework in order to make it fit the guidelines you just wrote about?

      Would you recommend to use Tactic vs developing a custom solution almost from scratch?

      Also, how are you dealing with asset management, versioning and dependencies?

  10. m.ardito says:

    I’m not an expert, but jut to not reinvent the wheel, here is a post I posted looong ago on BA, about a similar tool from The Foundr, which I saw last year… it’s packed with thousands of features…

    http://blenderartists.org/forum/showthread.php?316310-foundry-flix-awesome-tool-would-similar-tool-benefit-blender-(project-gooseberry)

    Marco

    • Konrad Kleine says:

      Here’s the link to the product page for “Flix”: http://www.thefoundry.co.uk/products/flix/

      Their perspective on storyboarding and iteration is really interesting and hides all the complexities of versioning or file management from you. If one can agree on a few painting tools (Krita, Gimp, MyPaint, …) to accomplish the same iterative process of going in the image and saving it back to the strip, that would be great. I think Flix uses the PSD format for that. That limitation to a single format on the other hand allows for a much more streamlined workflow. Maybe there’s a format like Gimp’s XCF that can accomplish the same?

  11. Tobias says:

    Is there a mail list for this project?

  12. MCHammond says:

    Everything looks awesome, I have a few suggestions though.

    High-level requirement,
    1: Have you considered other project types other than film? would it be feasible to support game projects for example? what other tools would be needed, to support game engines? Is there demand for this?

    2: Audio support is a must and there needs to be some link between animation shots and audio files for lip syncing work. Often the audio has already been created or at least blocked out before an animation shot is started. A way to “automatically” mix down multiple audio sources such as music, voice and effects into one single file so that the animator can load a single audio file “that represents the final audio” into a blend for syncing animation.

    3: Could be a separate feature to the player but a robust “shot notes” system is required in addition to conversations and the player. A director or department lead needs to be able to quickly view a shot and write up notes on a frame by frame basis. It would also be a massive help to support on playblast drawing like: https://vimeo.com/55656035

    • 1. Primary focus is film. Game is a bit different, but with some additions could probably work too (see what SG has done).

      2. This is of course of primary importance, especially for animators who need visual and sound handles around their shot.

      3. Yes!

  13. Angus Hollands says:

    It would be useful to be able to mark dependencies for projects, which can be shared amongst tasks, such that when a dependency is resolved (I.e another task is completed) it is automatically resolved in the dependant task. This could raise notifications, and even prioritise tasks so that task with the most interest groups and fewest dependencies themselves can be resolved first. (that way you don’t waste development time)

  14. Manu says:

    Eibriel has written most of the important capabilities of an asset management system.
    Maybe, I would add a rich python API, just to have access to ALL DATAS in python from Blender or raw Python…

    Another important thing is the ability to track an asset in all the production files : for example, in which shots my asset is used (where is used my rabbit ?)

    Maybe, drawing on video previews to add note (on all frames or just one like grease pencil). Or adding notes (in text) depending on frames could be interesting.

    Redcurrant should accelerate the production process. Some asset management systems (such as the one which A…sk bought recently) are kind of hard to handle, so they’re not friendly for people, artists feel forced to use them and it’s not a good thing. The point is not to “replace” existing functionalities but to add some which are faster and easier to use otherwise people will not use it.

  15. I have been using, bitSync for small projects and runs fine, the problem is about versioning it does it but not in the way i would like.

    Another tool I have used before is owncloud, it a great tool, you can create projects asign people to the project, has good clients for managing the syncin.

    Now I’m using is SeaFile is really easy to install, it has file versioning, project control to asign people to the project, a message system, file versioning, etc. Now SeaFile os my choice.

    Hope this could be something usefull for you guys, I’m not an expert but can contribute a little.

  16. Andrew Fall says:

    Functions I wish I had in an asset management system:

    Roles
    – Default set of Roles e.g. Director, Client, Artist…
    – Roles have permissions e.g. By folder: Can/can’t view, Can/can’t upload, Can/can’t delete…
    – Director adds/removes particiants, selects roles, edits role permissions…
    – e.g. Client may access area a, Artists may access area a+b, Accounts may access area a+b+C, etc..,

    Assets
    – Every asset has an owner e.g. the artist,
    – Every asset has a status e.g. draft, live, old, copy,
    – Every asset has an availability: Available to edit / Being edited (by [participant]),
    – Asset owners and Directors may change the status of an Asset,

    Blend files and Renders
    – Blend files import the live versions of assets,
    – Renders stored in folders with permission for access according to role,

    Communications
    – Roles receive auto updates about the status of assets, renders and blend files,
    – Director may change what is automatically communicated and to which roles,
    – Participants receive auto messages about updates to the area they have permission to access,
    – Participants may send manual messages to roles

    Types of project
    – Default settings in all of the above for types of project e.g. Commercial, Open, Friends, School…

  17. Infinity says:

    Not sure about this aspects. I think communicate & collaborations with Drupal community, one of the most robust open-source CMS , would be a very good idea. Also, it would greatly benefit both leading open-source projects.

    Dries, the creator of Drupal, twitter :
    https://twitter.com/dries

    It would be nice to have open-source choices for film & game industry :
    http://youtu.be/IPu28vUcZzI

  18. Peter says:

    I’ve been using various cloud systems and ftp and others.
    And currently in the middle of a CMS project, it deals about the same problems you have.

    First of all, you can do without creating a next blendswap/dropbox/googledrive.
    Have you seen http://www.bittorrent.com/sync ?
    A plus about using bittorrent/sync is that you wont need to store lots of Gigs of data from all the project, as they shared just between the users / all devices / all operating systems already.

    If you could make some local (web?) GUI around it that uses some player options for the shared content, or use local blender itself to view, then you ofload your servers you have no need to store other non related projects data. (if you do like to share make a deal with blendswap .. or another party use their experience, spare your you coding time to improve blender.

    Use an existing Content Management System (CMS) system so people can exchange thoughts or plan schedules for their project, or manage tasks etc.
    CMS does allready exist names like Drupal / Joomla / etc.. ( find yourself a CMS from over hundreds of variants here : http://www.cmsmatrix.org/matrix/cms-matrix ).

    CMS systems do require regular support /updates /administration..
    But it would be way smarter to just create a joomla plugin.
    Then creating your own CMS system only to do something with blender.
    That way you wont need to support all the huge code parts that is required to run a. CMS. You could then simply share the plugin, and perhaps also run your own (freeware) joomla web server with that plugin.

    CMS systems like joomla drupal /etc etc, are not just for fun free web-tools.
    These days huge websites use it, using their plugin systems to sell, or to show, or to plan, or to collaborate, or to workflow..

    • Hello,
      we have used BitSync during the production of the teaser and we already know it would not work for a large production.

      We are also investigating all existing CMSs.

  19. Brad Christensen says:

    Regarding conversations / comments on assets and general collaboration… Take this thread of feedback for instance. There must be an easy way to distill collect, and connect the relevant questions, answers, ideas and suggestions in conversations around assets and collaboration.

    With only about 20 comments as of writing this reply, there are already more good suggestions and questions that I can keep track of. The number of people involved so far would represent a small team. Now consider opening up a second parallel thread of discussion for a much larger public (the Blender Cloud). That larger thread may be huge and full of fantastic original ideas and questions.

    Make it easy & fast to extract those tasty bits of idea awesomeness so others can take notice, iterate on them, etc.

    I can imagine a tagging tool in the conversation / comment system making it easy to populate an index of questions and ideas, making it easy and more importantly FAST to see a discussion’s main lines of concerns. And to very easily navigate to the more detailed bits of ideas.

    • Asset management is a really important factor. But there are two ways of collaborating online, and by far the one that scales the best for most applications has been when multiple people can edit an asset at the same time.

      This can be an extremely hard problem to solve, so I wonder if anyone remebers this project called verse that sets out to solve it?

      It is set up to allow changes to happen in real time between different programs, such as viewers or other editing programs. The assets are always kept track of.

      The guy that built it used it to make a game called LOVE.

      It has a rich history with Blender already, and seems to be ready made to enable many of the things you are trying to do. Hopefully this will at least spark some discussion about it.

      You can find out more about it here.

      William.

    • Yes, a reddit-like tool with upvotes, tags and filtering tools.

  20. Joey Ferwerda says:

    At our office we have been using OpenProject for quite a lot know.
    Even though it is created for general (code) project management, it is highly extencible and already has some features that match the description for this project, so it could be a good base.
    http://openproject.org
    It is created on ruby on rails and I find the community really nice!

  21. Rick says:

    Own cloud seems like the tool for the job

  22. Toke Jepsen says:

    Manu is very right about the rich Python API. It is something that all asset manager have or should have, to allowing for custom automation. If you don’t have time to integrate a new feature, the TD’s in a company can do a temporary solution, that might even feedback into the main product.
    With a Python API you would need some daemon to be running as well, that can access any event in the system and trigger an action.

    Something I haven’t seen and been missing from all asset managers I’ve seen, is a user friendly way of tracking time. Here I think Paymo; http://www.paymo.biz/, is doing a great job at offering different ways of tracking on desktop, browser or mobile based.

  23. Beorn says:

    All up, this is a good proposal.

    I think Eibriel made the best points so far, particularly regarding the ability to label tasks as “finished”, “approved” (and even “locked”.)

    For example, an animator shouldn’t be able to work on a shot until the rigs and layouts are approved for use. Also, once an animation shot is locked, it shouldn’t recieve any more updates from the assets it uses. So for example if a rig is updated for some reason, the new version should not be used by locked animation shots, only by work-in-progress shots, unless manually specified.

    Also, integrating scheduling, deadlines and time spent is important for finishing a project on time and troubleshooting bottleknecks in the production. So if one team member goes late on a deadline, the schedule is automatically adjusted.

  24. Takanu says:

    One thing id like to recommend is an actual Asset Browser panel inside blender that is more suitable to utilising and organising assets, that can show multiple assets from a single .blend file (perhaps some kind of tag or mark that exposes it as a usable model through the asset system). Although it’s probably not useful for rigs, it would be useful for environment objects, as I like to develop groups of similar assets, or variations of assets within one .blend file.

    Also, although I don’t know if it’s out of the scope of this project, but making things like brush and sculpt settings properly exportable and importable would be useful for streamlining the development process and sharing specific tools with others. Both of these would be useful not just for animation and film production :3

  25. Sam says:

    Please provide functionality to manage progress on scripting as well, that way we can cover two aspects: Video and Game production.

    Thanks.

  26. mak says:

    Hi.

    If I had to choose the most important of the comments above I would repeat:
    Put effort on make it look nice and user friendly (is the most important note, because people will just not use it if not (Eibriel).

    Some thoughts:
    1. Supports the entire movie making process from storyboarding to asset creation and render farm management.
    Should be customizable. Adapt to a specific pipeline, set of tools, requirements of another project, etc.

    3. Has a ‘Player’ to review the current state of the project. It allows browsing into shots to access all related assets and their current or previous versions.
    – Ability to scrub frame by frame. Playback of timeline and audio.
    – Can make annotations on frames (or copy current frame for annotations).
    – Click on an asset’s thumbnail in another view should also raise a “player”.
    – Have some transcoding options (mentioned in notes 2).

    5. Is easy and fun to use for artists and encourages status updates with the community.
    Aka, use of colours, icons and shapes, drag and drop, less typing possibble, (nodal approach where is possible?).

    6. Offers light weight project and task management, and gives artists a list of task/assets to work on.
    Note 6: RedCurrant does not aim to provide a full-blown project management system; implementation of these is very much dependant on the preferences of studio managers and is left to them to do.

    Why light weight? That’s the core. The ‘preferences of studio managers’ are driven by the lack of such a tool.
    It should have planning tools, gannt diagrams, task assignments, roles, constraints/dependencies, reviewing, being able to tag and group, filter and sort.
    If it is customizable and can be extended there is not a single problem.

    8. Has a web-based frontend which is integrated into the Blender Cloud. It also offers asset management tools inside Blender and a local client for efficient checking in and out of large files.
    – Different role, different view. User can further customize personal view.
    – Rest API, easy present and future integration with tools.
    – Asset-centric is great but good to have tools for tasks that file managers are not suitable, like: group image sequences when display directory’s conents (and rename, move).

    2. Manages versions of digital assets (which are not limited to Blender content only) and their relations.
    7. Supports ‘virtual teams’ or remote team members, and allows artists to work offline.

    Sounds like git for movie production. Uber cool. But, avoid the terminology :D (checkout, pull, branch, fork, etc).

    Also:
    Use of templates.
    So, for example the default template for the task’s status is: Finished (Blue), Approved (Green).
    The user can change that to: Assigned(…), Draft(…), Finished(…), Approved(…), etc.

    Python API should be a requirement.-

    Instead of ‘a shot’, ‘a scene’, etc an abstraction like ‘a task’ is more appropriate.
    Each task has its own requirements, subtaks, assigned persons or group of persons (with one or more roles), dependencies with other tasks, time planning and constraints, etc.

    Not tight integration with just one tool or one apsect only of the production.

    Ability to automate processes. For example, conversion of images to video file (and add audio file?) when a shot’s status is marked delivered.

    • sozap says:

      “instead of ‘a shot’, ‘a scene’, etc an abstraction like ‘a task’ is more appropriate.”
      I disagree with that…
      For an artist who is not used to project management software/coding it’s hard to understand the word task and how it’s linked to a shot for example.
      Maybe having the possibility to name these task, so you can manage a game project instead of a movie for example would be cool !
      Using appropriate lingo is fundamental , because this project management will be CG/Movie oriented, it should be clear to understand and used by non-technical people :)

  27. EknightGER says:

    From my general project management experience I know that the choice on a specific software is less important than the agreement of a flexible and joint approach to processes. I would split the requirements and not aim for a single tool, but rather design a set of tools following best practise for each tool (there were loads of recommendations on such in previous comments) and then use effective project management to tie them together. This way you would even retain some flexibility from one project to another and within an evolving project.
    Re. Project management, this is a process and all tools for that follow the project management approach. Lots of PM software is totally overload, it is introduced and then people go back to simple templates, sheets and server hosting for those. Collaboration is a lot more important. However, the idea of project gateways with conditions to unlock them to prevent out of sync workstreams are equally important as tracking timelines and resources. Best is to get a really experienced project manager for this. They are worth their weight in diamonds … Figure of speech ;-))

  28. Please have functionality to support remixing and forking of individual, copyleft licensed assets and full projects. E.g. Github.com and Freesound.org
    http://freesound.org/browse/remixed/

    This can lead to increased collaboration and diversity.

  29. redaready says:

    camlistore could help http://camlistore.org/

  30. David Rylander says:

    I’ve tried many asset and project management tools but always fall back on zim and dropbox/btsync for my project because of flexibility. There’s always some vital function missing or some stupid and time consuming way of doing things that makes me avoid the tried tools.
    All projects is different so the tool needs to be flexible, you can have high level tasks which the user can label how they please, like shot, scene, episode. A subset of tasks like storyboarding, animation, render, etc. A set of tags to define the state of the tasks like started, pending review, finished etc. +other types of tagging. Everything flexible and setable by the users, with a few common templates available like animation prod., film prod., commercials etc.

    WordPress has been mentioned as a reference which is very good I think. Super easy to install and customize and to add extra functionality as plugins.

    Adding tasks and assets must be fast and easy, one shouldn’t need to click add task, get a popup to fill in every detail and then submit for each and every task, large or small, think of the flexibility and speed of spreadsheets instead.
    Assets adding should be equally easy, for adding wip shots as an example have a wip-folder where shots is dropped, named with a shots-tag and version number and that shot is automatically added to the correct task.

    Flexibility, ease of use and speed please.

  31. sozap says:

    I don’t understand how much redcurrant will be linked to the blendercloud, for me it’s 2 different things. Having redcurrant on the blendercloud is a good thing, so you can subscribe and use it on your projects .
    But it would be also nice for a small studio to easily install it locally and easily adapt it to their need.
    Going in that direction, each component (ex : file sharing, versionning, renderfarm, project/task management) should be as modular as possible,maybe plugin-based, so if you like you can replace one module to use your own tools if you like. Because every project is different and everybody has different workflows.

    I saw various studios starting doing their own project management software. It’s a huge task and for a small studio they are generally limited to one or two component (renderfarm, asset / shot management) .
    Having the possibility to use redcurrant in their studios will help them a lot, so they don’t start from nothing. And I’m sure they will give back something (money or code) . But depending on the integration , they may not want to put their project files online in the cloud. Or having a lot of data going outside the studio.

    So maybe a Cloud version of redcurrant and a standalone version :)

  32. Thomas says:

    Aim for:

    – a long life, thus a flexible structure and not dependent on a single software or file format

    – data storage central and distributed (metadata points to actual asset)

    – distributed structure (a studio can run their own, and interface with Blender cloud or a private store)

    I fully agree with the ‘ease of use’ remarks. Perhaps the software monitors the ‘finished shots’ directory of a user uploads automatically, prompting the user for a description (you have 1 shot uploaded without description, enter here).

    But I’m not experienced in this at all… just thinking that in some cases this must integrate with existing systems.

  33. Erik M. says:

    Hi there,

    concerning Asset Management:
    I have a few years of experience using and improving the way others use an asset management system.
    One thing I realized early on was that even the best system can’t avoid messy data handling if the users don’t care at all.
    So in addition to your general feature request list it very important to set a strikt standard for the way people will have to use the system later on.
    These standards might help you to identify certain requests that may sound cool but will become contra productive in the end.
    We taught our system for example not to let any new asset in that doesn’t fit our naming rules and data restrictions like pictures smaller than 1000×1000 pixels for printing adverts.
    That’s one big thing I would recommend. Don’t let anybody throw anything in the system without any restrictions. Or you won’t get happy anymore.

    We had a few different companies showing us there DAMs last year and some of them had pretty innovative solutions like project driven usage rights. So a person only had the rights to edit certain files while he was registered as a member of a specific project. Or users could only insert new assets if they typed at least 3 meaningful keywords describing the content of the picture for example, which is helping others if they try to find that picture without knowing its file name. That Company was Celum by the way.
    Cumulus from Canto on the other hand had great features concerning the management of multimedia files. Videos for example are converted in the background into small clips which you can preview really fast and comment certain areas within one clip (like on soundcloud). Good for reviewing WIP assets.

    To avoid bad surprises in your project files it is useful to have a kind of asset link tracking which shows you which asset is being used by which project files so you don’t end up changing or deleting something which is needed by another team member.
    Redundancy is also a beast that can be tamed partially by letting the system check if the file name already exists when someone tries to upload a file. Modern Systems generate tags based on the content of a file and compares those when new files come in. But this also has limitations.

    All in all the user has a lot of power when it comes to guarantee efficiency of a DAM-system and file naming guidelines are a good tool for avoiding problems. The system itself is also only a tool among others which can only support a working process.

    I hope this „short“ comment helped out a bit.

  34. Jared Smith says:

    As far as storage of data, has there been any thoughts about using decentralized methods for cloud storage? I know most of this stuff is still in the early stages without much adoption, but one of the bigger roadblocks for smaller teams is the infrastructure for the storage of large amounts of data.

    Some of the projects I’ve been following.
    http://maidsafe.net/
    https://www.ethereum.org/
    http://www.bittorrent.com/sync

  35. Sean Aitken says:

    I think there are a lot of great comments in this thread. Lots of practical experience. As a developer, I have been thinking about how important it will be to have an asset and production management tool to help with the studios that will be on the project.

    Incidentally, I recently listened to an fxpodcast episode where they discussed a tool called “Shotgun” that was acquired by Autodesk. I didn’t even bother to concern myself with figuring out what the cost of such a thing could be, but listening to the interview, it became clear to me that the production pipeline is crucial in the success of a project like this. It got me thinking about some node-based web services with Mongo to hold lots of random content.. then I thought about scale and how I could implement such a thing… And tonight I saw this thread. Excellent topic! :)

    Check out their podcast. There are quite a few comments from big-name studio guys who have had to deal with this sort of thing.. At the very least, we should look at the feature list for Shotgun and draw some inspiration.
    http://www.fxguide.com/fxpodcasts/fxpodcast-277-shotgun-users-on-the-autodesk-acquisition/

    Cheers!
    – Sean

  36. Salas says:

    Most of the things have already been said. Just two cents.
    First try a local install or pantheon (online vm) of open astrium. It fulfill the requirements in terms of milestone, communication and task and offer a pretty nice interface that can be taken as an example.
    Then, since this can serve for big project or community project, it would be good to have a workflow of confirmation management : the external users community will write change request then its will be and impact study in intern then one can validate or cancel the request.

  37. James Richins says:

    Maybe I’m just lame at animation, but i’ve often thought blender should have a scratchpad that overlays the editor windows and can be clicked on and off, where you basically perform the free movements with the mouse for rotating bones. This would avoid clicking on the scenery half the time…
    Browsers for assets and materials/shaders would make life simpler.
    As for asset sharing I think people have covered the idea well, but an online model viewer would be useful. Though most studios don’t give away their assets, so there can be a security issue with things like pi3d and sketchfab.

    Have you guys thought of creating this with a service charge if it goes beyond goosebury??? BF could do with a little cash imo… Just to have.

  38. Hi,

    I’m involved in an open source initiative on the concept of “publishing” called Publish.
    https://github.com/abstractfactory/publish/wiki

    We’re currently looking for contributors interested in pipeline research and development, feel free to contact me directly if you’re interested or have a look at the specifications we’re mocking up to find out more about it.

    Best,
    Marcus

  39. A code snippet idea that might go into the toolset. If there is a clever programmer around who can find a way to read the various OS timestamps so that assets can be organized easier into a timeline this may help things along somewhat.

  40. Arnold says:

    I have been working with another developer on a complete solution already covering most of what has been said here (a little less in some areas, and a lot more in others).
    We have been working on it for almost 5 years now. We started when Shotgun was very small and limited, and didn’t want to bet on it. Over the years, since we are such a small team and development was going so slowly, we tried evaluating Shotgun. Last time was about 2 months ago, and was the third time around (BTW: their cost is 49$-per-user-per-month). My impressions was that in the “review” area (which was a separate sub-project called “Revolver”) they have everything you could as for and more. In the “project-management” area there has been stagnation for years now, but they have most of the essential stuff. In the asset-management area, they have a sub-project called Toolkit. I have studied it quite extensively, and it is still in it’s early stages, but shows much potential. Currently, though, it way to overly-complex to set-up and maintain. It’s very flexible, but too much so that it feels broken-up into too many pieces. They said they are working on that.

    Another project I was evaluating, which is now Open-Source is called Tactic. I really think you guys should reconsider looking into it – it has all of what Shotgun has and more, and is much more flexible – And it’s Open-Source. The thing about Tactic is that it’s more of a foundation-framework for constructing studio-management systems like Shotgun, so there’s tons of setup to do and much to learn before you even begin to use it practically. But it’s exactly what is needed in that regard – You get to define everything you need your studio-management system to be, and write Python hooks for the back-end, and Javascript hooks for the front-end (if I remember correctly).
    It was initially developed specifically for film and animation production, and for years was a direct competitor to Shotgun, and was way ahead of it. For some reason it didn’t succeed that much, and was ultimately Open-Sourced, mainly I think in order to attract user-base. It then abandoned to specific targeting for film/animation and was re-branded as a “general-purpose” management-framework – it could do that exactly because it is so flexible.

    Lastly, our own tool is even more feature complete then Shotgun or Tactic, and uses Open-Source technologies extensively, except for a major component of the UI called TreeGrid which is proprietary. The only reason we could have gotten past Shotgun and Tactic was this liberal capitalization on Open-Source and we are much indebted to this movement. We’ve built our back-end using a Python-based web-development framework called Web2Py – It is very underrated and extremely fast to develop in.
    We have a bidding module for constructing project-budget and producing proposals for clients. It has a fully-featured Gantt system (using TreeGrid) that is auto-generated from the items that are budgeted by days-of-work units. It have an abstraction called “production items” that represents Props, Characters, Environments, Shots, Sub-Projects, etc. Each of these has an abstraction called “Stages”, which represent what Shotgun calls “Pipeline-Steps”, which are essentially “tasks” but with special features. They each have their own “statuses”. Each item-type (say, Characters), is associated with a “stage-preset” (which Shotgun calls “Task-Templates”), which represents the stages an item of that type usually goes through, with the dependencies between them included in the preset. Whenever a new item is created, this preset is used as a template from which stage-tasks are created and assigned to that item (you can change them anyway you like after that, it’s just for saving time typing them out each time). Multiple such presets could be defined per-type, each relevant for different types of projects. Tasks can have hierarchies, so stages can have sub-stages. Items can also have hierarchies, so say a project can have many assets under it, of various types. It also has sub-projects as it’s children, each having many sequences, each having many shots. A sub-project, since it’s also an item, can have stages of itself, so a sub-project’s animation-stage, is the parent stage of all of it’s shot’s animation-stage. Shots have relations to assets in two aspects: “planned” and “used”, The planned aspect is what is planned for a shot. Used assets are what are actually being dressed-into a shot in 3d, and is mapping versions of assets to versions of shots inside the 3d applications (we use 3dsmax). We also have full version-control with automatic naming-convention, and many more production-features inside 3dsmax that can be connected to the studio-management server. It has a Python API that is exposed on bot HTTP as well as more direct ZeroMQ sockets for performance and convenience in a remote-procedure-call kind of interface. Stages can be “finalized” from within 3dsmax, which launches custom scripts, but may also notify a status-change for the stage that was finalized. This may trigger a chain-reaction of status-updates up the stream of task-dependencies, signaling them to change their status to “ready-to”start”. Before finalization, a stage may submit references for approval and start an approval-cycle with many approvers. Comments for communication and collaboration can be attached to every “item” (for general asset/shot related stuff) and every “task” (for stage-specific stuff), including approval-tasks.
    Every user has a home-page in which to manage all of his/her tasks and fill-out task-progress, which then funnels up to top-level status-charts. It also presents a run-char showing what task is assigned to when.
    It if full of graphical-representations and drag-and-drop experience, icons, thumbnails for assets/shots/references/versions, etc. so it is very artist-friendly.

    Generally, my recommendation is to build something like that, that is monolithic -you WANT everything in a single-database, the last thing you want is to have different pieces of information for different aspects, spread-out in silos across disparate-systems each doing only some of the work – there is too much cross-influences that would go un-noticed with such an arrangement, and much duplication of information that then needs to be manually-synchronized – and nobody does that right, it’s too much work and very prone to human-errors.

    In terms of UI, I would shy away from traditional systems that are to much Form-based (such as OpenProject or Joomla/Wordpress derivatives) -they are un-intuitive and overly complex to use due to their antiquated architectural design restricted by very old approaches to web-development that are very limiting.

    You should either start with Tactic, or build you own using “modern” web-development paradigms and frameworks, like Angular.js, Ember.js, or even future-proof ones like Polymer that uses Web-Components. Also look into real-time collaboration potentials using Web-Sockets, with frameworks like Meteor.js – Imagine a Gantt-schedule view, or a status-view that is being updated on-the-fly by many users simultaneously – this is achievable today with modern frameworks (WordPress approaches are dinosaurs in comparison…)

    I can go on forever, but I’ll stop here – if you have any specific questions, fire away.

    • flavio says:

      @Arnold
      Thanks for all the details!

      I completely agree with you for the technologies you mentioned. I was recently writing the specs of such tool, and I was going to a Tornado server, PostreSQL or MySql, and heavy javascript with angular.js for the front end, a REST API and python modules for heavy tasks. I need to have a look on meteor.js, looks interesting.

      I was wondering if your company has released part or all of what you mention about production tracking ? Any public release ?

  41. Jason Gilholme says:

    Hi,

    This is very exciting!

    I’m the lead developer on a pipeline for a film vfx studio in aus. We currently use shotgun and I can tell you it has its limitations. What it does is great, but its missing some rather large concepts which would be fantastic to have:

    * Per project schema
    * Proper solution for sharing work across multiple facilities & shotgun servers

    Its also missing some smaller things:

    * Python fields for calculating stuff
    * Properly integrated event monitor/trigger system (we’ve build our own solution – github solution was a bit meh)

    I recently had a closer look at FTrack. It seemed to primitive to be able to use in our environment but did have solutions for the two problems i mentioned above. One thing it didn’t do was provide the ability to make custom entities with custom attributes.

    It forced you into a way of working which was no good to us and I think that is something that shotgun has had going for it. When I first started working with shotgun it was just the basic building blocks and gave us all the control we would every need. Now they’re starting to package up solutions for things which is kinda annoying cause it forces you to work in a way that may not be ideal.

    When they were bought by autodesk we had a bit of a look as to what was out there again. We previously used Tactic (about 6-7 years ago now i think) and at that stage the api left a lot to be desired and the gui was a bit meh. When looking at it again it seems like a rather nice setup but i haven’t tried it out. Maybe the marketing is the only good point.

    Another thing that I always see as a problem with these things is the terminology. The words publish, asset, product, package etc are all words for essentially the same thing. The term asset is the one that i think should never be used.

    We have 2 main pipelines in our film studio, The shot pipeline and asset pipeline. These are two distinct pipes. The asset pipe is where artists work on characters, sets props etc. Doing tasks like modelling, rigging, texturing and shading. The output from the departments is called a publish. Rigs and shader publishes are used on the shot pipe.

    The shot pipeline is where people work on the actual shots. matchmove, lighting, fx, anim, etc. Publishes obviously happen on this pipe too. We went through a period of time where the terminology was all over the place and people were talking about one thing and meaning another. It sucked. Calling our publishes assets would create a whole bunch of confusion again. oh the pain!

    Would be keen to hear more about this and help out where appropriate.

    Jase

  42. Arnold says:

    Yeah, the Shotgun terminology was pretty confusing to me… It still is I think, but iget the gist of it, mostly.

    We also have different pipes for shots and assets – I think everybody does – they are orthogonal to each other (I once tried to picture a 3D representation of asset-pipes and shot-pipes layered on-top of each other in perpendicular fashion, connecting through branching-pipes at different levels… Oh well… )

    We have a very different terminology then Shotgun, and I think a different process as well.

    Our asset-pipeline produces 2 files that ultimately represent hat asset in the shots pipeline – we call gem generally just “low-file” and “high-file”. They sit at the root of the asset-folder, and have the same name as the asset with an “_Low.*” and “_High.*” respectively. The low-file has the rig for layout/animation and the high-file has the shading/fur for rendering. The modeling and rigging asset-stages output the low-file, overwriting it if it exists. This is so layout could begin work with assets that don’t even have a proper animation-rig yet, because layout only deals with spacial-relations of assets in relation to the camera. It could then be substituted by the rig-variation when it’s done (we have a tool that I wrote that updates assets while preserving animation – either from low-to-low for rig-updates, or from low-to-high for generating rendering-files out of animation files). We don’t currently keep older versions of low/high-files, as these can be regenerated from prior rigging/shading files that we do version. We do however have a version-number for low/high files (different-counters for each), in two places: The database is an auto-increment counter, and the low/high files themselvs are embedded with the version they were stmped with when the finalization-process that generated them was performed. This way, each time you open any shot-stage-file, the pipeline queries the scene to see which versions of assets it has, and cross-references those with the “latest” ones represented by the counters in the database. If the asset in the scene is a “high”-variation, it uses the “high”-counter in the database for the cross-reference (and the same for low-against-low). This way, the pipeline notifies the artists whenever they open any version of any stage of any shot, if there are newer versions of the assets in their scenes, and even offers to update all of the old ones for them (again, while preserving animation). This way we know that we are always using up-to-date versions whenever possible. We don’t use references as 3dsmax doesn’t support them well enough, so our files are big (we solve that problem in other ways of hardware-compression on the storage-side), but that also gives us redundancy which is good. Plus, references are a double-edge-sword – it can fix all of your shots, or brake all of them… (when a rig was changed in a way that does not “automatically” load the files correctly… In our own update-assets process we have more control over how an update happens in certain situations).

    I have been dreaming of a day that I could implement a better best-of-both approaches – it goes something like this:
    You keep all of the versions of the low/high files in another separate location, but still do the overwrite of the “current” one. This way, you have 2 distinct concepts: “Latest” and “Current”. Latest is the low/high file with the highest counter-number. Current is the version of the actual low/high file currently. This allows you to revert the current one to be an older version if you hit a rough-spot with a flawed-rig. The automated version-check would the of course cross-reference against “current” and not “latest”.
    Using this arrangement could be better suited for using references, ans the shot-sage-files would not be referencing the “current” files but actual version of them, and so outputting a new version of a rig would not automatically brake all of your shots – you would still have to manually re-rout the references to another version, but this time it would be simpler.

  43. Pascal says:

    I think important for such a tool are:
    – a client review and in frame annotion option
    – a calender where a supervisor can add things, arrange artists, see what is going on and if artists are on track

    In our studio we started using ftrack recently and maybe you guys can take a look what this and maybe Shotgun have to offer.

  44. Phen says:

    I think at having features like http://www.alienbrain.com/ would be awesome and a good starting point

  45. mak says:

    Some of the suggestions above are really interesting.
    May I suggest a mockup of the gui as a next “call for feedback” post since the tool is primarly for artists?

  46. Philip M says:

    Redundant and distributed offsite data backup is critical.

    The recent example of CodeSpace’s demise is a lesson to us all (especially with cloud services): http://www.hightechinthehub.com/2014/07/what-to-do-in-response-to-code-spaces/

    Having a hacker hold you hostage with a DOS, hijack your server, or even worse, delete all your files is a quick way to shut down your company.

  47. Flavio says:

    A difficult task

    Wowww such a big and exciting project! I won’t go in details with everything I agree (or disagree) on the interesting talks above. But it’s a great discussion (even though the format of blog post comments is hard to read/follow). Thanks for everyone to share ideas, thoughts, examples and links!

    I’m French, so I “need” to open that note on a negative thought: I think Blender’s weak point is teamwork (starting by the link system and the ability to create – easily – custom gui tools if you have a TD nearby). That said, project Goosebery and Redcurrant might be a big and positive response to that. So I’m super happy you guys work on it!

    Current tools for managing teams are far of the realities of animation projects. When it’s about a feature, we talk of thousands of assets and shots, tens maybe hundreds of thousands tasks, and hundreds of thousands notes by the end of the project. Not mentioning the millions of metadatas for all those entities. So 99% of the tools out there can’t work for animation (most of them will be unusable with only 30 shots). But such tool will be also used for very small projects (maybe just for a still frame) and the scalability will be a big difficulty.

    The danger here is trying to do an all in one program : asset management, cloud, task tracking, team communication, renderfarm, etc. The ecosystem created could be a killer feature for the blender galaxy, but will be a very difficult mountain to climb with a path that everyone can follow…

    Non exhaustive feature lists with some of the already exposed points :

    – Need to be adaptable to any workflow. The tool shouldn’t define how the files are organized or how you should work. And the workflow can change so much between studios or if the project is an animation, a game or anything else.
    – Naming convention handling ?
    – Per project organization (or at least templates for kinds of projects)
    – Modular system : The ability to use only some of the aspects of what you are aiming for: I might want the asset manager but not the production manager stuff because I’m already using something else, or vice versa.
    – Non Blender exclusive. Few studios work with blender exclusively. Any other software (including non open and non 3d) should fit in, in a way or another.
    – off site sync team work, yes go for it! …
    – … but with offline mode : such tool should be working on site, without internet. It could be for technical reasons (internet shutdown or very slow, and it’s way faster on LAN anyway) or … security reasons. So it should run out of the blender cloud.
    – Cross platform : auto update of the links/paths etc, very important for off site working where the mapping of the data can be very different. Web apps looks to be the obvious solution for most of the needs.
    – Artist oriented : of course it’s super important that read and edits are easy and quick. Otherwise they won’t use it.
    – It also means clear/fast/easy views are important for the tracking/managing aspect. A way to create custom views to handle any kind of entities.
    – … but it still needs a strong API (python standalone, REST, whatever but with full access to manipulating data) and tech approach for integration and scripting. Note that I’m not worried for that part coming from you.
    – Don’t forget power users if the interface is too “easy” because made for ‘artists’.
    – Rich communication between members. Take care that the tools don’t overtake on direct communication.
    – Notes! Notes on videos! Please, include a good player (web based if possible) for reviewing shots!
    – Unlimited entities granularity : don’t try to put everything on asset/shots/artists. A studio should be able to create new entities, like an entity called “hardware”, “supplies”, “development scrum cycles” or anything else.
    – Do not split the information : there should be no such thing as macro/micro tasks on different tools. If people want to use ‘bad’ behaviors like that it shouldn’t be because of something missing in Redcurrant.
    – Versions, Playlists (for reviews, dailies, etc.)
    – Quick review tool (for supervisors)
    – Tasks/assets status.
    – Strong and easy to handle filtering system for the views.
    – If the asset manager is handling files, let’s add smart batch systems, allowing to plug any script in it to automate things (rendering image sequence, then create a movie file with valuable watermark informations, creating blender scenes, anything else for pipeline stuff).
    – Triggers and hooks everywhere.
    – Of course, stuff like wip/release file, versioning (with easy roll back) lock asset (I don’t see a proper way to have two persons working on the same asset) and any other basic asset manager feature.

    Shotgun, FTrack need to be considered as good examples of tools made for animation production tracking. Their solutions are answering most of the issues where other tools are not. It’s always good to see what’s working, even in non-open solutions, so keep an eye on them.

    Here are a couple of personal thoughts about shotgun. I used to work 3 years at Illumination Mac Guff starting on Despicable Me. Most of my work was related to shotgun that we used since 2009. Their strong/easy (“open”) API ( https://github.com/shotgunsoftware/python-api ) allowed us to create a lot of connections with our pipeline (Tank was not existing back then, and Mac Guff got his own Asset Manager since a long time anyway). But the amount of information you deal with can be very complex, so my department started to create a lot of web apps as a layer to shotgun and our asset manager. We had our own time tracking app allowing the artists super fast update for example, or hundreds of other tools.
    One of the great features we used a lot from shotgun is the ability, from any “view” to launch any of our app with a link providing valuable information (page Id, entities, the filter used, selected items, etc). From that we could go to a shot page, select some of the shots, right click and open an action. That action was very often opening a webpage that we had created displaying other informations (like comparing the timings of the shots between shotgun and different departments straight from the maya file, etc.). It was a very useful feature.

    One of the negative aspect I think is the Shotgun pipeline tasks, tasks and notes that can be very confusing as some of the informations might be split in very different entities. For example some of the todo stuff for a graphist were on notes on the task entity it-self or on notes on the asset or shot entities. Tasks need to be a very flexible but easy to handle feature. The problem might be that every department or production manager will use the tool in the way they like it or are used to, creating sometimes dirty behaviors. But you won’t be able to fix that.

    I haven’t used shotgun since early 2013, I haven’t seen the transition to relvolver the review tool, so I can’t talk about it. But it’s very important feature in complex projects or multi-site projects.

    I agree with Arnold about WordPress, Drupal or other CMS. I think starting from that is a dead end because you’ll never fit the information you want in, it will be a frankenstein monster which probably will be handling very badly millions of meta datas.

    So many topics to cover! Looking forward for a mailing list too!

    Let’s do this thing!

  48. Konstantin Dmitriev says:

    Hello! I am heading a small team of animators and for animation production we use opensource software only. Our main focus is 2D animation, but we use Blender as well.

    I would like to make a little comment about “render farm management” requirement. In our projects we use a self-developed tool, which automatically detects changes in the project and makes all necessary rendering (without rendering unchanged data). Its concept was explained in my talk at LGM – http://www.youtube.com/watch?v=8EkQRLS9pN0

    Maybe Blender team would consider such approach to rendering as a feature for their tool. If there will be any interest for collaboration I will be happy to team up.

    Initially tool was written in Bash and was lacking support for renderfarms. But now we making a complete rewrite in Python with renderfarm support (you can find it on GitHub, it is called RenderChan).
    For renderfarm functionality we use Puli.
    There is no stable release yet, but we already have a core functionality and using it within our current production. That’s it.

    • flavio says:

      That’s a interesting and smart use of make. Thanks for sharing!
      Is the python rewrite still using make?

      • Konstantin Dmitriev says:

        No, the Python’s version don’t use make anymore. And it’s damn faster now. I hope to get testing packages ready in a month or two, so people can easily install and test it. ^__^

  49. Ian says:

    As a asset/production management/pipeline developer who’s been involved with two previous feature animations here in the UK, I’d be really interested in finding out how I can contribute to Redcurrant/Gooseberry – Particularly with respect to developing web based tools for the production? I’m currently working on an asset/queue system myself and I’m wrestling with whether I should be open sourcing it or providing it as a service. I also have visions of that becoming a more full-fledged but simple production management tool.

    In terms of requirements, I’d stay keep it simple and take the path of least resistance. Artists and animators favour tools they can get to grips with quickly and don’t have to ask a developer to determine how to use. Solving repetitive tasks with technology is great, but try not to overcomplicate by drilling down so far as to get off track from what is necessary to get the job done. Try and make the online UX great – and if you don’t have the skills, use a great UI framework, so people are happy to spend time collaborating using it.

    I’m favouring an approach myself to create a great api to basic, realtime asset management tool that other developers can build their own scripts/tools to solve problems, rather than try and understand all the intricacies of all of aspects of a production at once (now and later on as the film goes on).

  50. That is a good tip particularly to those fresh to the blogosphere.

    Brief but very precise information… Appreciate your sharing this one.
    A must read post!

  51. Konstantin Dmitriev says:

    Hello! It might be relevant to mention that there is a opensource tool called RULES – http://cgru.info/rules/general#page_top.
    This might be something close to the idea of RedCurrent.

  52. durgazone says:

    Thanks. I was searching the same information since many months. Thanks for your hard work.

  53. Head to Tanner’s Reach and speak to the Sasquatch Hunter to
    start the side mission. counterparties would be likely to raise the total new inflow to
    the Treasury to $200 billion per banking day. ‘First and foremost, my condolences
    to the Jobs family for their loss.

  54. occhiali da sole oakley scontati
    occhiali da sole uomo oakley http://www.epistemic.net/userguide.asp

  55. The food deal will undoubtedly not be empty of diet that’s positively ideal for your health assisting
    you to in maintaining a normal weight.

  56. When you learn search engine optimization with keywords it is important to make sure your content is diluted
    with them enough. s ranking, not just in the Search Engines, but also in directories such as Yahoo and DMOZ.

    Google was not the first name they came up with, but it is
    now the first one on most people’s lips when asked to name a search engine.

Comments are closed.