render
Capture exact-size screenshots of asset previews, the level viewport, or render targets.
What it's for
This namespace turns editor-visible content into exact-size PNG files. You ask for a shot of an asset's preview viewport, of the level you have open, or you set up a render target, and PinWright writes a real image to disk that you and your assistant can look at.
Use it whenever a decision depends on what something actually looks like: confirming a static mesh reads the way you expect, grabbing a product shot of an asset without ever dropping it into a level, or capturing the current level viewport from a specific camera so your assistant can review a change it just made. Every capture is an exact pixel size you name, so shots are repeatable and easy to compare before and after.
The captures operate on editor viewports and render resources, not gameplay objects. An asset-preview shot opens the asset editor and photographs its preview camera without spawning anything or dirtying your level; a level shot photographs the Slate Level Editor viewport you already have open and needs no PIE session. If you are unsure which capture surface fits, start with the visual-review guidance the plugin exposes.
Examples
Photograph a static mesh without placing it in a level
Open the asset's preview viewport, frame it, and write an exact-size PNG.
You: Grab a 1024x768 product shot of the Cube static mesh.
call("render.capture_asset_preview", {assetPath:"/Engine/BasicShapes/Cube.Cube",
filename:"cube_product.png", width:1024, height:768,
location:{x:-300, y:0, z:120}, rotation:{pitch:-15, yaw:0, roll:0}, fov:50})
→ {path:".../AssetPreview/cube_product.png", width:1024, height:768, mimeType:"image/png"}
Done. Wrote a 1024x768 preview shot without spawning the mesh.
Screenshot the level viewport from a set camera
Capture the currently open Level Editor viewport at an exact size, from the camera you specify.
You: Screenshot the open level at 1920x1080 looking down from the north camera.
call("render.capture_open_level", {filename:"level_camera.png", width:1920, height:1080,
location:{x:1000, y:200, z:300}, rotation:{pitch:-10, yaw:135, roll:0}, fov:70})
→ {path:".../OpenLevel/level_camera.png", target:"openLevel", width:1920, height:1080}
Done. Captured the open level viewport at 1920x1080.
Create a render target to draw into
Make a render target asset at the size and location you want.
You: Create a 512x512 render target called RT_Mirror.
call("render.create_render_target", {name:"RT_Mirror", width:512, height:512,
packagePath:"/Game/RenderTargets"})
→ {ok:true, path:"/Game/RenderTargets/RT_Mirror"}
Done. Created RT_Mirror at 512x512.