Hajime Hoshi
d83799acf8
opengl: Bug fix: mobile build failure
2018-06-20 11:16:21 +09:00
Hajime Hoshi
8d644479cc
opengl: Initialize consts first to avoid 'Get' calls
2018-06-19 04:02:56 +09:00
Hajime Hoshi
62bd35e412
Avoid 'Get' call if possible
...
(*js.Value).Get has some overhead especially on Wasm.
2018-06-19 03:43:24 +09:00
Hajime Hoshi
702a429afb
opengl: Faster conversion from []float32 to Float32Array
2018-06-19 03:31:53 +09:00
Hajime Hoshi
460c47a9eb
opengl: Pass slices to js.Value
2018-06-16 02:19:18 +09:00
Hajime Hoshi
3fbe8d8ecb
opengl: Change Shader/Program/Buffer to js.Value
2018-06-16 00:30:16 +09:00
Hajime Hoshi
2497b64cf7
opengl: Change uniformLocation to js.Value
2018-06-16 00:30:16 +09:00
Hajime Hoshi
17ccf06755
opengl: Change Texture/Framebuffer to js.Value
2018-06-16 00:30:16 +09:00
Hajime Hoshi
48e2c2aba9
opengl: Use gopherwasm
2018-06-16 00:30:16 +09:00
Hajime Hoshi
03e3f0f5f7
graphics: Call glBufferSubData for element array buffer every frame
...
This is a preparation for more flexible drawing commands.
2018-05-31 00:53:05 +09:00
Hajime Hoshi
399f965729
opengl: Add BindBuffer accepting both element-array-buffer and array-buffer
...
This change is a pure refactoring to clarify that array buffer is
binded before its usage.
2018-05-28 00:34:00 +09:00
Hajime Hoshi
4c5613d73c
opengl: Remove unneeded casts
2018-05-23 01:29:16 +09:00
Hajime Hoshi
b84dc0585d
opengl: Remove dependencies on gopherjs/webgl
...
This is a preparation for #528
2018-05-23 00:48:24 +09:00
Hajime Hoshi
f5336ce7bc
opengl: Use 'EXT' functions for framebuffers
...
Some pretty old machines don't support OpenGL 3.x or later, and in
such environment, some framebuffer functions like glGenFramebuffers
are not available. Instead, EXT versions can be used even on
machines that don't support OpenGL 3.x.
After this change, Ebiten always tries to use EXT version of
framebuffer functions. I believe EXT version is always available
when non-EXT version is available, so this chang eshould be safe.
Fixes #602
2018-05-10 02:11:23 +09:00
Hajime Hoshi
6a34b87a6c
opengl: Refactoring
2018-05-02 01:01:04 +09:00
Hajime Hoshi
c0b1919020
opengl: Refactoring: More similar way to golang.org/x/mobile/app
2018-03-25 18:23:34 +09:00
Hajime Hoshi
2110191794
mobile: Accept gomobile build ( #249 )
2018-03-24 02:52:42 +09:00
Hajime Hoshi
b8025d06f8
opengl: Specify texture wrap (CLAMP_TO_EDGE)
2018-03-21 02:27:11 +09:00
Hajime Hoshi
e977019d2f
graphics: Detect maximum texture size for each environment
...
Fixes #537 , #539
See also #541
2018-03-09 11:47:23 +09:00
Hajime Hoshi
2dc4f3fdf0
opengl: Remove FillFramebuffer
...
Fixes #536
2018-03-08 12:01:24 +09:00
Hajime Hoshi
3479b80f1c
opengl: Use unsafe-way to convert []float32/[]uint16 to []byte; Remove internal/endian
2018-03-04 18:06:35 +09:00
Hajime Hoshi
127f6c09c8
graphics: Specify rect to glTexSubImage2D
2018-03-01 01:58:09 +09:00
Hajime Hoshi
86671f3337
opengl: Remove pixels argument from NewTexture
2018-02-25 23:34:34 +09:00
Hajime Hoshi
591e0ad995
graphics: Add 'screen' filter for fast rendering ( #509 )
2018-02-23 01:28:35 +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
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
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
eeea25f202
opengl: Remove 'normalize' argument from VertexAttribPointer
2017-12-03 19:21:59 +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
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
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
2d5b062c3c
opengl: Refactoring: Replace NewBuffer with new funcs
...
Replace NewBuffer with NewArrayBuffer and NewElementArrayBuffer
2017-09-01 01:30:09 +09:00
Hajime Hoshi
d46d9ac7c2
opengl: Remove GlslHighpSupported
2017-07-24 22:59:25 +09:00
Hajime Hoshi
26a83c0e00
opengl: Define Texture/Framebuffer Equals for JS performance
2017-07-02 22:18:49 +09:00
Hajime Hoshi
7d181e3182
opengl: Hide OpenGL context usages into internal/graphics package
2017-05-31 02:18:04 +09:00
Hajime Hoshi
90ec2c79ce
opengl: Bug fix: return error when error occurs
2017-05-30 01:46:48 +09:00
Hajime Hoshi
b409631515
Add FreeBSD support ( #352 )
2017-05-11 19:09:13 +09:00
Hajime Hoshi
bb993a481b
graphics: Bug fix: Outside texels are used ( #317 )
2017-02-06 09:10:44 +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
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
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
07294a98b6
Move internal/graphics/opengl -> internal/opengl
2016-11-03 23:31:25 +09:00
Hajime Hoshi
346bc53d53
Move internal/opengl -> internal/graphics/internal/opengl
2015-01-26 23:27:28 +09:00
Hajime Hoshi
d994f34d53
Add image.ReplacePixels; Add example/noise ( #89 )
2015-01-20 23:58:58 +09:00
Hajime Hoshi
683ffafe8d
Bug fix: image.Pixels didn't work on WebGL
2015-01-17 19:06:58 +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
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
037f35b0db
Pass color values for each vertex on drawing rects
2015-01-16 01:57:07 +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
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
f0519b8604
Use location cache
2015-01-12 23:16:34 +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
265a85e922
Update for newer gopherjs
2015-01-04 22:25:58 +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
447bda7d68
Remove calling gl.checkFramebufferStatus
2015-01-03 02:01:30 +09:00
Hajime Hoshi
ae04bb17f6
Reduce calling glFlush
2015-01-03 01:14:36 +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
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
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
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