#gamedev #graphics #rendering #vulkan #gpu

gaclen

A library for handling anything a game client needs to do

14 releases

0.0.14 May 3, 2020
0.0.13 Apr 26, 2020
0.0.10 Mar 19, 2020
0.0.9 Jan 26, 2020
0.0.3 Oct 27, 2019

#106 in #rendering

Download history 2/week @ 2022-06-09 1/week @ 2022-06-16 1/week @ 2022-06-23 30/week @ 2022-07-07 15/week @ 2022-07-14 44/week @ 2022-07-21 1/week @ 2022-07-28 15/week @ 2022-08-04 1/week @ 2022-08-18 15/week @ 2022-08-25 45/week @ 2022-09-08 1/week @ 2022-09-15 15/week @ 2022-09-22

61 downloads per month

Apache-2.0 OR MIT

63KB
979 lines

Game Client Engine

A full-stack 3D game client engine in Rust.

Setup

The gaclen_shader project relies on shaderc-rs which requires additional setup steps. Please follow them.

What it does

Gaclen accelerates game client creation through:

  • Providing a thin comfort layer for structuring one's rendering logic on top of Vulkano.

It also enforces minimal predetermined ideas, like scene organization, leaving it to higher level logic, allowing it to be more specialized for a specific game's need.

What it is planned to do

In the (hopefully) near future Gaclen will:

  • Provide an intermediate input layer, that organized different possible input in a portable and robust way.
  • Provide an intermediate audio layer, allowing playing and processing audio in a portable way.
  • Provide text utilities, including font loading, glyph generation, layout and rendering.

What it might do

These features are not currently planned, but might be implemented in the future:

  • Skeletal animation.
  • Inverse kinematics.
  • Vulkan-specific linear algebra.

What id does NOT do

These features will not be supported, since they make up a game, or should be common between client and server.

  • Networking.
  • Game logic.

Dependencies

~6–8MB
~156K SLoC