HapticService

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Oluşturulamaz
Hizmet
Çoğaltılmamış

Modern kontrol ve cihazların haptik geri dönüşbildirim sağlamak için motorları yerleştirildi. Gürültü ve titreşimleri eklemek, görüntüleri veya sesleri aracılığıyla iletmenin zor olduğu hafif geri bildirimler sağlayabilir.

Roblox, aşağıdaki cihazlar için haptikleri desteklemektedir:

  • Çoğu iPhone, Pixel ve Samsung Galaxy cihazlarını destekleyen Android ve iOS telefonları
  • PlayStation oyun konsolları
  • Xbox oyun panoları
  • Görev Dokunmatik kontrolörü

Özet

Yöntemler

Özellikler

Yöntemler

GetMotor

Mevcut titreşim değerini belirli UserInputType ve Enum.VibrationMotor ile yeniden ayarlar. Bu, önce SetMotor çağrılmamışsa hiçbir şey iade etmez.

Parametreler

Belirlenen Enum.UserInputType .

vibrationMotor: Enum.VibrationMotor

Belirlenen Enum.VibrationMotor .


Dönüşler

Mevcut titreşim değeri, belirlenen Enum.UserInputType veya Enum.VibrationMotor veya nil'e ayarlandı, eğer SetMotor önce çağrılmamışsa.

IsMotorSupported

Belirlenen motor kullanılabilir olsa Enum.UserInputType ile kullanılabilir.

Parametreler

EnuyEnuşturucuMotoru için özelleştirilmiş Enum.VibrationMotor desteği kontrol ediliyor.

vibrationMotor: Enum.VibrationMotor

Belirlenen Enum.VibrationMotor kontrol edilmiş, belirlenen Enum.UserInputType desteklediğini görmek için kontrol edilmiştir.


Dönüşler

Eğer belirlenen motor kullanılabilir olmalıdır Enum.UserInputType ile, yoksa EntranceType ile değil.

IsVibrationSupported

Haptik geri bildirim destekleyen özel Enum.UserInputType ile geri bildirim desteklenirse geri dönüşdöndürür.

Parametreler

Haptik geri dönüşbildirim desteğini desteklediğini görmek için belirtilen Enum.UserInputType kontrol edildi.


Dönüşler

Belirlenen Enum.UserInputType geri dönüşgeri bildirimi destekliyorsa doğrudur.

SetMotor

void

Belirlenen UserInputType ve Enum.VibrationMotor 'in titreşim yoğunluğunu ayarlar. Not edin ki, neredeyse tüm kullanım durumları Gamepad1 'i 1> Class.InputObject.UserInputType1> olarak belirtir.

Parametreler

Belirlenen Enum.UserInputType .

vibrationMotor: Enum.VibrationMotor

Belirlenen Enum.VibrationMotor .

vibrationValues: Tuple

Motorun ne kadar yoğun olması gerektiği. Sadece sayı olmalı tupladaki ilk değeri kullanır.


Dönüşler

void

Kod Örnekleri

HapticService:SetMotor

local UserInputService = game:GetService("UserInputService")
local HapticService = game:GetService("HapticService")
local cachedInputs = {} -- Note that we use a cache so we don't attach a Changed event more than once.
local keyToVibration = {
[Enum.KeyCode.ButtonL2] = Enum.VibrationMotor.Small,
[Enum.KeyCode.ButtonR2] = Enum.VibrationMotor.Large,
}
local function onInputBegan(input)
if not cachedInputs[input] then
local inputType = input.UserInputType
if inputType.Name:find("Gamepad") then
local vibrationMotor = keyToVibration[input.KeyCode]
if vibrationMotor then
-- Watch this InputObject manually so we can accurately update the vibrationMotor.
local function onChanged(property)
if property == "Position" then
HapticService:SetMotor(inputType, vibrationMotor, input.Position.Z)
end
end
cachedInputs[input] = input.Changed:Connect(onChanged)
end
end
end
end
UserInputService.InputBegan:Connect(onInputBegan)

Etkinlikler