63 lines
2.4 KiB
Markdown
63 lines
2.4 KiB
Markdown
|
# 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`.
|