سفارشی‌سازی‌های داستان‌سرایی سه‌بعدی

مقدمه

این راهنما شما را با روش‌های مختلفی که راهکار «داستان‌سرایی سه‌بعدی» می‌تواند سفارشی‌سازی شود آشنا می‌کند تا بتوانید داستان‌های جغرافیایی جذاب ایجاد کنید.

شما این انعطاف‌پذیری را دارید که راهکار داستان‌سرایی آن‌ها را ازطریق دو روش راحت پیکربندی کنید. ابتدا می‌توانید از واسط کاربر بصری موجود در برنامه «سرپرست» که دارای پانل پیکربندی اختصاصی است استفاده کنید. در این پانل، کاربران می‌توانند ویژگی‌های اصلی مانند imageUrl، عنوان، تاریخ، و موارد دیگر را هم برای کل داستان و هم برای فصل‌های جداگانه تغییر دهند.

دوم، می‌توانید تنظیمات دوربین و گزینه‌های فوکوس را برای هر فصل بااستفاده از میانای نگاره‌ای کاربر در برنامه «سرپرست» تنظیم دقیق کنید. پس‌از رضایت از پیکربندی، کاربران می‌توانند فایل JSON تولیدشده را بارگیری کنند.

یا می‌توانید فایل JSON را مستقیماً ویرایش کنید. می‌توانید ساختار JSON را تنظیم کنید، راه‌حل پیکربندی‌شده داستان‌سرایی را بار کنید، و از پانل کنترل «سرپرست» عبور کنید. این رویکرد دوگانه هم میانای کاربرپسند و هم دستکاری پیشرفته JSON را ارائه می‌دهد.

شروع به کار:

فعال کردن

داستان خودتان را بسازید

طرح‌بندی کلی داستان به یک داستان روی جلد و سپس فصل‌ها تقسیم می‌شود. هم جلد و هم فصل را می‌توان به‌صورت جداگانه سفارشی‌سازی کرد.
جزئیات نحوه ساخت و سفارشی‌سازی داستان‌ها بااستفاده از برنامه «سرپرست» و فایل پیکربندی را بررسی کنید.

صفحه روی جلد

اولین کاری که باید انجام دهید این است که یک صفحه جلد برای کل داستان خود ایجاد کنید. این کار نمای کلی، عکس سرصفحه، و شرح را به داستانتان اضافه می‌کند.

استفاده از برنامه «سرپرست»

با افزودن صفحه جلد برای داستانتان شروع می‌کنید. این کار را از برنامه «سرپرست» بااستفاده از صفحه زیر انجام می‌دهید:

تصویر

استفاده از config.json

علاوه‌براین، اگر فایل پیکربندی را دارید، می‌توانید این بخش‌ها را مستقیماً در فایل اضافه کنید:

  • ۱. imageUrl: نشانی وب فایل رسانه اصلی (تصویر، گیف، یا ویدیو) برای کل داستان.

این می‌تواند هر نشانی وب با دسترسی عمومی باشد که به تصویر، گیف، یا فایل ویدیویی اشاره می‌کند که می‌خواهید به‌عنوان رسانه اصلی برای کل داستان استفاده کنید.

  • ۲. title: عنوان کل داستان.
  • ۳. date: تاریخ یا چارچوب زمانی مرتبط با داستان.
  • ۴. description: شرح مختصری از داستان.
  • ۵. ‫createdBy: محتواساز یا نویسنده داستان.
  • ‫۶. imageCredit: اعتبار تصویر اصلی.
  • ‫۷. ‫cameraOptions: تنظیمات اولیه دوربین برای کل داستان.

فصل‌ها

داستان به فصل‌هایی تقسیم شده است که هرکدام مجموعه متغیرهای خود را دارند. می‌توانید هر تعداد فصل که می‌خواهید ایجاد کنید. ابتدا نشانی‌ای را انتخاب می‌کنید و سپس جزئیات زیر را به فصل اضافه می‌کنید.

استفاده از برنامه «سرپرست»

جستجوی مکان: از نوار جستجوی «تکمیل خودکار» یکپارچه «پلاتفرم Google Maps» برای پیدا کردن مکانی که می‌خواهید نشان دهید استفاده کنید.

پس‌از افزودن مکان، می‌توانید با کلیک کردن روی دکمه ویرایش در کنار مکان، جزئیات را به فصل اضافه کنید:

تصویر

جزئیاتی درباره مکان اضافه کنید:

وقتی از پیکربندی کلی راضی بودید، فایل json را بارگیری کنید و می‌توانید از آن در برنامه نمایشی استفاده کنید.

پیکربندی بااستفاده از config.json

