Skip to content
This repository has been archived by the owner on Dec 1, 2021. It is now read-only.

Deployment Procedure of the Framework

Janis Sprenger edited this page Aug 24, 2021 · 4 revisions

This document describes the deployment procedure. For easier deployment, a set of deploy.bat scripts are written. We do recommend using the standardised deployment scripts for an easier deployment.

For this procedure, we assume that the meta-git repository was utilized from https://github.com/Daimler/MOSIM. In addition, we assume that Visual Studio and Unity was installed and is readily available on the system. We assume, that the folder name Environment should contain the deployed framework after deployment.

Adapters

CSharp Adapter

In order to deploy the CSharp adapter, open the MMICSharp project in Core/Framework/LanguageSupport/cs in Visual Studio and deploy the solution. Copy the compiled files from Core/Framework/LanguageSupport/cs/MMIAdapterCSharp/bin/Debug to Environment/Adapters/CSharpAdapter.

Unity Adapter

Copy your local UnityEngine.dll and UnityEditor.dll (e.g. located in C:\Program Files\Unity Environments\2018.4.1f1\Editor\Data\Managed\UnityEngine.dll. This depends on your local installation of Unity) to Core/Libraries if not already done. Open the MMIUnity solution in Core/Framework/EngineSupport/Unity in Visual Studio and deploy the solution. Copy the compiled binaries from Core/Framework/EngineSupport/Unity/MMIAdapterUnity/bin/Debug to Core/Framework/EngineSupport/Unity/MMIAdapterUnity/UnityProject/Assets/Plugins/. Afterwards, open the Unity project at Core/Framework/EngineSupport/Unity/MMIAdapterUnity/UnityProject with the correct Unity version. Build the Unity project as a game and copy the generated code from Core/Framework/EngineSupport/Unity/MMIAdapterUnity/UnityProject/build to Environment/Adapters/UnityAdapter

Launcher

Open the Visual Studio solution MMILauncher in the folder Core/Launcher. Deploy the solution and copy the generated files from Core/Launcher/bin/Debug to Environment/Launcher.

MMUs

C-Sharp and Unity MMUs

Copy your local UnityEngine.dll and UnityEditor.dll (e.g. located in C:\Program Files\Unity Environments\2018.4.1f1\Editor\Data\Managed\UnityEngine.dll. This depends on your local installation of Unity) to Core/Libraries if not already done. Open the Visual Studio solution CS in Core/BasicMMUs/CS-MMUs/CS/ and deploy the MMUs. For each MMU (e.g. ReachMMU), copy the generated files from Core/BasicMMUs/CS-MMUs/CS/[name]/bin/Debug (e.g. Core/BasicMMUs/CS-MMUs/CS/ReachMMU/bin/Debug/) to its respective MMU folder in Environment/MMUs/[name] (e.g. Environment/MMUs/ReachMMU).

Services

Blender IK

Download Blender version 2.83 (e.g. using this permalink) and unzip it. Blender has its own python environment, which must be prepared with the respective MOSIM packages. If you have prepared any other python environment (e.g. a local python environment, a python environment installed with anaconda, or others), it is not used by the BlenderIK service and thus is irrelevant for this procedure.

Update pip in the python environment contained inside of blender using Blender\2.83\python\bin\python.exe -m pip install --upgrade pip. Install the MMIPython and MMIStandard pip packages from Core/Framework/LanguageSupport/python to the python environment contained in Blender. Copy all relevant files to the build BlenderIK folder. Copy the BlenderIK service to Environment/Services/BlenderIK. For more information, please consider the respective deploy script in the BlenderIK folder.

CSharp Services: Posture Blending and Retargeting

In order to deploy the CSharp based services (PostureBlendingService, RetargetingService), open the respective solutions (e.g. Services/PostureBlendingService/PostureBlendingService.sln). in Visual Studio and build the respective solutions. To update the Core dependencies, ensure that the MOSIM dlls (MMICSharp.dll, MMIStandard.dll, etc.) in Services/MMICSharp are up to date. This process is done automatically when using the deploy scripts from the meta-git repository. Copy the generated file to the environment (e.g. to Environment/Services/PostureBlendingService`).

Unity Services: UnityPathPlanning

To deploy Unity services, ensure that the correct Core-libraries are inside the Unity project (e.g. MMICSharp.dll, MMIStandard.dll). This step is done automatically when using the deploy scripts from the meta-git repository. To deploy the service, open the unity project (e.g. Services/UnityPathPlanning/UnityPathPlanning) in Unity and build the project as a game. Copy the generated game to your Environment (e.g. Environment/Services/UnityPathPlanning).

MOSIM Documentation

Introduction

Documentation

Known Issues

Clone this wiki locally