Skip to content

Commit 0cffd1b

Browse files
authored
Merge pull request #17 from theprototype-app/docs-37-int-127
[docs] 1.27: sky images, architecture, variadic nodes + Camera Rig, particles/joints, number-field undo; What's new
2 parents 4689f73 + 3935432 commit 0cffd1b

25 files changed

Lines changed: 455 additions & 21 deletions

‎docs/architecture.md‎

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
# Architecture
2+
3+
Since 1.27 you can build rooms and houses from parametric pieces: walls with doorways and window openings, doors and
4+
windows that open, and four kinds of stairs. Every piece is a set of numbers you can change at any time, and doors swing
5+
open for everyone in the session.
6+
7+
![A wall with a door and two windows, two side walls and a spiral stair](img/architecture/house.png)
8+
9+
## Adding a piece
10+
11+
Right-click the viewport ▸ **Add ▸ Architecture** (or type the name into the Add menu's search):
12+
13+
| Group | Items |
14+
|---|---|
15+
| Walls | **Wall** · **Wall with door** · **Wall with windows** · **Wall with door and windows** |
16+
| Doors | **Door** · **Double door** |
17+
| Windows | **Window** · **Casement window** |
18+
| Stairs | **Stairs (straight)** · **Stairs (L)** · **Stairs (U)** · **Stairs (spiral)** |
19+
20+
Pieces from the Add menu land on the 1 m grid.
21+
22+
## Editing a piece
23+
24+
Select the piece and open its **Properties**: the **Geometry** section holds every number. Rows that do not apply are
25+
hidden — a wall with no doors has no *Door width* row.
26+
27+
![Properties ▸ Geometry for a wall: Length, Height, Thickness, Doors, Door width and height, Windows, Win width and height, Sill height, Shift](img/architecture/wall-geometry.png)
28+
29+
### Wall
30+
31+
| Row | What it sets |
32+
|---|---|
33+
| **Length** · **Height** · **Thickness** | the size of the wall |
34+
| **Doors** · **Door width** · **Door height** | how many doorways and their size |
35+
| **Windows** · **Win width** · **Win height** | how many window openings and their size |
36+
| **Sill height** | how far above the floor the window openings start |
37+
| **Shift** | slides the openings along the wall |
38+
39+
Openings are spread evenly along the wall, centred on half metres, and a 10 cm pier always stays between them. The
40+
wall's origin is its **start end**, on the floor, so walls of a whole number of metres snap end to end on the grid.
41+
42+
### Door
43+
44+
| Row | What it sets |
45+
|---|---|
46+
| **Width** · **Height** | the opening the door fills |
47+
| **Frame depth** · **Frame** | how deep and how wide the frame is |
48+
| **Leaves** | single or double |
49+
| **Hinge** | left or right (a single door) |
50+
| **Opens** | in or out |
51+
| **Swing °** | how far it opens |
52+
| **Glass panes** | panes of glass in the leaf (0 for a solid door) |
53+
| **Sill** | a threshold at the bottom |
54+
| **Opens on** | **click**, or **proximity** — it opens when someone walks up to it |
55+
56+
### Window
57+
58+
| Row | What it sets |
59+
|---|---|
60+
| **Width** · **Height** | the size of the window |
61+
| **Sill height** | how far above the floor it sits |
62+
| **Frame depth** · **Frame** | how deep and how wide the frame is |
63+
| **Panes across** · **Panes up** | the glazing bars |
64+
| **Sill ledge** | a ledge under the window |
65+
| **Opens** | **fixed**, or **casement** (it swings open) |
66+
| **Hinge** | left or right (a casement) |
67+
68+
### Stairs
69+
70+
| Row | What it sets |
71+
|---|---|
72+
| **Shape** | straight, L, U or spiral |
73+
| **Width** · **Steps** | how wide the stair is and how many steps it has |
74+
| **Rise** · **Run** | the height and depth of each step |
75+
| **Turn** | left or right (L, U and spiral) |
76+
| **Flight gap** | the space between the two flights of a U stair |
77+
| **Column** | the thickness of a spiral stair's centre column |
78+
| **Solid** · **Tread** | a solid stair, or open treads of this thickness |
79+
80+
## Fitting a door or window into a wall
81+
82+
A door and a window both sit centred on their opening, at floor level. To fit one into a wall, place it on the same
83+
grid point as the centre of the wall's opening, with the same size as the opening (and, for a window, the same **Sill
84+
height**). The pieces from the Add menu already match each other.
85+
86+
## Doors and windows that open
87+
88+
In **Interact** and **Play**, click a door to open or close it, or walk up to a door set to open on proximity.
89+
Casement windows open the same way. Every peer sees the same swing, and a player who joins later sees the door already
90+
open. In **Edit** a door always shows shut, so it is easy to place.
91+
92+
![A door and a casement window open in Interact, with stairs visible through the doorway](img/architecture/door-open.png)
93+
94+
## Collisions
95+
96+
- Walls and stairs collide with their exact shape: doorways stay open, and a walking player climbs steps up to 0.3 m
97+
high.
98+
- A door's frame blocks around the doorway, and its leaf blocks only while it is shut.
99+
- A window is a solid slab.
100+
101+
## Limits
102+
103+
- The parts of a door or window are rebuilt from its numbers on every device, so [editing the mesh](mesh-editing.md) of
104+
a door changes only its frame.
105+
- Very steep stairs (a **Rise** near 0.3 m) are the most a walking player can climb.

