20211001 Development R9 M3 Goals - orbitalfoundation/wiki GitHub Wiki

Orbital Demo

Given previous research, it looks like separating the work into a rust side and a scripting side is the best idea.

I especially am finding that the idea of a declarative grammar for wiring modules together has come to the forefront and I want to spend some time there (in light of examining zenoh.io).

Goals

  1. Provide a powerpoint or collection of diagrams to explain the project visually better:

    1. What are the main components of Orbital? microkernel, grammar, actual modules
    2. How are apps built? Walk through meta-grammar, capabilities, permissions, late composition (letting users make their own apps).
    3. How does WASM play a role? Explain WASM support, how WASM blobs bind to the system and talk to each other.
  2. Finalize / Improve the modules themselves:

    1. Desktop UX module
    2. WASM module
    3. Several computer vision modules (this is the main focus of the effort) -> specifically identify walls and floors would be nice.
    4. Retained mode scene graph module
    5. Immediate mode display rasterization (boxes, bevels, curves, text, 3d objects, gltfs)
  3. Capture some typical user stories:

    1. Fetching an app, using an app, creating a new app. Show that from the user perspective this is a a service that fetches and runs ordinary applications to help users do tasks. And that apps themselves are made up out of a series of dynamically loaded modules that get cached locally. And that modules are wired together with a formal grammar with a strong emphasis on permissions and capabilities.
    2. Talk through a farmer story; where a farmer slots in a new bug recognizer and then their farmbot goes around the field picking those bugs off plants and ferrying them to the pond or somewhere where they are more useful.
    3. Talk through a hardware vendor story where a vendor wants to release a new device driver.

Example applications

  1. How about a simple perception app -> identify walls and floors, let you bounce a ball around.
  2. 3d storytelling vignetting app? (Share little 3d stories with animation over time)
  3. Visual programming app?
  4. OpenXR demo
  5. ROS style robotics platform example

Notes

  1. Can O3DE be used as a rasterizer?
  2. Is this useful? https://github.com/sixtyfpsui/sixtyfps
  3. Is this useful? https://github.com/rg3dengine/rg3d/tree/master/examples
  4. Support OpenXR?
  5. Volunteers

Challenges

  1. -> Finalize a rasterization layer with some kind of document driven examples
  2. -> Switch to v8
  3. -> Better capture WASM examples to clarify that we do support a fairly rich WASM universe; demonstrate over the wire WASM