Commit Graph

304 Commits

Author SHA1 Message Date
Hajime Hoshi
6e897d1479 graphcis: Bug fix: Can't dispose textures/framebuffers after the context is lost (fixing #305) 2017-01-22 01:37:08 +09:00
Hajime Hoshi
d3e1f91511 graphis: Bug fix: blurred screen after restoring the context (#306) 2017-01-21 15:16:47 +09:00
Hajime Hoshi
bccf76867e graphics: Try to restore the context on browsers (WIP) 2017-01-21 02:56:26 +09:00
Hajime Hoshi
b86f1771e4 ui: Add goroutine so that blocking is available everywhere 2016-11-29 01:40:06 +09:00
Hajime Hoshi
a1e868b822 ui: Don't use 'image-rendering' CSS on Safari (#293) 2016-11-26 23:45:06 +09:00
Hajime Hoshi
411721a4da ui: Add TODO 2016-11-26 02:35:55 +09:00
Hajime Hoshi
07294a98b6 Move internal/graphics/opengl -> internal/opengl 2016-11-03 23:31:25 +09:00
Hajime Hoshi
dc0254db40 ui: Optimized scaling on browsers 2016-09-15 10:04:48 +09:00
Hajime Hoshi
1f8cd41326 windows: Add comments 2016-09-11 22:34:39 +09:00
Hajime Hoshi
071b65f173 loop: Remove IsRunning 2016-09-03 21:14:06 +09:00
Hajime Hoshi
cd885ce7c5 ui: Add SetCursorVisibility (#258) 2016-09-03 18:54:21 +09:00
Hajime Hoshi
87efaafcff Update GLFW version 3.1 -> 3.2 2016-09-03 16:25:43 +09:00
Hajime Hoshi
84b512a3ac ui: Bug fix: Remove unneeded argument 2016-09-03 02:12:11 +09:00
Hajime Hoshi
ec70ea3be5 ui: Refactoring 2016-09-03 01:06:16 +09:00
Hajime Hoshi
db782ff0d9 ui: Remove UserInterface interface 2016-09-03 00:20:05 +09:00
Hajime Hoshi
f204c14f90 ui: Rename Run -> RunMainThreadLoop 2016-09-03 00:00:44 +09:00
Hajime Hoshi
6164ecb9fc ui: Reduce functions in UserInterface 2016-09-02 23:45:54 +09:00
Hajime Hoshi
128dcaa342 ui: Rename Main -> Run 2016-09-02 02:59:40 +09:00
Hajime Hoshi
571d67f967 ui: Reduce methods in UserInterface 2016-09-02 02:31:03 +09:00
Hajime Hoshi
93a994f1d6 ui: Refactoring on mobile 2016-09-02 01:34:51 +09:00
Hajime Hoshi
453c2c4589 ui: Remove Terminate 2016-09-02 01:07:41 +09:00
Hajime Hoshi
6da16aa1a0 ui: Refactoring: Remove events 2016-09-02 00:53:05 +09:00
Hajime Hoshi
1e0bdf844d loop: Bug fix: vsync should not use channels on browsers (#259) 2016-09-01 10:36:00 +09:00
Hajime Hoshi
cddaae55dd ui: Simplify vsync 2016-08-28 17:09:58 +09:00
Hajime Hoshi
de1bb1b392 go generate 2016-08-27 00:50:26 +09:00
Hajime Hoshi
612d3b07b0 ui: Bug fix: ui.funcs might be closed before sending a value 2016-08-17 01:57:20 +09:00
Hajime Hoshi
3619a796dc ui: Check the return value of ReleaseDC() 2016-08-09 00:25:47 +09:00
Hajime Hoshi
96a43bcb4d ui: Bug fix: must call ReleaseGC (#251) 2016-08-09 00:09:22 +09:00
Hajime Hoshi
f556b19f22 Add error checks 2016-08-03 23:44:54 +09:00
Hajime Hoshi
8e58f3ce0a ui: Bug fix: closed channel never blocks 2016-08-03 01:07:46 +09:00
Hajime Hoshi
30b521f3b8 Add error checks 2016-08-03 01:02:05 +09:00
Hajime Hoshi
6968e898c3 Bug fix: ui.Main should be suspended when error occurs in the loop 2016-08-02 02:48:19 +09:00
Hajime Hoshi
e118a755f5 ui: Bug fix: Sizing also calls GLContext 2016-07-24 05:29:47 +09:00
Hajime Hoshi
efe64d56f4 ui: Bug fix: Avoid dead lock 2016-07-24 04:32:12 +09:00
Hajime Hoshi
c5e42c91be ui: Add glcontext.go 2016-07-24 00:05:36 +09:00
Hajime Hoshi
121063ee2b ui: Initialize GLContext at Start 2016-07-23 22:17:36 +09:00
Hajime Hoshi
5a3ea34cfc ui: Delay initializing the context 2016-07-23 21:43:35 +09:00
Hajime Hoshi
3553fc55c3 ui: Unify the context thread and the UI thread 2016-07-23 21:22:59 +09:00
Hajime Hoshi
8371426888 ui: Refactoring 2016-07-23 21:01:30 +09:00
Hajime Hoshi
1953539e22 ui: Refactoring: Simplify initializing 2016-07-23 20:25:52 +09:00
Hajime Hoshi
193c03ea58 ui: Bug fix: Don't use integer scale (JavaScript) 2016-07-09 18:27:29 +09:00
Hajime Hoshi
910e1b760c ui: Introduce glfwScale 2016-07-04 11:37:34 +09:00
Hajime Hoshi
55bfe19bf8 opengl: Add context.DoWork (mobile) 2016-07-04 01:25:35 +09:00
Hajime Hoshi
61ba8dad17 opegnl: Remove initialization (use Reset instead) (mobile) 2016-07-04 01:04:35 +09:00
Hajime Hoshi
0d91883fb9 opengl: Remove init (desktops) 2016-07-04 00:51:58 +09:00
Hajime Hoshi
0e2a1a1636 mobile: Change the unit from px to dp on Android (#241) 2016-07-03 05:37:56 +09:00
Hajime Hoshi
47a0b3ccfa ui: Need LockOSThread for mobile 2016-07-01 00:44:15 +09:00
Hajime Hoshi
3ebc5cc15a ui: Stop the game when the window is deactivated (#230) 2016-06-30 01:07:54 +09:00
Hajime Hoshi
328ef85606 opengl: Prepare Context Losing for JavaScript (#217) 2016-06-29 23:18:02 +09:00
Hajime Hoshi
bb511b2c13 ui: Scale is now float64 (#236) 2016-06-25 01:26:59 +09:00
Hajime Hoshi
989ae1ebc5 ui: Fix deviceScale for mobiles 2016-06-19 05:14:02 +09:00
Hajime Hoshi
b0a7e13502 ui: Remove ScreenSizeEvent.Scale 2016-06-19 05:10:27 +09:00
Hajime Hoshi
6f50ef3604 ui: Get correct device scale for iOS 2016-06-19 05:10:27 +09:00
Hajime Hoshi
858b391592 ui: Bug fix: unused variable 2016-06-19 05:05:56 +09:00
Hajime Hoshi
ea377b8e20 ui: More accurate device scale factor 2016-06-19 05:04:38 +09:00
Hajime Hoshi
bc2703c345 opengl: Call glViewport each time when different framebuffer is set 2016-06-18 22:47:34 +09:00
Hajime Hoshi
83ab4352f8 opengl: Consider framebuffer size on iOS 2016-06-18 19:55:04 +09:00
Hajime Hoshi
5eb77d2fb5 Remove 'default framebuffer' and add 'screen framebuffer' for iOS 2016-06-18 04:56:13 +09:00
Hajime Hoshi
dfe4db67be Fix for iOS 2016-06-17 02:08:25 +09:00
Hajime Hoshi
10ebe3274c Fix build tags 2016-06-15 03:35:35 +09:00
Hajime Hoshi
13f594baed Fix build tags for iOS (WIP) 2016-06-15 00:19:02 +09:00
Hajime Hoshi
a1fbf2cd2d graphics: Remove 'Resume' 2016-06-12 23:54:36 +09:00
Hajime Hoshi
f322aaec02 mobile: Add a comment 2016-06-11 05:49:53 +09:00
Hajime Hoshi
f71dcd3466 Remove 'Pause' 2016-06-11 00:57:10 +09:00
Hajime Hoshi
eb8e8b6034 ui: Remove FinishRendering 2016-06-10 01:49:21 +09:00
Hajime Hoshi
8121b2102f mobile: Implement Pause and Resume to work correctly 2016-06-10 01:21:46 +09:00
Hajime Hoshi
83a96dc532 android: Bug fix: Black flicking (#226) 2016-06-07 02:24:36 +09:00
Hajime Hoshi
583fc07f3a input: Fix compile error 2016-05-29 22:15:28 +09:00
Hajime Hoshi
05104744d3 input: Bug fix: Touches requries lock 2016-05-29 22:13:42 +09:00
Hajime Hoshi
e4ca01db31 mobile: Multitouches (#101) 2016-05-28 23:15:28 +09:00
Hajime Hoshi
e84f798c7c input: Bug fix: Coordinate calculation of touch events 2016-05-27 01:47:24 +09:00
Hajime Hoshi
bdaff72af9 input: Implement Touches function (WIP) (#101) 2016-05-27 01:31:30 +09:00
Hajime Hoshi
3195ae32d8 mobile: Implement Pause/Resume 2016-05-24 00:00:54 +09:00
Hajime Hoshi
f251ae8b49 mobile: Handle touch events 2016-05-23 02:06:01 +09:00
Hajime Hoshi
6d06b01cae gomobile bind works 2016-05-22 04:25:15 +09:00
Hajime Hoshi
c36dd3df52 ui: Change Input to be an interface 2016-05-20 00:15:05 +09:00
Hajime Hoshi
d09bb63f71 ui: Change UserInterface to be an interface 2016-05-20 00:07:06 +09:00
Hajime Hoshi
76ea075896 Add example/mobile (not-compilable yet) 2016-05-19 03:17:50 +09:00
Hajime Hoshi
335781759c ui: Introduce ScreenSizeEvent to simplify the run loop 2016-05-18 11:56:43 +09:00
Hajime Hoshi
faff188574 ui: Move Now() to internal/loop and hide it 2016-05-18 11:24:17 +09:00
Hajime Hoshi
cd5436712b ui: Hide Init() func 2016-05-18 11:12:23 +09:00
Hajime Hoshi
a35064db7d ui: Add ui.GLContext() 2016-05-18 11:10:03 +09:00
Hajime Hoshi
063ed564fd Move the run loop to internal/loop 2016-05-18 10:59:37 +09:00
Hajime Hoshi
7f19d4a1ac ui: Remove CurrentUI() 2016-05-18 10:51:11 +09:00
Hajime Hoshi
4d04413bf9 ui: Move the run loop to internal/ui 2016-05-18 10:46:23 +09:00
Hajime Hoshi
5c68ee4034 ui: Use events in the game loop 2016-05-18 02:03:41 +09:00
Hajime Hoshi
49c156d2b5 ui: Rename DoEvents -> Update 2016-05-18 01:22:01 +09:00
Hajime Hoshi
d6bfa72c5c graphics: Remove openGLState.initialize 2016-05-16 11:32:26 +09:00
Hajime Hoshi
9f2b53d24c graphics: Add InitializeIfNeeded function (preparing for Android) 2016-05-15 04:05:57 +09:00
Hajime Hoshi
295e3c0a0a ui: Bug fixed: there was an error shadowed and not used 2016-05-14 03:25:44 +09:00
Hajime Hoshi
a04ce352f8 opengl: Bug fixed: there were some errors shadowed and not used 2016-05-14 03:24:01 +09:00
Hajime Hoshi
0083fe5df1 Changed the copyright year to 2013 (#216) 2016-05-14 00:20:27 +09:00
Hajime Hoshi
57a9ecd821 ui: Refactoring 2016-05-07 22:27:10 +09:00
Hajime Hoshi
209b4e6864 ui: Add Main for the OS main thread 2016-05-06 21:30:23 +09:00
Hajime Hoshi
5a379cb7cb Reduce panics (#196) 2016-04-11 01:48:40 +09:00
Hajime Hoshi
3ec0020f02 graphics: Bug fix (#201): Remove gl.Flush for performance (this ws added by #161 but no longer needed because of BindZeroFrameBuffer) 2016-04-08 21:45:53 +09:00
Hajime Hoshi
75ef9a6d47 ui: Add read-write lock 2016-03-26 17:24:40 +09:00
Hajime Hoshi
4a60343fe6 ui: Don't use currentUI directly 2016-03-26 15:17:01 +09:00
Hajime Hoshi
95485441f4 ui: Remove dataset attributes 2016-03-25 01:15:47 +09:00
Hajime Hoshi
fb3bf4e3b4 ui: Add CurrentUI() 2016-03-25 00:38:30 +09:00
Hajime Hoshi
6ac6b8e7c0 input: Make functions goroutine-safe (#192) 2016-03-24 23:51:20 +09:00
Hajime Hoshi
6efead974f ui: Rename ActualScale -> ActualScreenScale 2016-03-23 01:14:28 +09:00
Hajime Hoshi
62dffe5405 Add ebiten.ScreenScale() (#191) 2016-03-23 00:44:16 +09:00
Hajime Hoshi
2157061479 ui: Use actualScale to calc minimum window size 2016-03-22 12:01:53 +09:00
Hajime Hoshi
993a55abde ui: Set window width limitation for Windows (#165) 2016-03-22 11:56:40 +09:00
Hajime Hoshi
8f15978c83 ui: Bug fix: Quit soon after the window is closed (#185) 2016-03-15 00:32:06 +09:00
Hajime Hoshi
b1f856a0e0 Add FPS const 2016-03-13 04:57:31 +09:00
Hajime Hoshi
3588d0b485 ui: Move vsync to ui.SwapBuffers on JavaScript version 2016-02-28 03:49:57 +09:00
Hajime Hoshi
fc200ec6f2 ui: Bug fix: The default framebuffer must be bound before swapping buffers 2016-02-28 00:56:39 +09:00
Hajime Hoshi
05eaec6dd9 ui: Bug fix: scale for cursor was wrong (#166) 2016-02-27 17:04:35 +09:00
Hajime Hoshi
7617a225f6 ui: deviceScaleFactor -> deviceScale 2016-02-27 02:17:31 +09:00
Hajime Hoshi
651d803107 ui: Change how to calc framebuffer scale 2016-02-27 01:53:02 +09:00
Hajime Hoshi
8069c980c3 ui: Refactoring: Add ui.ActualScale() 2016-02-27 01:44:01 +09:00
Hajime Hoshi
138a689382 ui: Refactoring 2016-02-27 01:35:14 +09:00
Hajime Hoshi
e2cf288ed7 ui: Bug fix: Wrong framebuffer scale 2016-02-26 03:50:00 +09:00
Hajime Hoshi
c97cae9598 ui: Remove println :-( 2016-02-26 03:45:52 +09:00
Hajime Hoshi
868eef0c2f ui: Bug fix: Consider that (frame buffer width) / (window width) can be more than 1 (#164) 2016-02-26 03:44:37 +09:00
Hajime Hoshi
fc7be5be3c ui: Bug fix: monitor's size might be 0 e.g. on Linux VM 2016-02-26 03:14:51 +09:00
Hajime Hoshi
4d53cf20da ui: Calculate DPI and set the actual scale based on DPI 2016-02-26 03:09:23 +09:00
Hajime Hoshi
922f392544 ui: Bug fix: Call glFinish before glfwSwapBuffers to make sure all OpenGL tasks are executed (#161) 2016-02-24 22:57:19 +09:00
Hajime Hoshi
ffb8a78e37 ui: Error prefix 2016-02-23 03:27:06 +09:00
Hajime Hoshi
59adc6979a ui: Bug fix: Adjust scaling factor on Linux (#157) 2016-02-23 01:41:57 +09:00
Hajime Hoshi
9e161864f6 ui: Bug fix: Make sure current framebuffers rendered (#158) 2016-02-22 03:14:31 +09:00
Hajime Hoshi
18a798f85c ui: Refactoring 2016-02-22 01:30:33 +09:00
Hajime Hoshi
0a07d8531b ui: Bug fix: SetPos should be called after Show at least on Linux 2016-02-21 23:11:39 +09:00
Hajime Hoshi
6e98e0716d ui: SwapBuffer is now done on the rendering context thread 2016-02-21 22:20:33 +09:00
Hajime Hoshi
bb39766873 ui: Bug fix: gl* method should be called after looping starts 2016-02-21 21:53:48 +09:00
Hajime Hoshi
60a504543f ui: Add OpenGL version 2016-02-21 17:27:26 +09:00
Hajime Hoshi
6c14c31c55 ui: Remove an unneeded prefix 2016-02-21 17:12:00 +09:00
Hajime Hoshi
591d71b447 ui: Bug fix: Init should always return a opengl context 2016-02-21 04:56:27 +09:00
Hajime Hoshi
46c74ec818 ui: Bug fix: compile error (a return value is required) 2016-02-21 02:19:40 +09:00
Hajime Hoshi
a4092a1bf1 ui: Bug fix: compile error 2016-02-21 02:15:14 +09:00
Hajime Hoshi
408444842a Refactoring: ui.Init now returns gl.Context object 2016-02-20 20:08:53 +09:00
Hajime Hoshi
63f2c3cb9f graphics: Refactoring: remove ExecOnUIThread 2016-02-20 04:39:43 +09:00
Hajime Hoshi
5cfefaf1a2 graphics: Refactoring: remove ui goroutines 2016-02-20 04:08:06 +09:00
Hajime Hoshi
269d94b145 graphics: Add worker consumer 2016-02-19 11:43:16 +09:00
Hajime Hoshi
5687d9d0ef go generate 2016-02-11 03:53:36 +09:00
Hajime Hoshi
ccf7b0c159 Revert an unreasonable change at 633ee409 2016-02-06 15:54:29 +09:00
Hajime Hoshi
633ee4096e #132 Temporal hack to run with Go1.5 2015-07-22 23:28:15 +09:00
Hajime Hoshi
e3608d08eb Use GL 2.1 (for Windows) 2015-06-21 01:33:28 +09:00
Hajime Hoshi
4b9c740ee8 Update the version of GLFW to 3.1 2015-06-20 18:52:17 +09:00
Hajime Hoshi
2b8e98cfbc js: Revert 60 FPS from 30 FPS 2015-06-14 03:50:43 +09:00
Hajime Hoshi
82ea3fa020 #125: Fix import paths (Use go-gl/gl and go-gl/glfw instead of go-gl/glow and go-gl/glfw3 2015-04-13 00:49:30 +09:00
Hajime Hoshi
bca600a093 Update for the latest GopherJS (use *js.Object instead of js.Object) 2015-03-01 01:26:16 +09:00
Hajime Hoshi
246ac055bf ui: Frame skip on JS 2015-02-21 22:19:26 +09:00
Hajime Hoshi
936942a28d Add comments 2015-02-20 02:01:56 +09:00
Hajime Hoshi
8c2301e542 Fix misspelling 2015-02-16 02:49:17 +09:00
Hajime Hoshi
ba3feaf52f ui: More precise clock 2015-02-15 19:30:29 +09:00
Hajime Hoshi
c5fc7ea0ab ui: More precise space calc 2015-02-14 23:23:11 +09:00
Hajime Hoshi
beecf31937 Resolve some TODOs 2015-02-10 10:44:58 +09:00