מדריך יישום טכני לקטלוג מוצרי AR

לקוחות מצפים לראות מוצרים במציאות רבודה באופן מיידי, אך טעינה איטית של מודלים תלת-ממדיים מרחיקה אותם. אנחנו מפתחים קטלוגי AR עם טעינה לפי דרישה וקאשינג, כך שהמודלים מופיעים ללא עיכובים. הצוות שלנו מספק את הפרויקט במפתח מלא—מארכיטקטורה ועד אינטגרציית CMS ותמיכה מתמשכת.

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

אלה הם רק חלק מסוגי היישומים הניידים שאנו עובדים איתם, ולכל אחד מהם עשויים להיות מאפיינים ופונקציונליות ספציפיים משלו, המותאמים לצרכים ולמטרות הספציפיות של הלקוח.

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
מדריך יישום טכני לקטלוג מוצרי AR
מורכב
~2-4 שבועות

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

קטלוג מוצרי AR: מדריך יישום טכני

בפיתוח קטלוג AR, האתגר המרכזי הוא טעינה והצגה של מודלים תלת־ממדיים במכשירים ניידים ללא עיכובים. המשתמש פותח כרטיס מוצר ומצפה שהמודל יופיע תוך 2–3 שניות. כל עיכוב נוסף — ההמרה יורדת ב־20%. הגישה הסטנדרטית של איגוד כל המודלים באפליקציה אינה ניתנת להרחבה: קטלוג של 1000 פריטים שוקל מעל 10 ג״ב. הפתרון הוא טעינה לפי דרישה מ־CDN עם שמירה במטמון מקומי. במאמר זה, אנו מפרקים את הארכיטקטורה, בעיות אופייניות, והניסיון שלנו באוטומציה. אנו בונים קטלוגי AR לאפליקציות מובייל עם אינטגרציית CMS ותמיכה בפורמטים USDZ ו־GLB. חיסכון בזמן הטעינה מגיע ל־40% בהשוואה לפתרונות ללא שמירה במטמון.

בעיות שאנו פותרים

טעינה ושמירה במטמון של מודלים תלת־ממדיים

קטלוג AR עם מאות פריטים אינו יכול לאחסן את כל המודלים בחבילת האפליקציה. נדרשת הורדה לפי דרישה מ־CDN. הגישה הסטנדרטית:

  1. קטלוג המוצרים מ־CMS מכיל model_url — כתובת URL ל־USDZ (iOS) או GLB (Android).
  2. כאשר כרטיס מוצר נפתח — בדוק את המטמון המקומי (FileManager).
  3. אם אינו קיים — הורד ברקע באמצעות URLSession.downloadTask, הצג פס התקדמות.
  4. לאחר ההורדה — אתחל סצנת AR.
func loadModel(url: URL, completion: @escaping (ModelEntity?) -> Void) {
    let cacheURL = cacheDirectory.appendingPathComponent(url.lastPathComponent)
    if FileManager.default.fileExists(atPath: cacheURL.path) {
        completion(try? ModelEntity.loadModel(contentsOf: cacheURL))
        return
    }
    URLSession.shared.downloadTask(with: url) { tempURL, _, _ in
        guard let tempURL else { completion(nil); return }
        try? FileManager.default.moveItem(at: tempURL, to: cacheURL)
        DispatchQueue.main.async {
            completion(try? ModelEntity.loadModel(contentsOf: cacheURL))
        }
    }.resume()
}

