Skip to main content
Inkwell never hard-codes a content path. Every asset the plugin loads — the page material, the sheet mesh, the paper new documents start on, the default font — resolves through Project Settings → Plugins → Inkwell, so your project can repoint any of them (your own ink material, your own paper, your own default font) without touching code. The settings object is UInkwellSettings, a UDeveloperSettings declared config = Game, defaultconfig. Its container is Project, its category Plugins, and its section Inkwell — that is the whole of the path above, and there is no second settings page anywhere else in the editor.

Per-project or per-user?

Every setting on this page is per-project. Changes are written to your project’s Config/DefaultGame.ini, are checked into source control with the project, and apply to everyone who opens it — including Show Toolbar Button, which reads like a personal editor preference but is not one. Inkwell stores exactly one thing per user: the Page Editor’s recent documents list behind the toolbar dropdown. That is a workflow habit rather than project data, so it goes to Saved/Config/.../EditorPerProjectUserSettings.ini under the section [Inkwell.PageEditor], key RecentDocuments, capped at eight entries. Nothing else the plugin does writes per-user config.
When a configured asset is unset or fails to load, Inkwell logs one warning per session naming the exact setting to fix — for example Set 'Project Settings > Plugins > Inkwell > Page Ink Material' — and the accessor returns nothing. If pages stop rendering after a settings change, read the Output Log for LogInkwell before anything else.

Materials

Project Settings → Plugins → Inkwell → Materials. Both entries are soft object references, so nothing loads until a page is actually drawn.
Page Ink Material is the base only while a document’s Paper Mode is Texture asset or Generated. A document in Custom Material mode brings its own material (its Paper Material replaces the slot), and one in Mesh’s Own Material mode instances whatever material the target mesh already wears — neither touches this setting. Both of those materials must carry MF_InkwellPageInk to receive the ink; see Rendering → the MF_InkwellPageInk contract.

Material Parameters

Project Settings → Plugins → Inkwell → Material Parameters. All fifteen live behind the category’s Advanced expander, because most projects never touch them. These are the parameter names Inkwell writes into the page material’s dynamic instances. The defaults match the parameters inside MF_InkwellPageInk, and UE hoists a material function’s parameters onto whatever material calls it — so a custom material built by dropping that function into its graph automatically has every name below, and this section can stay closed. Change these names only if you built a page material without the function and named its parameters differently. Ink and paper Face mapping — where on a mesh’s face the page lands (the display component’s Page Face property). A material without these parameters ignores face mappings; the setters are silent no-ops. Back of the sheet — the flat-plane fallback for two-sided pages. A mesh with no material slot named Back shows an authored back through these on its one material, selected by TwoSidedSign and sampled U-mirrored. All default to inert. The values pushed into these parameters come from each Ink Page Document — its Ink Tint, Ink Strength, Paper Tint and resolved paper texture. See Rendering → the page material for exactly what is set, and what is deliberately left alone.

Content

Project Settings → Plugins → Inkwell → Content.
Set Default Page Font before you create your documents. A new document is stamped with whatever this setting names, so changing it afterwards restyles only documents whose Default Font is genuinely empty — the Page Editor shows those as (project default) under Default Text Style. For documents that already carry a font, change it per document in that same picker.

Fonts

Project Settings → Plugins → Inkwell → Fonts. These feed the Page Editor’s font picker and the font import tool; none of them affect a packaged build.
Keep Font Search Paths tight on a large project. Every font found is loaded so its typeface names can be read, so scanning all of /Game costs a visible hitch the first time the Page Editor window opens. If your project has thousands of assets, replace the default /Game entry with the specific folder your fonts live in.

Rendering

Project Settings → Plugins → Inkwell → Rendering.

Editor

Project Settings → Plugins → Inkwell → Editor.

Reading the settings from Blueprint

The resolved assets are available as Blueprint-pure nodes under the category Inkwell → Settings. Each loads its soft reference and returns the asset, or nothing plus the one-per-session warning described above. The values of the settings — parameter names, search paths, the bake clamp — are not exposed to Blueprint. Read them in C++ through UInkwellSettings::Get(), which returns the class default object and is never null. The same six accessors exist there as statics, alongside ResolvePageInkMaterial(), ResolvePagePreviewMaterial(), ResolvePageSheetMesh(), ResolveDefaultPaperTexture(), ResolveBlankInkTexture() and ResolveDefaultFont() — short aliases with identical behavior.

Using your own page material

Before repointing Page Ink Material project-wide, check whether a paper mode already does what you want with no settings change at all: Custom Material puts your material on one document’s pages, and Mesh’s Own Material lays ink onto whatever a mesh already wears. Repoint the setting when you want every page in the project on your material.
1

Build the material on MF_InkwellPageInk

Make your own material — or duplicate /Inkwell/Materials/M_PageInk into your content folder — and drop the MF_InkwellPageInk material function into its graph: feed it your paper color, wire its InkedColor output onward.The function carries the nine ink parametersInkTexture, BackInkTexture, InkTint, PaperTint, InkStrength, InkUVTransform, InkUVOffset, InkOnBackFace and HasAuthoredBack — and UE hoists them onto your material, so those names match automatically.The six paper parametersPaperTexture, UsePaperTexture, BackPaperTexture, UseBackPaperTexture, BackPaperTint and HasDistinctBackPaper — are not in the function, by design: the function inks whatever paper colour you feed it, and your paper is yours to build. Declare them yourself only if you want Inkwell to drive your paper — that is, if your documents use Texture paper mode, or a back paper distinct from the front. Duplicating /Inkwell/Materials/M_PageInk is the shortest route, since it already declares all six. Skip them and Texture-mode pages simply keep whatever paper your material draws.Plugin content is read-only in a shipped install, so never edit /Inkwell/ assets in place.
2

Or match the parameter names by hand

A material built without the function works too, if its parameters match the names under Material Parameters — or you change those names to match your material. A parameter Inkwell writes that your material does not have is silently ignored: the page renders, but it stops responding to that document setting. Without the ink texture parameter there is no writing at all.
3

Point the setting at it

Set Page Ink Material to your material. Placed pages re-apply on the next refresh; a property edit on the component, or reopening the map, forces one.
4

Confirm in the Output Log

No LogInkwell warning means the asset resolved. A warning naming the setting means the path is wrong or the asset is not cooked into this build.
A repointed setting creates a reference from your project to your asset, but the plugin’s own defaults are referenced only softly. If you repoint everything away from /Inkwell/ and then rely on a bundled asset somewhere else, add it to a cook-always directory — see Installation.

Next

Rendering pipeline

Where the material, the parameter names and the bake clamp are actually used.

Fonts

What the font search paths and the import output path feed.

Blueprint API

The full runtime surface, including the settings accessors.

FAQ

What the one-per-session settings warnings mean in practice.