WarpCap · 3D Review
Start a 3D comparison
Load your candidate models. Add the source image to inspect them against it.
Arrow keys move. Enter loads.
Or load your own GLBs
The Flight Helmet samples are CC0. Local files stay in your browser.
Preparing 3D engine… 0%
This browser can’t remember panel sizes or UV placement. This visit still works.
Choose a reference image to inspect beside the candidates.
UV layout
Scene
Lighting
More inspection setups
Each setup selects the view shown on its button. Camera and source files stay unchanged.
Direction
Precise direction and help
Drag sideways to turn the light; drag up/down to raise/lower it. Attachment chooses whether the light stays fixed in the scene or follows the camera. Arrows: 5° · Shift: 15° · Home: reset · Escape: cancel drag.
Environment
Keeps the current shading view and AO method.
Hard ← → Soft diffuse shading. Angular diameter; 0° is directional. Highlights and cast-shadow filtering are unchanged.
No imported HDR. Files stay in this tab.
Radiance .hdr · 2:1 panorama · up to 4096 × 2048 and 32 MiB.
Built-in environments are synthetic HDRs. The stage starts as a neutral grid room; Ground can switch to the one-sided red X and blue Z plane. Quality controls shadows and occlusion. Environments and key light affect both candidates.
The camera stays still. Drag the light widget or environment ring to scrub; manual adjustment pauses the sweep.
Candidate lighting
Relinking uses the currently selected candidate’s lights. Exposure stays shared.
Ground
The grid room scales with the models: eight times the largest dimension across, with minor cells one eighth of that dimension. At the default fit those cells are 0.25 review units. A major line runs along every edge and the lines meet at the corners. Darker interior lines repeat every ten cells. Room brightness sets that fill and those lines. Its darkest setting stays a readable deep grey. The room stays an even color in every lighting preset and darkens only where a cast shadow falls. The ground plane is the one-sided red X and blue Z grid. The floor sits on a grid line. A wall fades only when the camera is very close, so dolly and orbit are not blocked.
Appearance
Surface display
Shared by both models. Highlights stay neutral.
Studio lighting follows the view. Scene lighting settings are preserved.
Lighting component
Reflection bands reveal visual smoothness. Shading normals and triangle density affect the result; this is not a curvature measurement.
Surface display help
Background: Shared by both views. Contrasting colors help reveal holes.
Surface shading: Compare supplied smooth normals with actual triangle faces. Diffuse/specular isolate reflected lighting; emission is omitted.
Diagnostic views are temporary. Reflection reveals environment shapes; authored roughness can soften them. Restoring appearance keeps the camera, comparison scale and lighting.
High renders extra detail for smoother edges.
Rendering and view settings
Rendering
View settings
Viewing conditions
Capture options
Camera
View
Closer ← → Farther. Move closer for stronger perspective or farther for a flatter view. Field of view adjusts to keep size near the orbit point similar.
Pivot
Orbit around model center
Detail
Navigation help
Enter model moves to the shared model center, uses a wider view and shows both sides of surfaces. Free look turns in place: drag to look, scroll or W/S to move, A/D sideways, Q/E down/up; Shift moves faster. Focus the model view for keys.
Pick a surface point to pivot around that detail. Scroll in the model view to zoom normally. Frame both restores the standard camera.
Inspect
Issues
Ambient occlusion
Source
Balanced · 6-minute limit per candidate
Unlit grayscale of the review bake. White is open; dark is occluded. Blue-gray means no bake.
Bake options
Distance is relative to the model’s largest dimension. Changing it selects a different bake.
Details
Strength: Shown when a source is in use. 1 keeps that source’s full contribution. A review bake affects indirect diffuse lighting in Materials.
Ambient occlusion darkens enclosed surfaces. SSAO, in this section, uses visible screen depth and changes with the camera. Lighting presets preserve the source. Missing data never falls back to SSAO.
One source applies to both candidates. AO only always shows the review bake. Clay bypasses model AO.
Surface-sampled AO in a CPU background worker. Each face is tessellated. Every sample casts the same cosine-weighted Hammersley hemisphere. A hit inside 40% of the radius is full contact; farther hits fade with squared distance. The averaged visibility is shaped so a small nearby occluder still reads, and a fully open sample stays white. Flat faces stay even and seams form a soft gradient. There is no post-blur. Full static model, opaque geometric surfaces; separate meshes in the candidate occlude each other. Materials, Materials + Wireframe and Source polygon edges draw this same surface on every renderer. Supplied textures are not reprojected onto it. Front and back of every face are baked separately. The visible side selects its own result. The front average counts every sample, including crevices and back faces, so a large open face can stay near white while the average is lower. Authored normal maps, transparency and ground are not baked. Results stay in this browser cache; source files are unchanged.
Cutaway
Both candidates · shared plane
Lower Y retained
The plane stays fixed as you orbit. Source geometry and baked AO are preserved. Open cuts reveal existing surfaces; no filled caps are added.
UV / texture
Reference image
No reference image selected.
PNG, JPEG or WebP · up to 16 MiB. Image stays in this tab.
Model
Structure
Properties
Maps
Load both candidates to compare maps.
Per-material breakdown
Candidates
| Candidate | A | B |
|---|
Validation warnings describe file admission, not reconstruction quality.
Align
Automatic alignment
Guided alignment
Choose three spread-out points on the intended base. Shift-drag or right-drag navigates; scroll zooms. Arrows move cursor, Enter picks, Backspace undoes.
3 · Match placement
A size anchor is a coordinate choice, not an accuracy ranking. Whole-shape matching estimates heading; no part correspondences are inferred.
Leveling fallback
For approximately upright objects, estimate both bases before choosing Front. Check the preview; gravity is unverified.
Alignment help
Both models remain candidates. Placement changes this review only. Pitch, heading and roll adjust pair proposals. Reset restores original review placement. Save view settings after Apply to keep placement for these exact files.
Size
Match view to reference · Experimental
Choose a reference image and a candidate.
Estimator limits
One image, upright object. Use a plain/transparent background or manually select foreground. Compares outline and base-color details; outline preview fits scale/position in 2D. Refine tests nearby angles and perspective strength; no verified lens/roll recovery, camera calibration or multi-image reconstruction. Both candidates need matching model axes. Applying shares the direction and fits both models.
v0.1.0 · 51823b6