56 Commits

Author SHA1 Message Date
Drew DeVault
3722468d01 Create DebugInfoModule
Provides F2 debugging info
2015-09-24 22:28:44 -04:00
Drew DeVault
8fe7329135 Start moving client towards a more refined design
I'm splitting up core pieces of functionality into several smaller
modules. TrueCraftGame will be made smaller and smaller until it's just
a small wrapper around the modules doing all of the work. This should
allow for modders to easily add new modules or replace builtin modules,
and will make the codebase more maintainable in general.
2015-09-24 21:20:36 -04:00
Drew DeVault
8f2a4e54a9 Add highlighted block model and VoxelCast class 2015-09-24 08:28:16 -04:00
William Moorehouse
29644e2be5 Camera effects implement IEffectMatrices 2015-09-22 14:32:36 -04:00
Drew DeVault
35bac852e6 Make block renderers aware of visible faces
This doesn't work entirely right, so it's disabled for the most part.
2015-09-20 16:34:06 -04:00
Drew DeVault
2d0ce96cc0 Avoid rendering unseen blocks at chunk boundaries 2015-09-20 15:49:31 -04:00
yankejustin
3830061005 Don't bother clearing the Dictionary
We disposed of the pairs' values. Just remove the reference and let the
garbage collector collect the rest. By calling clear, we are just
wasting our time "removing" the items that the garbage collector would
have to do anyways. Essentially this call just takes up time without
reason.
2015-08-07 14:38:09 -04:00
yankejustin
c4cc852d60 Ensure stream is disposed
Make sure that, even if an exception is thrown in between, that the
MemoryStream is disposed of by using a 'using' block.
2015-08-07 14:36:02 -04:00
yankejustin
1ba64128bb Dispose of old textures
If there were previously-stored fonts, dispose of them before creating
new fonts.
2015-08-07 14:11:33 -04:00
Drew DeVault
df4ed8ce9f Add sapling renderer and more debug commands 2015-06-23 15:40:52 -06:00
Drew DeVault
9d01f77625 Some improvements to chunk rendering
- Spreads work out on multiple cores again
- Takes as many pending chunks as we can during updates
2015-06-23 15:10:35 -06:00
Drew DeVault
2821b6406d Add text shadows and tweak chat 2015-06-23 15:02:09 -06:00
William Moorehouse
50c7e021a7 Added rendering support for moist farmland 2015-06-22 18:34:34 -04:00
William Moorehouse
a2f9003dad Fixed cobble and stone textures being mixed up 2015-06-22 11:34:30 -04:00
William Moorehouse
555a8471d0 Don't crash when block values are invalid 2015-06-22 11:34:30 -04:00
William Moorehouse
3e821b6b27 Implemented static texture maps 2015-06-22 11:34:30 -04:00
William Moorehouse
c6952d6cca Added slab renderer 2015-06-22 11:34:29 -04:00
William Moorehouse
2da59178f0 Simplified cobweb renderer 2015-06-22 11:34:29 -04:00
William Moorehouse
85bbe6314d Added cobweb renderer 2015-06-22 11:34:29 -04:00
William Moorehouse
15b6f7b2ab Fixed build failure (on Windows?) due to unimplemented virtual property 2015-06-22 11:34:29 -04:00
Drew DeVault
8697994737 Add wheat and farmland renderers 2015-06-20 13:56:57 -04:00
Drew DeVault
939a6dc79c Render snow variation of grass blocks
This also increases the average rainfall everywhere so that fucking
deserts are less common
2015-06-20 11:01:07 -04:00
Drew DeVault
f3fc43fbf9 Implement biome coloring for grass/vegitation/etc
Fixes #147
2015-06-19 17:36:39 -04:00
Drew DeVault
12a5483d3b Add vegitation renderer
This replaces TallGrassRenderer and adds support for flowers.

This should be used going forward for any plants that can be rendered as
an x-quad.
2015-06-19 11:53:08 -04:00
Drew DeVault
76d0af7e36 Move GraphicsDevice references to main thread 2015-06-19 01:11:14 -04:00
Drew DeVault
5c52b7634e Remove references to GraphicsDevice on workers 2015-06-19 00:58:30 -04:00
William Moorehouse
596311101a Proper disposal of ChunkRenderer 2015-06-18 21:55:35 -04:00
Drew DeVault
fa26b1a5d7 Or we could not do that 2015-06-18 21:29:36 -04:00
Drew DeVault
9c29f845ae Load textures through PngReader
Instead of Texture2D.FromStream.

Fixes the purple water bug (fixes #138)
2015-06-18 21:04:03 -04:00
Drew DeVault
386d8f7328 Add option to download Mojang assets
Also fixes a bug with texture pack loading in the client.

Note: we cannot distribute Mojang assets, but some players might want to
use them. To that end, the launcher now has a button that allows the
user to download them him or herself. Since we download them directly
from Mojang, we're be good to go.
2015-06-18 13:59:03 -04:00
William Moorehouse
df927e6c0f Fixed a crash in singleplayer when attempting to render a chunk with no transparent blocks in it 2015-06-18 11:43:20 -04:00
William Moorehouse
72e632a071 Fixed Z-fighting with transparent objects, for now 2015-06-17 21:47:34 -04:00
William Moorehouse
341093384d Initial work on improving rendering; separated threading from mesh generation 2015-06-17 19:23:24 -04:00
William Moorehouse
5c3c035019 Fixes for client crashing when not run through the launcher 2015-06-17 13:24:39 -04:00
William Moorehouse
a7d394ef19 Fixed exception in client when settings.json managed to refer to a non-existent or corrupt .zip 2015-06-17 09:17:26 -04:00
William Moorehouse
f15744b7a2 Finished cleaning up texture pack code 2015-06-17 09:10:42 -04:00
William Moorehouse
f66ab8a2be Expanded TextureMapper 2015-06-17 08:17:25 -04:00
William Moorehouse
7b5b8ee6e4 Removed obsolete code 2015-06-17 08:07:01 -04:00
Drew DeVault
8848697656 Fix font loader on case sensitive filesystems 2015-06-16 22:22:40 -06:00
William Moorehouse
3c2bb1a225 Fixed known issues with texture pack loading 2015-06-16 22:17:30 -06:00
William Moorehouse
b799809d74 Now load terrain.png from current texture pack 2015-06-16 22:17:30 -06:00
William Moorehouse
3272056b8f Refactored and expanded Mesh 2015-06-16 15:53:28 -04:00
William Moorehouse
56ac35352c Added more functionality to FontRenderer 2015-06-13 15:46:29 -04:00
William Moorehouse
de1ffa26b6 Moved camera logic into its own class 2015-06-12 17:10:28 -04:00
Drew DeVault
a8307ae28e Add sugar cane rendering 2015-06-03 21:36:21 -06:00
Drew DeVault
f198f0322f Add ladder renderer 2015-06-03 21:09:37 -06:00
Drew DeVault
0ae063456f Add common renderer for quad-based blocks
This also includes a derivative renderer for tall grass.
2015-06-03 18:42:26 -06:00
Drew DeVault
2994b7c65e Fix cross-thread voliations in chunk rendering 2015-06-03 16:12:43 -06:00
Drew DeVault
021261e6fa Add support for various wood/leaves types 2015-06-03 15:22:33 -06:00
Drew DeVault
71ec7a7399 Ensure last block of each chunk is rendered 2015-05-30 14:14:35 -06:00