Solar Sail II — Ported to Orbiter 2024

After almost 20 years, Solar Sail II has been resurrected and ported to Orbiter 2024. The add-on, originally released in 2007 for Orbiter 2006, now runs on the latest Orbiter build with full VESSEL3 API support.

Solar Sail

What’s New

The original source code (written for the now-obsolete VESSEL API) has been completely migrated:

2006 API Orbiter 2024 API
ovcSetClassCaps clbkSetClassCaps() as class method
ovcTimestep(simt) clbkPostStep(simt, simdt, mjd)
ovcConsumeKey(keystate) clbkConsumeBufferedKey(key, down, kstate)
Global variables Class members (SolarSail)
AddExhaust(...) AddExhaustStream(...)
ANIMCOMP sequences MGROUP_ROTATE / MGROUP_TRANSLATE + AddAnimationComponent

The build system has been modernized to CMake + Visual Studio 2022, making compilation straightforward.

Two Vessels

The add-on consists of two modules:

  • SS2.dll — The solar sail itself, with 4 deployable arms, 32 sail mesh segments, and solar radiation pressure physics
  • tl-ss2.dll — Transfer vehicle that carries the sail to orbit and deploys it (press J to separate)

Physics

The solar radiation pressure model is based on Dr. Bong Wie’s paper Dynamic Modeling and Attitude Control of Solar Sail Spacecraft, with specular coefficient ps=0.9 and diffuse coefficient pd=0.1:

  • Normal force: Fn = P·A·[(1+ps)·cos²α + (⅔)·pd·cosα]
  • Transversal force: Ft = P·A·[(1−ps)·cosα·sinα]

Auto-navigation modes include Prograde and Kill Rotation.

Animation

The deployment sequence is divided into three phases:

  1. 0.0–0.3: 4 arms rotate outward
  2. 0.3–0.8: 22 segments per arm extend
  3. 0.8–1.0: 32 sail meshes appear sequentially

Press D to deploy/retract, J to separate from the transfer vehicle.

SPAE Solar System

The add-on includes the custom Sol_SPAE solar system, featuring Rapa Nui surface base on Easter Island — a fitting launch site for an interplanetary solar sail mission.

Source Code on GitHub

The full source code is now available on GitHub:

Built with MSVC 19.44 (VS Build Tools 2022), Orbiter 2024 SDK.

Downloads

  • Solar Sail II ZIP — Original 2007 release
  • New binaries will be available once Orbiter 2024 reaches stable release

From the original documentation

This was my second add-on for Orbiter. I wrote it very long ago, and I had compiled it for the newest Orbiter version. It simulates the behavior of a Solar Sail of area SAT_AREA, specular coefficient PS and diffusion coefficient PD (this values can be changed on the scenario file, although the size of the mesh visible will be always the same).

— Felipe “ObiWan” Comparini, 2007

🧐

Solar Sail II

I had updated the page for my Solar Sail, now it’s working for the latest Orbiter Build. Also, the page explains some of the inner workings of the Solar Sail, and had a link to the document I based all.

Changes on Manu-Tara Capsule

It always bothered me that the four main engines on the Manu-Tara capsule, which were pointing in diagonal, were a waste of power. The only way to use them was firing them all together (or by pairs), so they null themselves. I did it that way because I want to reuse the engines, so they were protected on reentry.
So I follow the same approach of the Make-Make Launch Vehicle, and strip down the capsule on three parts, the capsule, the fuel tanks and the engine. The engine, as on the Make-Make, it’s reusable.