Hajime Hoshi
8c8e512059
affine: User nillable pattern for ColorM
2018-02-28 02:14:06 +09:00
Hajime Hoshi
bea63946fc
affine: Bug fix: ColorM.Apply was wrong when alpha is 0
2018-02-27 12:16:16 +09:00
Hajime Hoshi
adbd0db765
restorable: Accept source rect and geom instead of vertices
2018-02-27 01:35:30 +09:00
Hajime Hoshi
2bd099014b
affine: Remove geoMImpl and use nillable pattern
2018-02-27 01:02:53 +09:00
Hajime Hoshi
f953afc518
internal/bsp: Refactoring
2018-02-26 11:26:32 +09:00
Hajime Hoshi
798a826e50
internal/bsp: Allow 1 pixel
2018-02-26 11:21:50 +09:00
Hajime Hoshi
ed2bd6defc
internal/bsp: Fix algorithm
2018-02-26 11:20:20 +09:00
Hajime Hoshi
519a75e5a8
restorable: Bug fix: Clearing framebuffers was not complete
2018-02-25 23:53:27 +09:00
Hajime Hoshi
86671f3337
opengl: Remove pixels argument from NewTexture
2018-02-25 23:34:34 +09:00
Hajime Hoshi
85b133dad0
graphics: Remove NewImageFromImage command
2018-02-25 23:22:49 +09:00
Hajime Hoshi
9adc1ac6a0
Revert "graphics: Refactoring: clearing framebuffer"
...
This reverts commit 58f5c9c1d0
.
Fixes #515
2018-02-25 22:04:04 +09:00
Hajime Hoshi
b88b86e0e7
Add internal/bsp ( #514 )
2018-02-25 21:26:12 +09:00
Hajime Hoshi
0cc456b534
ui: Rename sizeChanged -> toChangeSize
2018-02-25 00:44:45 +09:00
Hajime Hoshi
04341a014c
ui: Add comments
2018-02-25 00:44:41 +09:00
Hajime Hoshi
58f5c9c1d0
graphics: Refactoring: clearing framebuffer
2018-02-24 23:51:05 +09:00
Hajime Hoshi
a2d40e0908
graphics: Remove offsetX/offsetY from framebuffer
2018-02-24 23:35:55 +09:00
Hajime Hoshi
c5d1f11d95
graphics: Remove unused argument from projectionMatrix
2018-02-24 23:33:28 +09:00
Hajime Hoshi
9da5099060
graphics: Refactoring: Flip Y by geometry matrix instead of projection matrix
2018-02-24 23:32:36 +09:00
Hajime Hoshi
a644e92298
restorable: Better calculation to clear restorable.Image
2018-02-24 21:16:30 +09:00
Hajime Hoshi
da20b3f49a
restorable: Bug fix: Clear screen framebuffer on fullscreen mode
...
Fixes #513
2018-02-24 20:48:47 +09:00
Hajime Hoshi
692f36f664
graphics: Add comments
2018-02-24 20:40:26 +09:00
Hajime Hoshi
78a58fd1ae
ui: Bug fix: userInterface.fullscreen() must be called from the main thread
2018-02-24 18:10:39 +09:00
Hajime Hoshi
b58dc26832
graphics: Remove fillCommand
2018-02-24 16:19:43 +09:00
Hajime Hoshi
fe7aae32a0
restorable: Remove graphics.Image.Fill usage
2018-02-24 16:18:18 +09:00
Hajime Hoshi
2ba89591db
restorable: Remove Fill
2018-02-24 15:14:53 +09:00
Hajime Hoshi
a87f197c1b
ui: Add TODO
2018-02-24 14:50:45 +09:00
Hajime Hoshi
af64f8689a
graphics: Fix screen filter calculation
2018-02-24 04:25:07 +09:00
Hajime Hoshi
9fba60ca03
Revert "graphics: Adjust texel positions for consitency"
...
This reverts commit 816fb314a4
.
2018-02-24 01:52:49 +09:00
Hajime Hoshi
816fb314a4
graphics: Adjust texel positions for consitency
...
On second thought, given pixel coords represent a center of texels...
2018-02-24 01:52:05 +09:00
Hajime Hoshi
7c66d884d4
graphics: Adjusting position is no longer needed
...
Now pixel position is treated as left-upper in linear filter
2018-02-24 01:32:48 +09:00
Hajime Hoshi
e5a2cf29c0
graphics: Bug fix: pixel coord is upper-left by default
2018-02-24 01:16:32 +09:00
Hajime Hoshi
c76ff5ceb2
graphics: Bug fix: fix screen filter calculation
...
Fixes #512
2018-02-23 23:13:20 +09:00
Hajime Hoshi
2507379494
restorable: Skip resolving stale images when possible
2018-02-23 03:19:20 +09:00
Hajime Hoshi
b036cac616
graphics: Fix screen filter calculation
2018-02-23 02:36:12 +09:00
Hajime Hoshi
591e0ad995
graphics: Add 'screen' filter for fast rendering ( #509 )
2018-02-23 01:28:35 +09:00
Hajime Hoshi
092cb2f3f6
graphics: Reset source size parameter just in case
2018-02-22 11:27:15 +09:00
Hajime Hoshi
d4b8b99784
ui: Bug fix: return is needed for Edge case
...
Fixes #507
2018-02-21 21:53:49 +09:00
Hajime Hoshi
30e48d5c3c
graphics: Stop unnecessary copy of elements (projection matrix)
2018-02-20 01:36:56 +09:00
Hajime Hoshi
40b1948baa
graphics: Stop unnecessary copy of elements
2018-02-20 01:17:21 +09:00
Hajime Hoshi
f1f7e5bcec
affine: Transpose ColorM implementation for optimization
2018-02-20 00:53:53 +09:00
Hajime Hoshi
9b361086d7
affine: Use float32 inside of ColorM
2018-02-20 00:33:56 +09:00
Hajime Hoshi
2db1753503
opengl: Remove struct usages to avoid copying (texture)
2018-02-19 02:49:00 +09:00
Hajime Hoshi
f85c846596
opengl: Remove invalidFramebuffer and use nil instead
2018-02-19 02:22:05 +09:00
Hajime Hoshi
1154fcf470
opengl: Remove unused casts
2018-02-19 02:20:28 +09:00
Hajime Hoshi
2936ea5080
opengl: Remove struct usages to avoid copying (framebuffer)
2018-02-19 02:18:56 +09:00
Hajime Hoshi
9400720ddf
opengl: Remove struct usages to avoid copying (shader)
2018-02-19 02:06:06 +09:00
Hajime Hoshi
9dc68289b8
opengl: Remove struct usages to avoid copying (buffer)
2018-02-19 02:03:01 +09:00
Hajime Hoshi
c6cf8e5184
opengl: Remove struct usages to avoid copying (program)
2018-02-19 01:45:03 +09:00
Hajime Hoshi
2fbfd0bdcb
opengl: Remove struct usages to avoid copying
2018-02-19 01:38:17 +09:00
Hajime Hoshi
896a47b2ee
affine: Reduce copying cost of GeoM
2018-02-18 23:39:24 +09:00
Hajime Hoshi
6ef4bbde2d
graphics: Add FilterDefault; Make DrawImageOptions specify Filter ( #453 )
2018-02-14 02:59:44 +09:00
Hajime Hoshi
929dfa1cfb
affine: Implement ColorM.Add for backward compatibility: Don't use this anyway
2018-02-13 03:06:19 +09:00
Hajime Hoshi
cc423c276d
ui: Avoid creating empty slice at Touches
2018-02-12 20:23:24 +09:00
Hajime Hoshi
7d9b901ab3
ui: Avoid creating empty slice at GamepadIDs
2018-02-12 20:20:39 +09:00
Hajime Hoshi
95480d0644
affine: Separate ColorM impl into two slices
...
This fix avoids unnecessary allocating arrays.
2018-02-12 19:01:01 +09:00
Hajime Hoshi
392ee92aeb
Add internal/hooks to replace internal/audiobinding
2018-02-04 17:33:17 +09:00
Hajime Hoshi
e3023889ac
ui: Change RegularTermination to a value
2018-02-04 00:22:38 +09:00
Hajime Hoshi
24d7487fc7
graphics: Bug fix: TestImageTooManyFill didin't pass on some machines (reland)
...
Fixes #492
2018-02-03 23:03:18 +09:00
Hajime Hoshi
9ece27e7e8
Revert "graphics: Bug fix: TestImageTooManyFill didin't pass on some machines"
...
This reverts commit 7cb7b7b4ff
.
2018-02-03 20:39:33 +09:00
Hajime Hoshi
7cb7b7b4ff
graphics: Bug fix: TestImageTooManyFill didin't pass on some machines
...
Fixes #492
2018-02-03 20:36:16 +09:00
Hajime Hoshi
595e654123
graphics: Bug fix: pixels read from GPU might include errors ( #492 )
2018-02-03 16:43:42 +09:00
Hajime Hoshi
65b71ad79d
restorabel: uint8 -> byte
2018-02-03 16:36:43 +09:00
Hajime Hoshi
4bbb4b0445
graphics: Remove unneeded comments ( #491 )
2018-02-03 03:32:03 +09:00
Hajime Hoshi
52350c1b1b
graphics: Bug fix: TestImageEdge failed on MacBook Pro ( #491 )
2018-02-03 03:30:09 +09:00
Hajime Hoshi
beaa060ce3
graphics: Adjust texel values that can be exactly on the edges of the source rect ( #491 )
2018-02-03 02:07:46 +09:00
Hajime Hoshi
8b2ed6cddd
ui: Update GraphicsContext every frame ( #490 )
2018-02-02 02:08:03 +09:00
Hajime Hoshi
80596820cf
graphics: Replace []uint8 with []byte
2018-01-28 22:40:36 +09:00
seebs
0b7ba8e573
Do GeoM projection on CPU ( #477 )
...
Handling GeoM projection on CPU may seem like a weird choice, given
how fast GPU is, but it pays off:
* You only have to do a very small subset of the actual matrix
multiply.
* You don't have to construct a matrix in the vertex shader.
* Six fewer float32 values per vertex.
* You do still have to do the matrix computation for each vertex,
though.
Signed-off-by: Seebs <seebs@seebs.net>
2018-01-14 16:01:55 +09:00
Hajime Hoshi
38c72faf95
ui: Deprecate SetCursorVisibility and add SetCursorVisible ( #407 )
2018-01-09 02:01:33 +09:00
Hajime Hoshi
d8c0d88960
clock: Add comments
2018-01-07 21:12:25 +09:00
Hajime Hoshi
1e33cbb66f
clock: Remove limitation of the number of frames to be updated
2018-01-07 20:20:02 +09:00
Hajime Hoshi
d5d5ebb0b3
clock: Make ProceedAudioTimer take a number of frames
2018-01-07 18:32:19 +09:00
Hajime Hoshi
d12a3d4073
clock: Refactoring
2018-01-07 17:10:56 +09:00
Hajime Hoshi
0a911b28b2
ui: Remove unneeded variable deviceScale
2018-01-07 14:51:25 +09:00
Hajime Hoshi
34d2e9a3fb
ui: Remove unused function
2018-01-07 05:25:29 +09:00
Hajime Hoshi
0469ef386b
ui: Fix comment
2018-01-06 23:53:35 +09:00
Hajime Hoshi
4bcb2e5682
devicescale: Rename XFCE -> Xfce
2018-01-04 17:16:02 +09:00
Hajime Hoshi
ee87a0fd71
devicescale: Add other desktops
2018-01-04 03:29:58 +09:00
Hajime Hoshi
75f5cbd45a
devicescale: Rename windowManager -> desktop
2018-01-04 03:22:30 +09:00
Hajime Hoshi
60993fe3ea
devicescale: Rename files
2018-01-04 03:19:19 +09:00
Hajime Hoshi
738d23cf51
devicescale: Bug fix: need to parse XDG_CURRENT_DESKTOP for GNOME classic
2018-01-04 00:55:53 +09:00
Hajime Hoshi
70f9fee8af
devicescale: Detect window manager
2018-01-04 00:01:41 +09:00
Hajime Hoshi
eac5564342
devicescale: Fix scaling on UNIX
2018-01-03 23:38:47 +09:00
Hajime Hoshi
9ec0785203
Rename files _xwindow.go to _unix.go
2018-01-03 23:38:47 +09:00
Hajime Hoshi
edaaa178b8
devicescale: Implement scaling for Gnome and Cinnamon ( #344 )
2018-01-03 23:36:33 +09:00
Hajime Hoshi
a64367f906
ui: Refactoring: remove an unneeded member
2018-01-03 17:35:34 +09:00
Hajime Hoshi
5a17497723
devicescale: Make DeviceScale concurrent-safe
2018-01-03 16:52:26 +09:00
Hajime Hoshi
0f450fb1e2
devicescale: Use NewLazyDLL on Windows
2018-01-03 16:24:53 +09:00
Hajime Hoshi
7b759faf36
devicescale: Bug fix: SetProcessDPIAware needs to be called
2018-01-03 15:43:56 +09:00
Hajime Hoshi
c82809867d
Add internal/devicescale
2018-01-03 05:22:56 +09:00
Hajime Hoshi
9578307d7b
ui: Organize members
2018-01-03 00:23:18 +09:00
Hajime Hoshi
9478801076
ui: Implement SetScreenSize/Scale for mobiles
...
Fixes #250
2017-12-31 21:01:48 +09:00
Hajime Hoshi
5d4c4f1283
graphics: Bug fix: Don't delete the screen framebuffer (iOS)
2017-12-31 20:55:04 +09:00
Hajime Hoshi
473aeaa8b1
ui: Remove unneeded early return
2017-12-31 18:37:04 +09:00
Hajime Hoshi
c636dec721
graphics: Remove glFlush() for performance
2017-12-21 03:19:28 +09:00
Hajime Hoshi
e13bb0769b
graphics: Add 'not-reached' clause
2017-12-21 00:57:36 +09:00
Hajime Hoshi
0a99103bc1
graphics: Call roundTexel only on linear filter ( #461 )
2017-12-21 00:38:22 +09:00
Hajime Hoshi
8e72906f3d
graphics: Separate GLSL programs for filters ( #461 )
2017-12-21 00:33:08 +09:00
Hajime Hoshi
f072e8f1c5
graphics: Optimize GLSL
2017-12-18 03:10:04 +09:00
Hajime Hoshi
9471e3e4e7
web: Bug fix: Expose IsAndroidChrome
2017-12-17 01:22:22 +09:00
Hajime Hoshi
44dc9f6220
graphics: Optimize fragment shader
2017-12-16 18:35:45 +09:00
Hajime Hoshi
6eb148b9a1
graphics: Fragment shader optimization ( #461 )
2017-12-16 05:05:21 +09:00
Hajime Hoshi
078d107c24
graphics: Bug fix: vertex position should be highp
2017-12-16 03:30:52 +09:00
Hajime Hoshi
d45a975e3d
graphics: Remove one unnecessary check from fragment shader ( #461 )
2017-12-16 01:42:36 +09:00
Hajime Hoshi
d6878d6887
graphics: Remove one bound check from fragment shader ( #461 )
2017-12-16 01:33:35 +09:00
Hajime Hoshi
98532d8983
graphics: Add TestImageOutside
2017-12-14 00:25:35 +09:00
Hajime Hoshi
704d4cf464
graphics: texel should be represented as highp for precision
...
Fixes #460
2017-12-13 23:45:05 +09:00
Hajime Hoshi
aea2e491c3
graphics: Temporary hack for mobile browers
...
roundTexel doesn't work well on moible browsers
2017-12-12 03:27:56 +09:00
Hajime Hoshi
723d153800
Reland(2): graphics: Appropriate rendering of edges on linear filter
2017-12-12 00:03:01 +09:00
Hajime Hoshi
362d1c417f
Revert 'graphics: Appropriate rendering of edges on linear filter (Reland)' ( #458 )
2017-12-11 20:30:54 +09:00
Hajime Hoshi
7b74a8f29f
graphics: Improve roundTexel implementation
2017-12-07 03:24:46 +09:00
Hajime Hoshi
1152439e65
graphics: Appropriate rendering of edges on linear filter (Reland)
...
Fixes #456
2017-12-07 02:26:16 +09:00
Hajime Hoshi
8091aa5190
Revert 'graphics: Appropriate rendering of edges on linear filter' #456
2017-12-06 23:40:29 +09:00
Hajime Hoshi
bc0432f310
graphics: Appropriate rendering of edges on linear filter
...
Fixes #315
2017-12-06 21:40:24 +09:00
Hajime Hoshi
264ca49a43
graphics: Bug fix: revert viewport size for Edge
2017-12-05 03:13:40 +09:00
Hajime Hoshi
f74c1e67ea
graphics: Use power-of-2 size for the default framebuffer
2017-12-05 02:33:04 +09:00
Hajime Hoshi
eeea25f202
opengl: Remove 'normalize' argument from VertexAttribPointer
2017-12-03 19:21:59 +09:00
Hajime Hoshi
2e1e4adb84
graphics: Fix some variables in GLSL
2017-12-03 19:07:12 +09:00
Hajime Hoshi
71ca838193
opengl: Refactoring
2017-12-03 03:55:59 +09:00
Hajime Hoshi
847ba9de0c
graphics: Refactoring: Move adjustment logic for glClearColor to opengl package
2017-12-03 03:51:42 +09:00
Hajime Hoshi
8e7e960b56
graphics: Limit source-rectangle range
...
Remove texture adjustment introduced due to #317
2017-12-02 23:13:44 +09:00
Hajime Hoshi
c2fab6cca3
graphics: Bug fix: glClear doesn't treat 0 or 1 correctly
...
Fixes #452
2017-12-02 22:25:02 +09:00
Hajime Hoshi
4a5420d6f2
opengl: Remove Node.js support ( #141 )
2017-12-02 16:46:55 +09:00
Hajime Hoshi
0379e3c591
audio: Deprecate Update
2017-12-01 00:26:28 +09:00
Hajime Hoshi
362f002d36
ui: Delete local variables asap on Android
2017-11-13 01:30:08 +09:00
Hajime Hoshi
cea9bd5a19
input: Bug fix: runeBuffer should be reset on each frame
2017-11-10 01:21:15 +09:00
Hajime Hoshi
4b83a060fe
ui: Add more keys not for charCode
2017-11-10 00:46:37 +09:00
Hajime Hoshi
fb8bef99c3
ui: Bug fix: key event on Edge browser
2017-11-10 00:39:46 +09:00
Hajime Hoshi
37ca48dc38
ui: Rename functions from Safari to Edge
2017-11-10 00:35:46 +09:00
Hajime Hoshi
0c0cd7e9d6
ui: Bug fix: call preventDefault for arrow keys
...
Fixes #450
2017-11-10 00:32:47 +09:00
Hajime Hoshi
ededc5874b
ui: Bug fix: Scale was wrong when magnifier is enabled
...
Fixes #244
2017-11-09 02:06:35 +09:00
Hajime Hoshi
7bcc9ee79f
ui: Add GamepadIDs and remove IsGamepadPresent ( #447 )
2017-10-26 23:59:09 +09:00
Hajime Hoshi
600baf2cc7
ui: Add IsGamepadPresent
...
Fixes #447
2017-10-26 02:59:33 +09:00
Hajime Hoshi
05e220e105
ui: Allow smaller window width ( #444 )
2017-10-20 03:25:21 +09:00
Hajime Hoshi
414170b138
ui: Refactoring
2017-10-20 02:50:39 +09:00
Hajime Hoshi
6ae67fc6dd
graphics: Add ColorM.Apply ( #432 )
2017-10-14 23:58:09 +09:00
Hajime Hoshi
9399622127
graphics: Bug fix: Don't adjust texels on iOS Safari
2017-10-03 02:34:16 +09:00
Hajime Hoshi
a7fc463d91
doc: Improve comments
2017-10-01 03:15:50 +09:00
Hajime Hoshi
d455b9b8bb
opengl: SetViewport no longer returns error
2017-09-25 00:17:20 +09:00
Hajime Hoshi
b590005c7a
opengl: BindFramebuffer no longer returns error
2017-09-25 00:14:25 +09:00
Hajime Hoshi
ade56f8176
opengl: BindTexture no longer returns error
2017-09-25 00:11:19 +09:00
Hajime Hoshi
37d8bd312a
graphics: Refactoring
2017-09-25 00:06:45 +09:00
Hajime Hoshi
8fbe423125
graphics: Delete programs explicitly and add comments
2017-09-24 23:41:37 +09:00
Hajime Hoshi
e5ca84013c
graphics: Bug fix: Delete buffer when necessary
2017-09-24 23:20:26 +09:00
Hajime Hoshi
ecc9d0b3b1
graphics: Add comments
2017-09-24 22:56:50 +09:00
Hajime Hoshi
2884e92041
jni: Add more comment
2017-09-24 04:52:32 +09:00
Hajime Hoshi
ed09dddf09
jni: Add comment
2017-09-24 02:54:35 +09:00
Hajime Hoshi
835d199f02
ui: Rename SetIcon to SetWindowIcon ( #386 )
2017-09-23 17:40:09 +09:00
Hajime Hoshi
dacda0d176
ui: Add SetIcon ( #386 )
2017-09-23 04:28:57 +09:00
Hajime Hoshi
ceceed951f
graphics: Add comments
2017-09-22 02:49:37 +09:00
Hajime Hoshi
6145ecee74
graphics: Misspelling
2017-09-21 23:33:27 +09:00
Hajime Hoshi
b47e564762
graphics: Add comments
2017-09-20 01:35:56 +09:00
Hajime Hoshi
0831fd2a0d
graphics: Add comments
2017-09-19 01:37:24 +09:00
Hajime Hoshi
2a9873a4bb
affine: Add GeoM.Apply ( #432 )
2017-09-16 17:19:45 +09:00
Hajime Hoshi
fc125eb531
graphics: Add comments
2017-09-16 15:49:29 +09:00
Hajime Hoshi
803aa77c20
affine: Refactoring
2017-09-16 15:49:12 +09:00
Hajime Hoshi
05d91eac09
restorable: Fix misspelling
2017-09-15 03:13:36 +09:00
Hajime Hoshi
f16b5d9c10
restorable: Rename variables
2017-09-15 01:14:09 +09:00
Hajime Hoshi
ccddf3c4ac
restorable: Refactoring: Remove arguments from NewImageFromImage
2017-09-15 00:51:17 +09:00
Hajime Hoshi
ca4a2d8209
restorable: Bug fix: Fix tests
2017-09-15 00:49:07 +09:00
Hajime Hoshi
2881d3fc4c
restorable: Add comments
2017-09-15 00:39:49 +09:00
Hajime Hoshi
80940f9070
restorable: Add comments
2017-09-15 00:24:18 +09:00
Hajime Hoshi
b51d93a707
restorable: Add comments
2017-09-12 03:14:13 +09:00
Hajime Hoshi
72c02fc398
graphics: Bug fix: viewport size must be within the framebuffer size
...
This fixes #71 and #420
2017-09-09 19:33:51 +09:00
Hajime Hoshi
0dcba7844b
ui: Bug fix: SetScreenSize didn't work on browsers
...
This fixes #427
2017-09-07 11:58:04 +09:00
Hajime Hoshi
d30f8a2bbf
graphics: Fix viewport sizes for Edge ( #71 )
2017-09-07 03:08:22 +09:00
Hajime Hoshi
da48712cf3
web: Add IsEdgeBrowser
2017-09-07 02:47:27 +09:00
Hajime Hoshi
2d5b062c3c
opengl: Refactoring: Replace NewBuffer with new funcs
...
Replace NewBuffer with NewArrayBuffer and NewElementArrayBuffer
2017-09-01 01:30:09 +09:00
1l0
5d2393c3c1
glfw: Add StickyModes to window.InputMode ( resolve #314 #399 ) ( #423 )
2017-08-28 23:29:19 +09:00
Hajime Hoshi
99d170b454
ui: Remove isSafari that is not used anywhere
2017-08-27 02:14:23 +09:00
Hajime Hoshi
b05455a2a6
clock: Fix comments
2017-08-24 02:30:43 +09:00
Hajime Hoshi
12c24215b1
graphics: Bug fix: Flush after filling ( #419 )
2017-08-24 00:11:08 +09:00
Hajime Hoshi
bb6dfeefd4
ui: Add comments on Touches
2017-08-22 00:58:38 +09:00
Jake
0d703ca3d4
InputChars ( #403 )
...
This implements #400
2017-08-15 04:11:51 +09:00
Hajime Hoshi
5f538bff82
ui: Bug fix: initCursorVisible must be true by default
2017-08-12 18:32:51 +09:00
Hajime Hoshi
783e57d3f2
ui: Remove 'fullscreen' member variable
2017-08-12 18:31:16 +09:00
Hajime Hoshi
b186bc1e94
ui: Add IsCursorVisible ( #377 )
2017-08-12 15:45:16 +09:00
Hajime Hoshi
9ab517cf82
restorable: Refactoring
2017-08-07 00:06:35 +09:00
Hajime Hoshi
1fb7e123c2
Remove dependencies on internal/graphics from ebiten
2017-08-06 21:34:24 +09:00
Hajime Hoshi
c0ecb7a386
graphics: Move CopyImage to restorable
2017-08-06 21:21:38 +09:00
Hajime Hoshi
631264fce1
Add 'internal/math' package
2017-08-06 20:05:14 +09:00
Hajime Hoshi
14737df60f
loop: Remove package loop
2017-08-06 02:17:26 +09:00
Hajime Hoshi
0913adc1e2
loop: Remove Update
2017-08-06 02:15:27 +09:00
Hajime Hoshi
d1cbfdeec7
clock: Move now() from loop to clock
2017-08-06 02:12:23 +09:00
Hajime Hoshi
f0f115b612
clock: Move FPS calculation from loop to clock
2017-08-06 02:09:33 +09:00
Hajime Hoshi
b1d12f08f8
loop: Remove unneeded member variables
2017-08-06 01:49:20 +09:00
Hajime Hoshi
95a061df7f
loop: Remove dependency from audio to loop
2017-08-06 01:43:09 +09:00
Hajime Hoshi
2e7a477f9d
clock: Refactoring
2017-08-06 01:28:14 +09:00
Hajime Hoshi
e98475cf9d
clock: Reduce a variable
2017-08-06 00:29:06 +09:00
Hajime Hoshi
1ea6bb2b6a
clock: Fix comments
2017-08-06 00:27:45 +09:00
Hajime Hoshi
b7d559fdf3
clock: Refactoring: Move frames calculation to clock
2017-08-06 00:18:38 +09:00
Hajime Hoshi
288a7ede8d
loop: Bug fix: Revert audio-clock syncing
2017-08-05 23:49:11 +09:00
Hajime Hoshi
d99638d34c
loop: Bug fix: wrong updating |lastUpdated|
2017-08-05 23:31:10 +09:00
Hajime Hoshi
6f606c6bb1
loop: Bug fix: Don't use 'system timer clock' when audio clock is valid
2017-08-05 23:26:43 +09:00
Hajime Hoshi
a92f77c207
clock: Rename function names; loop: Rename variables
2017-08-05 22:25:21 +09:00
Hajime Hoshi
94843fbe73
loop: Move clock.FPS to loop.FPS to reduce dependencies
2017-08-05 22:08:58 +09:00
Hajime Hoshi
19760be346
loop: Refactoring
2017-08-05 22:07:03 +09:00
Hajime Hoshi
b85f5edee0
loop: Simplify logic
2017-08-05 21:24:04 +09:00
Hajime Hoshi
eef8289854
loop: Remove dependency on ui
2017-08-05 20:43:49 +09:00
Hajime Hoshi
56a17a7f79
loop: Reduce defer for performance and readability
2017-08-05 20:19:17 +09:00
Hajime Hoshi
9f98ccc611
loop: Rename UpdateAndDraw -> Update
2017-08-05 20:14:49 +09:00
Hajime Hoshi
f0d47312c4
ui: Add IsRunnableInBackground / SetRunnableInBackground ( #272 )
2017-08-03 03:21:51 +09:00
Hajime Hoshi
bb5036b3e1
ui: Refactoring
2017-08-03 01:07:04 +09:00
Hajime Hoshi
1021521591
ui: initFullscreen should always be protected by lock
2017-08-03 00:19:04 +09:00
Hajime Hoshi
434d5bb00b
ui: Bug fix: SetFullscreen / IsFullscreen should be concurrent safe; IsFullscreen should return the correct value even before Run
2017-08-02 23:48:08 +09:00
Hajime Hoshi
807d03eb3b
ui: Delay initialize until Run ( #397 )
2017-07-30 20:26:40 +09:00
Hajime Hoshi
ee98148b54
graphics: Use default precisions in the fragment shader
2017-07-29 04:08:03 +09:00
Hajime Hoshi
84a7787ac9
graphics: No need to specify precision on vertex shaders (highp is default)
2017-07-29 02:57:56 +09:00
Hajime Hoshi
d46d9ac7c2
opengl: Remove GlslHighpSupported
2017-07-24 22:59:25 +09:00
Hajime Hoshi
85d39699d3
graphics: Bug fix: Need to specify default precisions ( #390 )
2017-07-24 21:56:40 +09:00
Hajime Hoshi
3bfb5054af
Fix misspelling
2017-07-23 22:50:18 +09:00
Hajime Hoshi
5ae03494f2
ui: Resize canvas size when the window is resized ( #387 )
2017-07-22 02:04:15 +09:00
Hajime Hoshi
63e3bc73d6
ui: Implement fullscreen for browsers ( #387 )
2017-07-22 01:52:08 +09:00
Hajime Hoshi
717efd097d
loop: Bug fix: the clock needs to be stopped when the window is unfocused
2017-07-16 23:54:14 +09:00
Hajime Hoshi
f591ca3d2b
ui: Bug fix: SetFullscreen didn't work without Run
2017-07-15 21:43:33 +09:00
Hajime Hoshi
c94c994bd1
ui: Allow SetFullscreen without Run
2017-07-15 20:29:13 +09:00
Hajime Hoshi
59110ba5ec
clock: Refactoring: Use clock.FPS everywhere
2017-07-14 03:19:50 +09:00
Hajime Hoshi
3d8fc790b6
loop: Remove dependency on audio
2017-07-14 01:42:58 +09:00
Hajime Hoshi
5d1d0844e1
Add internal/clock
2017-07-14 00:34:05 +09:00
Hajime Hoshi
fe3f0b2f1f
loop: Better syncing with audio
2017-07-14 00:03:59 +09:00
Hajime Hoshi
0de9828e20
loop: Fix FPS calculation
2017-07-13 23:48:06 +09:00
Hajime Hoshi
c3202b8e58
audio: Adjust the buffer size
2017-07-13 23:48:03 +09:00
Hajime Hoshi
15f5d2a2cc
loop: More stable FPS
2017-07-13 01:34:02 +09:00
Hajime Hoshi
40ae782a67
loop: Early exit when no frame needs to be updated
2017-07-13 01:34:02 +09:00
Hajime Hoshi
fdaf03b209
audio: Make the game loop depend on the audio clock
2017-07-13 01:33:59 +09:00
Hajime Hoshi
26a83c0e00
opengl: Define Texture/Framebuffer Equals for JS performance
2017-07-02 22:18:49 +09:00
Hajime Hoshi
3a3a4af035
graphics: Avoid type assertions for Fill
2017-07-02 21:32:07 +09:00
Hajime Hoshi
364819f361
restorable: Disable restoring on desktops and mobile browsers ( #380 )
2017-07-02 15:58:00 +09:00
Hajime Hoshi
e582a661c9
ui: Bug fix: Should add <meta> to <head> instead of <body>
2017-07-02 04:18:43 +09:00
Hajime Hoshi
d6466fdcaf
ui: Bug fix: initial scale must be 1 for proper scaling
2017-07-02 04:08:25 +09:00
Hajime Hoshi
565a28ff04
restorable: Merge draw image history items if possible ( #379 )
2017-07-02 02:21:23 +09:00
Hajime Hoshi
979836d0f5
restorable: Refactoring: move and rename a const
2017-07-02 01:41:07 +09:00
Hajime Hoshi
d7b7aac6e4
ui: Fix wrong comment
2017-07-01 13:03:27 +09:00
Hajime Hoshi
7d236950c2
ui: Bug fix: SwapInterval needs to be called after SetMonitor ( #357 )
2017-07-01 12:41:16 +09:00
Hajime Hoshi
ba204c6d3b
ui: Adjust cursor positoin on fullscreen mode ( #374 )
2017-07-01 04:27:38 +09:00
Hajime Hoshi
c694851765
ui: Center the screen on fullscreen mode ( #374 )
2017-07-01 04:12:09 +09:00
Hajime Hoshi
3168af1db4
ui: Refactoring: refresh rate is ignored when no monitor is specified at SetMonitor
2017-06-30 23:20:53 +09:00
Hajime Hoshi
68fbf59720
ui: Refactoring
2017-06-30 11:07:19 +09:00
Hajime Hoshi
cefa86ce13
ui: Fullscreen scale can be recalculated during fullscreen mode
2017-06-30 10:54:13 +09:00
Hajime Hoshi
6336b59493
ui: Bug fix: original positions must not be updated during fullscreen mode ( #376 )
2017-06-30 10:48:18 +09:00
Hajime Hoshi
af8b5d72c3
ui: Bug fix: Fullscreen scale must be recalculated
2017-06-30 10:22:30 +09:00
Hajime Hoshi
76da09f74c
ui: Bug fix: Window title might lost on macOS ( #267 )
2017-06-30 02:14:14 +09:00
Hajime Hoshi
64ed7b93f6
ui: Bug fix: better restoring position ( #267 )
2017-06-30 02:11:54 +09:00
Hajime Hoshi
1d60c009ed
ui: Bug fix: fullscreen scale calculation was wrong ( #267 )
2017-06-30 02:08:12 +09:00
Hajime Hoshi
2996f778b6
ui: Bug fix: position was wrong when changing window size
2017-06-30 01:53:14 +09:00
Hajime Hoshi
5b6fa2d384
ui: Adjust cursor position on fullscreen ( #267 )
2017-06-30 01:39:26 +09:00
Hajime Hoshi
e7370d8a54
ui: Adjust fullscreen scale ( #267 )
2017-06-30 01:28:35 +09:00
Hajime Hoshi
5dbfafb200
ui: Reserve window position before entering fullscreen-mode ( #267 )
2017-06-30 01:28:03 +09:00
Hajime Hoshi
b569eb9c5a
ui: Add SetFullscreen / IsFullscreen ( #267 )
2017-06-30 01:28:00 +09:00
Hajime Hoshi
d0f086323b
ui: Use returning values
2017-06-30 00:37:24 +09:00
Hajime Hoshi
f7a8c7efa6
ui: Avoid recalc the scale factor
2017-06-05 00:06:40 +09:00
Hajime Hoshi
ad1f1263f7
restorable: Bug fix: wrong topological sort ( #359 )
2017-06-03 02:41:37 +09:00
Hajime Hoshi
2680884566
restorable: Test bug fix
2017-06-02 22:00:02 +09:00
Hajime Hoshi
eb66f5c569
restorable: Add tests for complex graph ( #357 )
2017-06-02 21:58:26 +09:00
Hajime Hoshi
f41541a254
restorable: Enable TestRestoreRecursive again
2017-06-02 02:15:32 +09:00
Hajime Hoshi
1d66ebc854
restorable: Bug fix: topological sort is required to restore images correctly ( #357 )
2017-06-01 10:44:28 +09:00
Hajime Hoshi
967e737760
restorable: Temporarily disable a failed test
2017-06-01 02:42:43 +09:00
Hajime Hoshi
82f102c422
restorable: Add TestRestoreRecursive ( #265 ) ( #357 )
2017-06-01 02:37:57 +09:00
Hajime Hoshi
baeadfb7fe
restorable: Add tests ( #265 ) ( #357 )
2017-06-01 01:27:56 +09:00
Hajime Hoshi
1d59938295
ui: Refactoring: Remove unneeded error handlings
2017-05-31 10:47:52 +09:00
Hajime Hoshi
7d181e3182
opengl: Hide OpenGL context usages into internal/graphics package
2017-05-31 02:18:04 +09:00
Hajime Hoshi
5a4a82ab50
restorable: Add TODO comments ( #357 )
2017-05-30 03:31:29 +09:00
Hajime Hoshi
d220e300ab
restorable: Fix doc
2017-05-30 02:06:45 +09:00
Hajime Hoshi
90ec2c79ce
opengl: Bug fix: return error when error occurs
2017-05-30 01:46:48 +09:00
Hajime Hoshi
a5f80c3716
restorable: VRAM -> GPU
2017-05-30 01:28:23 +09:00
Hajime Hoshi
6db96f5442
affine: Make GeoM.Rotate faster
2017-05-28 04:16:11 +09:00
Hajime Hoshi
dad427920d
affine: Add Reset function
2017-05-28 00:49:44 +09:00
Hajime Hoshi
e53262bfac
graphics: Replace copy with for-loop
2017-05-28 00:14:53 +09:00
Hajime Hoshi
a816c9c7fe
Reduce defer sentences for performance
2017-05-27 21:35:38 +09:00
Hajime Hoshi
1b1b996817
graphics: Avoid copying ColorM
2017-05-27 16:17:49 +09:00
Hajime Hoshi
1b72263ce1
sync: Add sync package
2017-05-27 02:37:01 +09:00
Hajime Hoshi
e1b5c992b4
graphics: Refactoring: remove unnecessary empty slices
2017-05-26 22:32:38 +09:00
Hajime Hoshi
6db994f0e8
graphics: Optimize GeoM
2017-05-24 00:57:57 +09:00
Hajime Hoshi
93cdfe107e
ui: Keep the device scale to avoid re-calculation
2017-05-14 04:21:20 +09:00
Hajime Hoshi
d6219e38d8
ui: Rename files
2017-05-13 19:50:40 +09:00
Hajime Hoshi
b409631515
Add FreeBSD support ( #352 )
2017-05-11 19:09:13 +09:00
Hajime Hoshi
951e5bccef
restorable: Remove Images()
2017-05-04 00:08:07 +09:00
Hajime Hoshi
8b48d010ed
restorable: Refactoring
2017-05-03 23:24:00 +09:00
Hajime Hoshi
bc105e7350
restorable: Unexport functions
2017-05-03 23:18:35 +09:00
Hajime Hoshi
aa5c278445
restorable: Unexport add
2017-05-03 23:15:18 +09:00
Hajime Hoshi
9f5cf48d24
restorable: Move Images to resotrable package
2017-05-03 23:11:43 +09:00
Hajime Hoshi
d94e9c9d86
restorable: Bug fix: Make limit to the number of draw-image command history ( #349 )
2017-05-03 22:16:32 +09:00
Hajime Hoshi
76ad9cf42b
doc: Fix comments
2017-05-03 01:08:27 +09:00
Hajime Hoshi
5699822d64
graphics: Avoid creating struct as much as possible
2017-05-02 22:45:09 +09:00
Hajime Hoshi
4e22bd770f
ui: Remove Input interface and remove locks on browsers to improve performance ( #346 )
2017-04-28 23:45:01 +09:00
Hajime Hoshi
0dafbfe99d
ui: Speed optimization for browser keyboard inputs
2017-04-27 11:40:32 +09:00
Hajime Hoshi
fb612a4b87
ui: Adjust window size in case when glfwGetVideoMode fails ( #328 )
2017-04-19 00:51:15 +09:00
Hajime Hoshi
95cb0133de
ui: Add keys ( #339 )
2017-04-14 03:09:00 +09:00
Hajime Hoshi
0cd692d26a
ui: Use code instead of keyCode on browsers but Safari
2017-04-14 03:02:38 +09:00
Hajime Hoshi
88cfdf8878
ui: Remove println
2017-04-11 12:00:40 +09:00
Hajime Hoshi
187a93d80a
ui: Bug fix: IsKeyPressed might return a wrong value when only one of Shift/Ctrl/Alt keys is pressed
2017-04-11 11:56:05 +09:00
Hajime Hoshi
aa1e7e9cd6
Revert "ui: Use code instead of keyCode on browsers ( #339 )"
...
This reverts commit d7ea02d8c1
.
2017-04-10 20:38:23 +09:00
Hajime Hoshi
d7ea02d8c1
ui: Use code instead of keyCode on browsers ( #339 )
2017-04-10 20:30:28 +09:00
Hajime Hoshi
b0454b874e
Fix frame counters to int64 ( #337 )
2017-04-06 00:45:28 +09:00
Hajime Hoshi
a3e14c9ddb
graphics: Image.ReplacePixels/Dispose always returns nil ( #331 )
2017-03-04 02:23:39 +09:00
Hajime Hoshi
6ca71c6931
graphics: Errors of NewImage* are always nil ( #331 )
2017-03-04 01:22:51 +09:00
Hajime Hoshi
33ff25cc40
gofmt -s -w
2017-03-04 00:00:04 +09:00
Hajime Hoshi
147798e14d
Simplify internal API not to return errors
2017-03-03 23:59:44 +09:00
Hajime Hoshi
cad051437d
ui: Refactoring
2017-03-03 11:15:07 +09:00
Hajime Hoshi
e11bc62059
ui: SetScreenSize/Scale no longer returns error
2017-03-03 10:58:29 +09:00
Hajime Hoshi
b6b61fc003
ui: setScreenSize in ui_glfw.go no longer returns error
2017-03-03 10:50:47 +09:00
Hajime Hoshi
0ba28d1183
ui: Remove unused function
2017-03-03 02:27:39 +09:00
Hajime Hoshi
ae378dc7f5
input: Extend number of gamepad buttons from 16 to 32 (for PS4)
2017-02-25 22:49:17 +09:00
Hajime Hoshi
acc488b980
graphics: Bug fix: Wrong palette usage when the palette is big
2017-02-19 02:56:20 +09:00
Hajime Hoshi
9634794e7e
ui: Use GetWindowThreadProcessId to check who created the console ( #304 , #318 )
2017-02-09 03:49:45 +09:00
Hajime Hoshi
bd1a486b3a
Bug fix: gopherjs build failed on Windows
2017-02-09 02:37:40 +09:00
Hajime Hoshi
93684d5df3
ui: Hide console window by checking the parent process ( #304 , #318 )
2017-02-09 02:01:03 +09:00
gonutz
112654995f
Hide console window on Windows ( #318 )
...
* Hide console only if double-clicking Windows exe
When building on Windows the console window is hidden on start-up if
double-clicking the executable but not if running the program from the
command line (as a developer).
See the code comments for an explanation of the used heuristic.
2017-02-07 20:44:10 +09:00
Hajime Hoshi
bb993a481b
graphics: Bug fix: Outside texels are used ( #317 )
2017-02-06 09:10:44 +09:00
Hajime Hoshi
0967df7f5e
graphics: Fix TestImagePixels to check out-of-range pixels
2017-02-05 04:24:07 +09:00
Hajime Hoshi
91681bdc25
graphics: Bug fix: ReplacePixels must reset pixels out of range ( #316 )
2017-02-05 04:16:09 +09:00
Hajime Hoshi
d7f1165aa3
graphics: Avoid calling ReplacePixels unnecessarily
2017-02-05 02:19:30 +09:00
Hajime Hoshi
0ef1e61d55
mobile: Fix iOS tag usages ( #310 )
2017-01-26 01:32:33 +09:00
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
53952100d3
restorable: Bug fix: graphics.Image can be recreated and must not be used for restoring
2017-01-21 04:24:39 +09:00
Hajime Hoshi
50b50effc0
graphics: Bug fix: Can't delete object after GL context is restored
2017-01-21 03:05:21 +09:00
Hajime Hoshi
bccf76867e
graphics: Try to restore the context on browsers (WIP)
2017-01-21 02:56:26 +09:00
Hajime Hoshi
de987be85f
opengl: Add IsContextLost
2017-01-20 02:20:41 +09:00
Hajime Hoshi
6e84919ed5
affine: Make Scale/Translate faster
2017-01-20 01:08:14 +09:00
Hajime Hoshi
48c8934838
affine: Refactoring
2017-01-20 00:46:25 +09:00
Hajime Hoshi
dfcd9fc30c
graphics: Make matrices faster
2017-01-20 00:37:51 +09:00
Hajime Hoshi
71a4465c6f
graphics: Improve matrices speed
2017-01-19 12:07:31 +09:00
Hajime Hoshi
9087269212
graphics: Make copying GeoM faster
2017-01-19 10:59:07 +09:00
Hajime Hoshi
3331f17723
graphics: Bug fix: start pixel must start at 0 ( #303 )
2017-01-19 10:40:59 +09:00
Hajime Hoshi
333b0956ff
graphics: Improve speed by merging vertices arrays into one
2017-01-19 01:27:04 +09:00
Hajime Hoshi
a744285b51
graphics: Make copying ColorM faster
2017-01-18 02:25:23 +09:00
Hajime Hoshi
c44ee9cde2
graphics: Refactoring
2016-12-29 01:15:57 +09:00
Hajime Hoshi
aeaa877949
restorable: Remove (*restorable).width/height
2016-12-27 10:58:46 +09:00
Hajime Hoshi
5c403d9969
graphics: Avoid copying images twice
2016-12-27 10:43:05 +09:00
Hajime Hoshi
260b938422
graphics: CopyImage optimization
2016-12-27 03:21:07 +09:00
Hajime Hoshi
5c9b9ef6cb
graphics: Add BenchmarkCopyImageNRGBA
2016-12-27 01:57:36 +09:00
Hajime Hoshi
006f87d02b
graphics: Stop CopyImage blocking on browsers
2016-12-27 01:57:15 +09:00
Hajime Hoshi
3db15bc5bf
graphics: Avoid copying color.RGBA struct
2016-12-27 01:08:22 +09:00
Hajime Hoshi
6b4801ac7a
graphics: Make copying images faster
2016-12-27 00:50:14 +09:00
Hajime Hoshi
15f7a605c5
graphics: Create framebuffers lazily
2016-12-14 23:40:43 +09:00
Hajime Hoshi
b86f1771e4
ui: Add goroutine so that blocking is available everywhere
2016-11-29 01:40:06 +09:00
Hajime Hoshi
7bd2fb6ce2
graphics: Bug fix: ColorM.Scale worked wrongly
2016-11-27 23:27:20 +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
74c552ea6c
opengl: Should access the prototype of WebGLRenderingContext on Safari ( #293 )
2016-11-26 01:17:22 +09:00
Hajime Hoshi
3e2f2e9f08
opengl: Update error messages
2016-11-26 00:57:02 +09:00
Hajime Hoshi
e47c3bbbfb
graphics: Limit image size strictly
2016-11-05 03:06:18 +09:00
Hajime Hoshi
07294a98b6
Move internal/graphics/opengl -> internal/opengl
2016-11-03 23:31:25 +09:00
Hajime Hoshi
b2780fb585
graphics: Merge commands when appending
2016-11-03 17:40:52 +09:00
Hajime Hoshi
50b2d8ee94
graphics: Use float values for vertices
2016-11-02 02:34:01 +09:00
Hajime Hoshi
b2be6681d4
graphics: Bug fix: invalid calc of num of quads
2016-11-02 02:08:12 +09:00
Hajime Hoshi
b188a0dd99
affine: Stop using multiple-dimension array for consistency
2016-11-01 23:32:27 +09:00
Hajime Hoshi
edf336499c
affine: Revert ColorM implementation to use float64 array
2016-11-01 23:32:24 +09:00
Hajime Hoshi
4915531450
affine: Add ColorM.Equals
2016-11-01 00:28:07 +09:00
Hajime Hoshi
d02c67a996
graphics: Use affine.ColorM instead of graphics.Matrix
2016-11-01 00:20:27 +09:00
Hajime Hoshi
84baee8ca7
Add internals/affine
2016-11-01 00:13:19 +09:00
Hajime Hoshi
49fb2635ec
graphics: Remove glMatrix
2016-10-29 05:02:22 +09:00
Hajime Hoshi
6de9e6696e
graphics: Cache total bytes
2016-10-29 01:07:19 +09:00
Hajime Hoshi
fbf6b6c525
graphics: Calc capacity of vertices
2016-10-27 01:42:18 +09:00
Hajime Hoshi
5a1eb24138
graphics: Improve speed by using []int16 instead of []uint8
2016-10-26 00:20:41 +09:00
Hajime Hoshi
a65ededc3c
graphics: Merge draw commands if possible
2016-10-25 11:53:00 +09:00
Hajime Hoshi
a70f61b1d5
graphics: Remove passing GeoM to the lower layers
2016-10-25 10:42:49 +09:00
Hajime Hoshi
96053702ed
graphics: Bug fix: Remove modelview_matrix
2016-10-25 03:17:14 +09:00
Hajime Hoshi
a2cc291573
graphics: Rename variables
2016-10-25 03:04:06 +09:00
Hajime Hoshi
ebf7f0df00
graphics: Add geometry matrix info to vertices
2016-10-25 01:56:59 +09:00
Hajime Hoshi
bc8a8fbae8
graphics: Refactoring: Replace QuadVertexNum with QuadVertexSizeInBytes func
2016-10-23 03:12:11 +09:00
Hajime Hoshi
2c844ec70c
graphics: Refactoring: Simplify NextPowerOf2Int
2016-10-23 01:59:04 +09:00
Hajime Hoshi
e72ccee61b
graphics: Expose graphics.QuadVertexNum
2016-10-23 01:52:55 +09:00
Hajime Hoshi
af4130c0d6
graphics: Bug fix: wrong argument in VertexAttribPointer
2016-10-22 20:47:33 +09:00
Hajime Hoshi
f21f6d357e
graphics: Bug fix: Command splitting threshold is more strict on browsers?
2016-10-22 20:25:58 +09:00
Hajime Hoshi
27acc5efd9
opengl: Use uint8 intead of byte
2016-10-22 18:45:32 +09:00
Hajime Hoshi
17ad889bba
graphics: Add a comment
2016-10-22 16:57:09 +09:00
Hajime Hoshi
d981466aed
graphics: Use opengl.DataType
2016-10-22 16:52:58 +09:00
Hajime Hoshi
9abeb29d2a
opengl: Add DataType
2016-10-22 14:51:23 +09:00
Hajime Hoshi
e5e9b178ae
opengl: Fix argument order of VertexAttribPointer
2016-10-22 14:00:45 +09:00
Hajime Hoshi
80e3a3497c
opengl: BufferSubData should be able to take generic type
2016-10-22 03:21:53 +09:00
Hajime Hoshi
37c0461573
internal: Fix LicenseComment not to use LICENSE file
2016-10-21 00:30:51 +09:00
Hajime Hoshi
3264532004
doc: Add and use LicenseYear
2016-10-21 00:12:31 +09:00
Hajime Hoshi
3efabe988a
graphics: Reduce magic numbers
2016-10-17 11:16:17 +09:00
Hajime Hoshi
cbcbdb0b97
graphics: Refactoring: Introduce arrayBufferLayoutPart
2016-10-17 10:36:33 +09:00
Hajime Hoshi
8ee859df31
graphics: Refactoring: Introduce arrayBufferLayout
2016-10-17 10:03:25 +09:00
Hajime Hoshi
c1b4624890
graphics: Remove unused const
2016-10-17 01:07:16 +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
5cd048011e
restorable: Fix a comment
2016-09-10 01:36:56 +09:00
Hajime Hoshi
959abec06d
restoring: Refactoring: Add Image.screen and unify restoring functions
2016-09-04 02:31:50 +09:00
Hajime Hoshi
c73860caa2
restorable: Bug fix: volatile images are not relaiable when restoring
2016-09-04 02:16:58 +09:00
Hajime Hoshi
865a45e052
restorable: Reset states after restoring
2016-09-04 02:11:02 +09:00
Hajime Hoshi
d386f57ac6
restoring: Refactoring: Add Image.volatile
2016-09-04 02:06:54 +09:00
Hajime Hoshi
43e8349567
graphics: Remove imageImpl.width/height
2016-09-04 01:25:02 +09:00
Hajime Hoshi
b8b7e97511
restorable: Remove arguments from restoring functions
2016-09-04 00:57:23 +09:00
Hajime Hoshi
02151e48ea
restorable: Remove Image()
2016-09-04 00:53:30 +09:00
Hajime Hoshi
82febc9c6e
restorable: Reduce Image() usage and remove MakeStale()
2016-09-03 23:54:52 +09:00
Hajime Hoshi
e7558036ae
restorable: Remove IsStale
2016-09-03 23:42:44 +09:00
Hajime Hoshi
cae75fac69
graphics: Bug fix: Invalid Clear calling in Dispose
2016-09-03 23:42:28 +09:00
Hajime Hoshi
fb3724a40e
graphics: Remove imageImpl.image member
2016-09-03 23:08:51 +09:00
Hajime Hoshi
438afdac5b
restorable: Add NewImage
2016-09-03 22:24:37 +09:00
Hajime Hoshi
9c079917f1
Rename pixels -> restorable
2016-09-03 22:19:59 +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
d08beef412
ui: Bug fix: ScreenScale should not cause deadlock ( #264 )
2016-09-03 18:04:22 +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
b95d714eed
loop: Simplify update
2016-09-01 22:21:58 +09:00
Hajime Hoshi
068bc55ded
loop: Remove comments
2016-09-01 10:37:08 +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
57a32464dc
loop: Use RLock
2016-08-30 23:56:34 +09:00
Hajime Hoshi
53e1f90146
graphics: Bug fix: Don't store interface color.Color value inside ( #261 )
2016-08-30 23:34:18 +09:00
Hajime Hoshi
c23224c56b
loop: Bug fix: the threshold to detect if the game stops was too strict (#)
2016-08-29 01:40:43 +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
1cb66048ad
doc: go generate; Add style.css
2016-08-26 23:33:36 +09:00
Hajime Hoshi
3dad97af8a
Add comments
2016-08-23 00:05:23 +09:00
Hajime Hoshi
749a751369
graphics: Bug fix: Make an image stale when another stale image is drawn to this ( #257 )
2016-08-23 00:05:11 +09:00
Hajime Hoshi
c54dc8ee1c
graphics: Less calls of ReadPixelsFromVRAM
2016-08-20 23:25:45 +09:00
Hajime Hoshi
7b32d7a206
graphics: Bug fix: Pixels should be copied to store it as a command
2016-08-17 22:10:29 +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
c8edcde2d5
graphics: Image minimum size changed to 1
2016-08-07 17:27:17 +09:00
Hajime Hoshi
f556b19f22
Add error checks
2016-08-03 23:44:54 +09:00
Hajime Hoshi
0aca79ed0b
graphics: Add error checks
2016-08-03 11:05:10 +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
c7106f595c
Add error checks
2016-08-02 02:26:44 +09:00
Hajime Hoshi
9b6b5372ef
pixels: Remove image member
2016-07-27 12:24:30 +09:00
Hajime Hoshi
3bc2239a3b
pixels: Bug fix: Update image member when creating a new image
2016-07-27 12:13:54 +09:00
Hajime Hoshi
3724815f21
pixels: Rename functions
2016-07-27 02:50:53 +09:00
Hajime Hoshi
459046f52a
pixels: Ensure pixels is not stale when restoring
2016-07-27 02:25:08 +09:00
Hajime Hoshi
e0894879f1
pixels: Remove IsStale
2016-07-27 02:20:42 +09:00
Hajime Hoshi
56732d9a23
pixels: Add 'stale' member
2016-07-27 02:17:27 +09:00
Hajime Hoshi
c18756352d
pixels: Refactoring
2016-07-27 01:54:23 +09:00
Hajime Hoshi
5c56058d6e
pixels Rename s/history/dependency/
2016-07-27 01:28:16 +09:00
Hajime Hoshi
c5f3eaf925
graphics: Refactoring
2016-07-26 12:28:05 +09:00
Hajime Hoshi
40427b6263
pixels: Bug fix: Reset pixels correctly
2016-07-26 11:40:41 +09:00
Hajime Hoshi
0fc61ed568
pixels: Rename fuctions
2016-07-26 10:51:48 +09:00
Hajime Hoshi
558f559323
graphics: Remove pixels when inconsistent
2016-07-26 10:35:24 +09:00
Hajime Hoshi
1ec503e1b5
pixels: Add comments
2016-07-25 10:38:41 +09:00
Hajime Hoshi
939284820c
pixels: Bug fix: Remove IsCleared: pixels state might not match with actual state
2016-07-25 10:22:37 +09:00
Hajime Hoshi
c0eb01d69e
pixels: Rename s/flush/reset/
2016-07-25 09:10:51 +09:00
Hajime Hoshi
95dae4ad45
pixels: Remove 'inconsistent' property
2016-07-25 09:01:00 +09:00
Hajime Hoshi
931e60902f
graphics: Refactoring
2016-07-25 08:48:58 +09:00
Hajime Hoshi
f6be72fba2
Add internal/pixels
2016-07-25 02:28:59 +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
e3ef0540a3
opengl: Bug fix: Remove infinite for loop and improve FPS on iOS
2016-07-23 02:09:48 +09:00
Hajime Hoshi
d7c2682c53
examples/sprites: Slower increasing num of sprites
2016-07-16 19:34:36 +09:00
Hajime Hoshi
66f262c80e
graphics: Enable to draw unlimited number of sprites ( #245 )
2016-07-16 19:17:57 +09:00
Hajime Hoshi
d00eb131f4
graphics: Remove commandQueue's member indexOffsetInBytes
2016-07-16 04:21:44 +09:00
Hajime Hoshi
7a96f31b1f
graphics: Hide MaxQuads
2016-07-16 02:07:16 +09:00
Hajime Hoshi
bc43614c25
graphics: Remove draw.go
2016-07-16 00:17:21 +09:00
Hajime Hoshi
1627176d59
graphics: Restoring by recording drawing-images history
2016-07-13 12:38:59 +09:00
Hajime Hoshi
4bded02ad6
graphics: Add a comment
2016-07-10 14:49:41 +09:00
Hajime Hoshi
0c611d875b
graphics: Bug fix: glTexSubImage2D on Android now works ( #211 )
2016-07-10 05:59:21 +09:00
Hajime Hoshi
1b152ae771
opengl: Bug fix: Reset lastTexture when deleting
2016-07-10 05:04:25 +09:00
Hajime Hoshi
d8e7ec5274
opengl: Initialize lastTexture
2016-07-09 23:14:24 +09:00
Hajime Hoshi
275fc66f06
graphics: Bug fix: textuer should be stored at OpenGL layer
2016-07-09 19:36:34 +09:00
Hajime Hoshi
193c03ea58
ui: Bug fix: Don't use integer scale (JavaScript)
2016-07-09 18:27:29 +09:00
Hajime Hoshi
76f694b948
loop: Bug fix: IsRunning might crash when the game hasn't started yet
2016-07-09 01:44:53 +09:00
Hajime Hoshi
79bdfc0718
opengl: Misspelling
2016-07-07 02:08:28 +09:00
Hajime Hoshi
302f5a5437
opengl: Remove BindScreenFramebuffer
2016-07-05 03:07:33 +09:00
Hajime Hoshi
7e296b1aae
graphics: Bug Fix: The screen image should be recreated
2016-07-05 02:57:41 +09:00
Hajime Hoshi
7903fe2108
graphics: Remove texture's width/height
2016-07-05 00:31:02 +09:00
Hajime Hoshi
93f7fdd349
graphics: Remove framebuffer's width/height
2016-07-05 00:29:46 +09:00
Hajime Hoshi
085336d50f
graphics: Add newImageImpl
2016-07-05 00:24:06 +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
6cfb92c4c4
opengl: Remove init (JavaScript)
2016-07-04 00:55:04 +09:00
Hajime Hoshi
0d91883fb9
opengl: Remove init (desktops)
2016-07-04 00:51:58 +09:00
Hajime Hoshi
c2d21bc39f
opengl: Misspelling
2016-07-04 00:31:51 +09:00
Hajime Hoshi
163ee01bd5
graphics: Rename Initialize/Resume -> Reset
2016-07-04 00:30:14 +09:00
Hajime Hoshi
d0a779e272
graphics: Delete programs and buffers when resuming
2016-07-04 00:23:45 +09:00
Hajime Hoshi
d70bf66a59
graphics: Reduce imageM usages
2016-07-03 23:23:57 +09:00
Hajime Hoshi
f7a84fe969
graphics: Move all context usages to internal/graphics
2016-07-03 22:35:27 +09:00
Hajime Hoshi
6e76c3ed6b
graphics: Move context.resume() to internal/graphics
2016-07-03 21:42:01 +09:00
Hajime Hoshi
146c1e5846
graphics: Refactoring: Remove graphicsContext.Draw and flush
2016-07-03 18:56:44 +09:00
Hajime Hoshi
86144a1cd6
opengl: Move members to variables
2016-07-03 18:23:19 +09:00
Hajime Hoshi
fbc1a4238c
graphics: Reduce calls of ui.GLContext()
2016-07-03 17:27:33 +09:00
Hajime Hoshi
93f052de8c
graphics: Refactoring
2016-07-03 16:18:29 +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
cc39cdc8f5
opengl: Bug fix: glGetShaderPrecisionFormat returns wrong values on emulators ( #239 )
2016-07-01 02:40:53 +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
ff30f01c1b
graphics: Remove Finalize
2016-06-30 00:21:47 +09:00
Hajime Hoshi
328ef85606
opengl: Prepare Context Losing for JavaScript ( #217 )
2016-06-29 23:18:02 +09:00
Hajime Hoshi
9453f9e7b5
graphics: Fix a comment
2016-06-28 03:05:47 +09:00
Hajime Hoshi
3004d4d7af
opengl: Fix a misspell
2016-06-28 02:53:35 +09:00
Hajime Hoshi
af87d3fcf4
graphics: Move a comment
2016-06-27 13:00:32 +09:00
Hajime Hoshi
e822aae4a2
graphics: Add a comment
2016-06-27 02:51:46 +09:00
Hajime Hoshi
f537378f2a
opengl: Bug fix: div 0 in shader
2016-06-26 15:57:45 +09:00
Hajime Hoshi
bb511b2c13
ui: Scale is now float64 ( #236 )
2016-06-25 01:26:59 +09:00
Hajime Hoshi
24bb5b5ca8
graphics: Stop comparing matrices in GLSL, which doesn't work on iPhone5s
2016-06-23 00:25:31 +09:00
Hajime Hoshi
bae27e19d7
doc: Fix README
2016-06-22 12:37:26 +09:00
Hajime Hoshi
56c4e71859
opengl: Remove unneeded glViewport calls
2016-06-22 02:13:23 +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
7528977842
opengl: Bug fix: bindFramebufferImpl should return error
2016-06-19 00:40:44 +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
98fccb563e
graphics: Bug fix: Need to reset viewport size after resizing ( #232 )
2016-06-18 06:47:35 +09:00
Hajime Hoshi
5eb77d2fb5
Remove 'default framebuffer' and add 'screen framebuffer' for iOS
2016-06-18 04:56:13 +09:00
Hajime Hoshi
0b8fe25350
opengl: Implement GlslHighpSupported for iOS
2016-06-17 04:13:46 +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
ceea24ab95
loop: Refactoring
2016-06-14 01:33:35 +09:00
Hajime Hoshi
218df19ead
loop: Refactoring
2016-06-14 00:50:18 +09:00
Hajime Hoshi
6640f60c88
graphics: Bug fix: screen flicks on Android ( #229 )
2016-06-14 00:30:27 +09:00
Hajime Hoshi
a1fbf2cd2d
graphics: Remove 'Resume'
2016-06-12 23:54:36 +09:00
Hajime Hoshi
5fbbb6dc6a
opengl: Check texture/framebuffer is valid before deleting it
2016-06-12 23:19:01 +09:00
Hajime Hoshi
8d258b3c38
graphics: Replace textures/framebuffers with images in commands
2016-06-12 22:44:23 +09:00
Hajime Hoshi
870ce85615
opengl: Remove Pause
2016-06-12 18:18:43 +09:00
Hajime Hoshi
f056204a7c
graphics: Add image.go
2016-06-12 01:45:40 +09:00
Hajime Hoshi
68c19d7cae
graphics: Hide Texture/Framebuffer
2016-06-12 01:41:50 +09:00
Hajime Hoshi
eca175e0f4
graphics: Add Image
2016-06-12 01:34:21 +09:00
Hajime Hoshi
32c2cb3ead
graphics: Add commands to create textures/framebuffers
2016-06-12 00:23:26 +09:00
Hajime Hoshi
2a58c095b8
graphics: Add disposeCommand
2016-06-11 22:52:07 +09:00
Hajime Hoshi
b59206b777
graphics: Move command flushing to ebiten package
2016-06-11 21:50:13 +09:00
Hajime Hoshi
dfd4bc89ed
graphics: Revert FlushCommand execution
2016-06-11 20:21:14 +09:00
Hajime Hoshi
f322aaec02
mobile: Add a comment
2016-06-11 05:49:53 +09:00
Hajime Hoshi
912d498cdf
graphics: Remove unused arguments
2016-06-11 05:48:09 +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
f03a99e89a
opengl: Add Resume() and Pause()
2016-06-10 01:19:10 +09:00
Hajime Hoshi
cabea24815
graphics: Move glFlush to a more appropriate place
2016-06-07 03:02:15 +09:00
Hajime Hoshi
83a96dc532
android: Bug fix: Black flicking ( #226 )
2016-06-07 02:24:36 +09:00
Hajime Hoshi
9757319848
graphics: Use a const viewport
2016-06-06 01:49:34 +09:00
Hajime Hoshi
26ef56232b
opengl: Bug fix: Reset viewport when framebuffer delation
2016-06-05 08:16:16 +09:00
Hajime Hoshi
12904d168d
opengl: Bug fix: glViewport must be called after framebuffer deletion
2016-06-05 07:47:11 +09:00
Hajime Hoshi
37473d2f9f
graphics: Move a comment
2016-06-05 03:26:00 +09:00
Hajime Hoshi
aa83167e56
graphics: Check the number of vertices
2016-06-05 03:17:53 +09:00
Hajime Hoshi
e5965d7771
opengl: Reduce calls of glSetViewport
2016-06-05 03:16:54 +09:00
Hajime Hoshi
4c2650c721
graphics: Reduce calls of glBindTexture
2016-06-05 01:55:28 +09:00
Hajime Hoshi
bddd3c9467
grahics: Reduce gl function calls
2016-06-04 22:30:52 +09:00
Hajime Hoshi
388dd835a6
opengl: Move ZeroFramebuffer to context.go
2016-06-04 04:04:18 +09:00
Hajime Hoshi
ca3322edbc
opengl: Refactoring: Rename functions
2016-06-04 03:50:28 +09:00
Hajime Hoshi
da1354ec51
opengl: Bug fix: Reset the bound framebuffer after deletion ( #227 )
2016-06-04 03:41:14 +09:00
Hajime Hoshi
56844100c2
temporal hack to pass tests ( #227 )
2016-06-03 13:16:43 +09:00
Hajime Hoshi
3e912ce7f8
graphics: Optimize commands: call glBufferSubData as less times as possible
2016-06-03 12:52:20 +09:00
Hajime Hoshi
208b27d5de
graphics: Use command buffers
2016-06-03 03:24:27 +09:00
Hajime Hoshi
efd019c00e
graphics: Remove Texture.Size
2016-06-03 03:07:55 +09:00
Hajime Hoshi
0374bf0538
graphics: Remove Framebuffer.Size
2016-06-03 03:02:59 +09:00
Hajime Hoshi
17f4bcbd95
graphics: Introduce Commands (WIP)
2016-06-03 03:01:27 +09:00
Hajime Hoshi
16ef82fa23
opengl: Reduce CheckFramebufferState call for speed
2016-06-01 03:53:55 +09:00
Hajime Hoshi
91491e58f4
opengl: Reduce glBindFramebuffer calls
2016-06-01 02:33:31 +09:00
Hajime Hoshi
3dfbb4a2ea
opengl: Refactoring: Remove unneeded code
2016-06-01 02:14:11 +09:00
Hajime Hoshi
d756d35b59
opengl: Remove unneeded access to a member
2016-06-01 02:06:13 +09:00
Hajime Hoshi
5638bb93f5
opengl: Remove glFlush to improve performance
2016-06-01 01:48:46 +09:00
Hajime Hoshi
1ca76b64f7
graphics: Add a comment
2016-05-31 00:30:04 +09:00
Hajime Hoshi
6663a447cc
graphics: Speed optimization
2016-05-29 23:04:20 +09:00
Hajime Hoshi
f6fd8f9c6d
graphics: Reduce calling glUseProgram
2016-05-29 22:40:51 +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
683c692a5b
loop: Much better slow-running detection ( #223 )
2016-05-29 22:02:06 +09:00
Hajime Hoshi
deb2ab1cbf
graphics: Refactoring: Reduce array buffer size
2016-05-29 18:34:52 +09:00
Hajime Hoshi
857bc1ed51
loop: Prevent re-entering to Run
2016-05-29 18:34:52 +09:00
Hajime Hoshi
e4ca01db31
mobile: Multitouches ( #101 )
2016-05-28 23:15:28 +09:00
Hajime Hoshi
6a74ea5b30
Introduce internal/jni
2016-05-28 19:01:26 +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
b1afe6aeb2
loop: Refactoring: Remove FPS
2016-05-18 23:27:28 +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
fbd07b1865
graphics: Simplify the size of pixels
2016-05-16 12:27:28 +09:00
Hajime Hoshi
46cbd0c4a0
graphics: Add a func to delete programs and buffers
2016-05-16 11:54:34 +09:00
Hajime Hoshi
ba6d10dec0
graphics: Remove indexBufferLines
2016-05-16 11:34:41 +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
ebe6296222
opengl: Remove (*Program).Equals
2016-05-15 02:37:25 +09:00
Hajime Hoshi
a3272d0b49
graphics: Refactoring: Reduce global variables
2016-05-15 02:29:54 +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
9d569e3e49
graphics: Bug fix: now ebiten.Image can be passed to NewImageFromImage ( #213 )
2016-05-12 11:23:52 +09:00
Hajime Hoshi
9c2857c15d
graphics: Compile error of shaders should panic
2016-05-11 00:49:31 +09:00
Hajime Hoshi
c07f16d9a4
opengl: Prepare for Android
2016-05-11 00:47:54 +09:00
Hajime Hoshi
2fee1fae22
graphics: Dispose now returns errors
2016-05-07 23:34:10 +09:00
Hajime Hoshi
57a9ecd821
ui: Refactoring
2016-05-07 22:27:10 +09:00
Hajime Hoshi
9560824dfc
opengl: Add context.go
2016-05-07 19:42:07 +09:00
Hajime Hoshi
df23b57b16
openg: Refactoring
2016-05-07 19:26:35 +09:00
Hajime Hoshi
de541bdd7d
opengl: Update context_mobile.go
2016-05-07 19:12:19 +09:00
Hajime Hoshi
e99736d5a5
opengl: Refactoring
2016-05-07 19:07:56 +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
07da7a2348
graphics: Refactoring
2016-04-08 04:39:13 +09:00
Hajime Hoshi
b2c5cb164a
graphics: Calculate vertices ahead of locking
2016-04-08 03:18:52 +09:00
Hajime Hoshi
492f471ec3
graphics: Early return when num of vertices is 0
2016-04-08 02:49: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
b02df7b542
graphics: Bug fix #186 by clearing non-black-or-white color
2016-03-17 03:31:12 +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
c6fc5ab865
graphics: CompositionMode -> CompositeMode ( #170 )
2016-03-01 02:16:32 +09:00
Hajime Hoshi
1eb623cf16
Add example 'masking' ( #39 )
2016-03-01 02:10:45 +09:00
Hajime Hoshi
321f5e376e
opengl: Cache a composition mode
2016-02-29 01:44:09 +09:00
Hajime Hoshi
8ae1e292ab
graphics: Introduce CompositionMode ( #151 )
2016-02-29 01:37:06 +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
997539b243
opengl: Unexport Attrib/UniformLocation
2016-02-27 03:13:42 +09:00
Hajime Hoshi
ccf0acf7ca
opengl: Reduce global variables
2016-02-27 03:05:12 +09:00
Hajime Hoshi
93f9d9fbb0
opengl: Introduce locationCache struct
2016-02-27 03:01:55 +09:00
Hajime Hoshi
3c4aa7ec1e
opengl: Unexport some interfaces
2016-02-27 02:43:00 +09:00
Hajime Hoshi
2bda89709f
opengl: Unexport ProgramID
2016-02-27 02:41:38 +09:00
Hajime Hoshi
495d7ca0d1
graphics: NextPowerOf2Int -> NextPowerOf2Int32
2016-02-27 02:35:05 +09:00
Hajime Hoshi
5fe013ddbd
graphics: Remove Lines and Rects
2016-02-27 02:30:06 +09:00
Hajime Hoshi
f432c15078
opengl: GetProgramID() -> Program.ID()
2016-02-27 02:27:39 +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
3d79e086a9
opengl: Rename some functions not to be exported
2016-02-26 02:03:24 +09:00
Hajime Hoshi
ce9f957cd8
opengl: Use go-gl/gl again ( #162 )
2016-02-26 02:01:13 +09:00
Hajime Hoshi
20e9b91336
opengl: Bug fix: Misusage of Texture
2016-02-25 02:21:44 +09:00
Hajime Hoshi
73856a2298
opengl: IsTexture/IsFramebuffer fails on OSX
2016-02-25 02:17:28 +09:00
Hajime Hoshi
06ec244ff3
opengl: Use gl.IsTexture and gl.IsFramebuffer
2016-02-25 01:11:40 +09:00
Hajime Hoshi
6d5e09ad36
opengl: use fmt.Errorf for error messages
2016-02-24 23:30:43 +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
888c7dadfd
opengl: Bug fix: Use attrib/uniform cache
2016-02-24 01:34:24 +09:00
Hajime Hoshi
2d78d14e83
opengl: Avoid using encoding/binary for speed
2016-02-24 01:32:56 +09:00
Hajime Hoshi
e8a3e04535
opengl: Error prefix
2016-02-24 00:31:28 +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
bae6d62067
ui: Refactoring
2016-02-21 18:01:43 +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
93450b1664
graphics: Compiled (but can't run yet)
2016-02-19 03:06:23 +09:00
Hajime Hoshi
5c61284c84
graphics: Refactoring: Remove an unsed argument 'signed'
2016-02-18 03:01:41 +09:00
Hajime Hoshi
d99ddab6f8
graphics: Reduce calling TextureQuad.Len()
2016-02-17 00:45:19 +09:00
Hajime Hoshi
169d57936c
graphics: Speed improvement by returning single value
2016-02-17 00:21:39 +09:00
Hajime Hoshi
ef4828669c
graphics: Bug fix: must skip rendering when 0 vertices are set
2016-02-16 02:45:56 +09:00
Hajime Hoshi
1e9fb05161
graphics: Move makeing vertices from drawTexture to textureQuads to avoid copying
2016-02-16 02:26:40 +09:00
Hajime Hoshi
6d2148f3ea
graphics: Remove unneeded 'if'
2016-02-16 01:55:39 +09:00
Hajime Hoshi
f5b4179142
graphics: Avoid calling Len() too many times
2016-02-16 01:51:34 +09:00
Hajime Hoshi
537cfea8a4
graphics: Avoid using append
2016-02-16 01:49:27 +09:00
Hajime Hoshi
1e4f486174
audio: Move files from internal/audio to exp/audio
2016-02-11 17:22:02 +09:00
Hajime Hoshi
84d50f7714
audio: Remove Init
2016-02-11 17:16:34 +09:00
Hajime Hoshi
8e43d1047b
audio: Use io.ReadSeeker instead of ReadSeekCloser
2016-02-11 17:07:28 +09:00
Hajime Hoshi
bca9b0d3f1
audio: Remove audioEnabled
2016-02-11 04:02:18 +09:00
Hajime Hoshi
5687d9d0ef
go generate
2016-02-11 03:53:36 +09:00
Hajime Hoshi
10650d1c6e
audio: Introduce audio.Player
2016-02-11 02:18:39 +09:00
Hajime Hoshi
d52118639d
audio: Use IO as source
2016-02-11 02:09:06 +09:00
Hajime Hoshi
c6a431c9ab
audio: add sampleRate arg to Queue: implementation turned to be simplified
2016-02-10 02:40:07 +09:00
Hajime Hoshi
e8895d8f35
audio: Use bigger buffer to reduce noise ( #149 )
2016-02-10 01:04:43 +09:00
Hajime Hoshi
14d28ea122
audio: Use AudioBuffer's duration
2016-02-10 01:04:15 +09:00
Hajime Hoshi
719e5ba6d2
audio: Remove audio.Tick
2016-02-10 00:09:23 +09:00
Hajime Hoshi
c5de32297f
audio: Bug fix: isPlaying must consider two buffers in JS
2016-02-09 23:49:33 +09:00
Hajime Hoshi
70fe6d8169
audio: Remove channel argument from audio.Queue
2016-02-09 22:55:18 +09:00
Hajime Hoshi
34691dabbf
audio: Reimplement audio for JS with AudioBuffer ( #146 )
2016-02-09 22:35:55 +09:00
Hajime Hoshi
21e2b1ed7b
audio: nit
2016-02-09 03:28:31 +09:00
Hajime Hoshi
1c10d46288
audio: Add comment about #146
2016-02-09 03:27:09 +09:00
Hajime Hoshi
8c23c8ba34
audio: Refactoring
2016-02-08 12:27:09 +09:00
Hajime Hoshi
45329ab32f
audio: Bug fix: always fill zero values ( #147 )
2016-02-08 04:27:21 +09:00
Hajime Hoshi
4b4802419b
audio: Remove audio.Tick
2016-02-08 03:26:58 +09:00
Hajime Hoshi
d1f46a92df
audio: Refactoring
2016-02-08 01:52:36 +09:00
Hajime Hoshi
debbc19c82
audio: Remove start func
2016-02-08 01:40:27 +09:00
Hajime Hoshi
60c4990555
audio: Change audio.SampleRate to be a const
2016-02-08 00:48:43 +09:00
Hajime Hoshi
b63911e6f7
audio: Remove audio.Play
2016-02-08 00:45:02 +09:00
Hajime Hoshi
0b62a9af74
audio: Use golang.org/x/mobile/exp/audio/al
2016-02-07 23:37:16 +09:00
Hajime Hoshi
a83286accb
audio: Move files from exp/audio/inner to internal/audio
2016-02-07 16:03:41 +09:00
Hajime Hoshi
c54b5c4b06
image: Introduce programContext ( #144 )
2016-02-07 05:13:54 +09:00
Hajime Hoshi
38552f8d9d
image: Remove drawing lines and rects ( #142 )
2016-02-06 17:57:20 +09:00
Hajime Hoshi
ccf7b0c159
Revert an unreasonable change at 633ee409
2016-02-06 15:54:29 +09:00
Hajime Hoshi
9178b488a1
test: Give up using headless-js ( #141 )
2016-02-06 15:35:21 +09:00
Hajime Hoshi
fb9f133389
graphics: Better error messages for framebuffer creation
2016-02-06 03:48:15 +09:00
Hajime Hoshi
7f43ca2eb7
.travis.yml: Skip gopherjs test
2016-01-20 03:43:13 +09:00
Hajime Hoshi
9a3c6bd8c4
js: Update callers for headless-gl API
2016-01-20 01:18:53 +09:00
Josh Deprez
bbeb103383
Check was missing from context_js
...
Run calls Check whether or not gopherjs is used, and it was not implemented here.
2016-01-18 21:27:55 +11:00
Hajime Hoshi
633ee4096e
#132 Temporal hack to run with Go1.5
2015-07-22 23:28:15 +09:00
Hajime Hoshi
0bc321d3ef
Improve GL error messages
2015-06-22 23:14:40 +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
7490bfa4f4
internal: Bug fix: license.txt was changed to LICENSE
2015-05-21 00:03:04 +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
a67a8a03ec
graphics: Cache framebuffers
2015-02-20 02:02:23 +09:00
Hajime Hoshi
936942a28d
Add comments
2015-02-20 02:01:56 +09:00
Hajime Hoshi
eb0431f117
opengl: Remove Flush()
2015-02-18 23:35:39 +09:00
Hajime Hoshi
2b7617da7a
graphics: Cache values for uniformMatrix4fv
2015-02-18 11:30:24 +09:00
Hajime Hoshi
9ec7b13f27
example/piano: Speed up
2015-02-16 10:48:57 +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
Hajime Hoshi
cd4188b0a3
Add SetScreenScale ( #115 )
2015-02-10 00:10:50 +09:00
Hajime Hoshi
249add3979
Add SetScreenSize
2015-02-09 11:02:04 +09:00
Hajime Hoshi
2544d74ba0
Use go-gl/glow instead of go-gl/gl ( #112 )
2015-01-29 00:58:56 +09:00
Hajime Hoshi
ea78b31414
Move internal/audio -> exp/audio/internal
2015-01-27 22:55:45 +09:00
Hajime Hoshi
3964944deb
Move ui_*.go back to internal/ui again
2015-01-27 22:37:00 +09:00
Hajime Hoshi
23b3f1afce
Move some files of internal/ui to the root
2015-01-27 01:10:17 +09:00
Hajime Hoshi
ae450433db
Move some files of internal to internal/graphics
2015-01-27 00:08:24 +09:00
Hajime Hoshi
e23b0758e5
Merge internal/graphics/internal/shaders into internal/graphics
2015-01-26 23:32:50 +09:00
Hajime Hoshi
346bc53d53
Move internal/opengl -> internal/graphics/internal/opengl
2015-01-26 23:27:28 +09:00
Hajime Hoshi
2aa6ebb471
Move internal/assets -> ebitenutil/internal/assets
2015-01-26 22:09:47 +09:00
Hajime Hoshi
17b7969764
audio: Reduce the buffer size (OpenAL)
2015-01-26 10:14:03 +09:00
Hajime Hoshi
6a0c5dfb03
audio: Change the number of buffers
2015-01-26 03:53:40 +09:00
Hajime Hoshi
205c6f1462
audio: Bug fix: Reduce delay for desktops
2015-01-26 01:58:32 +09:00
Hajime Hoshi
7692cf6a1b
audio: Refactoring
2015-01-26 01:39:43 +09:00
Hajime Hoshi
9e7dfa2f16
audio: Bug fix: Multi source (or nodes) should be used to play multi sounds
2015-01-26 01:20:56 +09:00
Hajime Hoshi
701de9f82b
audio: Bug fix: half volume of any sound on GopherJS
2015-01-25 23:38:26 +09:00
Hajime Hoshi
e1336c2eba
audio: Change API: accept []int16 instead of []float32
2015-01-25 19:17:53 +09:00
Hajime Hoshi
c2313c10c1
audio: Grace returning when audio is not available
2015-01-25 16:04:49 +09:00
Hajime Hoshi
fe91d341ac
audio: Implement for desktops with OpenAL ( #104 )
2015-01-25 01:51:51 +09:00
Hajime Hoshi
a8e3b2b619
audio: Start implementing with OpenAL (not finished yet)
2015-01-24 22:20:09 +09:00
Hajime Hoshi
2d5ac9e987
audio: Add comments, add IsPlaying
2015-01-24 21:46:35 +09:00
Hajime Hoshi
2c7430171d
audio: Add comments
2015-01-24 15:48:48 +09:00
Hajime Hoshi
edda664ca8
audio: Refactoring
2015-01-24 14:53:42 +09:00
Hajime Hoshi
b57c675996
Remove internal.RGBA
2015-01-24 14:53:40 +09:00
Hajime Hoshi
4d702f964f
audio: CurrentBytes returns the time on inserting new sound chunk
2015-01-24 14:53:33 +09:00
Hajime Hoshi
88ac129dd6
Refactoring: only one nextInsertion is needed
2015-01-23 21:51:21 +09:00
Hajime Hoshi
8d250c6b25
audio: Add channel.nextInsertion
2015-01-23 10:58:18 +09:00
Hajime Hoshi
4b74411922
audio: Introduce channels
2015-01-23 03:02:23 +09:00
Hajime Hoshi
ba3a612ce4
Bug fix: Add 'Add' method for non-js environment
2015-01-21 10:37:15 +09:00
Hajime Hoshi
4c37efd673
Merge branch 'master' into audio
2015-01-21 10:12:14 +09:00
Hajime Hoshi
1fa39e3b8a
Fix a variable name
2015-01-21 10:12:05 +09:00
Hajime Hoshi
5b41374ac7
Support touch events (esp. for mobile browsers) ( #76 )
2015-01-21 02:58:29 +09:00
Hajime Hoshi
d994f34d53
Add image.ReplacePixels; Add example/noise ( #89 )
2015-01-20 23:58:58 +09:00
Hajime Hoshi
ff020e8b1c
example/keyboard: Add a keyboard image
2015-01-18 21:33:59 +09:00
Hajime Hoshi
0bd0a4dbc2
Rename image.FillRect -> DrawFilledRect (FillRect is confusing with Fill)
2015-01-18 04:19:38 +09:00
Hajime Hoshi
26358f3e63
Revert lines' vetices (float64 -> int)
2015-01-17 23:33:57 +09:00
Hajime Hoshi
f0d40b4e1f
Revert rectangles' vetices (float64 -> int)
2015-01-17 23:31:09 +09:00
Hajime Hoshi
1659e9abab
Bug fix: Line's vertices should be moved by 0.5
2015-01-17 23:04:19 +09:00
Hajime Hoshi
683ffafe8d
Bug fix: image.Pixels didn't work on WebGL
2015-01-17 19:06:58 +09:00
Hajime Hoshi
efe7b62745
Refactoring (use math.MaxUint16)
2015-01-17 14:44:47 +09:00
Hajime Hoshi
58e2f27513
Use gl.* types instead of int
2015-01-17 14:21:38 +09:00
Hajime Hoshi
8c15b57d58
Add image.DrawLine / DrawLines
2015-01-17 14:17:42 +09:00
Hajime Hoshi
22e6996f74
Remove rectVertexQuads
2015-01-17 03:51:21 +09:00
Hajime Hoshi
db9f5e0984
example:shapes Bug fix: Structs containing js.Object can't be compared again
2015-01-17 01:11:30 +09:00
Hajime Hoshi
fe69c04f8f
Bug fix: Structs containing js.Object can't be compared (for now)
2015-01-17 00:56:38 +09:00
Hajime Hoshi
8564ba8541
Use (un)signed short vertices ( #90 )
2015-01-16 10:37:26 +09:00
Hajime Hoshi
155be5a88d
Add Rect.Color
2015-01-16 01:57:10 +09:00
Hajime Hoshi
037f35b0db
Pass color values for each vertex on drawing rects
2015-01-16 01:57:07 +09:00
Hajime Hoshi
b2924d193b
Use vertices for DrawTexture
2015-01-16 01:01:52 +09:00
Hajime Hoshi
2ec8c39cdd
Remove the first argument of FillFramebuffer
2015-01-15 23:42:08 +09:00
Hajime Hoshi
3e376cae18
Update for the latest GopherJS (js.Object can't be casted to other types)
2015-01-15 23:26:05 +09:00
Hajime Hoshi
59ed15b2f7
Bug fix: Use prevent default properly
2015-01-15 22:28:05 +09:00
Hajime Hoshi
25cf2dab22
sprites: Speed up: use float64 as often as possible
2015-01-14 23:58:34 +09:00
Hajime Hoshi
3200ae58a4
Fix a comment
2015-01-14 23:38:25 +09:00
Hajime Hoshi
cb26342b3d
Bug fix ( #85 ): The limit of the size of vertices was wrong
2015-01-14 23:29:14 +09:00
Hajime Hoshi
f27ba0ea03
Enable gopherjs test
2015-01-14 23:16:06 +09:00
Hajime Hoshi
6aef42d6fa
Bug fix: limit for the number of vertices
2015-01-14 10:31:09 +09:00
Hajime Hoshi
665ef46064
Add example/sprites ( #83 )
2015-01-13 23:03:37 +09:00
Hajime Hoshi
0328b049d0
Add image.DrawRects (experimental)
2015-01-13 10:36:19 +09:00
Hajime Hoshi
f0519b8604
Use location cache
2015-01-12 23:16:34 +09:00
Hajime Hoshi
9418d4c577
Change useProgramTexture not to return program
2015-01-12 21:04:52 +09:00
Hajime Hoshi
243208b849
Rename programColorMatrix -> programFragmentShader
2015-01-12 18:34:02 +09:00
Hajime Hoshi
02dbeef1b9
Add docs for gamepad API (I checked it worked on Chrome)
2015-01-12 14:59:12 +09:00
Hajime Hoshi
8987f7a645
Implement Gamepad API for JavaScript (working on Firefox so far)
2015-01-12 14:36:13 +09:00
Hajime Hoshi
a500d3a3f8
Improve example/gamepad
2015-01-12 13:33:21 +09:00
Hajime Hoshi
a6b7eab71b
Add Gamepad API
2015-01-12 02:29:56 +09:00
Hajime Hoshi
a220251716
Play music at example/audio
2015-01-11 19:52:11 +09:00
Hajime Hoshi
355da1bcbc
Add Experimental Audio API
2015-01-11 18:03:51 +09:00
Hajime Hoshi
3b02993a5d
Modify comments
2015-01-10 19:59:47 +09:00
Hajime Hoshi
15c7341816
Replace .on* = func -> addEventListener = func
2015-01-10 15:51:07 +09:00
Hajime Hoshi
e656b607f6
Add TODO comment
2015-01-10 01:02:26 +09:00
Hajime Hoshi
6dbe57ec11
Change test import paths
2015-01-10 00:55:53 +09:00
Hajime Hoshi
e7599a6d85
docs: Move example *.js and *.js.map files to another repository
2015-01-10 00:45:21 +09:00
Hajime Hoshi
d96de18074
Remove TODOs
2015-01-09 12:13:29 +09:00
Hajime Hoshi
1dd1403aac
Bug fix: opengl.NewBuffer may accept integer value (glfw)
2015-01-09 02:28:16 +09:00
Hajime Hoshi
636ae84ad5
Resolve TODOs
2015-01-09 02:02:56 +09:00
Hajime Hoshi
eb325c9684
Update docs
2015-01-08 23:45:30 +09:00
Hajime Hoshi
5dade52621
Bug fix: Use document.hidden (focus/blue event is not reliable when using <iframe>)
2015-01-08 11:56:21 +09:00
Hajime Hoshi
d933c54e20
Bug fix: Check window.top's focus in case that game is in <iframe>
2015-01-08 02:24:05 +09:00
Hajime Hoshi
a1214ff735
Stop the game when the window is not active ( #69 )
2015-01-08 01:35:09 +09:00
Hajime Hoshi
6efb806cc2
Stabilize FPS for JS
2015-01-08 00:44:41 +09:00
Hajime Hoshi
9915e6764a
Bug fix: blurred canvas in Retina display ( #68 )
2015-01-08 00:01:18 +09:00
Hajime Hoshi
27cd0610d1
Add 'auto-generated' notices ( #66 )
2015-01-07 23:21:52 +09:00
Hajime Hoshi
4eaa16b8d1
Rename mod key names
2015-01-07 23:18:40 +09:00
Hajime Hoshi
6bdc875596
Bug fix: Ignore unknown keys
2015-01-07 23:02:58 +09:00
Hajime Hoshi
f78c79a5dd
Bug fix: onkeydown function should return false to prevent browser shortcuts
2015-01-07 23:01:23 +09:00
Hajime Hoshi
a710db4c9e
Bug fix: invalidate function keys, backspace on browsers
2015-01-07 11:22:48 +09:00
Hajime Hoshi
9f40da41fc
Add backspace (not tested)
2015-01-07 11:22:25 +09:00
Hajime Hoshi
62d1395670
Arrange key's order
2015-01-07 11:00:15 +09:00
Hajime Hoshi
74e3c40740
Yield focus to canvas on clicking body
2015-01-07 04:39:33 +09:00
Hajime Hoshi
795e7c8eb2
Focus canvas on start ( #64 )
2015-01-07 04:34:47 +09:00
Hajime Hoshi
03cf0a7069
Bug fix: glfw.MouseButton should be converted to MouseButton
2015-01-07 04:04:04 +09:00
Hajime Hoshi
7677d885a2
Remove MouseButtonMax
2015-01-07 03:08:33 +09:00
Hajime Hoshi
bc26690b14
Add genkey.go
2015-01-07 03:05:59 +09:00
Hajime Hoshi
9d12a23172
Bug fix: preventDefault may prevent other events
2015-01-07 02:24:47 +09:00
Hajime Hoshi
a9f1b4f0e9
Add keys_glfw.go and keys_js.go
2015-01-07 00:05:46 +09:00
Hajime Hoshi
0ab90197a3
Implement IsMouseButtonPressed / CursorPosition in JS ( #53 )
2015-01-06 23:41:03 +09:00
Hajime Hoshi
b85bae38e9
Change the way to generate assets not to use unsafe; Unsafe doesn't work in GopherJS at least
2015-01-06 22:59:15 +09:00
Hajime Hoshi
c98631a703
Add input_glfw.go; Rename ui.go -> ui_glfw.go
2015-01-06 21:54:42 +09:00
Hajime Hoshi
324e8653fb
Update docs to use GopherJS ( #54 )
2015-01-06 00:44:39 +09:00
Hajime Hoshi
3f45685136
Centering <canvas>
2015-01-05 22:22:47 +09:00
Hajime Hoshi
1a4b25b23f
Change <title> on ui.Start ( #56 )
2015-01-05 22:08:22 +09:00
Hajime Hoshi
cdc29210db
Introduce ImageParts
2015-01-05 09:32:27 +09:00
Hajime Hoshi
8994ffad9b
Avoid copying arrays
2015-01-04 22:26:20 +09:00
Hajime Hoshi
265a85e922
Update for newer gopherjs
2015-01-04 22:25:58 +09:00
Hajime Hoshi
abed162e91
Bug fix: initial capacity of vertices
2015-01-03 16:25:17 +09:00
Hajime Hoshi
f80850ef14
Reduce calling gl.Flush
2015-01-03 16:21:09 +09:00
Hajime Hoshi
52e610845b
Avoid using struct key
2015-01-03 16:16:43 +09:00
Hajime Hoshi
3ad8d8ea2c
Use attrib location cache
2015-01-03 15:56:54 +09:00
Hajime Hoshi
13a94d3446
Avoid type switch
2015-01-03 15:52:02 +09:00
Hajime Hoshi
71d463c102
Avoid copying for performance; Use location caches
2015-01-03 15:21:47 +09:00
Hajime Hoshi
1117862d19
Avoid copying for performance
2015-01-03 14:23:31 +09:00
Hajime Hoshi
447bda7d68
Remove calling gl.checkFramebufferStatus
2015-01-03 02:01:30 +09:00
Hajime Hoshi
091cc215fb
Remove NextPowerOf2 (for uint64)
2015-01-03 01:46:25 +09:00
Hajime Hoshi
62f47ed02f
Change the body's background color black
2015-01-03 01:19:25 +09:00
Hajime Hoshi
ae04bb17f6
Reduce calling glFlush
2015-01-03 01:14:36 +09:00
Hajime Hoshi
47227139db
Implement keyboard events for js
2015-01-03 00:52:49 +09:00
Hajime Hoshi
5c755f2f31
Fix BindFramebuffer to pass JS null object explicitly
2015-01-02 23:52:40 +09:00
Hajime Hoshi
24c39bcd18
Fix shaders for WebGL
2015-01-02 23:31:32 +09:00
Hajime Hoshi
bd4434c62c
Add loadimage_js.go
2015-01-02 16:48:07 +09:00
Hajime Hoshi
cadb3fffdf
Add ui_js.go and input_js.go
2015-01-02 15:20:05 +09:00
Hajime Hoshi
c95390801a
Add keys.go
2015-01-02 03:29:51 +09:00
Hajime Hoshi
c4e104a5d2
Remove ui.ActualScale()
2015-01-02 03:28:43 +09:00
Hajime Hoshi
3d01084a2a
Hide structs in internal/ui
2015-01-02 03:25:31 +09:00
Hajime Hoshi
a9e323d02c
Rename input -> Input
2015-01-02 02:44:00 +09:00
Hajime Hoshi
8994bf4fad
Rename RealScale -> ActualScale
2015-01-02 02:23:47 +09:00
Hajime Hoshi
96f5315c49
Add internal/ui module
2015-01-02 02:13:27 +09:00
Hajime Hoshi
bcbaf2e674
Bug fix: opengl.Program can't take 0 (in gopherjs)
2014-12-31 23:53:54 +09:00
Hajime Hoshi
438380bb6e
Add context_js.go
2014-12-31 23:34:50 +09:00
Hajime Hoshi
25fb0a9e31
Unify Uniform* methods
2014-12-31 20:07:27 +09:00
Hajime Hoshi
e10bcb3dd8
Move some methods to opengl.Context
2014-12-31 19:27:41 +09:00
Hajime Hoshi
4e3beb65f0
Rename Framebuffer.framebuffer -> Framebuffer.native
2014-12-31 18:00:53 +09:00
Hajime Hoshi
cdcc46543b
Remove all dependencies on go-gl/gl from internal/graphics
2014-12-31 17:54:29 +09:00
Hajime Hoshi
f88154f380
Add opengl.Context.NewBuffer
2014-12-31 17:45:23 +09:00
Hajime Hoshi
7597268e85
Remove dependency on go-gl/gl in framebuffer.go
2014-12-31 17:04:03 +09:00
Hajime Hoshi
37828c452f
Add opengl.AttribLocation
2014-12-31 17:01:08 +09:00
Hajime Hoshi
b8dde70b03
Add opengl.UniformLocation
2014-12-31 16:48:25 +09:00
Hajime Hoshi
dc6a153c65
Add opengl.Context.NewShader
2014-12-31 16:12:13 +09:00
Hajime Hoshi
a4a4c91eb1
Add opengl.Framebuffer.Fill
2014-12-31 15:26:06 +09:00
Hajime Hoshi
fbcd04cda8
Add opengl.Framebuffer.SetAsViewport
2014-12-31 15:22:15 +09:00
Hajime Hoshi
b1d4ce2120
Add opengl.Texture.Pixels
2014-12-31 15:11:19 +09:00
Hajime Hoshi
cc9b874dd0
Add opengl.NewTexture
2014-12-31 15:00:28 +09:00
Hajime Hoshi
efb759d23c
Add package internal/opengl
2014-12-31 03:04:52 +09:00
Hajime Hoshi
450a8da267
Rename internal/opengl -> internal/graphics
2014-12-31 02:55:17 +09:00
Hajime Hoshi
0f569807e2
Bug fix: rename short32Size -> float32Size
2014-12-31 02:46:37 +09:00
Hajime Hoshi
957b4d392f
Refactoring: Hide some functions of opengl
2014-12-31 02:06:08 +09:00
Hajime Hoshi
22035e79fe
Reduce panics ( #16 )
2014-12-29 00:21:40 +09:00
Hajime Hoshi
7dd9368ad7
Compress text.png
2014-12-27 23:09:52 +09:00
Hajime Hoshi
4a07c6f0df
Refactoring: gl bug fix
2014-12-27 17:58:39 +09:00
Hajime Hoshi
48f639db02
Bug fix: glfw's framebuffer might be lately changed after consuming some events
2014-12-26 20:44:35 +09:00
Hajime Hoshi
ce81251730
Bug fix: gl.EnableClientState should not be called
2014-12-26 20:13:57 +09:00
Hajime Hoshi
f2fbd991d2
Rename ImageDrawOptions -> DrawImageOptions ( #43 )
2014-12-26 01:39:48 +09:00
Hajime Hoshi
389b2b75f2
Remove currentVBO
2014-12-26 01:19:08 +09:00
Hajime Hoshi
c156cb1e66
Use VBO for vertices, tex coords ( #2 )
2014-12-26 01:11:42 +09:00
Hajime Hoshi
7f6e440d97
Use VBO for indices ( #2 )
2014-12-25 23:16:18 +09:00
Hajime Hoshi
373371d1b2
Change license comments style to use magic comments (magic comments like +build should be placed before a general comment)
2014-12-24 11:04:10 +09:00
Hajime Hoshi
27fe3d9ab8
Reduce depndencies on go-gl/gl
2014-12-23 04:32:36 +09:00
Hajime Hoshi
cd9efd3932
Implement image.Image at ebiten.Image ( #35 )
2014-12-23 01:27:11 +09:00
Hajime Hoshi
095c3ca380
Rename opengl.Image (that is originally wrong) -> opengl.Framebuffer
2014-12-23 00:01:22 +09:00
Hajime Hoshi
1663ad2250
Remove shader programColorFinal
2014-12-22 22:49:14 +09:00
Hajime Hoshi
2620414409
Simplify shaders
2014-12-22 21:51:58 +09:00
Hajime Hoshi
a3b0831472
Change the texture pixel format to premultiplied alpha ( #36 )
2014-12-22 21:39:25 +09:00
Hajime Hoshi
0f8ac49055
Unify RenderTarget and Image into Image ( #34 )
2014-12-22 11:10:08 +09:00
Hajime Hoshi
89c6e7c371
Add comments
2014-12-22 01:54:07 +09:00
Hajime Hoshi
99434fa9d3
Bug fix: Consider color.Color.RGBA returns alpha-premultiplied values
2014-12-22 01:05:21 +09:00
Hajime Hoshi
79b67db0d8
Rename AdjustSizeForTexture -> NextPowerOf2Int
2014-12-21 02:05:08 +09:00
Hajime Hoshi
59270a6b54
Refactoring
2014-12-21 01:04:49 +09:00
Hajime Hoshi
aed317649f
Rename members of TextureQuad
2014-12-21 00:59:32 +09:00
Hajime Hoshi
991adb7449
Change RenderTexture to interface
2014-12-21 00:36:27 +09:00
Hajime Hoshi
01e0d42451
Remove GraphicsContext; Add rendering methods to RenderTarget ( #26 )
2014-12-20 23:24:15 +09:00
Hajime Hoshi
d4cd858eeb
Improve alphablending example
2014-12-20 19:11:06 +09:00
Hajime Hoshi
df35a0ce1e
Bug fix: the default framebuffer can't bind a texture
2014-12-20 18:57:00 +09:00
Hajime Hoshi
02660346c3
Call gl.Flush in DrawTexture
2014-12-20 15:36:31 +09:00
Hajime Hoshi
ccef1b5e65
Remove unneeded shaders
2014-12-20 05:59:07 +09:00
Hajime Hoshi
6673a39fa2
Introduce Photoshop-like alpha blending
2014-12-20 05:57:18 +09:00
Hajime Hoshi
f3e4d1703d
Add Texture.Width, Height and RenderTarget.Width, Height
2014-12-17 22:50:44 +09:00
Hajime Hoshi
1c460d80c3
Add examples/image
2014-12-17 17:10:38 +09:00
Hajime Hoshi
c1fa38ebed
Remove panic
2014-12-14 21:38:54 +09:00
Hajime Hoshi
60aad4326e
Hide members of RenderTarget (again)
2014-12-14 18:34:47 +09:00
Hajime Hoshi
8319e0d41d
Remove package glfw (once)
2014-12-14 17:00:11 +09:00
Hajime Hoshi
76b7da090c
Remove dependencies on ebiten from opengl
2014-12-14 15:26:10 +09:00
Hajime Hoshi
d264d7a06b
Remove dependencies on ebiten from shader
2014-12-13 14:53:54 +09:00
Hajime Hoshi
4addf8f9af
Rename PushOffscreen -> PushRenderTarget
2014-12-13 14:53:53 +09:00
Hajime Hoshi
54509e42cf
Add GraphicsContext.PushOffscreen / PopOffscreen ( #21 )
2014-12-11 03:50:35 +09:00
Hajime Hoshi
f388a48d52
Add go:generate gofmt
2014-12-11 02:03:13 +09:00
Hajime Hoshi
d5529d4351
Add ebitenutil/debugprint.go
2014-12-11 01:59:38 +09:00
Hajime Hoshi
a39f0e904d
Remove some methods; Add Game.Initialize
2014-12-11 01:12:46 +09:00
Hajime Hoshi
343916ad29
Add GameContext; Remove Input and TextureFactory
2014-12-10 23:52:37 +09:00
Hajime Hoshi
b313578a24
Add ebiten/runner; Move glfw -> internal/glfw
2014-12-10 22:55:34 +09:00
Hajime Hoshi
ab47f14124
Move opengl -> internal/opengl
2014-12-10 00:25:54 +09:00