SUBSIM Radio Room Forums

SUBSIM Radio Room Forums (https://www.subsim.com/radioroom/index.php)
-   Dangerous Waters (https://www.subsim.com/radioroom/forumdisplay.php?f=181)
-   -   Community subsim (https://www.subsim.com/radioroom/showthread.php?t=104574)

Dr.Sid 01-28-07 07:56 PM

Here are some images form my experimental sound propagation model. Today I removed some bugs and made surface bounce dependent on angle the rays hit it. The bending effect is increased like 100 times, so this is nowhere near reality.

You can see sound source in the left, SSP in the right, this is distance vs. depth, so imagine you're looking from the side. Brighter means louder. Note how the rays are trapped in 'slow' medium and how almost whole sound energy they can be focused into small areas. Also note that there is no signal weakening implemented and that these focused points are much weaker that how it's displayed here. Focused points are ring in reality, and the energy distribution must follow it (it does not now). It looks magically and it is much more complicated then I expected.

Note that this is just a toy for experiments, nothing for the sim. It takes several seconds to compute these ..

Above the layer
http://roger.questions.cz/other/above-layer.jpg

Below the layer:
http://roger.questions.cz/other/below-layer.jpg

Above channel:
http://roger.questions.cz/other/above-channel.jpg

In the channel:
http://roger.questions.cz/other/in-channel.jpg

fatty 01-28-07 08:39 PM

Very interesting diagrams, they look pretty darn close to what I expect from thermoclines. Do we know if the DW sound propagation engine is as accurate as this?

SeaQueen 01-28-07 09:57 PM

Quote:

Originally Posted by Dr.Sid
It's my own program .. it's just simulation of beam bending based on different speed of propagation. You give it speed vs. depth, sound source position and it draws 2D map (distance vs depth) of sound transfer effectivity. I'll make some user interface and will post it somewhere.

It's really simple .. while I use more or less real sound speeds, I also multiply the bending effect so it is more visible. It by no means gives realistic data. Sure it can't be used .. but maybe some sound propagation effectivity maps could be computed with this and then used in simulation.

Did you just make a ray tracer or do you actually solve the parabolic equation?

Quote:

Anyway it seems you know something about it. Can you list most important phenomenons ? Let's walk thru that, let's discuss tactical importance of such effects and let's talk about their implementation, both accurate and fast.
Computational acoustics is one area where I can get extrordinarily geeky, and the scary thing is, I'm not even close to being an expert on it.

You'll never have an "accurate" model that runs in real time. The math is too hard to do that fast. I run up against this all the time in designing professional wargames. We're forced to make approximations.

You can have a model that has some substance to it, and gives reasonable results, though. There's lots of phenomena to capture, only a few of which are in DW or else they're abstracted. The way I think about everything is in terms of a sonar equation. A sort of simplified version of a sonar equation is that detection occurs when

TL <= FOM

Some acoustic phenomema are accounted for on the transmission loss (TL) side, like sound speed profile, duct cutoff frequency, bottom loss, and surface scattering. Others are accounted for in the figure of merit (FOM) side, like ambient noise, the ability of the array to filter out extraneous sources of noise, and the operator's ability to interpret the things he sees. The best place to start making a sonar model is a sonar equation.

SeaQueen 01-28-07 10:04 PM

Quote:

Originally Posted by Dr.Sid
Here are some images form my experimental sound propagation model. Today I removed some bugs and made surface bounce dependent on angle the rays hit it.

Very nice! It looks like you've made a ray tracer.

Dr.Sid 01-29-07 03:31 AM

Quote:

Originally Posted by SeaQueen
Quote:

Originally Posted by Dr.Sid
Here are some images form my experimental sound propagation model. Today I removed some bugs and made surface bounce dependent on angle the rays hit it.

Very nice! It looks like you've made a ray tracer.

Really it is raytracer. I'd like to improve it in these areas now:

- ray splitting - this should be faster closer to the sound source and more accurate far from the sound source. Simply after some distance ray will be split in two with half energy, sure, ray amount must be kept reasonable, but like this I have much more control over it.
- surface scattering .. I already tried that, but it needs more rays so I guess the above technique will make it better. I'd also keep some scatter info along the ray. High frequencies suffers more from scattering and if I know how much each point was subject to scatter I can have even some frequency characteristics.
- bottom .. should be similar to surface
- exact energy loss
- fit it to realistic parametres, so it gives believable results. I need realistic sound speeds, realistic surface and bottom characteristics.

But considering the game, we have time to think what model will be used. Realistic sonar is not in the phase 1.

goldorak 01-29-07 03:51 AM

This is all very exciting, but what timescale are we talking about ?
This reminds me a lot of orbiter, the only other professional grade freeware simulation, available on the net.
And it took 7 years of programming and refinement (one man coded the kernel of the simulation, physics, audio, graphics) plus tens and tens of third party developers, artists went ahead with add-ons ranging from realistic historical add-ons to purely sicence fiction add-ons.
And even now, orbiter has a lot of idiosyncrasies which make it only able to run in windows platform.

Dr.Sid 01-29-07 03:54 AM

As for game database .. my idea was something more universal. But directory per platform is neat idea. I agree config files should be in some textual form, because of CVS.

I'm not sure if it should be XML. As very common idea is that XML is cool, my work experience is different. It's good as communication protocol, because it's universal and well known. Bad it's pretty bad for configs .. it's simply well readable - you need good XML editor for that. In such case making own editor (similar to DW edit) or making more notepad friendly text format can show better.

I also would like to use as little other components as possible. My experience is that any 3rd party component will have to replaced some day. Windows core, OpenGL, OpenAL are quite well designed and debugged, but in our work projects we even use our own XML parsers because those from microsoft just does not suffice in some areas. If we are to use anything, it must be well isolated, so it is simple to replace it later. For example no outer data type can be used in any internal interface.

I don't see any reason why platforms should need specific code. I'd better do everything universal and configurable. I mean if there is one and only canon on wheels on one platform, I'd made common model and I just say in database this canon is the 'wheel model' with 4 wheels of diameter 30cm. Don't repeat yourself is the rule here as well because any such specific code would tend to find another usage in time.
On the other hand I can imagine the sim is released and someone wants to extend it without modifying the original code. In such case some plugin system would be needed, but again, it would be better if those plugins could be shared between the platforms. Other thing is - do we need this ? Plugin system will complicate it a lot. Maybe we can just have it in mind during design.

My current work is based on databases, metadata sets, and configurable applications with tons of plugins and configurations. I have some real experience in this area. I have some idea what can by done by ourselves and how time it would need.

But let's discuss these.

Dr.Sid 01-29-07 03:57 AM

Quote:

Originally Posted by goldorak
This is all very exciting, but what timescale are we talking about ?
This reminds me a lot of orbiter, the only other professional grade freeware simulation, available on the net.
And it took 7 years of programming and refinement (one man coded the kernel of the simulation, physics, audio, graphics) plus tens and tens of third party developers, artists went ahead with add-ons ranging from realistic historical add-ons to purely sicence fiction add-ons.
And even now, orbiter has a lot of idiosyncrasies which make it only able to run in windows platform.

It pretty depends of quality of people involved and their invested time. I guess phase one is year at max .. I guess less because begining phases tends to be fast .. it's so exciting. We'll know more when we really start.

When I was making IQ3D which had low-level 3d engine, basic physics, AI, lots of artwork, done in some alpha version in half a year or so. And that included inventing many things. It was free-time project as well.
Well tuning it and adding some other neat features took another two years and it never got really finished .. but that's those problematic final phases, I hope community will help both by giving hand and morale support.

Dr.Sid 01-29-07 05:22 AM

I started a yahoogroup. It's called
Community subsim development
at the moment.

Try this link, it could work:
http://games.groups.yahoo.com/group/communitysubsim

Let's continue our discussion here, but especially devellopment related things should be post there from now (and quotations copied).

Nexus7 01-29-07 05:31 AM

DrSid do you think it is doable to adjust your sound propagation tool to fit the DW's model ? (performing comparison tests in game)

If yes I think the utility of such a tool is big, particularly for human vs human games :hmm: ...

Dr.Sid 01-29-07 07:02 AM

Quote:

Originally Posted by Nexus7
DrSid do you think it is doable to adjust your sound propagation tool to fit the DW's model ? (performing comparison tests in game)

If yes I think the utility of such a tool is big, particularly for human vs human games :hmm: ...

Hh .. I don't know how to measure DW sonar. We have no numbers, except quite anonymous signal-noise ratio. It would need complicated navigation patterns with set of readings to get similar maps from DW. We can't fit DW model well because we don't know DW model. We just have some experience with, but way too little to know what and how it simulates.

Anyway I'll try to fit the model to DW so it gives more or less similar data, but that's just because DW is best sonar simulation I have.

SeaQueen 01-29-07 07:27 AM

Quote:

Originally Posted by Dr.Sid
- ray splitting - this should be faster closer to the sound source and more accurate far from the sound source. Simply after some distance ray will be split in two with half energy, sure, ray amount must be kept reasonable, but like this I have much more control over it.

I wouldn't worry so much about this.

Quote:

- surface scattering .. I already tried that, but it needs more rays so I guess the above technique will make it better. I'd also keep some scatter info along the ray. High frequencies suffers more from scattering and if I know how much each point was subject to scatter I can have even some frequency characteristics.
In real life, this depends on sea state as well as frequency. There exists empiricle and theoretical curves for this.

There's other surface interactions like the Lloyd mirror effect that you don't capture, I've noticed. That becomes important when you get within a few miles because it can cause the signal to get strong or totally fade out in weird ways.

Quote:

- bottom .. should be similar to surface
Sort of. To do the prediction correctly, you need bottom loss v. angle curves that depend on the bottom type (rock, sand, silt, etc.)

Quote:

- exact energy loss

- fit it to realistic parametres, so it gives believable results. I need realistic sound speeds, realistic surface and bottom characteristics.
The speed of sound can be determined by one of several equations. The most modern and accurate is called the Chien and Millero equation. I think you can find it on the web. There also exist several older empiracle relationships, like the Wilson equation and the Mackenzie equation that give decent results as well, and are a lot easier to write down. :D

A lot of the stuff you're looking for can be found in Principles of Underwater Sound by Urick. That's sort of the sonar engineer's bible and pays at least lip service to pretty much everything there is to know in sonar. It's actually really creepy how every time I thought I found something not in Urick, I usually end up realizing I just forgot something he wrote. :D

XabbaRus 01-29-07 07:45 AM

Dangerous Waters does use Ray Tracing but to what complexity I don't know.

Dr.Sid 01-29-07 07:56 AM

Some nice terms to search. I need online sources .. I'll look in local scientific library and Amazon but it's quite possible some books are unreachable for me.

This Lloyd's effect .. all I found is that it has something to do with interference. I can simulate interference easily with my tracer, but it all depends in concrete frequency. Active sonar will be affected much more. Noise should not be affected at all. Consider these diagrams as noise transfer, no interference.
Don't you know something more specific about it ?

Sure surface affects especially the frequency transfer. Very low frequencies (with wavelength much bigger that wavelength of the surface waves would not be affected, while high frequencies fill be affected with small waves. 1Hz has roughly 1600m sound-waves, which means it needs similar size sea-waves to be affected. Which is rare. But 1kHz has 1.6m sound-wave, so it will be scattered heavily in common conditions. It's just common rules of diffraction, I guess some more effects can apply in the sea.
I'll try take this into account somehow, but this really starts to be 'acting like' more then 'computing'.

Dr.Sid 01-29-07 08:22 AM

Quote:

Originally Posted by XabbaRus
Dangerous Waters does use Ray Tracing but to what complexity I don't know.

How do you know ?

XabbaRus 01-29-07 10:43 AM

Hutch mentioned it as did Jamie.

Dr.Sid 01-29-07 02:30 PM

Some new images with interference for two different frequencies. Surface scattering is not there, but I improved signal weakening. It is however not very however on such small scale (this pictures are pixel per metr with bending heavily increased).

SeaQueen, could this be the Lloyd mirror effect you mentioned ?

http://roger.questions.cz/other/interference1.jpg
http://roger.questions.cz/other/interference2.jpg

Bellman 01-29-07 03:02 PM

:huh: Greatly impressed with all this techno-babble but shouldnt the mods protect the earnest and innocent DW players by removing this item to :

Other Naval Games & All Kinds of Other Games

But I do wish you well and all who sail in her. :|\\

Dr.Sid 01-29-07 03:29 PM

Quote:

Originally Posted by Bellman
:huh: Greatly impressed with all this techno-babble but shouldnt the mods protect the earnest and innocent DW players by removing this item to :

Other Naval Games & All Kinds of Other Games

But I do wish you well and all who sail in her. :|\\

Yeah .. sure .. we're already moving ..

SeaQueen 01-29-07 10:46 PM

Quote:

Originally Posted by Dr.Sid
This Lloyd's effect .. all I found is that it has something to do with interference. I can simulate interference easily with my tracer, but it all depends in concrete frequency. Active sonar will be affected much more.

Active sonar will only be affected more in the sense that in active sonar the transmission loss is doubled because the sound has to make a two-way trip. The Lloyd mirror effect is a fun little thing where the rays bouncing off the surface of the ocean take a longer path than the rays going in a straight line, so when they coincide, the arrive in different phases. If you superimpose the TL v. range curve predicted by the Lloyd mirror effect on one predicted by spherical spreading, you'll see that in comparison you do both better (constructive interference) and worse (destructive interference). It's one of my favorite little acoustic calculations. You get the most elegent looking little TL v. range curve from the Lloyd mirror effect.

Quote:

I'll try take this into account somehow, but this really starts to be 'acting like' more then 'computing'.
That's why you need to check out Urick. It'll have lots of data and equations explaining the actual physics of what's going on, so you don't have to make any guesses. All of this is very well plowed territory.


All times are GMT -5. The time now is 03:27 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 1995- 2025 Subsim®
"Subsim" is a registered trademark, all rights reserved.