‎docs/camera.md‎

Lines changed: 69 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Everything about how the scene *looks on your screen* — the camera lens, rende
66

77
Click **🎛️ Configure Scene** in the sidebar menu. It opens a panel on the right with these sections:
88

9-
- **Environment** — lighting preset, exposure, saved presets (shared).
9+
- **Environment** — lighting preset, exposure, [sky image](#sky-images-hdri), saved presets (shared).
1010
- **Music** — the shared background track and your local volume (see [Music & Sound](audio.md)).
1111
- **View** — render mode, camera lens, clip planes (your device only).
1212
- **Background** and **Fog** (shared).
@@ -69,7 +69,8 @@ everyone; previewing and the frustum lines are yours alone. The object's right-c
6969
screen, **✕** hides the window (the *Preview window while selected* row brings it back), and right-drag moves it.
7070

7171
A game uses cameras through the [Set Active Camera](nodes/setcamera.md) node, the [Game Start](nodes/gamestart.md) node's
72-
camera, and [Set Look](nodes/setlook.md) for each camera's own [look](post-processing.md).
72+
camera, [Set Look](nodes/setlook.md) for each camera's own [look](post-processing.md), and since 1.27 the
73+
[Camera Rig](nodes/camerarig.md) node, which makes a camera follow or watch an object.
7374

7475
## Camera lens
7576

@@ -116,12 +117,78 @@ The **Environment** section sets the scene's lighting and sky. Pick a preset chi
116117
| **Night** | Dim and cool. |
117118
| **Classic** | The pre-lighting look with the rig **off** — bring your own lights. |
118119

120+
Since 1.27 five more chips — **Clear sky**, **Meadow**, **Sunrise**, **Starlight** and **Photo studio** — use a real sky
121+
photo; see [Sky images](#sky-images-hdri).
122+
119123
An **Exposure** slider tunes overall brightness. The lit presets add a sun that casts shadows, with a shadow-catcher disc under the scene so shadows land even on the infinite grid.
120124

121125
Environment is a **shared, latest-wins** setting — the most recent change wins for everyone. You can also **save**, **export** and **import** custom presets (stored locally), and adopt presets other peers have shared.
122126

123127
Below Environment, **Background** sets the clear color and **Fog** adds distance fog (color + near/far), both shared. A fog you set by hand keeps exactly the near and far you typed; a preset's fog still grows with a big scene.
124128

129+
## Sky images (HDRI)
130+
131+
Since 1.27 a sky image — an HDRI, a 360° photo that keeps the real brightness of the sun and the sky — can be the
132+
scene's sky **and** its light. Every object picks up the image's colours and brightness, shiny objects reflect it, and
133+
[water](water.md) mirrors the real clouds. The scene's sun is placed where the photo's sun is, so shadows agree with the
134+
sky.
135+
136+
![A mirror sphere and a box lit by the Meadow sky image](img/camera/sky-meadow.png)
137+
138+
It lives in **Configure Scene ▸ Environment ▸ Sky image (HDRI)**, under the preset chips and the Exposure slider. Click
139+
a card to switch to that sky; like every Environment setting, everyone in the session sees it.
140+
141+
| Sky | What it looks like |
142+
|---|---|
143+
| **Clear sky** | open blue sky with clouds, haze on the horizon |
144+
| **Meadow** | a sunny meadow with trees |
145+
| **Sunrise** | a low warm sun and long shadows |
146+
| **Starlight** | dusk under the stars |
147+
| **Photo studio** | softbox lighting over a plain grey backdrop — light only; reflections show the studio |
148+
149+
The five skies are also preset chips, and in VR they are in the radial menu's **Scene ▸ Environment**. All five are CC0
150+
images from [Poly Haven](https://polyhaven.com).
151+
152+
![Configure Scene ▸ Environment with the Sky image section: the sky cards, Upload HDRI…, Rotation, Image light, Show as sky, Sky blur and Tone mapping](img/camera/sky-image-section.png)
153+
154+
| Row | What it does |
155+
|---|---|
156+
| **Upload HDRI…** | use your own equirectangular `.hdr` or `.exr` file (up to 25 MB; 1k–2k is plenty). It is added to the [Explorer](explorer.md), your peers download it from you automatically, and it is saved inside `.tpscene` files and exports |
157+
| **Rotation** | turns the sky; the sun and its shadows turn with it |
158+
| **Image light** | how strongly the image lights objects (the sky itself is unchanged) |
159+
| **Show as sky** | off keeps the image's light and reflections but shows the colour sky instead |
160+
| **Sky blur** | softens the background — handy behind a product shot |
161+
| **Tone mapping** | **ACES Filmic** (the default), **AgX** or **Neutral**: how the bright image is fitted to the screen |
162+
| **None** (the first card) | back to the colour sky and the light rig |
163+
164+
**Exposure**, above the cards, brightens or darkens the whole picture, and while a sky image shows it works on the
165+
desktop whatever else is on. Editing any of these turns the preset into *Custom*, like any other sky edit; **Save
166+
preset** keeps it.
167+
168+
A short tour points at the cards the first time you see them (**Settings ▸ Interface ▸ Tours ▸ Reset all** shows it
169+
again).
170+
171+
### Sky image quality
172+
173+
How sharp the sky and its reflections are is a setting for **this device only** — **Settings ▸ Scene ▸ Performance ▸
174+
Sky image quality**:
175+
176+
| Choice | What it does |
177+
|---|---|
178+
| **Auto** (the default) | **Low** in a headset, in VR, or once the scene is too heavy for effects; **Full** otherwise |
179+
| **Full (1k)** | prepares the image at 1024 px |
180+
| **Low (headset)** | prepares it at 512 px — a quarter of the memory |
181+
182+
The scene and your peers are unaffected.
183+
184+
### Limits
185+
186+
- Only equirectangular images (twice as wide as they are tall); cube-map files are not supported. An `.exr` must be RGB
187+
or RGBA.
188+
- Files over 25 MB are refused — your peers could not receive them.
189+
- Someone on an app older than 1.27 in the same session sees the preset's flat colours instead of the image.
190+
- A [scene look](post-processing.md) with its own [Tone mapping](post-processing.md#tone-mapping) effect keeps its own curve.
191+
125192
## Lights
126193

127194
A **directional** or **spot** light shines where it points. Turn it with the rotate gizmo — or type into the rotation rows — and the beam and its shadow follow, the way a light behaves in any 3D tool. Older scenes that aimed a spot at a saved point load aimed the same way.

‎docs/community.md‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,3 +157,9 @@ Every scene page ends with **Report this scene**: pick a reason — **Spam**, **
157157

158158
Staff accounts have a **Staff · Insights & moderation** entry in the profile menu for the report queue and the visit
159159
totals; it is not shown to anyone else. Assets an author had no right to license are exactly what *Stolen work* is for: the license picker cannot express "all rights reserved", so a report and a takedown are how that is handled.
160+
161+
## What's new on theprototype.app
162+
163+
Since 1.27 the **What's New** window (logo menu) on theprototype.app starts with a **theprototype.app cloud** section:
164+
what changed in the hosted service — publishing, community, rooms, hosted AI — above the app's own release notes. A
165+
self-hosted or local build shows no such section.

‎docs/controls.md‎

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -301,6 +301,26 @@ graph, and the behaviour view no longer flickers the cursor.
301301
Fields that hold a distance or an angle also accept a typed **unit** (`12cm`, `4in`,
302302
`90deg`) — see [Units](units.md).
303303

304+
#### Number fields and undo
305+
306+
Since 1.27 every number field you can drag — the Inspector's **Position** / **Rotation** / **Scale** and its other
307+
values, shader-node vectors, and the [Animation window](animation.md)'s length, speed, fps, step and key fields — works
308+
the same way with undo:
309+
310+
- **One drag is one undo step.** However far you scrub, one <kbd>Ctrl</kbd>+<kbd>Z</kbd> puts the value back where the
311+
drag started. (Before, a shader vector took two, and the Animation window's length, fps and step took one per pixel
312+
moved.)
313+
- **One typed edit is one undo step.** Click a field, type a value (it applies as you type) and press <kbd>Enter</kbd>:
314+
that is one step, even if you paused between keys.
315+
- **<kbd>Esc</kbd> cancels typing.** It puts back the value the field had before you started, as it already did for
316+
arrow-key steps, and leaves nothing on the undo stack.
317+
- **Undo shows at once.** After <kbd>Ctrl</kbd>+<kbd>Z</kbd> the Position / Rotation / Scale rows show the restored
318+
numbers straight away — before, they kept the old number until you clicked something, and dragging from it made the
319+
object jump.
320+
- The Animation window's playback **Speed** is undoable now too.
321+
- **Selecting a shader node is not an edit.** Clicking a node in the [Shader editor](shader-graph.md) selects it on your
322+
screen only: it adds no undo step and is not sent to the other people in the session.
323+
304324
### Text selection
305325

306326
Dragging across a menu, a toolbar or a panel does not paint a text selection, and a drag that starts in the 3D view or
@@ -469,7 +489,7 @@ places keys belong to.
469489
**Empty viewport** — a quick right-click opens the scene menu:
470490

471491
- **Search objects…** — find an object in the scene by name (off by default: **Settings ▸ Interface ▸ Lists & menus ▸ Object search in menu**).
472-
- **Add** — the full primitive catalog (meshes, building blocks, cameras, lights, [water](water.md), [effects](particles.md), a [fluid tank](simulation.md#fluid-tank)) plus empty groups; objects spawn at the clicked point.
492+
- **Add** — the full primitive catalog (meshes, building blocks, [architecture](architecture.md) — walls, doors, windows and stairs — cameras, lights, [water](water.md), [effects](particles.md), a [fluid tank](simulation.md#fluid-tank)) plus empty groups; objects spawn at the clicked point.
473493
- **Undo / Redo**, **Ping here**.
474494
- **Selected ▸** — the selected object's own menu (shown only while something is selected).
475495
- **Tools** — Node editor, Draw mode (drag 3D strokes on surfaces, or click out an editable [spline](splines.md)), Measure distance, Simulate physics (and *Reset simulation* while one runs), [Recording…](recording.md) (a turntable or flythrough video).
198 KB
Loading

‎docs/img/architecture/house.png‎

265 KB
Loading
207 KB
Loading
489 KB
Loading

‎docs/img/camera/sky-meadow.png‎

788 KB
Loading

‎docs/img/nodes/camera-rig.png‎

229 KB
Loading

0 commit comments

Comments
 (0)