77 Commits

Author SHA1 Message Date
Drew DeVault
e5aaf73d12 Implement sun & moon 2016-04-20 20:54:00 -04:00
Drew DeVault
0a3eca2745 Rerender adjacent chunks when we receive new ones
Which:

- Gives us accurate lighting information
- Allows us to remove edge blocks that are actually not visible
2016-04-06 20:10:51 -04:00
Drew DeVault
311e7cbc25 Fix multiple lighting issues
- Factor in lighting for snow and similar blocks
- Set default lighting value to 15

The second one is a bit of a temporary fix - the default should be 15,
but we should also be revisiting and rerendering chunks once we have the
neighboring chunk for this and other reasons.
2016-04-06 19:41:56 -04:00
William Moorehouse
b7603a8ca1 Fixed multiple issues with lighting 2015-11-24 12:15:07 -05:00
William Moorehouse
ae31f323ed Remove testing artifact 2015-11-07 17:42:13 -05:00
William Moorehouse
dc803f382e Added block brightness modifier 2015-11-07 17:41:07 -05:00
William Moorehouse
f90d3717c0 Added base block face brightness modifier 2015-11-07 17:23:46 -05:00
Drew DeVault
bbb457af87 Fix inconsistent location of .truecraft 2015-10-08 22:02:03 -04:00
Drew DeVault
3550bcb1a1 Add item rendering for inventory 2015-10-08 18:32:34 -04:00
Drew DeVault
be8649447a Initial pass on rendering inventory window 2015-10-08 08:41:43 -04:00
Drew DeVault
3da7d25a3d Rewrite chat interface 2015-10-07 08:36:43 -04:00
Drew DeVault
75a39118a9 Add numbers to slots on inventory 2015-09-30 20:03:51 -04:00
Drew DeVault
069e80469c Add animation as blocks are broken 2015-09-29 20:39:11 -04:00
Drew DeVault
7b5154ff6f Improve chunk re-rendering 2015-09-28 08:33:10 -04:00
Drew DeVault
512fabf0b5 Re-render chunks when they change
This has some weird problems where the chunks will disappear for a
moment. I spent some time investigating it and I'm still not sure why
this happens.
2015-09-28 08:19:42 -04:00
Drew DeVault
c25f18619e Crazy idea - render water as blue? 2015-09-27 23:51:36 -04:00
Drew DeVault
9fb289f3a7 Add cactus renderer
Unlike Minecraft, however, our cactus has no bottom face. Who cares.
2015-09-27 23:36:40 -04:00
Drew DeVault
9498a05167 Fix rotational math to match Mojang client 2015-09-27 22:03:15 -04:00
Drew DeVault
95f17cde72 Fix texture mapping for torches 2015-09-27 21:46:56 -04:00
Drew DeVault
2eaaf219a8 Fix torch rendering, track the highlighted face
The second bit will allow the client to start doing things like placing
blocks.
2015-09-27 21:00:32 -04:00
Drew DeVault
02146108ba Fix highlighted block, add crosshairs 2015-09-27 17:14:04 -04:00
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