5272 Commits

Author SHA1 Message Date
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
UnknownShadow200
5f7aafc8e1 Remove Color4 and unused VirtualKey definitions. 2015-07-27 17:06:35 +10:00
UnknownShadow200
4cc1e27157 Cleanup the solution - move the client's files and folders into their own folder. 2015-07-25 06:45:14 +10:00
UnknownShadow200
f99e9eeb3a Fix crashing on close, remove file that somehow magically appeared? 2015-07-21 19:05:59 +10:00
UnknownShadow200
25d7cbda9e Combine player rendering functions into Player class, remove D3DX reference since we longer need it. 2015-07-21 18:48:51 +10:00
UnknownShadow200
0417790d6a Use much faster(6-7 times) method for taking a screenshot with Direct3D api. 2015-07-19 06:34:19 +10:00
UnknownShadow200
14e9321c44 Don't store VB in ModelPart class, don't duplicate model part construction for Set64x64 and Set64x64Slim sets in player model. 2015-07-17 16:56:26 +10:00
UnknownShadow200
7c1479526a Release 0.8. This will likely be the last work done on the client for a while. 0.8 2015-07-10 07:40:25 +10:00
UnknownShadow200
f7b40a3d21 Don't keep track of 'CurrentContext', don't pass opengl version to game window constructor as it is unnecessary, don't bother with reflection because we only really need to load 51 delegates. 2015-07-10 07:07:19 +10:00
UnknownShadow200
54119d0281 Remove ContextHandle and just use IntPtr, cache DC in WindowsGLContext, use native platform GetCurrentContext delegate in GraphicsContext. 2015-07-10 06:30:09 +10:00
UnknownShadow200
1dc09ca9f3 Add VSync support to Direct3D api. 2015-07-09 10:20:26 +10:00
UnknownShadow200
062758a7b0 Implement proper resizing handling in Direct3D api. 2015-07-09 10:10:33 +10:00
UnknownShadow200
7346c8f361 Oops, BottomRight should be the other way around. 2015-07-08 07:10:40 +10:00
UnknownShadow200
ed169f7140 Implement auto scrolling chat history mode, with no concept of pages. Can use mouse and page up/page down keys to scroll through chat. No longer have to press 'H' to activate this mode. 2015-07-08 07:06:21 +10:00
UnknownShadow200
87230dca45 Fully support PlayerClick extension, and declare that we support it. 2015-07-07 07:58:20 +10:00
UnknownShadow200
36560403ff Oops, that was a very silly mistake. 2015-07-06 19:50:17 +10:00
UnknownShadow200
b5e4f73d8c Make screens responsible for enable/disable texture2d calls. 2015-07-06 19:46:45 +10:00
UnknownShadow200
d6bbf39432 Don't bind to buffer 0 since we always use vertex buffers. 2015-07-06 19:34:01 +10:00
UnknownShadow200
5d1fbbb578 Fix block info screen not correctly updating the texture. 2015-07-06 19:32:02 +10:00
UnknownShadow200
9436afb3f3 Simplify classes that load unmanaged functions statically or dynamically. Remove unncessary namespaces from many declarations in both GL delegates and core class. 2015-07-06 18:04:32 +10:00
UnknownShadow200
8687378509 Simplify AGL class, remove code that was used for GLControl. 2015-07-06 11:04:00 +10:00
UnknownShadow200
a78ddb6979 Make AGL api more consistent. 2015-07-06 10:46:31 +10:00
UnknownShadow200
69e1050ee1 Standardise usings in MacOS api. 2015-07-06 10:22:48 +10:00
UnknownShadow200
ed37fab04a Client now sends player click if server supports it. Still incorrectly misses some clicks. 2015-07-06 10:09:38 +10:00
UnknownShadow200
fa30faf812 Refactor 2D text drawing to be simpler. Refactor IModel class - use the player argument directly, rather than copying them to fields for every different model. Move LocationUpdate structure into its own file. 2015-07-05 19:59:26 +10:00
UnknownShadow200
43a7e35d64 Do more accurate model picking with rotated AABBs, make sure to only return closest player in model picking. 2015-07-04 14:26:19 +10:00
UnknownShadow200
e23b5aeda5 Move model size functionality to model classes. Add separate bounding boxes for collision and picking. Add function to rotate points around Y axis. 2015-07-03 09:20:46 +10:00
UnknownShadow200
ae1105d5d9 Change skeleton and zombie angles to degrees, use face culling on translucent blocks when the player isn't inside a translucent blocks. 2015-07-03 07:11:50 +10:00
UnknownShadow200
71a26da049 Replace degrees with radians in spider model. 2015-07-02 09:13:26 +10:00
UnknownShadow200
e97ff0da1f Add basic function for model picking. Needs to be addressed by #29. 2015-07-02 08:00:38 +10:00
UnknownShadow200
e95429dbef Move player handling into new EntityList class. 2015-07-02 07:50:14 +10:00
UnknownShadow200
152133d95c Only call PickingRender when PickedPos is valid, remove some leftover stuff from UpdateFrame, combine SendPlayerClick functions as one function. 2015-07-02 07:35:28 +10:00
UnknownShadow200
273f4f5611 Remove samples/stereo from GraphicsMode, remove some other unused constructors and exceptions. 2015-07-02 06:33:19 +10:00
UnknownShadow200
ec0cb6b997 Do not create temp window when choosing a pixel format on Windows. Simplify X11 glx api and choosing functions. 2015-07-01 16:58:24 +10:00
UnknownShadow200
7f61ab1019 Try 2 at fitting things on one or two lines. 2015-07-01 12:00:38 +10:00
UnknownShadow200
bc138a9080 Minor changes to make more things fit on one or two lines. 2015-07-01 11:57:03 +10:00
UnknownShadow200
d0351d5d78 Fix not building due to missing readme.txt, add field specifying whether server supports PlayerClick extension. 2015-07-01 11:53:10 +10:00
UnknownShadow200
b106fd7e95 Formatting and minor cleanup in readme. 2015-07-01 11:27:54 +10:00
UnknownShadow200
b1ba2c0207 Fix clouds not moving when using Direct3D 9 build, remove somestuff from todo.txt and replace them with actual TODO comments in source code. Redesigned readme to use markdown and look nicer. 2015-07-01 11:15:53 +10:00
UnknownShadow200
f88405330c Significantly refactor launcher. Public servers list and 'minecraft.net/classicube.net server' tabs are merged into one tab. As both the minecraft.net and classicube.net tabs essentially shared the exact same functionality, this functionality is encapsulated in a new 'GameState' class. 2015-07-01 09:12:12 +10:00
UnknownShadow200
536845393c Why is that still there? 2015-06-30 20:09:26 +10:00
UnknownShadow200
d59aba361a Inline some string date format constants, only check whether a directory exists when opening a file. 2015-06-30 20:08:58 +10:00
UnknownShadow200
658f2518fe Properly unsubscribe from TerrainAtlasChanged events. 2015-06-30 13:10:16 +10:00
UnknownShadow200
9a52cd317f Use optimised matrix multiplication code from later version of OpenTK. 2015-06-30 07:46:37 +10:00
UnknownShadow200
818a42f302 Only send final matrix result of multiplications to graphics api. 2015-06-30 07:26:09 +10:00
UnknownShadow200
b5691061b5 Presumably the contents of a string are more relevant to the user than its address. 2015-06-30 07:03:29 +10:00