גודל המודל חשוב. רהיטים: 5–15 מ״ב USDZ הוא נורמלי. 50+ מ״ב — המשתמש ממתין ועוזב. אופטימיזציה: func loadModel(url: URL, completion: @escaping (ModelEntity?) -> Void) { let cacheURL = cacheDirectory.appendingPathComponent(url.lastPathComponent) if FileManager.default.fileExists(atPath: cacheURL.path) { completion(try? ModelEntity.loadModel(contentsOf: cacheURL)) return } URLSession.shared.downloadTask(with: url) { tempURL, _, _ in guard let tempURL else { completion(nil); return } try? FileManager.default.moveItem(at: tempURL, to: cacheURL) DispatchQueue.main.async { completion(try? ModelEntity.loadModel(contentsOf: cacheURL)) } }.resume() } לדחיסת טקסטורות ל־ASTC, דחיסת גיאומטריה של Draco (באמצעות TextureConverter או צינור עבודה של Blender).

קנה מידה ומיקום מדויק

זיהוי מישור בסיסי → raycast → מיקום מתואר היטב בתיעוד ARKit. בקטלוג AR, אנו מוסיפים:

קנה מידה עם שמירה על גודל אמיתי. מודלי USDZ חייבים להיות בקנה מידה נכון: ספה של 2 מטר צריכה להיות 2 מטר ב־AR. אם הגודל נמצא במטא־דאטה של CMS — החל באמצעות usdz_converter. אם לא — הגדר דרך תצורת המודל. המשתמש לא צריך לשנות קנה מידה ידנית — זה פוגע בתפיסת הגודל האמיתי.

סיבוב באצבע אחת. ModelEntity.scale בRealityKit הוא הנתיב הפשוט ביותר. אבל סיבוב רק סביב ציר Y (אנכי): רהיטים אינם נוטים, הם מסתובבים סביב עצמם. קבע את הציר באמצעות אילוצים:

entity.components[PhysicsMotionComponent.self] = PhysicsMotionComponent() // Rotation constraint — только Y 

מעבר בין וריאנטים/צבעים ללא טעינה מחדש של המודל. ספה זמינה ב־5 צבעים. טעינת 5 מודלים היא יקרה. נכון: גיאומטריה אחת, חומרים שונים. ב־USDZ, ניתן לשנות חומרים באמצעות EntityRotationGestureRecognizer:

var materials = entity.model?.materials ?? []
materials[0] = SimpleMaterial(color: .init(selectedColor), isMetallic: false)
entity.model?.materials = materials

עבור חומרי PBR עם טקסטורות — entity.components[PhysicsMotionComponent.self] = PhysicsMotionComponent() // Rotation constraint — только Y עם טקסטורות שנטענו.

איך להאיץ טעינת מודלים?

טעינה דרך CDN היא בממוצע פי 3 מהירה יותר מאשר מהחבילה כאשר המודל גדול מ־10 מ״ב. אנו משתמשים ב־ModelComponent.materials עם מחוון התקדמות ושמירה במטמון ב־var materials = entity.model?.materials ?? [] materials[0] = SimpleMaterial(color: .init(selectedColor), isMetallic: false) entity.model?.materials = materials . למהירות גדולה עוד יותר, אנו מיישמים הורדות מקבילות — עד 3 מודלים בו־זמנית. אנו גם מיישמים טעינה מוקדמת: טעינת המודל בעת לחיצה על כרטיס מוצר לפני שהמשתמש לוחץ על ׳הצג ב־AR׳. גישה זו מפחיתה את זמן ההמתנה ב־50%.

למה קנה מידה אמיתי חשוב?

הצגת גודל מדויק היא גורם האמון המרכזי. אם ספה ב־AR קטנה או גדולה יותר מהאמיתית, המשתמש יתאכזב. אנו מבטיחים קנה מידה נכון הודות לסקריפטים של נורמליזציה במהלך ההמרה מפורמטי מקור. בניסיוננו, נתקלנו במודלים תלת־ממדיים מספקים ביחידות שרירותיות (יחידה אחת = אינץ׳ אחד עבור אחד, סנטימטר אחד עבור אחר). כתבנו סקריפט שקורא אוטומטית ממדים אמיתיים ממפרט המוצר ומתאים את קנה המידה. זה הפחית את זמן האימות הידני של מודלים ב־80%.

