Chris Robinson
2c5c5a5397
Add and use custom string types and functions
2019-09-16 13:45:14 -07:00
Chris Robinson
bf2c865d39
Clean up some more shadowing warnings
2019-09-16 07:16:31 -07:00
Chris Robinson
e4cc77ea23
Fix a few warnings from MSVC
2019-09-14 20:19:59 -07:00
Chris Robinson
807d3b64ca
Enable and fix more warnings
2019-09-14 18:35:23 -07:00
Chris Robinson
2c348cecb6
Fix some more implicit conversions noted by GCC
2019-09-14 18:35:23 -07:00
Lopuska
0023614da5
pass proper effects slot number to AddActiveEffectSlots
...
It resolves wrong logic when creating more than 1 aux slot at time in a batch
2019-09-15 02:09:05 +02:00
Chris Robinson
42ae95b8fa
Remove a couple no-op statements
2019-09-13 14:44:52 -07:00
Chris Robinson
df306b5524
Make NumAuxSends unsigned
2019-09-13 04:15:05 -07:00
Chris Robinson
5ca8796d6a
Clean up some lambda definitions
2019-09-12 17:10:33 -07:00
Chris Robinson
70b58d79fe
Fix source limit check
2019-09-12 12:19:07 -07:00
Chris Robinson
6ca8fadd58
Fix counting free objects
2019-09-12 12:14:23 -07:00
Chris Robinson
ac48569c69
Avoid a macro call and mark unlikely paths as unlikely
2019-09-12 11:59:36 -07:00
Chris Robinson
2e010d29cb
Clean up implicit conversions in source.cpp
2019-09-12 11:33:04 -07:00
Chris Robinson
c0ce03d8b9
Get rid of more implicit conversions
2019-09-12 06:29:32 -07:00
Chris Robinson
07e2aa3bc0
Clean up some more implicit conversions
2019-09-11 14:33:26 -07:00
Chris Robinson
681c78d348
Allocate buffer batches separately from buffers
2019-09-11 12:28:33 -07:00
Chris Robinson
be0442c620
Avoid C-style casts in C++
2019-09-11 06:47:56 -07:00
Chris Robinson
388928f3aa
Fix some more implicit casts
2019-09-11 05:53:10 -07:00
Chris Robinson
987fd13796
Use a new voice when restarting a playing source
2019-09-06 21:20:20 -07:00
Chris Robinson
e5c9643dd5
Combine two functions into one
2019-09-05 15:08:22 -07:00
Chris Robinson
97c043da07
Don't set voice properties in ApplyOffset
2019-09-05 04:00:49 -07:00
Chris Robinson
ef2769af03
Use a normal vector for the voices array
2019-09-04 23:04:55 -07:00
Chris Robinson
3d7ce5a860
Use global placement new for AL object batches
2019-09-01 18:07:16 -07:00
Chris Robinson
bb35e24c9b
Avoid unnecessary placement new definitions
2019-09-01 17:54:17 -07:00
Chris Robinson
727217ce0a
Ensure AL_STOPPED state change events are sent
...
With explicit calls to alSourceStop on a playing or paused source
2019-09-01 15:28:33 -07:00
Chris Robinson
aee10ef606
Hold the source lock in UpdateAllSourceProps
2019-09-01 00:29:26 -07:00
Chris Robinson
3973334a64
Store the voice fraction offset as unsigned
2019-08-31 15:49:34 -07:00
Chris Robinson
024d5d900a
Dereference the correct buffer when destructing a source
2019-08-21 03:00:19 -07:00
Chris Robinson
351ccf2e11
Use new/delete for context and effectslot properties
2019-08-13 22:25:59 -07:00
Chris Robinson
ecab99bce9
Move update pointers to the containers they update
2019-08-13 22:06:14 -07:00
Chris Robinson
0806a003e2
Use new/delete for listener properties
2019-08-13 20:33:44 -07:00
Chris Robinson
91ff01d1ad
Don't explicitly inline a particular function
2019-08-13 20:33:26 -07:00
Chris Robinson
81d17bb80f
Fix some return types
2019-08-12 14:30:47 -07:00
Chris Robinson
1aaf65abfe
Add methods to get env vars as an optional
2019-08-12 03:59:52 -07:00
Chris Robinson
50d16d2422
Don't use INT_MAX for unknown span lengths
...
32-bit doesn't like it, for some reason. Use the largest possible length it
could be.
2019-08-11 22:48:18 -07:00
Chris Robinson
7118733458
Remove multiple buffers per queue item
...
And simplify related code
2019-08-11 14:01:57 -07:00
Chris Robinson
dca2365051
Fix array access index
2019-08-10 20:31:08 -07:00
Chris Robinson
7c069e29ee
Update some more includes
2019-08-06 23:13:05 -07:00
Chris Robinson
d24401c3f3
Move the meters per unit property to the listener
2019-08-05 12:15:14 -07:00
Chris Robinson
3154a915b1
Remove the ReverbSpeedOfSound hack
...
No other effect depends on context or listener properties, so reverb being the
only exception for speed of sound and meters per unit was putting extra work on
the effect engine for no real reason. Especially since the reverb decay time
should be the time actual time to decay irrespective of other settings.
2019-08-05 11:37:05 -07:00
Chris Robinson
3bc9490fd2
Move some structs to where they're used
2019-08-04 17:45:46 -07:00
Chris Robinson
2fa2c35bdc
Modify LIKELY and UNLIKELY to not need extra parenthesis
2019-08-04 11:59:14 -07:00
Chris Robinson
7897de31d0
Pass spans to the source get-property methods
2019-08-03 19:36:19 -07:00
Chris Robinson
7baa07e3ad
Pass spans to the source set-property methods
...
This avoids an extra property check to get the size since the number of values
can be checked when accessed.
2019-08-03 18:57:38 -07:00
Chris Robinson
9f223898f2
Use an unsigned voice index
2019-08-02 12:38:20 -07:00
Chris Robinson
33bcced82a
Use a smart pointer for holding the context's device
2019-08-01 19:44:09 -07:00
Chris Robinson
4917024c94
Reduce the AsyncEvent struct size
...
The "user" message length is significantly reduced to fit the struct in 256
bytes, rather than 1KB.
2019-08-01 15:54:17 -07:00
Chris Robinson
65f7fc610e
Add a common base for auto-deleting ref-counted objects
...
Which will also work as the basis for a future intrusive_ptr
2019-08-01 13:43:32 -07:00
Chris Robinson
a0aa5bc80a
Add iterators to ALbufferlistitem
...
And change some types to ALuint
2019-07-31 09:20:53 -07:00
Chris Robinson
4cd7eee01c
Remove improper include
2019-07-30 21:50:47 -07:00