

終止支援通知： 將於 2026 AWS 年 5 月 20 日結束對 的支援 AWS SimSpace Weaver。2026 年 5 月 20 日之後，您將無法再存取 SimSpace Weaver 主控台或 SimSpace Weaver 資源。如需詳細資訊，請參閱[AWS SimSpace Weaver 終止支援](https://docs.aws.amazon.com/simspaceweaver/latest/userguide/simspaceweaver-end-of-support.html)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 開發應用程式
<a name="working-with_developing-apps"></a>

SimSpace Weaver 開發需要Amazon Linux 2 (AL2)環境來建置應用程式，因為您的模擬會在 Amazon Linux中於 上執行AWS Cloud。如果您使用的是 Windows，則可以使用 SimSpace Weaver 應用程式 SDK 中的指令碼來建立和啟動容器，該Docker容器AL2執行了您建置 SimSpace Weaver 應用程式所需的相依性。您也可以使用 啟動AL2環境Windows Subsystem for Linux (WSL)，或使用原生AL2系統。如需詳細資訊，請參閱[設定 的本機環境 SimSpace Weaver](setting-up_local.md)。

**注意**  
無論您如何設定本機開發環境，當您上傳應用程式以在 中執行時，您的應用程式都會在Docker容器中執行 AWS 雲端。**您的應用程式無法直接存取主機作業系統**。

**SimSpace Weaver 應用程式的一般流程**

1. 建立 應用程式。

1. 迴圈：

   1. 透過建立 開始更新`Transaction`。

      1. 如果模擬正在關閉，請退出迴圈。

   1. 處理訂閱和擁有權實體事件。

   1. 更新模擬。

   1. 遞交 `Transaction`以結束更新。

1. 銷毀應用程式。

## 空間應用程式
<a name="working-with_developing-apps_spatial-apps"></a>

每個空間應用程式都有一個擁有區域，這是模擬世界的空間區域。位於空間應用程式擁有區域的實體會存放在應用程式指派的分割區中。單一空間應用程式對其指派的分割區中的所有實體擁有完整所有權 （讀取和寫入許可）。沒有其他應用程式可以寫入這些實體。空間應用程式會提升其實體的狀態。每個空間應用程式只擁有 1 個分割區。 SimSpace Weaver 會使用實體的空間位置來編製索引，並將其指派給空間應用程式分割區。

 SimSpace Weaver 應用程式開發套件提供範例應用程式。您可以在下列資料夾中找到範例應用程式空間應用程式的原始程式碼 （使用適用於您作業系統的正確路徑分隔符號）：

```
sdk-folder\Samples\PathfindingSample\src\SpatialApp
```

## 自訂應用程式
<a name="working-with_developing-apps_custom-apps"></a>

您可以建立並使用自訂應用程式來與模擬互動。

**自訂應用程式可以**
+ 建立實體
+ 訂閱其他分割區
+ 遞交變更

**自訂應用程式的一般流程**

1. 建立 應用程式。

1. 在模擬中訂閱特定區域：

   1. 建立 `Transaction`以開始第一次更新。

   1. 為特定區域建立訂閱。

   1. 遞交 `Transaction`以結束第一次更新。

1. 迴圈：

   1. 建立 `Transaction`以開始更新。

      1. 如果模擬正在關閉，請退出迴圈。

   1. 程序狀態變更。

   1. 遞交 `Transaction`以結束更新。

1. 銷毀應用程式。

自訂應用程式建立實體之後，必須將實體轉移到空間網域，實體才能在模擬中空間內存在。 SimSpace Weaver 會使用實體的空間位置，將實體放置在適當的空間應用程式分割區中。建立實體的自訂應用程式無法在將實體轉移至空間網域後更新或刪除實體。

 SimSpace Weaver 應用程式開發套件提供範例應用程式。您可以使用範例應用程式中包含的自訂應用程式，做為您自己自訂應用程式的模型。您可以在下列資料夾中找到範例應用程式的檢視應用程式 （自訂應用程式） 的原始碼 （使用適用於您作業系統的正確路徑分隔符號）：

```
sdk-folder\Samples\PathfindingSample\src\ViewApp
```