diff options
author | Ehsan Akhgari <ehsan.akhgari@gmail.com> | 2013-03-13 23:26:25 -0400 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-03-15 11:53:16 -0700 |
commit | c1b2061c7a703b1665dcb2196d0f8b17b85601b7 (patch) | |
tree | 7b158f70e0b35806d3146f5661cbc580caf363c2 | |
parent | 0c14f7d6aa068aadc98142fea20fa749bf03105b (diff) |
Fix the pointer math and floating point conversion in alBufferData
-rw-r--r-- | src/library_openal.js | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/library_openal.js b/src/library_openal.js index 730cb544..5215bfc3 100644 --- a/src/library_openal.js +++ b/src/library_openal.js @@ -245,12 +245,12 @@ var LibraryOpenAL = { for (var j = 0; j < channels; ++j) { switch (bytes) { case 1: - var val = {{{ makeGetValue('data', 'i+j', 'i8') }}}; + var val = {{{ makeGetValue('data', 'i*channels+j', 'i8') }}}; buf[j][i] = -1.0 + val * (2/256); break; case 2: - var val = {{{ makeGetValue('data', 'i+j', 'i16') }}}; - buf[j][i] = -1.0 + (val + -32768) * (2/65536); + var val = {{{ makeGetValue('data', '2*(i*channels+j)', 'i16') }}}; + buf[j][i] = val/32768; break; } } |