Beauty

18-11-2011 13:59:37

I figured out that

The resulting distance to the terrain hit point is upto 1 Ogre Unit larger than the real distance.

So the resulting hit points are at the wrong place. (somewhere below the terrain surface)

Here is a picture of my tests:

Click to enlarge

[attachment=0]Ogre problem - wrong RAY results for terrain.png[/attachment]

I started a topic about this bug in the main forum. (here)

There I got answers related to the TSM internal calculation algorithm.

Solution

Based on this information I wrote a method, which perform a distance correction.

It's

Just add my correction method and

Then the distance results for terrain are very precise.

http://www.ogre3d.org/forums/viewtopic. ... 00#p444900

Also I created images which explains how my code calculates the distance correction.

Note:

This problem is only related to the Terrain Scene Manager.

The new terrain component gives precise results. (For other terrain managers I don't know.)

**ray scene queries**with the**Terrain Scene Manager**are**very imprecise**.The resulting distance to the terrain hit point is upto 1 Ogre Unit larger than the real distance.

So the resulting hit points are at the wrong place. (somewhere below the terrain surface)

Here is a picture of my tests:

Click to enlarge

[attachment=0]Ogre problem - wrong RAY results for terrain.png[/attachment]

**Only vertical rays returns the correct distance value.**I started a topic about this bug in the main forum. (here)

There I got answers related to the TSM internal calculation algorithm.

Solution

Based on this information I wrote a method, which perform a distance correction.

It's

**very easy to embedd into existing Mogre applications**.Just add my correction method and

**2 lines of code**to each ray query loop.Then the distance results for terrain are very precise.

**My code I published here:**http://www.ogre3d.org/forums/viewtopic. ... 00#p444900

Also I created images which explains how my code calculates the distance correction.

Note:

This problem is only related to the Terrain Scene Manager.

The new terrain component gives precise results. (For other terrain managers I don't know.)