currently, the performance of Canvas drops significantly to a point of almost being unusable when there are too many images displayed in a Canvas (simultaneously)
use case is for visual art inspiration collection and art creation projects
for the most part the use cases do not require every image to be displayed at full resolution when viewing from a bird’s-eye view
to me they could just be simplified mental representation to think about and make mental connection of
therefore, i’m guessing a lot of system resources are wasted to load up and display every images regardless of zoom level?
and this is one of the reason for this performance issue?
observation
currently, all text elements (cards, .md notes) are turned into an abstract form when zoomed out, controlled by the Canvas option “zoom threshold for hiding card content”
but, non-text elements like images do not exhibit this behaviour
workaround
current workaround
separate large image-heavy canvas into smaller canvases, embed all smaller canvases into a “table of content” large canvas
this leverages the abstraction behaviour of embedded canvases in another canvas
downsides of current workaround
for art collection and inspirations brainstorming, this separation beaks the mental continuity
sometimes one has to break down large topics into smaller parts, but often they are not that clear-cut at all - they are still in a brainstorming process, sort of all mixed together - therefore having to do this so that the Canvas is usable, to a certain degree, defeats the freedom and the premise of an Infinite Canvas
suggestions to problem
idea 1
display an abstract solid colour block for each image, when zoomed out to the level set in Canvas option “zoom threshold for hiding card content”, to match the behaviour of text display
could be the main colour of the image or just pure grey
this could be visually consistent with the behaviour of texts’ abstraction
idea 2
display downscaled low resolution thumbnails for each image
i think this is way more technically demanding, but it makes more sense generally
final words
i’m not familiar with software engineering
please do lmk
whether this is problem can be viably resolved (:
or you have encountered similar problem and have an other workaround to improve performance without sacrificing continuity
from my experience of using Obsidian for almost 4 years, i feel like the dev team will just be thinking about this problem will put it on the schedule to improve it
i checked the roadmap found out that this is not a priority currently
when this is no longer a problem, Obsidian, along with Canvas, will be much more powerful and versatile, for more use cases and professions, like the visual arts