Jump to content

[SOLVED] Problem regarding CIGI's LOS Segment request / Extended response


photo

Recommended Posts

Hello to all !

I need help for a IG/CIGI related problem. Here it is.

I need to get the Visible parameter from the los extended response packet.

My problem is that this visible parameter is false no matter what I do and I don't know why.

Setup :

- Unigine SDK 2.14

- Ig Host x64

- Windows 10

- IG Template

What I do :

- Create an entity (cube) with ID 1, at a certain position

- Create another entity with ID 2, at another position, but in straight line with the first entity. There is nothing in between.

- Both entities have all intersections masks enabled

- Start a LOS Segment request with following parameters:

    - Src Entity Id 1

    - Dest Entity Id 2

    - Request Type EXTENDED

    - Coord systems are in order : GEODETIC (src) / ENTITY (dest) / GEODETIC (response)

    - Dest Entity Valid checked

    - Material mask 0xfffff

(I also tried with different parameters, like with all coord systemes to Geodetic and world point to another world point/dest entity...)

- Check the received LOS Extended 

What I expect :

- The segment request to collide

- The LOS Extended packet to be valid

- The LOS Extended visible parameter to be true

What happens :

- The segment ray does collide

- The packet is indeed valid

- The visible parameter is false !

 

Here are some screenshots to show you my setup, with ig debug:

image.png.00732bc6fc9c5813e9e4a12cec5a325d.png

Above you can see the blue ray which is the los segment request, starting from outside the 1st entity. It goes right to the second entity and collides with it (red square).

And here is the returned los extended response packet values

cmdLos.jpg.6503403ceeecd1d39583af20a2be703e.jpg

As you can see, response is Valid but the visible parameter is false. 

 

Am I doing something wrong here ? 

If you need any more infos, I will provide them asap.

Thank you for your time,

Antoine

Link to comment

Hi cash-metall,

Thank you for your answer !

Indeed, looks like I misunderstood what was written in the ICD's documentation when I first read it...

Link to comment
  • silent changed the title to [SOLVED] Problem regarding CIGI's LOS Segment request / Extended response

Okay so I tried getting the src point and the dst point out of each entity.

It resulted in this : 

image.png.f636cf9a1ba6126911c8eae464b003b4.png

Looks okay, but no intersection in sight, so now the los extended response returns that the LOS is not valid

With a drawing it looks like that

image.png.ce37f272789dc3282ce5fb635af69971.png

I can't get a response with the visible parameter set to true.

So I tried the following

- World point to World point, only geodetics, no entities, no intersection. ResponseValid = false, Visible = false (Nothing in between)

- World point to World point, only geodetics, with entity behind the dst point. ResponseValid = false, Visible = false (No intersection so no data)

- Entity with offset to Entity with offset, no intersection. ResponseValid = false, Visible = false (Nothing in between, entity was behind)

- World point to Entity, only geodetics, with intersection. ResponseValid = true, Visible = false (Shape was blocking the visibility)

I can't get an intersection with the destination point outside of the shape of an entity. 

 

I guess the ray we are shooting from the src point to the dst point just "stops" at the dst point and does not look for intersection behind ? Which provokes everything to be invalid ? 

image.thumb.png.c9132ccfabbcbc90b8e8f60e16b7a982.png

Or is there something I am missing out again ? 

 

Thanks for your time and help !

image.png

Link to comment

Hi!

15 hours ago, Antoine.YVAN said:

I can't get a response with the visible parameter set to true.

I checked carefully, it really looks like there is a problem with the visible parameter.
We do not set visible = true for extended responses anyway (although if there is no intersection, we need to set it to true). 
This has been added to the bug tracker and will be fixed in the next release.

for not-extended responses we set visible = true if there is no intersection, also we set true if dst_point matches intersection_point with high precision.

15 hours ago, Antoine.YVAN said:

I guess the ray we are shooting from the src point to the dst point just "stops" at the dst point and does not look for intersection behind ? Which provokes everything to be invalid ? 

For responses to Line of Sight Segment Request packets, intersection point searhing along the LOS test segment. A value of Invalid (0) indicates that the LOS test segment did not intersect any geometry. Maybe you need Line of Sight Vector Request for searching intersection without "stops"?

 

 

 

In fact I don't understand the meaning of the 'visible' parameter. if there was no intersection - valid=false. if there was an intersection - valid=true. maybe this visible is somehow related to the Alpha Threshold - when there is an intersection, but the point is still visible? at the moment Alpha Threshold does not work in LOS requests.

in what cases do you need the 'visible' parameter? isn't the 'valid' parameter enough?

 

Thanks for your message!

Link to comment
×
×
  • Create New...