
Projects
Viewpoints as Notes in a 3D Model
A side project about saving camera positions as notes inside a photogrammetric model.
Starting Point
Photogrammetry can preserve a field site as a detailed 3D model. Once the model exists, however, a conventional viewer mostly treats it as an object to rotate and inspect.
Field observations are made from particular positions and directions. The viewpoint itself carries context: what was visible, what drew attention, and how one detail relates to the wider site.
What I Wanted to Try
Can a camera position inside a 3D model become a form of note?
Instead of keeping written observations separate from the model, someone could return to the exact view where a note was made. A sequence of viewpoints could also provide a path through the site rather than a single unrestricted 3D scene.
What I Built
I built a web-based glTF viewer that allows a user to upload a model, move through it, and save the current camera position and rotation as a viewpoint note.
The prototype was inspired by underwater research in which a survey site is reconstructed from field photographs. The example below uses a photogrammetric model of the 19th-century shipwreck “15377” by BOEM Archaeology.
The application was built with Remix, React Three Fiber, Three.js, PostgreSQL, and Prisma. It supports project management, glTF uploads, camera controls, and saved viewpoints. Authentication and file storage were designed for local demonstration rather than production use.

What I Found Interesting
A viewpoint can connect a note to spatial context without requiring a coordinate or feature to be selected. But the more important shift was to treat navigation itself as part of the observation rather than as a temporary state of the viewer.
A note about a 3D site does not only describe an object. It also depends on where the observer was positioned, which direction they faced, what scale they used, and what remained outside the frame. Saving a camera pose preserves some of that situated context, but a pose alone does not explain why the view mattered.
This changed the question from how to bookmark positions in a model to how a digital representation might preserve a path of attention through a place. A useful system may need to connect viewpoint, note, evidence, sequence, and authorial intent so another person can revisit not only the same camera position, but the reasoning that made it significant.
What It Does Not Do Yet
The prototype stores a viewpoint and text, but it does not represent uncertainty, provenance, or changes between versions of a model. Notes are not yet connected to a specific surface, object, measurement, or source photograph.
It was created as a local demonstration. Uploads use local disk storage, and its simple authentication setup is not intended for public production use.
What I Would Try Next
- When is a viewpoint more useful than placing a marker on a 3D surface?
- How should notes remain attached when the underlying model changes?
- Could a sequence of viewpoints communicate an interpretation of a place?
- How might field photographs, measurements, and citations be connected to the same observation?
- What should be preserved so another person can revisit not only the place, but the reasoning?