Graphics Object Scale Verification in VR

Our video game development company runs independent projects, jointly creates games with the client and provides additional operational services. Expertise of our team allows us to cover all gaming platforms and develop an amazing product that matches the customer’s vision and players preferences.
Showing 1 of 1 servicesAll 242 services
Graphics Object Scale Verification in VR
Simple
~2-3 business days
FAQ
Our competencies
What are the stages of Game Development?
Latest works
  • image_games_mortal_motors_495_0.webp
    Game development for Mortal Motors
    663
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    A turn-based strategy game set in a fantasy setting, With Fire and Sword
    859
  • image_games_second_team_604_0.webp
    Game development for the company Second term
    490
  • image_games_phoenix_ii_606_0.webp
    3D animation - teaser for the game Phoenix 2.
    533

tags: [vr-ar]

Verification of object scale accuracy in VR graphics

In regular games scale is convention. Sword slightly longer or shorter — nobody notices. In VR user stands next to objects. Table 90 cm high perceived by brain as "correct" or "too low" — because humans have experience with real tables. Door opening 1.9 m makes user instinctively duck. Object "fist-sized" in game that looks head-sized in VR breaks perception.

Scale checking in VR is not "looked and seemed normal". It's measurement in Unity units against real physical dimensions.

Calibration: 1 Unity Unit = 1 meter

Basic rule for Unity VR: 1 unit = 1 meter. Not recommendation — requirement. If scene modeled in other units (centimeters, inches) and imported without recalculation, objects end up either gigantic or microscopic in VR.

Frequent problem source — 3D editor imports. Blender defaults to meters, Autodesk Maya to centimeters. FBX from Maya without explicit unit specification on export arrives in Unity with 0.01 Scale Factor on ModelImporter. Object "correctly" appears only if somewhere in transform chain this factor compensated. If not — it's either 100x smaller needed, or developer manually sets Scale (100, 100, 100) on GameObject, breaking physics and NavMesh.

Correct approach on import: in ModelImporterModelScale Factor set value bringing object to real meter dimensions. For Maya FBX usually 0.01. After — verify: human character should be 1.7–1.85 m from feet to head.

Reference objects and VR Height Reference

For scale verification in VR use reference objects — reference meshes with known real dimensions:

  • Average adult height: 1.75 m (floor to crown)
  • Standard door opening: 2.0 m height, 0.9 m width
  • Dining table: 0.75 m height
  • Chair: 0.45 m seat from floor
  • Vehicle (sedan): ~1.5 m height, 4.5 m length
  • Brick: 25 × 12 × 6.5 cm

Create ScaleVerificationScene with these references and floor plane. Each new or modified asset placed next to references in VR and verified visually. Takes 2–3 minutes per asset, eliminates class of problems "looked correct in editor, strange in VR".

VR Height Reference — special tool in XR Interaction Toolkit Samples: virtual mannequin with standard proportions, placed in scene for quick visual scale check of interactive objects.

Hand scale and reachability zone

In VR player hands are part of game geometry. If virtual hands visually "short" compared to handles and buttons in scene — player reaches toward object but hand doesn't. Discomfort without obvious cause.

Reachability zone: adult hand extended 0.7–0.8 m from shoulder. In VR XRRig.cameraFloorOffsetObject determines camera height above floor. Interactive objects should place in comfort reachability: 0.5–1.2 m height, no farther than 0.6 m from body center horizontally.

Test: each interactive scene object gets reachability check. Method: in editor use Gizmos drawing sphere radius 0.7 m from XRRig.centerEyeAnchor — all interactive objects must intersect this sphere at least partially.

Scale checking automation

For projects with large asset count manual verification impractical. Write editor tool — EditorWindow in Unity — that:

  1. Gathers all GameObject with Interactable tag or XRBaseInteractable component
  2. Checks their Bounds.size against set min/max for object category (weapons: 0.15–1.5 m, furniture: 0.3–2.5 m)
  3. Outputs list of objects exceeding norm

Thresholds set in ScriptableObject ScaleVerificationConfig. Doesn't replace visual check in VR, but filters obvious errors — accidental 0.01 or 100 scale on imported object.

Additional check: ModelImporter for all FBX in project — ensure no objects with scaleFactor != 1 after normalization. Solved by import post-processor (AssetPostprocessor.OnPreprocessModel) logging or auto-correcting wrong scale factor.

Verification process

Stage Content
Import settings audit FBX Scale Factor check for all assets
Reference object verification Key assets next to human mannequin in VR
Auto tests in editor Script checking Bounds.size by categories
Reachability test Interactive objects in 0.5–1.2 m zone

Estimated timelines: basic audit — 2–5 days, full large project asset verification — 2–4 weeks. Cost calculated after estimating asset count and scene complexity.