HapticEffect

Tampilkan yang Tidak Digunakan Lagi

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Tidak Dapat Dijelajahi

Kontroler dan perangkat modern memiliki motor yang dibangun untuk memberikan umpan masukanhaptik.Menambahkan gemuruh dan getaran dapat memberikan umpan balik halus yang sulit untuk disampaikan melalui visual atau audio.

Roblox mendukung haptik untuk perangkat berikut:

  • Telepon Android dan iOS yang mendukung haptik termasuk sebagian besar perangkat iPhone, Pixel, dan Samsung Galaxy
  • Pad permainan PlayStation
  • Pad permainan Xbox
  • kontrolerSentuh Quest

Rangkuman

Properti

Metode

  • Play():()

    Memainkan efek haptik.

  • Metode yang digunakan untuk mendefinisikan gelombang khusus sebagai tabel dan menerapkannya ke haptik.

  • Stop():()

    Menghentikan efek haptik.

Properti

Looped

Baca Paralel

Apakah efek haptik berputar terus menerus.


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Looped = true
effect.Parent = Workspace
-- Start the haptic effect
effect:Play()
-- After two seconds, stop the effect
task.wait(2)
effect:Stop()

Position

Baca Paralel

Bersama dengan Radius , spesifikasikan posisi dampak relatif terhadap perangkat input dan, secara efektif, seberapa luas dampak efek tersebut terhadap motor terdekat.Perhatikan bahwa beberapa gamepad tidak memiliki kedua motor "kecil" dan "besar", dan bahwa "gamepad besar kiri/kanan" tidak didukung di PC.


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
-- Set the position and radius of impact
effect.Position = Vector3.new(0.5, 0.5, 0)
effect.Radius = 1
effect.Parent = Workspace
effect:Play()

Radius

Baca Paralel

Bersama dengan Position , spesifikasikan radius dampak relatif terhadap perangkat input dan, secara efektif, seberapa luas dampak efek motor terdekat.Perhatikan bahwa beberapa gamepad tidak memiliki kedua motor "kecil" dan "besar", dan bahwa "gamepad besar kiri/kanan" tidak didukung di PC.


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
-- Set the position and radius of impact
effect.Position = Vector3.new(0.5, 0.5, 0)
effect.Radius = 1
effect.Parent = Workspace
-- Play the haptic effect
effect:Play()
Baca Paralel

ketikhaptik, seperti Enum.HapticEffectType.GameplayCollision untuk gemuruh besar yang segera mati dengan cepat.Nilai Enum.HapticEffectType.Custom memungkinkan Anda untuk menentukan haptik dengan kunci gelombang khusus yang didefinisikan melalui SetWaveformKeys() .

Waveform

Keamanan Skrip Roblox
Baca Paralel

Metode

Play

()

Memainkan efek haptik.


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Parent = Workspace
-- Play the haptic effect
effect:Play()

Memberikan nilai

()

SetWaveformKeys

()

Metode ini memungkinkan Anda untuk mendefinisikan gelombang khusus sebagai tabel dan menerapkannya ke haptik.


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
-- Set effect type to custom in order to define a waveform
effect.Type = Enum.HapticEffectType.Custom
effect.Parent = Workspace
-- Define the custom waveform curve through a table
local rampUpWaveform = {
FloatCurveKey.new(0, 0.3),
FloatCurveKey.new(100, 0.4),
FloatCurveKey.new(300, 0.8),
FloatCurveKey.new(400, 1.0)
}
-- Set waveform through the effect's method
effect:SetWaveformKeys(rampUpWaveform)

Parameter

keys: Array
Nilai Default: ""

Memberikan nilai

()

Stop

()

Menghentikan efek haptik.


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Looped = true
effect.Parent = Workspace
-- Start the haptic effect
effect:Play()
-- After two seconds, stop the effect
task.wait(2)
effect:Stop()

Memberikan nilai

()

Acara