Commit Graph

112 Commits

Author SHA1 Message Date
83297a1d10 Improved cache performance by removing locks.
These sync locks can be removed because of fixing the multithread cases in the previous commit.
2020-04-30 00:20:32 -05:00
f7eb94ae39 Corrected false assumption in caching logic. 2020-04-30 00:09:58 -05:00
f637e79ea5 Refactoring. 2020-04-29 23:13:15 -05:00
64a3e3db27 Slightly faster. 2020-04-29 22:53:28 -05:00
c963ad140f Chunk generator asyncronously generates block values.
Also added parallel capable override.
2020-04-29 20:12:54 -05:00
c6fd9a833c Revert to "Island world chunk generator now pre-generates island values."
This reverts commit e40bf74cb8.
2020-04-29 19:14:20 -05:00
a119e6f596 Removed unneccesary blocking call. 2020-04-29 16:31:38 -05:00
4c93e85078 Fixed error.
The order of checking for null prioritizing was swapped.
2020-04-29 16:28:24 -05:00
6f27e52c6b Improved locking scheme of cache. 2020-04-29 16:25:27 -05:00
e40bf74cb8 Island world chunk generator now pre-generates island values.
Also implements the new biome selector.
2020-04-29 15:06:24 -05:00
5b1bb4288d Biome selector no longer requires random parameter.
Implemented new biome selector changes.
2020-04-29 15:06:14 -05:00
c2fb0ffea8 Added executor to utilities. 2020-04-29 14:00:30 -05:00
14d0375c7e Added threading for building the biome grid. 2020-04-29 13:11:07 -05:00
a102f53365 Changed locking positions. 2020-04-29 13:05:04 -05:00
8595ab0c4e Biome generator change in way of caching island info.
Biome cache now stores a 4 biome values: current, main, shore, and shallow.
2020-04-28 23:15:29 -05:00
7311327d8d Turning cache fairness off. 2020-04-28 17:40:28 -05:00
9883a98aa0 Testing with fairness turned on for cache. 2020-04-28 17:37:10 -05:00
e7f5558aa5 Added doc and changed accessibility of support class. 2020-04-28 17:35:08 -05:00
b30d689183 Reworked thread safe cache solution.
Also performed refactoring.

And added some threaded tests.
2020-04-28 16:53:23 -05:00
7c073cdc6e Preventing flooder from checking same node.
Added another flooder test.
2020-04-27 23:17:54 -05:00
85ec44a4d7 Flood algorithm added and (basic) tests performed. 2020-04-27 21:10:55 -05:00
2a0f26f8bc Reworked operation order for DFS. 2020-04-27 20:35:32 -05:00
250334e348 Fixed cache locks as they were swapped.
Must've been real tired or something while writing that.
2020-04-27 17:06:10 -05:00
3675074d00 Tested generator system. 2020-04-27 16:06:01 -05:00
49f26f7901 Fixed conversion from world to chunk coords.
Added test that catches this case.
2020-04-27 15:14:33 -05:00
1e8dc8019a Current iteration of work.
Attempted at fixing the coordinate converter again.

Added more applicable tests for them.

Changing to a more stateless design for biome generator.

Refactored correcting package name to fit conventions.
2020-04-27 14:23:57 -05:00
59d78c9754 Fixed toString() format. 2020-04-27 13:58:39 -05:00
3efc6acf0b Fixed the utilities world to local non perfect positive case. 2020-04-27 13:53:29 -05:00
ec27a9bc10 Fixed perfect chunk coordinates in utilities.
Added respective tests to ensure this doesn't break.
2020-04-27 13:44:49 -05:00
39381f07f9 Fixed incorrect method call.
Added tests to make sure that this doesn't happen.
2020-04-27 13:21:04 -05:00
6ac686b86c Refactoring with different heavy changes to biome generator.
Attempt at making it my async compatible.
2020-04-26 23:07:25 -05:00
0886412cfb Point2 can now overrides toString(). 2020-04-26 20:56:44 -05:00
4f411c42fb Added conversion from world coordinates to utilities.
Respective tests also added.
2020-04-26 20:56:10 -05:00
16618ef439 Added chunk load listener. 2020-04-26 18:23:20 -05:00
b63c39b380 Changed biome cache to cache biomes instead of arrays. 2020-04-26 17:40:18 -05:00
df10a2c298 DFS can now take Point2 as parameters for its searches. 2020-04-26 17:28:57 -05:00
e8340bfc91 DFS's should now run locally on each thread. 2020-04-26 16:47:22 -05:00
faa2cfd79f Changed order of operations. 2020-04-26 16:29:03 -05:00
b492017ef2 Changed to using the constants. 2020-04-26 16:06:26 -05:00
ed4996ff9f Tuned cache values. 2020-04-26 16:05:52 -05:00
b769c83be1 Increased cache size. 2020-04-26 15:42:22 -05:00
2b05dfe4cc Changed to use of read and write locks in cache.
Also added specifics to constructor for the hash map.
2020-04-26 15:42:02 -05:00
02f7de56ed Minor changes to alternator. 2020-04-26 15:09:13 -05:00
60217e4672 World height shader should now be less abrupt. 2020-04-26 15:03:34 -05:00
925296f326 Minor improvement to cache by reducing area under lock. 2020-04-26 02:04:29 -05:00
98e4265db7 Attempted at making all things world gen thread proof.
Specifically, caching is tested thread proof.
2020-04-26 01:28:45 -05:00
f20515fd45 Reworked cache, this time with less hashmap accesses. 2020-04-25 22:32:25 -05:00
dcec9fd7e7 Made sure occurrences are properly tracked. 2020-04-25 18:16:18 -05:00
4b6cfacc47 Fixed clear cache method.
Alternator currently uses threads as identifier (TEMPORARY).
2020-04-25 17:59:30 -05:00
1e0d63e562 Added a magnitiude addition helper function. 2020-04-25 17:54:40 -05:00