Table of Contents

Namespace nadena.dev.ndmf.preview

Namespaces

nadena.dev.ndmf.preview.UI
nadena.dev.ndmf.preview.trace

Classes

ChangeNotifier
ComputeContext

Tracks dependencies around a single computation. Generally, this object should be retained as long as we need to receive invalidation events (GCing this object may deregister invalidation events).

ComputeContextQueries
NDMFPreview

General utilities for controlling the NDMF preview system.

NDMFPreviewPrefs
NDMFPreviewSceneManager
NDMFSyncContext

The default unity synchronization context runs in the context of the Player Loop, which blocks access to R/O mesh data. As such, NDMF provides a synchronization context which runs in the context of EditorApplication.delayCall instead.

PreviewSession

The PreviewSession class allows you to override preview behavior for a particular camera. This in particularly allows you to display only specific renderers, or apply additional transformations to the preview.

PropCacheDebug
PropCache<TKey, TValue>

Caches the result of a computation, and invalidates based on ComputeContext invalidation rules. This class allows you to cache the result of a function from TKey to TValue, where the function observes values using a ComputeContext. When the ComputeContext is invalidated, the cache entry will be cleared, and any downstream observers will be invalidated as well.

Note that this cache currently invalidates values only when the ComputeContext is invalidated; in particular, if TKey is a unity object which is destroyed, this in itself will not result in the associated value being freed from memory.

This class is not thread-safe; all calls must be made from the Unity main thread. (This may change in the future)

PublishedValue<T>

A holder of a value which can be subscribed to (using ComputeContext) to receive invalidation events when the value changes.

RenderGroup

A group of renderers that will be processed together.

SequencePoint

Describes the time at which a particular mesh operation should be performed. Sequence points are created relative to each other; unrelated sequence points cannot be used in the same PreviewSession.

TogglablePreviewNode

Declares a previewable aspect of this plugin.

Interfaces

IRenderFilter
IRenderFilterNode

Enums

RenderAspects

Delegates

HiddenRenderersDelegate