می‌توانید متغیرهای زیر را مستقیماً در فایل config.json بارگیری‌شده ویرایش کنید تا هر فصل را سفارشی‌سازی کنید:

  • ‫title: عنوان فصل.
  • ‫id: شناسه یکتای فصل.
  • imageUrl: نشانی وب تصویر فصل.
  • imageCredit: اعتبار تصویر فصل.
  • content: محتوای نوشتاری فصل.
  • dateTime: تاریخ یا چارچوب زمانی مختص فصل.
  • ‫coords: مختصات مکان مرتبط با فصل.
    • ‫lat: عرض جغرافیایی.
    • lng: طول جغرافیایی.
  • ‫address: نشانی مربوط به فصل.

تنظیمات دوربین

این برنامه کنترل‌های مختلفی را برای دوربین ارائه می‌دهد. این بخش شما را با تنظیمات مختلف دوربین و نحوه سفارشی‌سازی آن‌ها آشنا می‌کند.

تصویر

(برای دریافت زاویه دید عالی، دوربین را بچرخانید، کج کنید، و بزرگ‌نمایی کنید)

استفاده از برنامه «سرپرست»

دوربین: سرعت حرکت دوربین و نوع گردش را برای ایجاد تجربه تماشای انتخاب‌شده تنظیم کنید.

  • نشانگر مکان به شما امکان می‌دهد بین نمایش سنجاق در مکانی خاص یا پنهان کردن آن جابه‌جا شوید.

  • فوکوس شعاعی سایه حاشیه‌ای در اطراف ناحیه خاصی ایجاد می‌کند بدون اینکه مکان خاصی را مشخص کند. این حالت برای نمایش محله یا منطقه عمومی عالی است.

تصویر

این نشان می‌دهد که چگونه می‌توان تمرکز دوربین را تغییر داد تا به‌جای یک نقطه خاص، یک منطقه را نمایش دهد.

استفاده از config.json

همچنین می‌توانید همه پارامترهای دوربین را مستقیماً بااستفاده از فایل پیکربندی json سفارشی‌سازی کنید:

  • ‫cameraOptions: تنظیمات دوربین برای فصل. (درباره زاویه‌های دوربین بیشتر بدانید)

    • position: پارامتر موقعیت، مختصات فضایی دوربین را در محیط سه‌بعدی تعیین می‌کند. این بردار از سه مقدار x،‏ y، و z تشکیل شده است. هر مختصات نشان‌دهنده نقطه‌ای در محورهای x،‏ y، و z است که مکان دوربین را تعریف می‌کند.

    • heading: پارامتر عنوان به جهت افقی‌ای که دوربین به‌سمت آن نشانه رفته است اشاره دارد. ازنظر جغرافیایی، این مقدار نشان‌دهنده زاویه بین نمای دوربین و جهت شمال است. عنوان ۰ نشان می‌دهد که دوربین دقیقاً به‌سمت شمال است.

    • pitch: پارامتر گام زاویه عمودی دوربین را تعیین می‌کند. این نماد نشان‌دهنده کج شدن یا انحراف نمای دوربین است. زاویه مثبت به‌سمت پایین است، درحالی‌که زاویه منفی به‌سمت بالا است.

    • roll: پارامتر چرخش، چرخش حول محور دوربین را تعریف می‌کند. این نماد نشان‌دهنده حرکت چرخشی دوربین است. مقدار ۰ برای چرخش نشان‌دهنده عدم چرخش است، درحالی‌که مقادیر مثبت یا منفی به‌ترتیب نشان‌دهنده چرخش به راست یا چپ است.

  • focusOptions: گزینه‌های تمرکز روی نقطه‌ای خاص.

  • ‫focusRadius: شعاع برای فوکوس.

  • showFocus: بولی برای نمایش یا پنهان کردن تمرکز.

  • showLocationMarker: بولی برای نمایش یا پنهان کردن نشانگر مکان.

ذخیره پیکربندی

در آخر، روی ذخیره موقعیت دوربین کلیک کنید تا موقعیت دوربین ذخیره شود، سپس روی خروج از حالت ویرایش کلیک کنید تا کارتان ذخیره شود

تصویر

این برنامه میانای کاربرپسندی ارائه می‌دهد که به شما امکان می‌دهد تجربه سه‌بعدی را سفارشی‌سازی کنید. این برنامه Admin است.

‫config.json نهایی

فایل نهایی config.json حاوی همه اطلاعات لازم برای تولید تجربه داستان‌سرایی سفارشی شما است. این شامل جزئیات صفحه جلد، فصل‌ها، و تنظیمات دوربین است. می‌توانید از این فایل برای تنظیم دقیق داستان خود استفاده کنید و مطمئن شوید که دقیقاً همان‌طور که می‌خواهید به‌نظر می‌رسد و حس می‌شود.

