Commit Graph

3339 Commits

Author SHA1 Message Date
Hajime Hoshi
e61af537f4 audio/vorbis: Use jfreymuth/oggvorbis when the target is Wasm 2018-07-05 02:27:23 +09:00
Hajime Hoshi
de7065bbf7 audio/vorbis/internal/stb: Use float32 version of decoder for efficiency 2018-07-05 01:37:51 +09:00
Hajime Hoshi
9bf2eaff58 audio/vorbis/internal/stb: Rename files 2018-07-04 12:04:00 +09:00
Hajime Hoshi
992f6c767a audio/vorbis: Use stb_vorbis.c on browsers
This change adds a Ogg/Vorbis decoder stb_vorbis.c usage that is
compiled by Emscripten as WebAssembly.

Fixes #623
2018-07-04 01:23:11 +09:00
Hajime Hoshi
21fd6a2edc examples/flappy: Remove println 2018-07-04 00:23:34 +09:00
Hajime Hoshi
e4f157d9cd opengl: Remove unused code 2018-06-30 12:34:40 +09:00
Hajime Hoshi
2c0f3d4302 opengl: Bug fix: wrong argument to js.Value.Call 2018-06-30 12:32:15 +09:00
Hajime Hoshi
6e51d31524
Use new GopherWasm API (#634)
I plan to merge this right after
https://github.com/gopherjs/gopherwasm/pull/3 is merged.
2018-06-30 00:02:15 +09:00
Hajime Hoshi
abdf52bc74 shareable: Bug fix: Call SetFinalizer whenever a new image is created
Fixes #637
2018-06-28 22:23:07 +09:00
Hajime Hoshi
f765966742 web: Remove unused variables 2018-06-28 00:17:05 +09:00
Hajime Hoshi
f19e349d38 web: Remove IsNodeJS
gjbt now creates a pseudo-Node environment by creating
window.process object, and this conflicted with an assumption that
Ebiten doesn't nothing on Node environment. See
https://github.com/myitcv/gjbt/pull/13 for the detail.

This change allows Ebiten work on pseudo-Node environment. Even
after this change, Ebiten doesn't work on real Node environment
due to lack of DOM.
2018-06-28 00:12:24 +09:00
Hajime Hoshi
e196ee59f7 docs: Update: Add Wasm support 2018-06-27 11:59:49 +09:00
Hajime Hoshi
05fb5f3d0b docs: Update README 2018-06-27 11:55:28 +09:00
Hajime Hoshi
dec921809b shareable: Refactoring 2018-06-26 01:59:12 +09:00
Hajime Hoshi
b1e4c3c8f0 Add 'ebitendebug' build tag
EBITEN_INTERNAL_IMAGES_KEY is now disabled by default, and enabled
only when a build tag 'ebitendebug' is specified. It is because
game developers might want to disable EBITEN_INTERNAL_IMAGES_KEY
when they release their games, or anyone can dump the internal
images.

Fixes #632.
2018-06-25 23:59:32 +09:00
Hajime Hoshi
116bba0d37 Bug fix: need to install gopherjs command 2018-06-24 20:35:29 +09:00
Hajime Hoshi
1ac334931e Fix .travis.yml 2018-06-24 16:15:27 +09:00
Hajime Hoshi
a9359e4ef8 Use GopherJS/GopherWasm 2018-06-24 16:10:24 +09:00
Hajime Hoshi
a8c27b4eb1 audio/mp3: Bug fix: float32ArrayToSlice didn't work for Wasm 2018-06-24 04:33:05 +09:00
Hajime Hoshi
baee2ba4c9 audio/mp3: Bug fix: ArrayBuffer in the backend can be different from Uint8Array range 2018-06-24 02:31:34 +09:00
Hajime Hoshi
4c70ad382d audio/mp3: Bug fix: Avoid using a detached ArrayBuffer 2018-06-24 02:12:00 +09:00
Hajime Hoshi
8c9a11ddf4 opengl: Rely on gopherwasm for typed-array creation 2018-06-24 02:02:39 +09:00
Hajime Hoshi
5aefa837db audio/mp3: Use gopherwasm 2018-06-24 01:42:16 +09:00
Hajime Hoshi
ff86f8bd93 opengl: Refactoring 2018-06-23 04:43:56 +09:00
Hajime Hoshi
33e4f82d7c graphicsutil: Optimization to avoid boundary checks 2018-06-23 03:18:54 +09:00
Hajime Hoshi
6c1c60d40d opengl: Make Program struct to avoid Get() 2018-06-22 01:45:25 +09:00
Hajime Hoshi
55d832fc63 shareable: Don't extend textures on macOS
Fixes #593
2018-06-20 11:57:39 +09:00
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
840c4d24df graphicsutil: Accept matrix parameters directly for performance 2018-06-19 00:19:32 +09:00
Hajime Hoshi
459600e507 Add Philipp Steinhaus to AUTHORS 2018-06-18 00:42:56 +09:00
Philipp Steinhaus
39b3170185 input: Enable mouse wheel input (#628) 2018-06-18 00:38:30 +09:00
Hajime Hoshi
a3c754d2cc graphics: Restrict QuadVertices to allow only power of 2 sizes
Now QuadVertices can skip calculating power of 2 values.
2018-06-17 23:05:19 +09:00
Hajime Hoshi
5680ce7f46 examples/sprites: Update only shown sprites 2018-06-17 22:05:34 +09:00
Hajime Hoshi
12287a8382 graphicsutil: Reduce multiplying 2018-06-17 20:11:31 +09:00
Hajime Hoshi
ac24a8382f graphicsutil: Extract matrix applying for performance 2018-06-17 19:45:09 +09:00
Hajime Hoshi
9f34b79297 examples/sprite: Refactoring 2018-06-17 18:44:32 +09:00
Hajime Hoshi
1849b59741 graphicsutil: Refactoring 2018-06-17 17:29:36 +09:00
Hajime Hoshi
5d37c331bb graphicsutil: Remove unused arguments 2018-06-17 16:38:21 +09:00
Hajime Hoshi
95561bbf6b affine: Use float32 values for GeoM
float32 was slow on GopherJS, but not slow on Wasm.
2018-06-17 15:38:10 +09:00
Hajime Hoshi
4c2fc30311 graphicsutil: Don't allow nil GeoM 2018-06-17 01:48:56 +09:00
Hajime Hoshi
f6b7a6be73 graphics: Use copy function in appendVertices 2018-06-17 01:09:05 +09:00
Hajime Hoshi
b4ace53596 affine: Remove GeoM to avoid GeoM allocations on the heap 2018-06-17 00:59:50 +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