Core and the app · crate

kinogaki-render-geometry

Core

The render side of Studio's standard geometry values: what render engines receive for them, whatever kernel made them.

Repository
Core and the app (kinogaki/studio-core)
Folder
studio/core/render-geometry
Source
5 files, 880 lines
Tests
1 file, 441 lines
depends onused by tests alonedependencies for tests alone are listed below, not drawn

What it is

The render side of Studio's standard geometry values: what render engines receive for them, whatever kernel made them.

PieceWhat
GeometrySourcea Geometry value's polygons or curves as a render ShapeSource: the display triangulation the viewport shows or the curves alone, primvars in render domains, material subsets, and after a drag only the points that moved
GeometryRenderablethe Renderable facet of the standard polygons data type
BrepRenderablethe Renderable facet of the standard B-rep data type: one item a distinct body mesh (the installed mesher's at the render's tolerances)
Itemsthe render items each value gives, kept per value, Detail and tolerances so an unchanged value never asks again, each part's source made after the one before it so an edit re-sends only the parts it changed
changeswhat changed between two sources of one part, as the dirty bits an engine update carries

Columns are shared, never copied per frame: f32 points are made once per positions column and kept on it, the triangle column is the triangulation's own, a Point or Detail primvar is the value's own column and a gathered one is kept from source to source while what it reads stays (the SDK's cache rule), so every source over the same columns, and every render scene, shares them.

Depends on

CrateRepositoryAsWhat it is
kinogaki-brep-meshCore and the appnormalB-reps as polygons, below the viewport, renders and file exchange alike: each body's mesh by the installed mesher, cached on its geometry (meshed), and a value's bodies joined into one polygons value (joined): each body's mesh, the faces' polygons ...
kinogaki-render-apiSDKnormalKinogaki's render interface: what a host (Studio) sends a render engine and what comes back, with no GPU or OS API.
kinogaki-studio-apiSDKnormalKinogaki Studio's headless plugin API.

Third-party

None.

Used by

CrateRepositoryAsWhat it is
kinogaki-core-packageCore and the appnormalCore's own SDK package (kinogaki.core): what Studio holds whatever plugins are installed.
kinogaki-sceneCore and the appnormalStudio's scene: the document cooked object by object.

Modules

Public types and traits

At the crate root

Structs BrepRenderableGeometryRenderableGeometrySourceItems

By module: 4 public types and traits in 2 modules

items BrepRenderableGeometryRenderableItems

source GeometrySource