5117 Commits

Author SHA1 Message Date
UnknownShadow200
c163ebcb59 Proper fix of UnsafeString on windows platforms - should fix input text and block info string. 2015-09-02 19:44:24 +10:00
UnknownShadow200
f33428a531 Implement ability to perform partial update of textures on both graphics api backends. Partially addresses #44. 2015-09-02 18:33:13 +10:00
UnknownShadow200
1aff357e80 Make sure we don't overwrite existing map files when saving, because we permanently lose some of the original map's metadata when the client loads a map. 2015-09-01 20:05:53 +10:00
UnknownShadow200
c8c8b8072d Partial support for saving and loading maps. 2015-09-01 19:58:21 +10:00
UnknownShadow200
7826f84b55 Consistency of Game/Window - now just use game. Start work on adding crosshairs. 2015-09-01 18:03:36 +10:00
UnknownShadow200
7baf64051f Add proper singleplayer support. Can generate new flatgrass worlds with /client gen, also the client starts singleplayer when no arguments are provided. 2015-09-01 17:24:01 +10:00
UnknownShadow200
db800f3b32 Slightly optimise ChunkMeshBuilder, fix lava not being fully lit on all tile sides. 2015-09-01 16:33:05 +10:00
UnknownShadow200
d9166bbf93 Not sure why .sln was modified, update readme. 2015-09-01 06:53:17 +10:00
UnknownShadow200
6ebed77929 Add basic singleplayer support. Generates a flatgrass map, but has no support for saving. Partially addresses #40. 2015-09-01 06:50:20 +10:00
UnknownShadow200
385c46e21d Make sure to set the MinIndex in Direct3D9 api, as according to various obscure posts, AMD cards require this to be properly filled out, should fix #34. (Thanks Cheesse for reporting this bug) 0.91 2015-08-30 12:09:23 +10:00
UnknownShadow200
74bb737593 Pressing the Enter key now works in place of clicking sign in buttons and connect buttons, addresses #35. 2015-08-30 08:53:17 +10:00
UnknownShadow200
d053a3bf90 Fix Direct3D9Api not building, print graphics info in more concise way and print adapter description for Direct3D 9. Fixes chunk visibility not being recalculated after terrain atlas size changes, closes #34. 2015-08-30 06:48:53 +10:00
UnknownShadow200
dab0e31bfc More code XML comments. 2015-08-29 11:54:55 +10:00
UnknownShadow200
ffa96b651b Some stylistic cleanup in BlockInfo.Culling, use TileSide.Sides instead of an apparent magical constant, minor simplifications in mesh building code. 2015-08-29 08:16:49 +10:00
UnknownShadow200
fece6e6da0 Minor optimisations in ChunkMeshBuilder, store (y - 1) in heightmap so we don't have to also check against block height. 2015-08-28 06:13:18 +10:00
UnknownShadow200
2ffa078e75 Experimental heightmap optimisation. Runs a lot quicker. (750ms to 600ms for 256 sized map, 24s to 12s for 512 sized map. 2015-08-25 06:39:54 +10:00
UnknownShadow200
bea5c34691 Try to minimise api overhead with MapRenderer. 2015-08-23 09:13:28 +10:00
UnknownShadow200
dfac67c652 Treat terrain particles as billboards, fixes issue #32 (thanks andrewphorn). 2015-08-23 08:41:43 +10:00
UnknownShadow200
2f9d32fdfd Fix compilation with Direct3D9 api, fix launcher title not being correct version. 2015-08-22 14:52:03 +10:00
UnknownShadow200
997a6c1eb6 Version 0.9. 2015-08-22 14:38:12 +10:00
UnknownShadow200
c6d797aebc Properly respond to changes in yaw and pitch sent by server. Fix bug with InterpAngle when passing from <90 to >270 degrees. 2015-08-22 14:01:12 +10:00
UnknownShadow200
15ab3d3b3f Now the launcher 100% works properly on Mono, hopefully. 2015-08-22 08:54:19 +10:00
UnknownShadow200
a67d44a25c Finally get the solution to properly compile with MonoDevelop. 2015-08-22 08:04:01 +10:00
UnknownShadow200
539b6694d1 Fix building on MonoDevelop, log web exceptions in Launcher. 2015-08-22 07:49:57 +10:00
UnknownShadow200
921860b327 Add InteropPatcher to solution, fix InteropPatcher not working properly with some older IDEs. 2015-08-22 07:33:44 +10:00
UnknownShadow200
9d9ca55a7c Make everything in OpenTK have consistent whitespace, simplified detecting unix kernel, combined INativeWindow and IInputDriver. 2015-08-22 06:50:23 +10:00
UnknownShadow200
53fbe02e42 More cleanup in OpenTK. Avoid calling PeekMessage then GetMessage in WinGLNative, we can just use PeekMessage with PM_Remove. 2015-08-18 18:58:35 +10:00
UnknownShadow200
50209b22ad Remove unused joystick code. 2015-08-17 20:03:21 +10:00
UnknownShadow200
40ce65ab09 Combine factory definitions into one file, simplify WinGLContext. 2015-08-17 20:00:03 +10:00
UnknownShadow200
1eb12e83eb X11 cleanup. (Untested) 2015-08-16 16:28:56 +10:00
UnknownShadow200
09912f3d79 Simplify various apis in OpenTK. 2015-08-16 13:13:12 +10:00
UnknownShadow200
12814a308b Simplify event classes, combine various input interfaces into one interfaces file. 2015-08-16 11:41:01 +10:00
UnknownShadow200
09939603de Simplify Vector and Matrix structs. 2015-08-16 10:51:14 +10:00
UnknownShadow200
9d73e2492d Integrate SharpDX into OpenTK. 2015-08-16 10:16:59 +10:00
UnknownShadow200
54afbcdb65 Combine IndexBuffer and VertexBuffer, simplify methods of setting data, use inlined fixed instead of GCHandles. 2015-08-16 06:43:37 +10:00
UnknownShadow200
cfeabc612a Remove Result struct and just use int return code. 2015-08-15 14:32:56 +10:00
UnknownShadow200
4e34637a05 Minor code cleanup. 2015-08-15 13:51:22 +10:00
UnknownShadow200
8e19e6d2fc Models now use indexed drawing. 2015-08-04 11:43:19 +10:00
UnknownShadow200
96b508a2ce Optimise even further, fix bug with sky drawing with OpenGL api. 2015-08-04 11:35:57 +10:00
UnknownShadow200
0fe78fdf3b Use indexed drawing and stackalloc in StandardEnvRenderer. 2015-08-04 08:33:00 +10:00
UnknownShadow200
1590664f68 Make IGraphicsApi even more consistent. 2015-08-04 07:17:20 +10:00
UnknownShadow200
749a1b0436 Simplify API further. 2015-08-04 07:03:20 +10:00
UnknownShadow200
efc7b0bfe6 Use stackalloc to avoid allocating index buffer on LOH, remove Is<X> methods in IGraphicsApi and make IGraphicsApi more consistent. 2015-08-04 06:32:12 +10:00
UnknownShadow200
281e815125 Significantly reduce allocation of GCHandles, replace with inlined fixed statement in GL class. 2015-08-03 20:08:04 +10:00
UnknownShadow200
dd2eb1105a Use single index buffer for all chunks. Very minor increase in performance, but does slightly reduce memory usage. 2015-08-03 19:17:53 +10:00
UnknownShadow200
618ded14e0 Add experimental optimisation of grouping vertices by faces, then skipping all vertices of a face if that face is always back facing. Improves FPS by 50 - 100 in some cases. On slower card, imrpvoed FPS by 5-30. 2015-08-03 17:25:42 +10:00
UnknownShadow200
572a52dd3c Don't call AddIndices for every single face - just do it one bulk go in ExpandCapacity(). 2015-07-31 19:57:31 +10:00
UnknownShadow200
4bf4209a4c Don't crash when the device is lost, partially addresses #30. Need to conduct more thorough testing to ensure that this works on all graphics cards. 2015-07-30 19:54:02 +10:00
UnknownShadow200
df879604f2 Major rewrite of graphics APIs: Use SharpDX instead of Managed DirectX (64 bit works now), rewrite OpenTK GL class to use calli instructions. 2015-07-28 06:53:22 +10:00
UnknownShadow200
e2d154d2c4 Cleanup in OpenTK. 2015-07-27 19:17:25 +10:00