برای شروع، فایل config.json را از برنامه «سرپرست» بارگیری کنید یا فایل جدیدی را از ابتدا ایجاد کنید. سپس، فایل را در ویرایشگر نوشتار باز کنید و ویرایش مقادیر را شروع کنید. می‌توانید نوشتار، تصاویر، و حتی تنظیمات دوربین را تغییر دهید تا تجربه‌ای منحصربه‌فرد و فراگیر برای مخاطبانتان ایجاد کنید.

فایل json نمای کلی داستان می‌تواند به این شکل باشد:

{
  "properties": {
    "imageUrl": "https://storage.googleapis.com/gmp-3d-tiles-storytelling/assets/images/317-300x160.jpg",
    "title": "Title",
    "date": "1967",
    "description": ""his is where you put descriptions",
    "createdBy": "Add author",
    "imageCredit": "Add image credit",
    "cameraOptions": {
      "position": {
        "x": -2708127.031960028,
        "y": -4260747.583520751,
        "z": 3886346.825328216
      },
      "heading": -1.5708,
      "pitch": -0.785398,
      "roll": 0
    }
  }

و یک فصل خاص می‌تواند این‌گونه باشد. فصل‌ها یک آرایه است و می‌تواند فصل‌های تکی زیادی را در آرایه داشته باشد.

"chapters": [
    {
      "title": "The Jimmy Hendrix Experience",
      "id": 4,
      "imageUrl": "https://storage.googleapis.com/gmp-3d-tiles-storytelling/assets/images/401-300x160.jpg",
      "imageCredit": "Hunter",
      "content": "XYZZZ",
      "dateTime": "Aug 10-12 1967",
      "coords": {
        "lat": 37.7749,
        "lng": -122.4194
      },
      "address": "The Filmore | 1805 Geary Blvd",
      "cameraOptions": {
        "position": {
          "x": -2706472.5713478313,
          "y": -4261528.277488908,
          "z": 3885143.750529967
        },
        "heading": 0,
        "pitch": 0,
        "roll": 0
      },
      "focusOptions": {
        "focusRadius": 3000,
        "showFocus": false,
        "showLocationMarker": true
      }
    },

سفارشی‌سازی‌های پیشرفته

می‌توانید در کد دقیق شوید و چندین سفارشی‌سازی دیگر انجام دهید:

بار کردن فایل پیکربندی از مکانی دیگر

این راه‌حل به‌طور پیش‌فرض پیکربندی داستان‌سرایی را از یک فایل محلی بار می‌کند . اما این مورد را می‌توان به‌راحتی در config.js تغییر داد:

export async function loadConfig(configUrl) {
  try {
    // Fetch the configuration data from the specified URL.
    const configResponse = await fetch(configUrl);

پیکربندی‌های دوربین

دوربین را می‌توان ازطریق فایل /utils/cesium.js بیشتر سفارشی‌سازی کرد. این مؤلفه تعدادی متغیر مهم را تعریف می‌کند، مانند:

  • سرور اصالت‌سنجی از دور
  • BASE_PITCH_RADIANS
  • BASE_HEADING_RADIANS
  • BASE_ROLL_RADIANS
  • DEFAULT_HIGHLIGHT_RADIUS

برای دریافت زاویه‌های دوربین و تجربه‌های مختلف، این متغیرها را آزادانه تغییر دهید.

نتیجه‌گیری

در این سند، راهنمایی برای سفارشی‌سازی برنامه «داستان‌سرایی سه‌بعدی» ارائه کرده‌ایم. ما گزینه‌های مختلف موجود در برنامه «سرپرست» و نحوه استفاده از آن‌ها برای ایجاد داستان‌های جذاب و فراگیر براساس مکان جغرافیایی را بررسی کرده‌ایم. همچنین درباره فرایند ایجاد داستان سفارشی بااستفاده از فایل config.json بحث کرده‌ایم. مراحل بعدی

اکنون که با نحوه سفارشی‌سازی برنامه «داستان‌سرایی سه‌بعدی» آشنا شدید، می‌توانید داستان‌های خودتان را بسازید. در اینجا چند ایده برای شروع کار ارائه شده است:

  • داستانی درباره زادگاهتان یا جایی که از آن بازدید کرده‌اید بنویسید.
  • داستانی درباره یک رویداد تاریخی یا شخصی که الهام‌بخش شما بوده است بسازید.
  • داستانی درباره دنیایی خیالی یا رؤیایی که دیده‌اید بسازید.

امکانات بی‌نهایت است! پس اجازه دهید تخیلتان آزادانه عمل کند و چیزی واقعاً خاص خلق کنید.