Skip to content

Commit 0c25dac

Browse files
committed
docs: update readme & download_assets script
1 parent 0c8d19e commit 0c25dac

3 files changed

Lines changed: 41 additions & 9 deletions

File tree

README.md

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,36 @@
2727
</p>
2828

2929
## Information
30-
This is currently a project I use as a starting point for various other projects. It may not be the friendliest to newcomers (yet!) but that will improve with time as higher level extensions are created and documentation improves. More information can be found in the [wiki](https://github.com/PilotLightTech/pilotlight/wiki#what-is-pilot-light).
30+
Pilot Light is a lightweight real-time application framework for building native tools,
31+
graphics experiments, prototypes, and small engine-style applications with minimal dependencies.
32+
33+
It is written primarily in C, uses a modular extension system, and currently includes
34+
platform, graphics, UI, asset, math, ECS, and many other extensions.
35+
36+
The fastest way to try Pilot Light is to follow the instructions [here](https://github.com/PilotLightTech/pilotlight/wiki/Building).
37+
38+
> Status: active development. APIs are stabilizing, but some systems may still change.
39+
40+
## Quick Start
41+
42+
The fastest way to use Pilot Light is to generate a small standalone project.
43+
44+
### Requirements
45+
46+
- Python 3
47+
- Platform requirements:
48+
- Windows: Visual Studio toolchain + Vulkan SDK
49+
- Linux: GCC/Clang + Vulkan SDK + X11/XCB dependencies
50+
- MacOS: Xcode command line tools + Vulkan SDK
51+
52+
### Create new project
53+
54+
From the root of this repository:
55+
56+
```bash
57+
python scripts/new_project.py ../MyFirstProject
58+
```
59+
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.
3160

3261
## Developer Notes
3362
Information for developers can be found in the [wiki](https://github.com/PilotLightTech/pilotlight/wiki). This includes:

docs/documentation.md

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,6 @@ As the name suggests (Pilot Light), the project is meant to be a starting point
3131

3232
In the ideal situation, everything would be [STB style](https://github.com/nothings/stb) libraries which are about as decoupled as things can be. In reality, this obviously isn't possible for everything, but the effort is still made when possible, and those libraries end up in the [libs](https://github.com/PilotLightTech/pilotlight/tree/master/libs) folder. These are standalone libraries that can easily be dropped into any project. Everything else becomes an extension.
3333

34-
## Getting Started
35-
36-
Follow the instructions found [here](https://github.com/PilotLightTech/pilotlight/wiki/Building).
37-
38-
Then start experimenting with the [examples](https://github.com/PilotLightTech/pilotlight/tree/master/examples).
39-
4034
## Architecture
4135
The overall architecture takes inspiration from the now nonexistent **The Machinery** game engine. This architecture is very plugin (what I call extension) based. If something can be an extension, then it should be! Functionality is provided by **APIs** which are just structs of function pointers.
4236

scripts/download_assets.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,15 @@
33
from urllib.request import urlretrieve
44
from zipfile import ZipFile
55

6+
if len(sys.argv) <= 1:
7+
print("Pilot Light - Download Assets Script");
8+
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
9+
print("Usage: python download_assets.py [options]");
10+
print("\nOptions:");
11+
print(" -gltf gltf-samples repo");
12+
print(" -dev extra pilot light assets");
13+
exit()
14+
615
def reporthook(blocknum, blocksize, totalsize):
716
bytesread = blocknum * blocksize
817
if totalsize > 0:
@@ -31,9 +40,9 @@ def download_zip(url, filename, description):
3140
target_directory = sys.argv[1]
3241
for i in range(1, len(sys.argv)):
3342
print(sys.argv[i])
34-
if sys.argv[i] == "development":
43+
if sys.argv[i] == "-dev":
3544
development_assets = True
36-
elif sys.argv[i] == "gltf":
45+
elif sys.argv[i] == "-gltf":
3746
gltf_assets = True
3847
else:
3948
target_directory = sys.argv[i]

0 commit comments

Comments
 (0)