Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
graphite/README.md

63 lines
2.4 KiB
Markdown
Raw Normal View History

2024-01-03 16:05:02 -05:00
# Graphite
(This is a project from December 2016-March 2017)
A C++ game engine that uses Vulkan to render graphics. It uses Angelscript for
scripting.
Note: This project is still under development and _subject to change_. Expect bugs!
## Building
### Optional Dependencies
* Qt5 for the editor
* Libarchive needed for compressing and extracting archives
### Other Requirements
* C++14 compiler
Make sure to clone recursively as we use git submodules to pull in dependencies:
`git clone https://github.com/invghost/Graphite.git --recursive`
Graphite uses CMake to generate build files. It is generally recommended to create a seperate folder like `build` to store
the intermediary files in, and then you can run:
`cmake ..` (`..` being the location of the source code)
Then compile with the compiler of your choosing. Your fresh binaries will show up in the `bin` folder at the root of this
project.
In order to make a `verto-<platform>.zip` usable for editor exporting, use the cmake target `runtime_zip`.
### Windows
`libassimp.dll` or `assimp.dll` is not included. You are required to copy these over yourself.
MSVC is the only tested compiler at the moment. You can find more information about building Graphite on windows at
`docs/building_windows.txt`
### macOS
Graphite compiles with Apple's Clang. It is recommended to use homebrew to install the libraries
needed.
### Linux
Graphite should compile with a recent version of GCC or Clang.
### Editor
By default, the editor is not built automatically. You need to set the CMake option `BUILD_EDITOR`.
_Note_: The editor only works on Linux (specifically X11) at the moment because of how the viewport works. The editor is
planned to run on other platforms in the near future. Refer to issue [#11](https://github.com/invghost/Graphite/issues/11).
## Distribution
In order to distribute a working game, go under the `File` menu in the editor and click `Export`. A popup will show,
giving you options on how to export your game.
Please note that in order to export your game to the platform you choose you need your desired platform's zip in the `runtimes`
folder next to your editor.
## License
Graphite is licensed under the MIT license. _In a nutshell_ you are welcome to use it as you please (even commerically!),
as long as you provide attribution if you distribute the source code.
For the licenses of the in-tree third party software, look in the respective library's folder under `vendor`.