Skip to content

PilotLightTech/pilotlight

Repository files navigation

Pilot Light

A lightweight real-time application framework with minimal dependencies.

build static-analysis tests PYPI

InformationDeveloper NotesLicenseGalleryInspiration

Tooling Image

Information

Pilot Light is a lightweight real-time application framework for building native tools, graphics experiments, prototypes, and small engine-style applications with minimal dependencies.

It is written primarily in C, uses a modular extension system, and currently includes platform, graphics, UI, asset, math, ECS, and many other extensions.

The fastest way to try Pilot Light is to follow the instructions here.

Status: active development. APIs are stabilizing, but some systems may still change.

Quick Start

The fastest way to use Pilot Light is to generate a small standalone project.

Requirements

  • Python 3
  • Platform requirements:
    • Windows: Visual Studio toolchain + Vulkan SDK
    • Linux: GCC/Clang + Vulkan SDK + X11/XCB dependencies
    • MacOS: Xcode command line tools + Vulkan SDK

Create new project

From the root of this repository:

python scripts/new_project.py ../MyFirstProject

Then just run your platforms build script located in the /src directory of your new project. The binaries will be located in the /out directory. The Pilot Light directory is no longer needed. Running the script again will update your project with the newest Pilot Light files.

Developer Notes

Information for developers can be found in the wiki. This includes:

Folder Structure

  • assets - Contains assets for development.
  • thirdparty - Contains any third party libraries.
  • docs - Contains documentation for the project.
  • examples - Contains small complete examples that utilize stable APIs & extensions
  • extensions - Contains extensions (most functionality is provided through these extensions).
  • libs - Contains standalone "stb-style" libraries that can be used in other projects.
  • build - Contains a lightweight python-based build system used for this project.
  • internal - Contains code for internal development.
  • scripts - Contains helper scripts for various things.
  • shaders - Contains shader code.
  • src - Contains the small core of Pilot Light.
  • tests - Contains all unit & system tests.

License

Pilot Light is licensed under the MIT License.

Gallery

Low Poly Scene Low Poly Scene Low Poly Scene Low Poly Scene Low Poly Scene Low Poly Scene Space Suit Low Poly Scene Low Poly Scene

Inspiration

This project is inspired by:

SAST Tools

PVS-Studio - static analyzer for C, C++, C#, and Java code.

About

Lightweight real-time application framework

Topics

Resources

License

Stars

Watchers

Forks

Contributors