Jump to content

Как узнать позицию обьекта в пространстве c#


photo

Recommended Posts

Я начинающий в этом движке и не как ни могу понять как узнать позицию обьекта в пространстве, всю документацию пересмотрел и так и не понял как это сделать. Может я просто не могу найти тот класс который мне нужен?

using System;

using System.Collections;

using System.Collections.Generic;

using Unigine;



[Component(PropertyGuid = "5ff39bf967441504a8a79c93dfaf78d64f635a3d")]

public class Test : Component

{

    private void Update()

    {

        Node node = World.GetNodeByName("Cuboid");

        float worldPos = (float)node.GetWorldDirection(MathLib.AXIS.X);

        if (Input.IsKeyUp(Input.KEY.E))

        {

        float TransformX = worldPos + 1.0f;

        Log.Message("Глобальная позиция:" + worldPos + "\n");

        Log.Message("Координаты оси X:" + TransformX +"\n");

        node.WorldTranslate(TransformX, 0.0f, 0.0f);

        }

    }

}

 

Link to comment

Разобрался но не доканца, как мне например менять значение vec3.RIGHT (там по умолчанию 1.0, 0.0, 0.0)? Или менять значение вектора RIGHT нельзя? Можно создать свой новый вектор со своими значениями?

using System;
using System.Collections;
using System.Collections.Generic;
using Unigine;

[Component(PropertyGuid = "5ff39bf967441504a8a79c93dfaf78d64f635a3d")]
public class Test : Component
{
    private void Update()
    {
        Node node = World.GetNodeByName("Cuboid");
        vec3 worldPos = node.GetWorldDirection(MathLib.AXIS.X);
        worldPos = vec3.RIGHT;
        if (Input.IsKeyDown(Input.KEY.E))
        {
        vec3 TransformX = worldPos + vec3.RIGHT;
        node.WorldTranslate(TransformX);
        }
    }
}

 

Link to comment
11 hours ago, Somebody said:

как узнать позицию обьекта в пространстве

в С# многие методы сделаны через проперти. т.е. не надо писать GetЧтоТоТам или  SetЧтоТоТам просто сразу берем свойство
vec3 position = node.WorldPosition;
позиция в глобальных координатах  https://developer.unigine.com/en/docs/2.15.1/api/library/nodes/class.node?rlang=cs#WorldPosition
 

так же и изменять ее
node.WorldPosition = new vec3(1,2,3);

 

  • Thanks 1
Link to comment
×
×
  • Create New...