]> git.lizzy.rs Git - dragonblocks_alpha.git/blob - src/client/client_node.h
91ef338715404404a2aba3921accb064403b491b
[dragonblocks_alpha.git] / src / client / client_node.h
1 #ifndef _CLIENT_NODE_H_
2 #define _CLIENT_NODE_H_
3
4 #include "client/object.h"
5 #include "client/texture.h"
6 #include "map.h"
7
8 typedef enum
9 {
10         NV_NONE,
11         NV_CLIP,
12         NV_BLEND,
13         NV_SOLID,
14 } NodeVisibility;
15
16 typedef struct
17 {
18         struct
19         {
20                 char *paths[6];                 // input
21                 int indices[6];                 // input
22                 Texture *textures[6];   // output
23         } tiles;
24         NodeVisibility visibility;
25         bool mipmap;
26         void (*render)(v3s32 pos, MapNode *node, Vertex3D *vertex, int f, int v);
27 } ClientNodeDefinition;
28
29 extern ClientNodeDefinition client_node_definitions[];
30 void client_node_init();
31
32 #endif