• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

flingengine/FlingEngine: A Vulkan game engine with a focus on data oriented desi ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

flingengine/FlingEngine

开源软件地址:

https://github.com/flingengine/FlingEngine

开源编程语言:

C++ 89.5%

开源软件介绍:

Fling Engine Logo

The Fling Engine aims to be a cross platform Vulkan game engine that will experiment with the following:

  • Low-level engine systems such as render API abstraction, file systems, and custom allocators.
  • Multithreaded engine architecture
  • The Vulkan graphics API for real time rendering

Build Status Build status Open Source Helpers GitHub license Work in progress badge Discord Chat

Getting Started

There are a few basic steps to compiling Fling on your platform.

CMake 3.13 or higher!

This project requires CMake 3.13 or higher, you can install it here.

For Linux

This project uses GLFW, so you will need to install those libraries to your machine. GLFW also depends on having Doxygen, so you may want to have that as well.

Ubuntu:

sudo apt-get update
sudo apt-get install doxygen
sudo apt-get install -y libglm-dev libxcb-dri3-0 libxcb-present0
sudo apt-get install -y libpciaccess0 libpng-dev libxcb-keysyms1-dev
sudo apt-get install -y libxcb-dri3-dev libx11-dev libmirclient-dev
sudo apt-get install -y libwayland-dev libxrandr-dev
sudo apt-get install -y libglfw3-dev
sudo apt-get install -y xorg-dev

Vulkan SDK

Obviously this project is build using Vulkan, so you will need to install it before compiling or running the program.

You can download the SDK from the LunarG website here.

If you are having trouble with the Vulkan SDK then check out some of these resources:

Init.bat and Init.sh

After installing the SDK, you can simply run one of the provided scripts.

Running either one of these scripts will simply get all submodules and external libraries that the engine uses and create a folder called build. The build folder will have your platform specific build files (Visual Studio, Makefiles, etc).

Packaging a project

For ease of development and iteration the file paths to Assets (shaders, textures, models, etc) are all absolute paths generated by CMake. If you want to have a copy of your executeable with asset paths relative to the program, then generate your project files with CMake with this flag:

cmake -DDEFINE_SHIPPING=ON -B build .

Notice the -DDEFINE_SHIPPING option is set to ON. This sets a definiton that you can use in C++:

#ifdef FLING_SHIPPING
// Do some nice stuff
#else
// Do non-shipping code, perhaps with a lot of log messages
#endif

Wanna contribute?

If you have any contributions or fixes that you want to contribute, then feel free to open an issue or a pull request! I'm happy to talk about the project, so feel free to reach out to me on Twitter or here on GitHub. Eventually a goal is to have some more specific PR templates/coding standards but for now that is not a priority.

The master branch is where we keep our stable releases only. For the most up to date development see the staging branch

Cool Resources

Some great resources are the Vulkan Tutorial and SaschaWillems's repo with different Vulkan examples




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap