UE4 Höhenprofil in Sichtrichtung mit C++

  • Hallo zusammen,


    weiß jemand, wie ich am Besten für einen sich bewegenden Actor ein Höhenprofil in Sichtrichtung als Sensoreninput abrufen kann, welches ich danach als Eingangsdaten für einen Wegfindungsalgorithmus oder neuronales Netzwerk nutzen kann?


    M. E. n. sollte es über eine große Anzahl von LineCast möglich sein, welche ich vom Ausgangspunkt (Augen) in verschiedene Richtungen schicke und entsprechend damit das 3d-Gelände abraster. Allerdings dürfte dieses Vorgehen sehr inperformant sein, gerade da ich für eine vernünftige Auflösung zu viele LineCasts brauche und diese auch immer bei weiterer Bewegung erneuern muss. Alternativ könnte ich vielleicht eine Art Halbkugeloberfläche als statisches Mesh temporär und unsichtbar erzeugen und vor dem Actor bewegen und damit ein Zusammentreffen detektieren, k. A. ob ich hiermit in der Lage bin auch direkt die Koordinate des Zusammentreffens zu erfassen. Eine weitere Alternative könnte das Abrufen des Höhenprofils vom 3d-Gelände sein und entsprechend vonm Sichtpunkt aus zu ermitteln, welche Bereiche sichtbar sind - mir ist allerdings unklar, wie ich das Höhenprofil abrufe, wie die Informationen gespeichert werden, inbesondere wie ich die Höheninformation erlangen kann und die dazugehörige Koordinaten. Vielleicht hab Ihr bessere Ideen oder könnt mir sagen, welche der Ideen ihr aus Performancesicht bevorzugen würdet. Ziel ist es dies mit C++ in der Engine umzusetzen.


    So schon mal vielen Dank, ich hoffe die deutsche Version findet nun besseren Anklang - bin es gar nicht mehr gewöhnt, gerade bei so vielen englischen Begriffen in der Engine ;)


    Gruß Gerald


    If you like English:


    Hello together,


    I was wondering how I can best get for an moving actor an height profile of its surrounding in front of him. The idea is to get sensoric data to train a path finding algorithm and to navigate.


    I guess raycast i.e. a unfortunately large bunch of LineCast from the view point might be a way to start building such a profile, but I hardly think this is efficient (fast). Not sure I should kind of move a static mesh around and try to get such way a collison with a surface instead of raycasts. Or can I access the height profile (how do I do that, how is the information stored, how to get access to each point in the world and how to interpretate the height/how to extract is) of my 3D landscape and then caluclate what part of the heigt profile is visible. Any idea what is fastest or better ideas?


    Thanks for help in advance and a good start in the new year.


    Best Gerald