88ce511f2b
Entity rendering now uses rectangle rendering code
2016-09-22 19:00:44 +10:00
23720fae19
Fix batch-render of strings, fix group logic
...
Incorrect assumption that strings only needed degenerate vertexes at the start
and end of each string instead of characters causing render "wings" between
separate strings.
Fix render-group not switching to next group if current group is full.
2016-09-22 18:46:53 +10:00
ebe09bd345
Improved render groups, use degenerate triangles
...
Degenerate triangles allows a single triangle strip call to be called on
multiple independent triangles without "connecting" strips inbetween the
triangles.
2016-09-22 02:16:14 +10:00
ec7a9e41ff
Begin draft imeplementation of batched rendering
...
Render all entities with the same texture in one call. Currently only
implemented for humanoid entities. Since we are rendering using triangle strips,
between entities there is invalid rastered data between entities. Using
degenerate triangles this may be mitigated, by indicating to OGL which triangles
it can skip in the rendering process.
2016-09-21 19:21:27 +10:00
7cb13b3cf8
Add additional entity struct data
...
Attempting to add child weapon data to an entity has revealed the need for an
entity origin to which children start transformations from. Worth exploring
scene graphs in the future.
2016-09-15 03:20:13 +10:00
5c4f493979
Add support for more attack-animations
...
Exploratory code to determine how to architect the engine for increasing
requirements in game play.
2016-09-14 01:34:57 +10:00
fc6f6e086f
Add child entity to projectiles
2016-09-13 13:35:16 +10:00
1f799302c1
Fix sign multiplication error for projectile
2016-09-13 12:57:17 +10:00
8ddac9c110
Add projectile attack skill
2016-09-13 00:53:25 +10:00
5b682ddcf6
Add draft better string library implementation
2016-09-07 23:33:01 +10:00
da07ce3f75
Fix memory leak not freeing stb_decode ptr
2016-09-01 02:53:17 +10:00
4c38abc672
Integrate sfx audio into battle
2016-09-01 02:18:43 +10:00
5cccd3ebe8
Switch audio to hash table implementation
2016-08-31 19:59:56 +10:00
f6943e5efb
Const asset and entity functions, minor clean up
2016-08-31 16:40:41 +10:00
e9db7b0570
Convert subtextures to use hash tables
...
Also clean up and add some block comments to aid code separation mainly in
AssetManager.
2016-08-30 18:42:37 +10:00
8b0f2f93e3
Use better generic hashtable implement. for assets
2016-08-30 14:19:18 +10:00
c93e6ca37c
Pull out xml loading to assetmanager code
2016-08-30 00:11:00 +10:00
1d09bdfa20
Draft implementation of hash tabled textures
2016-08-27 04:15:13 +10:00
4c0c2808ca
Load terrain image into game
2016-08-27 03:37:56 +10:00
aa8590d585
Clean up memory usage of XML loading
2016-08-26 02:59:28 +10:00
17cc6063a3
Restore battle system using hash data structs
2016-08-25 18:29:36 +10:00
7ca42f781a
Start merging hash table access into assets
...
Basic implementation with many pre-existing features disabled untill all
parts of the system that interact with the assets transitions over.
2016-08-25 02:06:32 +10:00
b43754986f
Load sprite sheet into new atlas structure
2016-08-24 18:31:26 +10:00
84a2c5e382
Implement common_atoi and add unit tests
2016-08-24 15:25:58 +10:00
1f2c2082a0
Add framework to parse xml tree into game data
2016-08-23 18:20:20 +10:00
2c1d3f9593
Build XML tree from XML tokeniser, print xml tree
2016-08-23 15:19:03 +10:00
a1ff789485
Basic XML tokeniser for reading spritesheet xml
2016-08-23 02:40:38 +10:00
4d7025876f
Reorganise, separate motion from input parsing
...
Parse input was computing irrelevant data. The function has been inlined
and extraneous computations in the function has been moved to the
appropriate locations.
2016-08-22 23:13:44 +10:00
42a004e6e3
Align debug window to corner
2016-08-22 20:18:55 +10:00
ca415619dd
Fix window logic to stop stealing scrollbar focus
2016-08-22 18:05:10 +10:00
4e585a4939
Move ui element rendering to window rendering
2016-08-21 15:19:11 +10:00
70a3032155
Add debug window, parent buttons to debug window
2016-08-21 00:21:50 +10:00
aa34bbefc3
Refactor window data to struct
2016-08-20 22:30:02 +10:00
1df75c54fc
Add moveable window UI element
2016-08-20 18:41:17 +10:00
cc874888cc
Add spacing in debug display stack, center all button text
2016-08-20 14:24:42 +10:00
801107908a
Add toggle debug display button and config entry
2016-08-20 14:18:05 +10:00
6ec92358b2
Add audiostate field and audio toggle ui button
2016-08-19 00:56:02 +10:00
90068d2c64
Add string length in pixel func, add button label
2016-08-19 00:25:43 +10:00
c33b37b0ea
Render battle damage on screen, draft implementation
...
Crudely done to get an understanding of the kind of storage needed to
store UI on screen that may have a limited life time.
2016-08-17 20:37:56 +10:00
e90b31de55
Separate UI code into own file
2016-08-17 18:04:51 +10:00
5cd7239c8a
Switch rendering to xy bottom left, zw top right
2016-08-17 17:35:31 +10:00
cb857cfaa6
Reassign debug keys, backspace on textfield added
2016-08-17 15:57:42 +10:00
8aa23b7cfc
Add delayed key repeat
2016-08-17 15:29:14 +10:00
80b35d404d
Add better input parsing with key repeat tracking
2016-08-17 02:21:02 +10:00
22973ef51d
Add text field draft implementation
2016-08-10 21:52:05 +10:00
4127542d1d
Clean up scroll bar implementation
2016-08-10 18:23:19 +10:00
2d7262aa22
Add basic scrollbar imgui code
2016-08-10 01:43:26 +10:00
Doyle
f85ab5c86d
Add readme.md to project
2016-08-05 01:55:52 +10:00
db1eb7b9f3
Switch over to rect vs v4 where appropriate
...
Main change is switching the camera to use a rectangle. There is no rect
change in renderer for grouping size and position together. Due to
noticing the use case of rendering- where it's convenient to be able to
offset the rectangle from the position value when passed into the
function explicitly without having to re-create offset Rectangle structs
to pass in.
2016-08-04 22:17:14 +10:00
eb1962e05e
IMGUI use data from Gamestate, fix pointInRect bug
...
Wrong if logic causing point-in-rect to be valid if only x or y is
valid, where correct logic is both x and y need to be within the rect.
2016-08-04 21:17:16 +10:00