Browser Source
Load a web page and render it as a live image.
What it does
Browser Source renders a web page into a live texture, usable anywhere an image is accepted. Point it at a URL, or switch Source to HTML and paste markup directly. Either way the page renders on its own internal canvas at the Width and Height set on the node. Transparent keeps the page background see-through so overlays and HTML/CSS graphics composite over whatever is underneath; turn it off if the page expects an opaque backdrop.
Title and Loaded report the document title and whether the page has finished loading, for gating downstream nodes on page-ready state.
When to use it
A live web page as a moving image: a dashboard, a data visualisation, a countdown timer, a generative HTML/CSS/JS sketch
An overlay authored in HTML/CSS/JS and composited over video or other layers, with Transparent on so only the drawn pixels show
CSS or JavaScript injected into a page after it loads, to hide clutter, force a layout, or drive an animation
A texture that loads once and then holds still, using Freeze After Load
| Parameter | Type | Default |
|---|---|---|
source | String | "url" |
url | String | "" |
html | String | "" |
width | Number | 1920 |
height | Number | 1080 |
fps | Number | 60 |
css_override | String | "" |
js_inject | String | "" |
dpi | Number | 1 |
transparent | Boolean | true |
reload | Boolean | false |
freeze_after_load | Boolean | false |
enabled | Boolean | true |
position | Vec3 | (0, 0, 0) |
rotation | Vec3 | (0, 0, 0) |
scale | Vec3 | (1, 1, 1) |
anchor | Vec3 | (0, 0, 0) |
opacity | Number | 1 |
Gotchas
Freeze After Load stops the texture updating once the page reports loaded. It also freezes any CSS/JS animation running on the page itself.
Reload is a one-shot trigger, not a persistent switch. Pressing it forces the page to reload with the current URL, HTML, CSS, and JS settings, then it resets itself.
DPI scales the render resolution up from Width × Height without changing the page's own layout units. Raise it for crisper text and fine detail, at the cost of a larger texture and a heavier render.
Worked example
Add a Browser Source. Leave Source on "url" and type the address of the page you want to bring in.
Set Width and Height to the resolution you want the page rendered at.
Enable Transparent if the page has its own graphics to composite over other layers, or disable it if the page fills the frame.
Use CSS Override or JS Inject to tweak the page after it loads: hide a banner, force a font size, kick off an animation.
Wire Loaded into a downstream gate to wait for the page to be ready before doing anything with it.