Muis- en toetsenbordinvoer

*Deze inhoud is vertaald met behulp van AI (bèta) en kan fouten bevatten. Klik hier om deze pagina in het Engels te bekijken.

Een groot percentage van de Roblox-sessies wordt gespeeld op apparaten met een muis en toetsenbord, dus het is belangrijk om deze invoer te ondersteunen bij het ontwerpen van een game voor een breed publiek.

Om cross-platform invoer, inclusief muis/toetsenbord, te vereenvoudigen, biedt Roblox het Input Action System om acties zoals "springen", "rennen" of "schieten" te definiëren en bindingen voor meerdere hardware-invoeren in te stellen om die acties aan te sturen.

Roblox ondersteunt ook algemene muis/toetsenbordinvoer via UserInputService-evenementen zoals InputBegan en InputEnded en methoden zoals IsKeyDown() om te controleren of een bepaalde toets op een toetsenbord is ingedrukt.

Invoertype-detectie

Bij cross-platform ontwikkeling is het belangrijk dat je het PreferredInput type bepaalt en hierop reageert dat een speler gebruikt, normaal gesproken om ervoor te zorgen dat UI elementen zoals knoppen en menu's op het scherm elegant werken en interactie tussen apparaten ondersteunen.

Bijvoorbeeld, een pc of laptop gaat ervan uit dat muis/toetsenbord de standaardinvoer is, maar een speler kan ervoor kiezen om een bluetooth-gamepad aan te sluiten. In dit geval blijft muis/toetsenbord een geldige invoer, maar je kunt aannemen dat de speler wil overschakelen naar de aangesloten gamepad als het primaire invoertype.

Zie invoertype-detectie voor meer informatie.

Algemene muis/toetsinvoer

Naast het Input Action System kun je muis- en toetsenbordinvoer vastleggen met UserInputService. De volgende LocalScript, wanneer geplaatst in StarterPlayerScripts, legt de begonnen en beëindigde fasen van toets- en muisklikken vast en print het resultaat naar het Output venster.

LocalScript - Output Toets/Muis Begon en Eindigde
local UserInputService = game:GetService("UserInputService")
local function onInputBegan(inputObject, processedEvent)
-- Retourneer als een ander script de invoer al heeft verwerkt
if processedEvent then return end
print(inputObject.KeyCode.Name, "begon!", inputObject.Position)
end
local function onInputEnded(inputObject, processedEvent)
-- Retourneer als een ander script de invoer al heeft verwerkt
if processedEvent then return end
print(inputObject.KeyCode.Name, "eindigde!", inputObject.Position)
end
UserInputService.InputBegan:Connect(onInputBegan)
UserInputService.InputEnded:Connect(onInputEnded)

Muispictogram

Je kunt het uiterlijk en gedrag van het muispictogram van een speler binnen je game aanpassen om een samenhangende stijl te creëren over al je UI-elementen. Dit omvat het tijdelijk veranderen van het muispictogram van de speler in specifieke omstandigheden, zoals wanneer je over een knop zweeft.

Je kunt het muispictogram van de speler in een LocalScript wijzigen door de MouseIcon eigenschap in UserInputService in te stellen op een aangepaste Roblox asset ID. Bijvoorbeeld, de volgende LocalScript verandert het standaard muispictogram van de speler in een cirkel met een blauwe stip in het midden.

local UserInputService = game:GetService("UserInputService")
UserInputService.MouseIcon = "rbxassetid://3400146391"
©2026 Roblox Corporation. Roblox, het Roblox-logo en Powering Imagination behoren tot onze geregistreerde en niet-geregistreerde handelsmerken in de VS en andere landen.