مقدمه
این راهنما شما را با روشهای مختلف سفارشیسازی راهکار داستانسرایی سهبعدی آشنا میکند و به شما امکان میدهد داستانهای جذابی با محوریت موقعیت جغرافیایی خلق کنید.
شما میتوانید از طریق دو روش راحت، راهکار داستانسرایی آنها را پیکربندی کنید. اول، میتوانید از رابط کاربری بصری موجود در برنامه مدیریت استفاده کنید که دارای یک پنل پیکربندی اختصاصی است. در این پنل، کاربران میتوانند ویژگیهای اصلی مانند آدرس تصویر، عنوان، تاریخ و موارد دیگر را هم برای کل داستان و هم برای فصلهای جداگانه تغییر دهند.
دوم، میتوانید تنظیمات دوربین و گزینههای فوکوس را برای هر فصل با استفاده از رابط کاربری گرافیکی در برنامه مدیریت، به طور دقیق تنظیم کنید. پس از رضایت از پیکربندی، کاربران میتوانند فایل JSON تولید شده را دانلود کنند.
از طرف دیگر، میتوانید مستقیماً فایل JSON را ویرایش کنید. میتوانید ساختار JSON را تنظیم کنید، راهکار داستانسرایی پیکربندیشده را بارگذاری کنید و از پنل کنترل ادمین عبور کنید. این رویکرد دوگانه، هم رابط کاربرپسند و هم دستکاری پیشرفته JSON را ارائه میدهد.
شروع کار:
فعال کردن
داستان خودت را بساز
 طرح کلی داستان به یک طرح جلد و به دنبال آن فصلها تقسیم شده است. هم جلد و هم فصل را میتوان به صورت جداگانه سفارشی کرد. بررسی کنید
 جزئیات نحوه ساخت و سفارشیسازی داستانها با استفاده از برنامه مدیریت و همچنین فایل پیکربندی.
صفحه جلد
اولین کاری که باید انجام دهید این است که یک صفحه جلد برای داستان کلی خود ایجاد کنید. این کار نمای کلی، عکس جلد و توضیحات را به داستان شما اضافه میکند.
از برنامه ادمین استفاده کنید
شما با اضافه کردن یک صفحه جلد برای داستان خود شروع میکنید. این کار را از طریق برنامه مدیریت و با استفاده از صفحه زیر انجام میدهید:

از config.json استفاده کنید
علاوه بر این، اگر فایل پیکربندی را دارید، میتوانید مستقیماً این بخشها را در فایل اضافه کنید:
-  ۱. 
imageUrl: آدرس فایل رسانهای اصلی (تصویر، گیف یا ویدیو) برای کل مطلب. 
این میتواند هر URL عمومی باشد که به یک تصویر، گیف یا فایل ویدیویی اشاره میکند که میخواهید به عنوان رسانه اصلی برای کل داستان استفاده کنید.
-  ۲. 
title: عنوان کل داستان. -  ۳. 
date: تاریخ یا بازه زمانی مرتبط با داستان. -  ۴. 
description: شرح مختصری از داستان. -  ۵. 
createdBy: خالق یا نویسندهی داستان. -  ۶. 
imageCredit: منبع تصویر اصلی. -  ۷. 
cameraOptions: تنظیمات اولیه دوربین برای کل داستان. 
فصلها
داستان به فصلهایی تقسیم شده است که هر کدام متغیرهای خاص خود را دارند. میتوانید هر تعداد فصل که دوست دارید ایجاد کنید. با انتخاب یک آدرس شروع میکنید و سپس جزئیات زیر را به فصل اضافه میکنید.
از برنامه ادمین استفاده کنید
جستجوی مکان : از نوار جستجوی تکمیل خودکار پلتفرم نقشههای گوگل برای یافتن مکانی که میخواهید نمایش دهید استفاده کنید.
پس از افزودن مکان، میتوانید با کلیک بر روی دکمه ویرایش در کنار مکان، جزئیات را به فصل اضافه کنید:

جزئیات مربوط به مکان را اضافه کنید:
وقتی از پیکربندی کلی راضی بودید، فایل json را دانلود کنید و میتوانید از آن در برنامه آزمایشی استفاده کنید.
پیکربندی با استفاده از config.json
شما میتوانید متغیرهای زیر را مستقیماً در فایل config.json دانلود شده ویرایش کنید تا هر فصل را سفارشیسازی کنید:
-  
title: عنوان فصل. -  
id: شناسه منحصر به فرد برای فصل. -  
imageUrl: آدرس تصویر مربوط به فصل. -  
imageCredit: منبع تصویر این فصل. -  
content: محتوای متنی برای فصل. -  
dateTime: تاریخ یا بازه زمانی مختص به هر فصل. -  
coords: مختصات مکان مرتبط با فصل.-  عرض جغرافیایی 
lat: عرض جغرافیایی. -  
lng: طول جغرافیایی. 
 -  عرض جغرافیایی 
 -  
