Render realism

Pick a quality tier and a lighting look once; the kit configures world.lighting and render.lod to match.

Source: module-kits:kits/render_realism/usage/en.mdView Markdown source

Also read offline — CLI: grip-forge docs render-realismMCP tool: gripforge_docs { "topic": "render-realism" }

One quality tier and one look for the whole game (render.realism) #

What it is for #

render.realism is a switch, not a renderer. You choose a quality tier (performance, balanced or quality) and, if you want, a lighting look; when the game starts the kit hands the matching configuration to world.lighting and the matching level-of-detail profile to render.lod. The tier sets the shadow map size, the number of point and spot lights, ambient occlusion, a light bloom and a gentle colour grade, and the render.lod profile (low, medium or high). It draws nothing itself, never edits your assets and decides nothing about your gameplay.

Turn it on #

gripforge_gamekit_install   { project_id: "gkp_…", id: "render.realism" }
gripforge_gamekit_configure { project_id: "gkp_…", id: "render.realism",
                              config: { "quality": "quality", "lighting": "golden_hour" } }

It requires world.lighting, render.lod and game.engine.

First example #

<!-- test: kits/render_realism/tests/render_realism.rs::the_default_is_balanced_and_keeps_the_look --> With no configuration, the kit is on balanced and keeps the authored look: render.realism.profile() answers { "quality": "balanced", "lighting": "preserve" }, render.lod.profile() answers "medium", and nothing is logged as an error.

Settings and defaults #

SettingTypeDefaultMeaning
qualityperformance, balanced, qualitybalancedthe tier: lighting budget and level-of-detail profile
lightingpreserve, daylight, golden_hour, overcast, nightpreservethe look; preserve keeps the light direction and colours you authored

What each tier configures:

Qualityrender.lod profileShadow mapPoint lightsSpot lightsAmbient occlusion
performancelow102420off
balancedmedium204831on, medium
qualityhigh409662on, high

Any lighting other than preserve becomes the lighting preset of world.lighting. Both settings are moddable.

Services, events, variables #

The service render.realism:

  • profile(): the effective configuration { quality, lighting }.
  • plan(document, request): edits a whole scene document; it is served by the Studio, and the native kit host answers an error.

The kit emits no event and defines no variable.

Hooks and modding #

There are no hooks: the kit decides nothing of the game. A game or a mod chooses the tier and the look by changing quality and lighting.

Engines #

The kit runs on the web and in the native host, where it calls world.lighting.configure and render.lod.setProfile once at start. What the lighting and the levels of detail look like then depends on those two kits and on the engine.

When it does not do what you expect #

  • Nothing changes: world.lighting or render.lod is missing. The kit logs an error and configures nothing, but profile() still answers.
  • An invalid value for quality or lighting: the kit logs "Invalid render.realism configuration." and configures nothing.
  • The light keeps its authored direction: lighting is preserve.
  • plan answers an error outside the Studio: it is not served by the kit host.

Limits #

  • Two settings only; for finer control, configure world.lighting and render.lod directly.
  • It configures once at start; it does not react to the frame rate while playing.

Versions #

Kit version 1.1.0 (service contract 1.0.0). 1.1.0 attached the kit to game.engine and declared its settings moddable.