https://github.com/queenoworld/kosmos
3D TUI game about space
https://github.com/queenoworld/kosmos
3d-graphics console-game cplusplus cpp tui
Last synced: 11 months ago
JSON representation
3D TUI game about space
- Host: GitHub
- URL: https://github.com/queenoworld/kosmos
- Owner: QueenOworld
- License: agpl-3.0
- Created: 2024-02-07T04:36:03.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-03-24T12:20:10.000Z (about 1 year ago)
- Last Synced: 2025-04-03T01:51:11.704Z (12 months ago)
- Topics: 3d-graphics, console-game, cplusplus, cpp, tui
- Language: C++
- Homepage:
- Size: 171 KB
- Stars: 8
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Kosmos
## What is this?
Kosmos is a project I'm working on that I want to turn into a complete game.
All graphics will be text based, and it will have a frame with 3D rendering.
I'm just starting this and working out how I make this, and have no deadlines set for myself, so it will grow slowly over time.
## Controls
- Move the telescope around with WASD and arrow keys
- Roll the telescope counterclockwise with Q and clockwise with E
- Zoom out with Z and in with X
- Reset zoom with C
- Increase movement distance with + and decrease with -
- Reset movement distance with 0
- Inpect cosmic object with spacebar (unfinished)
This list is subject to change
## Compilation
### Release
```shell
cmake -DCMAKE_BUILD_TYPE=Release -Bbuild/Release
cmake --build build/Release
```
### Debug
```shell
cmake -DCMAKE_BUILD_TYPE=Debug -Bbuild/Debug
cmake --build build/Debug
```
## Todo
- Add a proper gameplay loop
- Add signal scanning and audio playback via procedural sound generation and some prerecorded audio
- Make a main menu
- Add the second half of the UI that sits next to the viewport, with information on inspected objects, an audio graph, and a smaller viewport with a view of the object in more detail
- Properly implement landscape and portrait
- Maybe work on a windows port, currently only testing on linux and window resizing relies on the SIGWINCH signal
- Add progression, a proper goal to reach, and saving