Photogrammetry چیست و چرا برای VR؟
Photogrammetry یعنی ساخت مدل ۳D از صدها عکس از زوایای مختلف. الگوریتم هوش مصنوعی (مثل Reality Capture، Metashape، Meshroom) از این عکسها geometry و textures را reconstruct میکند. نتیجه: مدل با دقت متر-میلیمتر و textures عکاسی واقعی.
برای VR این بزرگترین مزیت است: کاربر در headset احساس "حضور واقعی" میکند. یک ساختمان photogrammetry-scanned با تمام جزئیات - سنگچینی، رنگپاش، خس و خاشاک - تجربه را به سطح فیلم سینمایی میرساند.
تفاوت با مدل دستی: یک ساختمان handcrafted ۳۰-۸۰ ساعت کار آرتیست. photogrammetry ۱-۲ ساعت scan + ۲-۴ ساعت processing. کیفیت برابر یا بهتر در عمل.
برای استارتاپ VR ایرانی: photogrammetry scan های Sketchfab منبع طلایی است. بهجای استخدام آرتیست $۵۰۰۰، یک scan $۵۰-۲۰۰ میخرید.
بهترین دستههای photogrammetry در Sketchfab
Cultural Heritage: آثار باستانی موزه، مجسمههای یونانی-رومی، آثار مصری، آثار خاورمیانه. کیفیت موزهای. برای VR education و museum digital ایدهآل. توضیح در میراث فرهنگی Sketchfab.
Architecture Scans: ساختمانهای واقعی scan شده - کلیسا، قصر، خانه تاریخی. مناسب VR tour ساختمان.
Nature Scans: درخت، صخره، landscape natural. برای VR outdoor environment. کیفیت Hollywood-grade.
Object Scans: اشیاء روزمره (مجسمه، vase، tools historical). برای museum digital.
Human Scans: کاراکترهای واقعی scanned. برای VR character realistic. ۸۰-۲۰۰ دلار.
Vehicle Scans: ماشین، موتور، scaned واقعی. کیفیت showroom.
برای پروژه VR ایرانی: scans از مساجد تاریخی (شیخ لطفالله، جامع اصفهان)، آثار باستانی پرسپولیس، تخت جمشید گاهی موجود است (برخی توسط آرتیستهای ایرانی upload شده).
انتخاب scan مناسب VR
نه همه photogrammetry scans برای VR مناسباند. معیارهای انتخاب:
۱. Polygon count: scan خام معمولاً ۲-۲۰ میلیون triangle. برای VR (بهخصوص Quest) خیلی زیاد. باید decimated نسخه پیدا کنید (۱۰۰-۵۰۰K tri) یا خودتان decimate کنید.
۲. Texture resolution: ۴K-۸K texture استاندارد. برای Quest گاهی ۲K کافی (memory محدود). PCVR ۸K full quality.
۳. Mesh cleanup: scan خام دارای holes، floating geometry، noise است. صفحه Sketchfab میگوید آیا cleanup شده. preview در viewer برای بررسی.
۴. Watertight: برای VR interaction (collision)، mesh باید watertight باشد. بسیاری scans نیستند که نیاز به repair در Blender یا ZBrush دارد.
۵. Lighting baked or PBR: scan ها میتوانند با lighting baked در texture باشند (cheaper rendering) یا PBR clean (relight در engine). برای VR dynamic، PBR clean بهتر.
بهترین استراتژی: scan با badge "Verified Designer" یا "Featured" بخرید. اینها معمولاً post-processing شدهاند.
Optimization workflow برای Quest
Quest 2/3 محدودیتهای جدی دارد: ۸ GB RAM، GPU mobile-grade. scan خام crash میکند.
Decimation در Blender:
۱. Import OBJ یا FBX scan
۲. Modifiers → Decimate. Ratio: ۰.۰۵ (۵٪) تا ۰.۲ (۲۰٪) بسته به density اولیه
۳. Apply modifier. Save as new file.
هدف: ۵۰-۱۵۰K tri برای hero asset Quest.
Texture compression:
۱. Texture اصلی ۸K، resize به ۲K (Photoshop یا GIMP). معمولاً difference visual کم.
۲. در Unity: Texture Import Settings → Compression: ASTC ۶x۶ (Quest standard).
۳. Mip maps: enabled (automatic Unity).
Material consolidation:
یک scan ممکن است ۱۰+ material داشته باشد. در Blender → Material Combine. کاهش به ۱-۲ material = کاهش draw call ها = FPS بالاتر.
UV unwrap optimization:
گاهی UV های scan inefficient هستند. در Blender Smart UV Unwrap با margin ۲px. سپس bake textures جدید.
با این optimization: scan ۲۰M tri در ۲۰۰K tri در Quest با ۲K texture. FPS ۹۰ stable.
Optimization workflow برای PCVR
PCVR (Valve Index، HTC Vive، Quest با cable) GPU desktop-grade دارد. میتوانید کیفیت بسیار بالاتر:
Polygon target: ۵۰۰K-۲M tri برای hero asset. complete environment با چندین asset ۵-۱۰M tri قابل قبول.
Texture: ۴K-۸K بدون مشکل. PBR maps کامل (Albedo، Normal، Roughness، Metallic، AO).
Real-time lighting: میتوانید Unity HDRP یا Unreal Lumen استفاده کنید برای dynamic lighting روی scan های PBR. کیفیت سینمایی.
SteamVR integration: Unity OpenXR plugin یا Unreal SteamVR plugin. controller mapping خودکار.
برای پروژه museum digital ایرانی روی PCVR: یک سری مدل آثار پرسپولیس scans، با Unity URP و OpenXR، میتوانید VR experience سینمایی بسازید. هزینه assets $۵۰۰-۱۰۰۰، development یک developer ۲-۴ ماه.
Integration در Unity
گام ۱ - Project setup: Unity 2022.3 LTS یا newer. URP (Universal Render Pipeline) برای Quest، HDRP برای PCVR. XR Plugin Management (OpenXR).
گام ۲ - Import scan: drag-drop FBX یا GLB در Project window. Unity automatic Material میسازد.
گام ۳ - LOD setup: LOD Group component روی scan. ۳ level: full (close)، ۵۰٪ (medium)، ۲۰٪ (far). Unity بسته به فاصله camera switch میکند.
گام ۴ - Collision: اگر scan watertight است، Mesh Collider با Convex=false. اگر نه، MeshCollider Convex=true (محدود ۲۵۵ vertex) یا BoxCollider/CapsuleCollider ساده.
گام ۵ - Lighting: Static mark scan. Bake Lightmap. این یکبار محاسبه میشود و در runtime cheap است.
گام ۶ - VR setup: XR Origin prefab. controller setup با OpenXR Input System.
گام ۷ - Profile: Unity Profiler در Quest Link mode. هدف: ۹۰FPS stable، CPU زیر ۸ms، GPU زیر ۸ms. اگر بالاست، optimization بیشتر.
این workflow استاندارد برای VR project است. برای application اولیه، یک scan ساده + VR camera + walkable area کافی برای PoC.
Integration در Unreal Engine 5
Unreal Engine 5 با Nanite (geometry تک شو) و Lumen (lighting) برای photogrammetry فوقالعاده است.
Nanite: قابلیت render geometry با میلیونها polygon بدون LOD manual. برای scan ها انقلاب است. import scan خام ۲۰M tri مستقیم در Unreal.
Lumen: real-time global illumination. scan PBR clean در Lumen میدرخشد - sun light، indirect bounce، sky lighting. کیفیت سینمایی.
Workflow:
۱. Unreal 5.x project با Lumen + Nanite enabled
۲. Import scan FBX/GLB. در Static Mesh Editor، Enable Nanite checkbox.
۳. Material setup: PBR maps assignment. اگر scan baked lighting دارد، disable lighting در material.
۴. Place در level. lighting setup با Sun + Sky Atmosphere.
۵. VR plugin (OpenXR یا Steam VR). Pawn VR template.
۶. Test در Quest Link یا Vive.
Unreal 5 برای PCVR best-in-class. برای Quest standalone (mobile) اما تنظیمات سختگیرانهتر (Vulkan mobile، forward rendering). اکثر استارتاپهای VR از Unreal 5 PCVR شروع میکنند.
استراتژی سرمایهگذاری برای VR project
یک VR experience museum digital کامل:
Hero scans (۵-۱۰ مدل اصلی): $۵۰۰-۱۰۰۰. این آثار اصلی هستند که کاربر VR detail با آنها interact میکند.
Environment scans (۲-۳ ساختمان یا room): $۱۰۰-۳۰۰ هر کدام. کل: $۲۰۰-۹۰۰.
Background props (۲۰-۵۰ small asset): $۱۰-۳۰ هر کدام. کل: $۲۰۰-۱۵۰۰.
Audio (ambient، sound effects): $۱۰۰-۳۰۰ از Pond5 یا AudioJungle.
Total assets: $۱۰۰۰-۳۰۰۰ برای museum complete.
به تومان (نرخ ۸۰٬۰۰۰): ۸۰-۲۴۰ میلیون تومان نهایی با ۲۲٪ کارمزد سازه. این برای start-up VR ایرانی منطقی است - یک VR application میتواند به museum، university یا برند بفروشد به $۵۰۰۰-۲۰۰۰۰.
فرآیند کامل خرید scan ها در راهنمای خرید Sketchfab.