איך לשלב קטלוג AR עם CMS קיים?

תרחיש אופייני: Shopify, WooCommerce, או CMS מותאם אישית בקצה האחורי. אנו מוסיפים שדה מותאם אישית PhysicallyBasedMaterial למוצר. בלקוח הנייד — כפתור ׳הצג ב־AR׳ מופיע רק אם השדה מלא.

לניהול תוכן תלת־ממדי ללא מתכנתים — CMS פשוט או פאנל ניהול עם העלאת קבצי USDZ/GLB ואופטימיזציה אוטומטית בצד השרת (המרה, דחיסה, העלאה ל־CDN). זה מסיר תלות במפתחים בעת הוספת מוצרים חדשים.

מקרה מבחן: אוטומציית המרה ל־2000 פריטים

הלקוח שלנו — חנות רהיטים למסחר אלקטרוני עם 2000+ פריטים. עדיפות: לכסות את 100 ה־SKU המובילים במודלי AR. בשלבים: תחילה iOS (ARKit + USDZ), לאחר חודשיים Android (SceneViewer + GLB). המרה ממודלי FBX של הספק ל־USDZ/GLB — צינור עבודה אוטומטי באמצעות סקריפטים של Blender Python + URLSession CLI. זמן למודל: 3–7 דקות. הבעיה העיקרית הלא־טכנית — יחידות שונות במודלי מקור. נפתרה עם סקריפט נורמליזציית קנה מידה שמאמת ממדים אמיתיים ממפרט המוצר. לאחר ההשקה, ההמרה במדור AR עלתה ב־25%.

מה כלול בעבודה

  • מודול AR ל־iOS ו/או Android באמצעות ARKit/RealityKit או SceneViewer.
  • מערכת שמירה במטמון של מודלים עם חיווי התקדמות הורדה.
  • אינטגרציית CMS — הוספת שדה מודל AR, API לאחזור נתונים.
  • פאנל ניהול להעלאה וניהול של מודלים תלת־ממדיים (אופציונלי).
  • צינור המרת מודלים מפורמטי מקור ל־USDZ/GLB עם נורמליזציית קנה מידה.
  • אנליטיקה — מעקב אחר צפיות ואינטראקציות.
  • תיעוד והדרכה של צוות הלקוח.
  • תמיכה עם אחריות ל־3 חודשים לאחר ההשקה.

השוואה: iOS לעומת Android

קריטריון iOS (ARKit + RealityKit) Android (SceneViewer + ARCore)
פורמט מודל USDZ GLB
מורכבות יישום גבוהה (SDKs מקוריים) בינונית (תלוי בגרסת Google Play Services for AR)
מחוות זמינות מזהים מובנים באמצעות Sceneform / SceneView
ביצועים מצוינים במכשירים עם A12+ טובים במכשירים מוסמכי ARCore

לוח זמנים והשקעה

תכונה לוח זמנים
מציג AR בסיסי לפריט אחד 1–2 שבועות
קטלוג AR עם שמירה במטמון ווריאנטים של צבע 4–6 שבועות
מערכת מלאה עם CMS, אנליטיקה, iOS+Android 3–5 חודשים

העלות מחושבת באופן אישי בהתאם לגודל הקטלוג ולצורך בהמרת מודלים. השקעה בקטלוג AR מחזירה את עצמה באמצעות המרה מוגברת וחוויית משתמש משופרת. צרו קשר לייעוץ והערכה מקדימה. הזמינו פיתוח קטלוג AR — קבלו פתרון שמגביר המרה.

טיפים להכנת מודלים תלת־ממדיים
  • השתמשו במטרים כיחידות.
  • ודאו כיוון נכון (ציר Y למעלה).
  • בצעו אופטימיזציה למספר פוליגונים: לרהיטים ~50 אלף משולשים.
  • דחסו טקסטורות ל־2K.
  • בדקו מודלים במכשירים אמיתיים.