GoldFish Engine
Quite simple and lightweight game engine
Loading...
Searching...
No Matches
gf_server.c
1#define GF_EXPOSE_SERVER
2
3#include <gf_pre.h>
4
5/* External library */
6
7/* Interface */
8#include <gf_server.h>
9
10/* Engine */
11#include <gf_physics.h>
12#include <gf_log.h>
13
14/* Standard */
15#include <stdlib.h>
16#include <string.h>
17
18void gf_server_begin(void) { gf_physics_begin(); }
19
20void gf_server_end(void) { gf_physics_end(); }
21
22gf_server_t* gf_server_create(gf_engine_t* engine) {
23 gf_server_t* server = malloc(sizeof(*server));
24 memset(server, 0, sizeof(*server));
25 server->engine = engine;
26 server->physics = gf_physics_create(engine);
27 if(server->physics == NULL) {
28 gf_log_function(engine, "Failed to create physics interface", "");
29 gf_server_destroy(server);
30 return NULL;
31 }
32 return server;
33}
34
35void gf_server_destroy(gf_server_t* server) {
36 if(server->physics != NULL) gf_physics_destroy(server->physics);
37 gf_log_function(server->engine, "Destroyed server interface", "");
38 free(server);
39}
Logger.
#define gf_log_function(engine, fmt,...)
Output log with line number and function name.
Definition gf_log.h:33
Physics interface.
Required headers before anything.
Client interface.
Engine instance.
Definition core.h:46
Server interface.
Definition server.h:38
gf_physics_t * physics
Physics interface.
Definition server.h:38
gf_engine_t * engine
Engine instance.
Definition server.h:38