cow1330 发表于 2019-7-11 17:10:59

請教 InputComponent 數值

請教一下
我正在試圓形的選擇系統,但卡在一個座標的問題
X軸左是推到底是-1,右是1,中間的數值是希望是-1到1之間的浮點數,,Y軸也是
打算用這X軸Y軸的數值當坐標,來換算角度,但就是這組座標產生問題,可以幫我看如何修正嗎


PlayerInputComponent->BindAxis("RightAxi_X", this, &ACharacterBase::RightAxi_X);
PlayerInputComponent->BindAxis("RightAxi_Y", this, &ACharacterBase::RightAxi_Y);


void ACharacterBase::RightAxi_X(float value)
{
    if ((Controller != NULL) && value != 0.0f)
    {
      PointerX = GetInputAxisValue("RightAxi_X");
      GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString::Printf(TEXT("PointerX ,PointerY: %d , %d"), PointerX, PointerY));
    }
}

void ACharacterBase::RightAxi_Y(float value)
{
    if ((Controller != NULL) && value != 0.0f)
    {
      PointerY = GetInputAxisValue("RightAxi_Y");
      GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString::Printf(TEXT("PointerX ,PointerY: %d, %d"), PointerX, PointerY));
    }
}


這是我目前的語法,但實跑過之後 PointerX 和 PointerY ,兩個數值都不對
+-的數值也不對,我在ue4的 Input 的 scale 數值是設1


mknmknmk 发表于 2019-7-12 08:17:30

本帖最后由 mknmknmk 于 2019-7-12 08:21 编辑

有啥不对的绑定action 还是 axis
action 按下和抬起触发, axis 是一直触发


你的PointX 和PointY 永远不会是0

cow1330 发表于 2019-7-12 16:30:40

是嗎
我還以為他對應的數值是我在Input設的scale的值
這樣的話我就想不出什麼方法來抓了

我現在是先把X、Y軸設死,按下執行PointerY = -1 ,按上執行 PointerY = 1, 放開 PointerY = 0
X軸也是同理的,也是可以抓的到這九個點位置,但又會卡到像25度,55度的角度,這些判斷上也有些問題
目前就是卡這點

mknmknmk 发表于 2019-7-15 08:21:33

PlayerInputComponent->BindAxis("RightAxi_X", this, &ACharacterBase::RightAxi_X);
PlayerInputComponent->BindAxis("RightAxi_Y", this, &ACharacterBase::RightAxi_Y);


void ACharacterBase::RightAxi_X(float value)
{
    if (Controller != NULL)
    {
      PointerX = value ;
      GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString:rintf(TEXT("ointerX ,PointerY: %d , %d"), PointerX, PointerY));
    }
}

void ACharacterBase::RightAxi_Y(float value)
{
    if (Controller != NULL)
    {
      PointerY = value;
      GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, FString:rintf(TEXT("ointerX ,PointerY: %d, %d"), PointerX, PointerY));
    }
}
页: [1]
查看完整版本: 請教 InputComponent 數值