---
# System prepended metadata

title: Introduction & Planning
tags: [Workshop]

---

---
tags: Workshop
---

# Introduction & Planning

## Introduction

It's time to take the Asset Browser project to the next phase. That means:

* Get on the same page in regards to the product vision.
* Evaluate and improve the design, for the 3.0 release and beyond, with all people involved and a number of stakeholders.
* Document designs, sign off technical specifications.
* Define targets for the 3.0 release.
* Implement remaining 3.0 targets, get existing implementation ready for a release.

***The asset workshop marks the start of this new phase.***

## Organization

**Begin:** Thursday 27 May, 11AM CEST  
**End:** Tuesday 1 June earliest. Further days may be added, likely with a day or two off in-between.

**Main Contact Persons:** Julian (julian@blender.org) and Sybren (sybren@blender.org).

### Attendees:
* Andrew Peel
* Andy Goralczyk
* Brecht Van Lommel
* Francesco Siddi
* Hjali Hjálmarsson
* Julian Eisel
* Julien Kaspar
* Pablo Dobarro
* Pablo Vazquez
* Rik Schutte
* Sybren Stüvel
* Ton Roosendaal
* Vilem Duha
* William Reynish

People can drop in and out as wanted/needed. Julian and Sybren will be there for pretty much the entire workshop.

