12003 Commits

Author SHA1 Message Date
Kovid Goyal
2de8c70bb8 Optimize the hot loop 2016-10-30 17:19:37 +05:30
Kovid Goyal
be9b8e993d Disable OpenGL error checking for performance 2016-10-30 17:00:38 +05:30
Kovid Goyal
47a23cafbe Implement cursor shapes 2016-10-30 16:43:59 +05:30
Kovid Goyal
bce5f24e99 Implement cursor rendering 2016-10-30 16:25:54 +05:30
Kovid Goyal
de4f93dd95 Fix vertical positioning when rendering characters 2016-10-30 15:16:08 +05:30
Kovid Goyal
e5293fba16 Implement keyboard input 2016-10-30 14:56:53 +05:30
Kovid Goyal
48e7226a2a ... 2016-10-30 13:15:41 +05:30
Kovid Goyal
ade8faa345 Start work on implementing the char grid 2016-10-30 13:06:13 +05:30
Kovid Goyal
42675c2531 ... 2016-10-29 21:13:45 +05:30
Kovid Goyal
15771fb90c Simplify event loop code by using the asyncio module 2016-10-29 21:08:21 +05:30
Kovid Goyal
b921821d0c Implement passing of foreground and background colors to the cell shaders 2016-10-29 20:28:37 +05:30
Kovid Goyal
176a548b99 ... 2016-10-29 20:23:49 +05:30
Kovid Goyal
ed74f8e467 Ensure only a single thread tries to render chars at a time 2016-10-28 15:09:39 +05:30
Kovid Goyal
fabdebfd89 Check for required extensions 2016-10-28 12:32:55 +05:30
Kovid Goyal
d00e03ca03 Micro-optimization 2016-10-28 12:16:49 +05:30
Kovid Goyal
88a9d8fb8a Use instanced rendering for the sprites as well 2016-10-28 12:08:52 +05:30
Kovid Goyal
65e2f6fa09 Start work on using instanced rendering for cells 2016-10-28 09:24:13 +05:30
Kovid Goyal
5791700de7 Go back to using glTexStorage as it is commonly present via extension and higher performance 2016-10-28 07:33:15 +05:30
Kovid Goyal
c9e3d57ed5 A spot of refactoring 2016-10-27 23:08:21 +05:30
Kovid Goyal
6eda70331a Char grid now works. Also downgrade GL requirement to 3.3 2016-10-27 22:48:03 +05:30
Kovid Goyal
4495859164 Utility methods to implement orthographic transforms 2016-10-27 22:09:20 +05:30
Kovid Goyal
57bfd19c59 Convenience functions for creating matrices 2016-10-27 21:00:42 +05:30
Kovid Goyal
9df413d9be Nicer error message if the ARB_copy_image extension is absent 2016-10-27 17:14:07 +05:30
Kovid Goyal
cc157f1b3e Only store rendered sprite data on the GPU 2016-10-27 17:09:56 +05:30
Kovid Goyal
e649cbbd59 Do the transform to UV space in the shader so that the texture can be dynamically resized 2016-10-27 15:36:08 +05:30
Kovid Goyal
736df601dc Dont use the image_storage functions since they require OpenGL 4.2 2016-10-27 15:10:42 +05:30
Kovid Goyal
f692776e29 Use a sprite sheet for char cells 2016-10-27 13:58:36 +05:30
Kovid Goyal
321373056c Start work on a class to manage cell textures on the GPU 2016-10-26 15:44:27 +05:30
Kovid Goyal
8c76596f5c Specify the needed opengl version centrally 2016-10-26 12:24:24 +05:30
Kovid Goyal
7161406ff3 Handle window resizing correctly 2016-10-26 10:46:20 +05:30
Kovid Goyal
cc1a277eeb Pre-render the basic ASCII chars 2016-10-26 10:45:33 +05:30
Kovid Goyal
412c5982e8 Only use scalable/outline fonts 2016-10-26 09:45:19 +05:30
Kovid Goyal
2e4d2f9e44 Implement char rendering 2016-10-25 19:44:55 +05:30
Kovid Goyal
bf125612c9 ... 2016-10-25 18:12:29 +05:30
Kovid Goyal
135db0d834 Refactor the shaders module to present a nicer interface 2016-10-25 18:08:38 +05:30
Kovid Goyal
f7db790061 Code to work on OpenGL 2016-10-25 16:22:53 +05:30
Kovid Goyal
ca57eb9d05 Use font metrics for wcwidth() 2016-10-25 09:31:28 +05:30
Kovid Goyal
b4730e747a Implement fallback fonts and rendering of wide characters 2016-10-25 09:26:59 +05:30
Kovid Goyal
1f6937973d Implement rendering of characters with FreeType
Still need to handle double width and combining characters
2016-10-24 21:59:34 +05:30
Kovid Goyal
809a833dc5 Code to render character cells 2016-10-24 13:50:24 +05:30
Kovid Goyal
697db21c64 Also get font hinting config from font-config 2016-10-24 11:43:38 +05:30
Kovid Goyal
67964962ae ... 2016-10-24 11:04:00 +05:30
Kovid Goyal
43df44605f Class to manage shaders 2016-10-24 11:01:25 +05:30
Kovid Goyal
6480f9f156 Wire up all the new components 2016-10-24 10:17:02 +05:30
Kovid Goyal
6a23dbe1ec Start work on rendering fonts using FreeType 2016-10-23 23:12:00 +05:30
Kovid Goyal
6f81e12041 Start work on migrating to OpenGL based rendering 2016-10-23 21:07:34 +05:30
Kovid Goyal
aa2e11430a ... 2016-10-23 09:29:16 +05:30
Kovid Goyal
a04cc3a97b Limit the number of functions displayed by --profile 2016-10-22 11:02:35 +05:30
Kovid Goyal
1244ad0aa1 Micro-optimization 2016-10-22 08:57:22 +05:30
Kovid Goyal
410e6dc259 Micro-optimization 2016-10-21 18:10:15 +05:30