mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-18 15:49:18 +02:00
Merge commit 'd8170c932b448ba6888e702746b5ae22632062d8' into sim
This commit is contained in:
@@ -107,8 +107,26 @@ editor_mode::enter() {
|
||||
|
||||
m_statebackup = { Global.pCamera, FreeFlyModeFlag, Global.ControlPicking };
|
||||
|
||||
Global.pCamera = Camera;
|
||||
FreeFlyModeFlag = true;
|
||||
Camera = Global.pCamera;
|
||||
// NOTE: camera placement is effectively a copy of drivermode DistantView( true )
|
||||
// TBD, TODO: refactor into a common vehicle method?
|
||||
if( false == FreeFlyModeFlag ) {
|
||||
|
||||
auto const *vehicle { Camera.m_owner };
|
||||
auto const cab {
|
||||
( vehicle->MoverParameters->CabOccupied == 0 ?
|
||||
1 :
|
||||
vehicle->MoverParameters->CabOccupied ) };
|
||||
auto const left { vehicle->VectorLeft() * cab };
|
||||
Camera.Pos =
|
||||
Math3D::vector3( Camera.Pos.x, vehicle->GetPosition().y, Camera.Pos.z )
|
||||
+ left * vehicle->GetWidth()
|
||||
+ Math3D::vector3( 1.25 * left.x, 1.6, 1.25 * left.z );
|
||||
Camera.m_owner = nullptr;
|
||||
Camera.LookAt = vehicle->GetPosition();
|
||||
Camera.RaLook(); // jednorazowe przestawienie kamery
|
||||
FreeFlyModeFlag = true;
|
||||
}
|
||||
Global.ControlPicking = true;
|
||||
EditorModeFlag = true;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user