#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

#1445 in Game dev

Download history 28/week @ 2023-10-30 1/week @ 2023-11-13 31/week @ 2023-11-20 63/week @ 2023-11-27 2/week @ 2023-12-04 3/week @ 2023-12-11 15/week @ 2023-12-18 30/week @ 2023-12-25 14/week @ 2024-01-08 1/week @ 2024-01-15 29/week @ 2024-01-22 45/week @ 2024-01-29 16/week @ 2024-02-05 64/week @ 2024-02-12

154 downloads per month

Apache-2.0 OR MIT

64KB
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

~8–10MB
~199K SLoC