Commit Graph

13 Commits

Author SHA1 Message Date
acb7882549 Do some more file format spelunking
`WarHammer.ani` turns out to be a regular `obj` file; `WarHammer.idx`
is partially decoded, but I'm struggling to link it to the former in
a reasonable way at the moment.
2020-04-15 00:27:43 +01:00
7a8e9dbd97 Respect sprite X and Y offsets
This makes menus display more correctly, and also fixes trees and other
objects on the main map, although it messes up bounds clipping (sigh).
2020-03-21 00:56:35 +00:00
5fccf97f4b Lazily load sprite image data
This cuts memory use significantly, since many sprites in an object are
never used. We can get savings over time by evicting sprites when they
go out of scope, but that's, well, out of scope.

To achieve this, I introduce an assetstore package that is in charge of
loading things from the filesystem. This also allows some lingering
case-sensitivity issues to be handled cleanly.

I'd hoped that creating fewer ebiten.Image instances would help CPU
usage, but that doesn't seem to be the case.
2020-03-19 22:24:21 +00:00
65249b59c4 Rename go module 2019-12-31 01:55:58 +00:00
06625007fc Fix a 16-bit overflow for large objects 2018-10-13 02:38:25 +01:00
1fa61c72c2 WIP: Speed up rendering by using a spritesheet 2018-10-12 23:02:24 +01:00
aa093faabc Move RLE decoding into a separate package 2018-10-12 20:22:40 +01:00
285ae5d292 Make it easier to debug .obj file parsing errors 2018-03-24 23:38:12 +00:00
4d4c4da892 More .obj investigating. 0x80 seems to be a special value 2018-03-24 21:47:34 +00:00
e3a2096b00 Remove the blacklist from the .obj loader 2018-03-21 21:37:00 +00:00
c4598590c2 Another night of .obj failure 2018-03-21 05:08:24 +00:00
afc1ed6d04 Stop outputting some per-object-frame data 2018-03-17 04:14:40 +00:00
107c209354 Initial commit
I can parse some of the data files, and extract individual frames from .obj
files. I can't yet convert those frames into something viewable.
2018-02-24 13:50:35 +00:00