Martin Dørum
9eeb30960f
somewhat synchronize light server stuff
3 lat temu
Martin Dørum
15f83881b1
background colors
3 lat temu
Martin Dørum
a3bb6ea0e7
fix lighting server ordering
3 lat temu
Martin Dørum
7b477216e7
chunk rendering
3 lat temu
Martin Dørum
447d4e8d39
libswan and core.mod now compiles
3 lat temu
Martin Dørum
f01f0e1a96
some missing style things
3 lat temu
Martin Dørum
2348fe9f64
move item and tile to struct
3 lat temu
Martin Dørum
0db704582d
make style consistent
3 lat temu
Martin Dørum
293b05bade
lights are floats, range 0-1
3 lat temu
Martin Dørum
c9ce067e11
lighting changes
3 lat temu
Martin Dørum
b8fcf907d5
integrate lighting with swan
3 lat temu
Martin Dørum
569df98e5c
LightingThread -> LightServer
3 lat temu
Martin Dørum
102be7ec37
lighting system work
3 lat temu
Martin Dørum
262ca389fe
a kind of lighting effect
3 lat temu
Martin Dørum
b2fd4178df
new trait system, split Body into Body and Physics
4 lat temu
Martin Dørum
93ecc0a214
allow despawning entities
4 lat temu
Martin Dørum
9dfdf8541d
ridiculously fast relPost/chunkPos
4 lat temu
Martin Dørum
abc277b256
integrate tracy, cmake stuff, etc
4 lat temu
Martin Dørum
4a8694dc27
store entities contiguously in memory
There are still some things left to do:
* Implement despawn
* Maybe shrink SlotVector if there's a lot more free slots than occupied slots
* Implement iteration over entities
4 lat temu
Martin Dørum
976d9b4b9c
replace core::air with @::air
"@internal::" is also renamed to "@::" for libswan-internal stuff.
4 lat temu
Martin Dørum
1fb53a1df3
event system
I know, I know, this segfaults on exit.
I need to make each mod subclass a Swan::Mod superclass
so that they can have EventListener structs which are
destroyed when the mod exits, and the mod has to exit
before the world goes away so that mods' EventListener
dtors can access their respective EventEmitters.
4 lat temu
Martin Dørum
24b8fdcd8d
more optimization
4 lat temu
Martin Dørum
08d7346d5b
optimization
4 lat temu
Martin Dørum
d808b8bcfb
this is a big one
* reworked some resource loading and mod init stuff
* texetures are now configured at runtime via .toml files
* moved from SRF to messagepack
* changed folder structures
* added the fmt library (for later)
4 lat temu
Martin Dørum
056579e6be
cave background stuff
4 lat temu
Martin Dørum
f6c5526b94
delete instead of compressing unmodified chunks
4 lat temu
Martin Dørum
ce70c058aa
mostly performance stuff
4 lat temu
Martin Dørum
656f558744
getEntsInArea
4 lat temu
Martin Dørum
3b4ce891fe
traits
4 lat temu
Martin Dørum
e6ecab47f9
readability
4 lat temu
Martin Dørum
4c88962ccc
breakBlock fix
4 lat temu
Martin Dørum
50497bf571
fixed a couple issues
4 lat temu
Martin Dørum
d06bede011
rendering
4 lat temu
Martin Dørum
432061954a
pre-convert pixel formats, other stuff
4 lat temu
Martin Dørum
5d9c63b36d
add operator<< to Vector2 and SRF
4 lat temu
Martin Dørum
2a016c2c5f
replace fprintf with log.h stuff
4 lat temu
Martin Dørum
c527655e79
almost ported to SDL
4 lat temu
Martin Dørum
401e069646
hey, this compiles now
4 lat temu
Martin Dørum
e71e20c6c5
WIP, rewriting stuff to use SDL instead of SFML
4 lat temu
Martin Dørum
3902a2d652
move Win into its own thing, make vector stuff constexpr
4 lat temu
Martin Dørum
ba28d348d0
despawning, add dt to tick(), etc
4 lat temu
Martin Dørum
597bc42abd
spawn ents in the middle of blocks
4 lat temu
Martin Dørum
63f39192e9
spawn_list_
4 lat temu
Martin Dørum
95ac54ddc3
make Swan::Vector2 a struct
4 lat temu
Martin Dørum
1a5988bfd9
bounding box
4 lat temu
Martin Dørum
92ef995116
visible entity, cmake stuff
4 lat temu
Martin Dørum
718281b35b
wow, that was many changes.
This should've been multiple commits, but hey, it's late.
4 lat temu
Martin Dørum
4ff0dbcc16
a bunch of SRF stuff, and use SRF for entity params
4 lat temu
Martin Dørum
c78891fe7f
Swan::Context
4 lat temu
Martin Dørum
294a3528b9
add the ability to compress chunks
4 lat temu