> [color=#d62a83]
> **NOTE:** please update the green "Audience" tags when you *really* want to join a certain topic. We'll try to not start before you are there then.

## Communication

**Where:** Google Meet. Link will be shared in time.  
**Additionally:** [#asset-workshop](https://blender.chat/channel/asset-workshop) channel on [blender.chat](https://blender.chat/home) for team announcements and general communication (public channel).


> [color=#d62a83]
> **Important:**  
> Throughout the entire workshop we'll create notes. These are very important because:
> 1. They will be the main way to communicate the workshop outcome publicly.
> 2. They will be our own writeup to use for further development.
>
> We may publish the notes as daily updates on code.blender.org.
 
Since doing these notes is quite labor intense, we will rotate over the different topics, so multiple people can work on this.


## Timeline (Tentative)

At the start of each section, when some people drop out and others join, a notulist will be chosen/appointed.

:::info
List was updated at the end of the workshop, to include info on if and sometimes how topics were handled.

**Color tags:**
- [color=grey] Organizational info
- [color=green] Topic was covered.
- [color=orange] Topic touched, or somewhat covered, but not entirely.
- [color=red] Topic not covered.

Some entries are more like notes and don't have a color tag.
:::

### Thursday 2021-05-27

- **11:00 Start of workshop**
    - [color=grey] Audience: mostly everybody; William, Brecht for sure
    - [color=grey] Write-up: Sybren
    - [color=green] Present agenda of workshop
    - [color=green] Status report
    - [color=green] Define *success of the workshop*
    - [color=green] General introduction of the design
    - [color=green] Presentation of reference material, general overview of how other software handles assets
- **12:00 - 13:00 Defining success & scope**
    - [color=green] Audience: mostly everybody; William for sure
    - [color=grey] Write-up: Sybren
    - [color=orange] Defining *success of the Asset Browser* as a product.  
      *Scope (implying the success) was defined in terms of user-stories, but otherwise success of the product wasn't written down formally.*
    - [color=green] What do we want in Blender 3.0?  
      *Wasn't covered here but at the end of the workshop.*
- **13:00 - 13:30 Quick lunch**
- **13:30 - 15:30 Continuation of defining success, other high-level topics**
    - [color=grey] Audience: mostly everybody; William for sure
    - [color=grey] Write-up: See collaborative notes doc.
    - [color=green] Higher level discussions, rather open at this point.
- **15:30 - 16:00 Break**
- **16:00 - 18:00 Discuss asset types and get overview of use cases**
    - [color=grey] Audience: anyone (except Sybren, who has to host the Animation & Rigging meeting 17-18h).
    - [color=grey] Write-up: TBD
    - [color=orange] Related projects: Brush management, pose libraries, VSE workflow, etc.
    - [color=green] What asset types to support (maybe also images, sounds?)
    - [color=green] How to deal with downloadable asset types (i.e. ones that aren't immediately available)
    - [color=orange] Get overall idea of requirements for the Python API for making Blender understand asset repositories

### Friday 2021-05-28

- **11:00 Organisation & Navigation: presentation of general ideas**
    - [color=grey] Audience: anyone
    - [color=grey] Write-up: TBD
    - [color=green] Asset categories
    - [color=green] Grouping / hierarchy
    - [color=orange] Filtering
    - [color=green] Dynamic folders
    - [color=green] Context-specific dynamic filtering (i.e. asset types for specific purposes)
- **13:00 - 13:45 Quick lunch**
- **13:45 - 15:45 Concretify what was discussed before lunch**
    - [color=grey] Audience: anyone
    - [color=grey] Write-up: TBD
    - [color=orange] Detailed UI mockups  
      *Sybren made a mockup with a graphic from Mike Newbon, but this is more for explanation, not so much as design mockup.*
    - [color=orange] Interaction model  
      *How assets, asset libraries and catalogs can be created, moved, deleted, etc was talked about quite a bit. But it's not like we created interaction model graphics or such.*
- **15:45 - 16:15 Break**
- **16:15 - 18:00 Extending existing UI for accessing assets**
    - [color=grey] Audience: anyone
    - [color=grey] Write-up: TBD
    - [color=orange] Object/Mesh/Material selectors  
      *Was talked about a bit, but there's no new outcome really.*
    - [color=orange] *Add* menu (Objects, Nodes, Materials, etc.)  
      *Was also talked about a bit. Add menus can be hardcoded to include assets from the standard asset library, but this could be made more dynamic in future.*
    - [color=orange] *Add Workspace* menu  
      *Same as above.*
    - [color=red] Saving/adding/editing presets (which are currently just Python files on disk)  
      *There is agreement that we should support this eventually, but we didn't talk about the workflow, UI or such really.*

### Monday 2021-05-31

- [color=orange] **11:00 Writing blend files**  
    *Generally these topics were discussed quite a bit, but only the relevant bits for catalogs were talked about with Ton.*
    - [color=grey] Audience: Ton (at least to give final thumbs up/down), Hjalti, Rik, other artists
    - [color=grey] Write-up: TBD
    - User should be in ultimate control over the contents & organistaion of the library
    - People expect to be able to push things into an asset library
    - Collaboration should be simple
    - [color=green] How about when the "current project" concept is introduced in Blender?
    - [color=green] How to handle dependencies (other data-blocks, files on disk)
    - How to choose a blend file to write to
    - Pose library: should have a "pastebin" for ad-hoc collaboration (contrary to carefully curated & approved character poses); could be an add-on, but is a generally useful example of "asset pushing"
- 13:00 - 13:30 Quick lunch
- **13:30 - 15:30 Continuation**
- 15:30 - 16:00 Break
- **16:00 - 18:00 Internal Representation & Lazy Loading**
    - [color=grey] Audience: Bastien, Brecht for sure
    - [color=grey] Write-up: TBD
    - [color=green] Virtual datablock  
      *We discussed ways to do this, will probably be done with sidecar files the asset system can understand.*
    - [color=orange] LIB datablock handling producing "proxy" datablocks  
      *For now the Asset System doesn't need to handle this, asset service add-ons would do. The asset system allows registering custom asset types, or at least callbacks to handle this.*

### Tuesday 2021-06-01

This is mostly to talk about the other stuff we haven't covered yet, hence the lack of specific timeslots.

- [color=green] Audience: anyone
- **~~Asset Pushing~~** *(Discussion postponed.)*
- [color=green] **Present navigation/organization proposal to Ton**
- [color=green] **Fine-tuning terminology**
    - what is an "asset library", "asset", "repository", "catalogs"? Written down in a way that can go into the manual & is understandable for Blender users.
    - "Current File" library
    - better terminology than "Mark Asset" and "Clear Asset" (like "add to current file asset library" or "remove from current file asset library").
- [color=orange] **Review bundle [guidelines and specifications](https://wiki.blender.org/wiki/Reference/Release_Notes/Blender_Asset_Bundle).**  
  *We talked about the asset bundle and there's new outcome, but didn't go over the existing guidelines.*
- [color=orange] **Previews (rendering, high-res vs. low-res)**
  *Only touched a bit.*
- [color=red] **Design documents**
    - Who will write what?
    - What can already be documented?
- **"Other" topics (see bottom of document), for example:**
    - revisions & variations
    - [color=green] custom sorting
    - [color=green] re-appending already-appended assets/data-deduplication
    - apply asset button
    - [color=green] Placement tool
    - whatever comes to mind
- [color=green] **Define 3.0 targets**
- [color=green] **Re-define *success of the Asset Browser project*** given what we learned/decided in the workshop (i.e. evaluate & iterate).
- [color=green] **Go over *definition of success of workshop*, evaluate the result**.


## Collaboration tools/stuffs

- [#asset-workshop](https://blender.chat/channel/asset-workshop) on Blender Chat
- https://hackmd.io/ (Open Source, like Google Docs but in MarkDown)
- https://aggie.io/ (prob. not Open Source though)
- https://miro.com/ (not Open Source though)
