feat: add render graph driven renderer architecture
Amp-Thread-ID: https://ampcode.com/threads/T-019f9d91-77c1-7206-a60f-ed6554ce92ab Co-authored-by: Heaust Azure <heaust.azure@gmail.com>
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
import { REFERENCE_IDS } from "./reference-types.js";
|
||||
import type { ReferenceManifest, Sha256 } from "./reference-types.js";
|
||||
|
||||
const pendingReason = "Capture environment has no Blender 4.5.0 binary or Xvfb display server.";
|
||||
const root = "docs/research/blender-references/4.5.0";
|
||||
|
||||
export const referenceManifest: ReferenceManifest = {
|
||||
schemaVersion: 1,
|
||||
baseline: {
|
||||
blenderVersion: "4.5.0",
|
||||
sourceCommit: "8cb6b388974a817afedf1317ce26f0c75aa5f181",
|
||||
binarySha256: "1188b95cc12321c770b631939f7c25a096910b6f884a990bf9c0f62d52b38aec" as Sha256,
|
||||
manualSnapshot: "f72fe39427bf150242dd6cfdd94d902e535d2286",
|
||||
},
|
||||
references: REFERENCE_IDS.map((id) => ({
|
||||
id,
|
||||
status: "pending",
|
||||
relativePath: `${root}/${id}.png`,
|
||||
reason: pendingReason,
|
||||
})),
|
||||
};
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
export type Sha256 = string & { readonly __sha256: unique symbol };
|
||||
export type ReferenceStatus = "pending" | "captured";
|
||||
|
||||
export interface ResearchBaseline {
|
||||
readonly blenderVersion: "4.5.0";
|
||||
readonly sourceCommit: string;
|
||||
readonly binarySha256: Sha256;
|
||||
readonly manualSnapshot: string;
|
||||
}
|
||||
|
||||
export interface PendingReference {
|
||||
readonly id: ReferenceId;
|
||||
readonly status: "pending";
|
||||
readonly relativePath: string;
|
||||
readonly reason: string;
|
||||
}
|
||||
|
||||
export interface CapturedReference {
|
||||
readonly id: ReferenceId;
|
||||
readonly status: "captured";
|
||||
readonly relativePath: string;
|
||||
readonly sha256: Sha256;
|
||||
readonly capturedAt: string;
|
||||
readonly captureMethod: "self-captured-blender-window";
|
||||
readonly width: number;
|
||||
readonly height: number;
|
||||
}
|
||||
|
||||
export type ReferenceRecord = PendingReference | CapturedReference;
|
||||
|
||||
export const REFERENCE_IDS = [
|
||||
"shader-basic-linked-near",
|
||||
"shader-basic-linked-far",
|
||||
"shader-selected-active-hover-near",
|
||||
"shader-collapsed-near",
|
||||
"common-frame-reroute-near",
|
||||
"shader-widget-rich-near",
|
||||
"shader-socket-gallery-near",
|
||||
"geometry-socket-gallery-near",
|
||||
] as const;
|
||||
|
||||
export type ReferenceId = (typeof REFERENCE_IDS)[number];
|
||||
|
||||
export interface ReferenceManifest {
|
||||
readonly schemaVersion: 1;
|
||||
readonly baseline: ResearchBaseline;
|
||||
readonly references: readonly ReferenceRecord[];
|
||||
}
|
||||
Reference in New Issue
Block a user