I like how on your profile I saw the first person on your 'last 10 people to visit this page' was Bob Smith
:munching_
maybe you shouldn't post those files
mnm.. problem is that in most cars the rev limiter is an ignition cut-off, and LFS seems to have a "mechanical" limiter so the engine is at max load when full rev.
I agree with the servers deciding, as suggested by NightShift.
The sounds can work the same way skins are used.
I don't see people's problem with 'big' and 'nasty' ENG. files, they're only ~280KB.
Besides, the sounds don't have to be saved anywhere except the user's PC, then uploaded to the server upon connecting. Then when another user connects, they load every other car's position, skin, and engine.
I'm pretty sure the only reason the ENG file has significant size to it is that it stores all the loaded sounds - IE engine pulse, gear shift, turbo, BOV, air intake, etc... so you shouldn't have to load everyone's BOV sounds, shifter sound, Etc.. just each user would have thier own individual slider settings loaded(as in SHIFT+A mode). preferably not including the Volume adjustment slider and the BOV, gear whine, intake, other sounds in the ENG should all be the same/not included in the individual loading.
And while the server has the choice between individual sound settings or random variation, put it in the multiplayer speed-up options to allow or disallow individualized engine sounds, and voila everyone's happy.
I see.
But, I wasn't so much focused on the wheel (at all actually), but the vehicle's chassis. If it worked, you would hear any major bump that you encountered, including a collision with a wall or another vehicle.
Not relying directly on the physics engine (somehow), would also allow a much higher sampling rate.
nice explanation
definitely answered all the questions that I couldn't ask, all for my lack of knowledge on the subject.
I apologize for being too persistent and possibly beating a dead horse.. but
I still wonder if such a sound engine even with a low pass filter @ 50-60Hz (which sounds like an acceptable range to me, IMO the only missing sounds are the deep thundering bass and rumbling)
Correct me if I'm wrong, since this is mostly based off of what I read on the page above - according to the 'Nyquist–Shannon sampling theorem' (found here), with a sampling rate of 100Hz, sounds from 50Hz and below will "allow theoretically perfect reconstruction" ?
I don't have any doubt that you know exactly what you're talking about, so maybe the source of my misunderstanding is not knowing what interpolation is.
But according to the theorem I read about sampling rate- for a car traveling at 35 meters per second, the shortest distance between bumps is 70cm to hear vibrations at 50Hz.
I can't seem to find any dimensions for the 'rumble strips' in LFS, but if each colored strip is 1 meter in length and every strip is a bump then 50Hz would be at 50 meters/second or ~ 112 MPH .. right?
If the red strips are bumps and each white strip is a dip, then a frequency of about 50Hz would occur at 100 meters/s or ~224mph.
Perhaps I'll see if i can pick up on programming and have a go at making a standalone app for outgauge. The sound doesn't even have to be very accurate. This concept is only practical if it isn't about generating sounds based on the acceleration, rather triggering the sound of vibrations and impacts based on the acceleration changes.
whew I feel like i just wrote an essay - sorry for the long post
Well, since this thread is still being bumped i'll throw my two cents in..
I think majority of the sounds mentioned above could be simulated in a fairly simple yet accurate way (bear with me, I'm not an expert :shrug ;
sounds could be simulated by placing acceleration data on a waveform graph, which (I think) can be converted to sound - especially if it's possible to find vibration amplitude (disp, vel, acc) using acceleration/time.
for example: gently bumping the car into an object or a wall would cause a
spike in the car's acceleration, which would result in a thump sound.
like this
Maybe it's more simple then I'm picturing it to be..
if you can convert [acc/time] to [sound pressure(db)/time] I think it could work.