address: آدرس مربوط به فصل. 
تنظیمات دوربین
این برنامه کنترلهای مختلف زیادی را برای دوربین ارائه میدهد. این بخش شما را با تنظیمات مختلف دوربین و نحوه سفارشیسازی آنها آشنا میکند.

(برای رسیدن به زاویه دید ایدهآل، دوربین را حرکت دهید، زوم کنید، کج کنید)
از برنامه ادمین استفاده کنید
دوربین: سرعت حرکت دوربین و نوع مدار آن را تنظیم کنید تا تجربه مشاهده دلخواه خود را ایجاد کنید.
نشانگر موقعیت مکانی به شما امکان میدهد بین نمایش پین در یک مکان خاص یا پنهان کردن آن، یکی را انتخاب کنید.
فوکوس شعاعی (Radius focus) بدون مشخص کردن مکان دقیق، یک سایه وینیِت (vignette) در اطراف یک ناحیه خاص ایجاد میکند. این ویژگی برای نمایش یک محله یا یک منطقه عمومی عالی است.

این نشان میدهد که چگونه میتوان فوکوس دوربین را تغییر داد تا به جای یک نقطه خاص، یک منطقه را نشان دهد.
از config.json استفاده کنید
همچنین میتوانید تمام پارامترهای دوربین را مستقیماً با استفاده از فایل پیکربندی json سفارشی کنید:
cameraOptions: تنظیمات دوربین برای این فصل. (درباره زوایای دوربین بیشتر بدانید)position: پارامتر موقعیت، مختصات مکانی دوربین را در محیط سهبعدی تعیین میکند. این پارامتر شامل سه مقدار x، y و z است. هر مختصات نشاندهنده یک نقطه در محورهای x، y و z است که مکان دوربین را تعریف میکند.heading: پارامتر عنوان به جهت افقی که دوربین به سمت آن نشانه رفته است اشاره دارد. در اصطلاحات جغرافیایی، این پارامتر زاویه بین نمای دوربین و جهت شمال را نشان میدهد. عنوان ۰ نشان میدهد که دوربین به سمت شمال نشانه رفته است.pitch: پارامتر پیچ، زاویه عمودی دوربین را تعیین میکند. این پارامتر نشاندهنده شیب یا کجی دید دوربین است. پیچ مثبت به سمت پایین و پیچ منفی به سمت بالا است.roll: پارامتر roll چرخش حول محور دوربین را تعریف میکند. این پارامتر نشان دهنده حرکت چرخشی دوربین است. مقدار ۰ برای roll نشان دهنده عدم چرخش است، در حالی که مقادیر مثبت یا منفی به ترتیب نشان دهنده چرخش به راست یا چپ هستند.
focusOptions: گزینههایی برای فوکوس روی یک نقطه خاص.focusRadius: شعاع برای فوکوس.showFocus: از نوع Boolean برای نمایش یا پنهان کردن focus استفاده میکند.showLocationMarker: یک مقدار بولی برای نمایش یا پنهان کردن نشانگر مکان.
پیکربندی خود را ذخیره کنید
در آخر، برای ذخیره موقعیت دوربین، روی «ذخیره موقعیت دوربین» کلیک کنید، سپس برای ذخیره کار خود، روی «خروج از حالت ویرایش» کلیک کنید.

این برنامه یک رابط کاربرپسند ارائه میدهد که به شما امکان میدهد تجربه سهبعدی را سفارشی کنید. این برنامه، برنامه مدیریت است.
فایل 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 بیشتر سفارشیسازی کرد. این فایل تعدادی متغیر مهم مانند موارد زیر را تعریف میکند:
- شعاع
 - شعاعهای پایه
 - شعاعهای جهت پایه
 - شعاعهای پایه
 - شعاع برجسته پیشفرض
 
برای به دست آوردن زاویه دید و تجربههای مختلف دوربین، میتوانید این متغیرها را تغییر دهید.
نتیجهگیری
در این سند، ما راهنمایی برای سفارشیسازی اپلیکیشن داستانسرایی سهبعدی ارائه دادهایم. ما گزینههای مختلف موجود در اپلیکیشن ادمین و نحوهی استفاده از آنها برای ایجاد داستانهای جغرافیایی فراگیر و جذاب را بررسی کردهایم. همچنین در مورد فرآیند ایجاد یک داستان سفارشی با استفاده از فایل config.json بحث کردهایم. مراحل بعدی
حالا که یاد گرفتید چطور اپلیکیشن داستانسرایی سهبعدی را شخصیسازی کنید، میتوانید شروع به ساختن داستانهای خودتان کنید. در اینجا چند ایده برای شروع کار آورده شده است:
- داستانی در مورد زادگاه خود یا مکانی که از آن بازدید کردهاید، بسازید.
 - داستانی در مورد یک رویداد تاریخی یا شخصی که شما را الهام بخشیده است، بسازید.
 - داستانی درباره یک دنیای خیالی یا رویایی که داشتهاید، بسازید.
 
امکانات بیپایان هستند! پس به تخیل خود اجازه دهید آزادانه حرکت کند و چیزی واقعاً خاص خلق کند.