แปลเนื้อหาไดนามิกโดยอัตโนมัติ

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

กระบวนการแปลมาตรฐานตรวจพบสตริงในประสบการณ์ของคุณตามความถี่ที่ผู้เล่นดูและเพิ่มลงในตารางการแปลท้องถิ่นของคุณอาจพลาดสตริงที่ไม่ธรรมดาและ/หรือสตริงที่สร้างขึ้นระหว่างการเล่นเกม เช่น ข้อความที่สร้างขึ้นได้โดยอัตโนมัติหรือข้อความที่สร้างขึ้นโดยผู้เล่นคุณสามารถใช้ API แปลข้อความเพื่อสร้างการแปลสำหรับสตริงเหล่านี้ในเวลาจริงเพื่อให้แน่ใจว่าประสบการณ์ของคุณจะได้รับการแปลอย่างเต็มที่

แปลข้อความเป็นภาษาของผู้เล่น

เพื่อแปลข้อความเป็นภาษาของผู้เล่น ส่ง Player.LocaleId เป็นรหัสภาษาเป้าหมายต่อไปนี้เป็นตัวอย่างของวิธีที่คุณสามารถรับ ID ท้องถิ่นของผู้เล่นในสคริปต์ไคลเอนต์แล้วส่งไปยัง Script ใน ServerScriptService เพื่อสร้างคำขอแปล

  • API แปลเป็น API เปิดใช้งานบนคลาวด์ ซึ่งหมายความว่าคุณต้องมีเส้นทาง เพื่อสร้างคำขอในกรณีนี้คุณต้องการรหัสจักรวาลซึ่งสามารถพบได้ในเมนูเหลือของปุ่มประสบการณ์ในแท็บ Creator Hub
  • คุณต้องรวมแพคเกจเคลนต์เปิดคลาวด์ ด้วย ในประสบการณ์ของคุณ; สคริปเซิร์ฟเวอร์ต้องการมัน
สคริปต์ไคลเอ็นต์

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local httpRequestFunction = ReplicatedStorage:WaitForChild("TranslateTextFunction")
-- ข้อความสำหรับการแปล
local textToTranslate = "This is the example text to translate"
-- รับที่ตั้งท้องถิ่นของผู้เล่น
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- รับ ID ท้องถิ่นสำหรับท้องถิ่นของผู้เล่นท้องถิ่นหรือตั้งค่าเป็นสตริงท้องถิ่นใดๆ ที่สนับสนุนได้
local locale = player.LocaleId
local translatedText = httpRequestFunction:InvokeServer(textToTranslate, locale)
print("Translated text: ", translatedText)
สคริปต์เซิร์ฟเวอร์ใน ServerScriptService

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerScriptService = game:GetService("ServerScriptService")
local oc = require(ServerScriptService.OpenCloud.V2)
-- ค้นหาที่ https://create.roblox.com/dashboard/creations ในเมนูเหลื่อมของปุ่มประสบการณ์
local universeID = <your_universe_id>
-- สร้างฟังก์ชันระยะไกล
local remoteFunction = Instance.new("RemoteFunction")
remoteFunction.Name = "TranslateTextFunction"
remoteFunction.Parent = ReplicatedStorage
remoteFunction.OnServerInvoke = function(player, text, locale, uni)
print(player.Name .. " requested translation for text: " .. text .. " to locale: " .. locale)
-- เตรียมคำขอแปล
local request : oc.TranslateTextRequest = {
path = oc:UniversePath(universeID),
text = text,
-- รหัสภาษาเป้าหมายสนับสนุนรายการหลายภูมิภาคที่จะแปล
-- ที่นี่เรากำลังส่งเพียงภาษาเดียว:
--ผู้เล่นท้องถิ่นที่ดึงมาในสคริปท้องถิ่น
target_language_codes = {locale}
}
local result = oc:TranslateText(request)
if result.Error == nil then
return result.Response.translations[locale] -- คาดว่าแปล[locale] จะมีข้อความแปล
else
return "Error: " .. result.Error.message
end
end

ทดสอบ

ขณะนี้ API แปลแบบเรียลไทม์สนับสนุนการตรวจสอบ RCC เท่านั้นผลที่ตามมาคือคุณต้องส่งรหัสของคุณไปยังตัวอย่างทดสอบเพื่อทดสอบ API จาก Studioใช้ การทดสอบทีม เพื่อปล่อยสคริปต์ไปยังตัวอย่างการทดสอบและทดสอบการเปลี่ยนแปลงของคุณ

คำอธิบาย API การแปล

พารามิเตอร์คำขอ API

ชื่อพารามิเตอร์ชนิดคําอธิบาย
เส้นทางข้อความเส้นทางของจักรวาล จำเป็น
ข้อความข้อความข้อความที่จะแปล จำเป็น
รหัสภาษาที่มาข้อความรหัสภาษา BCP-47 ของ IETF ที่แทนที่ภาษาของข้อความที่ใส่ หากไม่ได้ระบุ ระบบจะตรวจพบภาษาที่เป็นที่มาโดยอัตโนมัติ
รหัสภาษาเป้าหมายArray<string>รายการรหัสภาษาเป้าหมายในรูปแบบ BCP-47 ของ IETF สำหรับการแปล

ฟิลด์คำตอบ API

ชื่อฟิลด์ชนิดคําอธิบาย
รหัสภาษาที่มาข้อความรหัสภาษา BCP-47 ของ IETF ที่แทนที่ภาษาที่ตรวจพบหรือกำหนดโดยผู้ใช้ของข้อความที่มาจากที่อื่น
แปลภาษาDictionary<string, string>แผนที่ที่มีการแปลที่ต้องการกุญแจคือรหัสภาษา BCP-47 ของ IETF และค่าคือข้อความแปลสำหรับภาษานั้นแผนที่จะมีการแปลทั้งหมดที่ร้องขอหากข้อความที่มาจากแหล่งถูกกรองแผนที่นี้จะว่างเปล่า

ข้อจํากัด

Roblox ใช้สูตรต่อไปนี้เพื่อลดความถี่ของคำขอสำหรับ API นี้ตามจํานวนผู้เล่นในประสบการณ์ของคุณ:

max requests per minute per experience = 600 + (1.5 * number_of_concurrent_users)

นอกจากนี้ยังมีขีดจํากัดรวมของ 150 คําขอต่อนาทีต่อเซิร์ฟเวอร์เกมสําหรับ API เปิดทั้งหมด

ภาษาที่รองรับ

API แปลแบบเรียลไทม์ปัจจุบันสนับสนุนภาษาต่อไปนี้ซึ่งแตกต่างเล็กน้อยจาก ภาษาที่สนับสนุนสำหรับการแปลอัตโนมัติ

ภาษารหัสภาษา
จีน (แสนง่าย)ภาษาจีน-cn
จีน (แบบดั้งเดิม)ภาษาไทย
ภาษาอังกฤษ

en-us สิ่งที่ค้นหา

ฝรั่งเศสฟร-ฟร
เยอรมันเด-เด
ภาษาอินโดนีเซียรหัส-id
ภาษาอิตาลีมัน-มัน
ญี่ปุ่นญี่ปุ่น-ญาปา
ภาษาเกาหลีko-kr
โปแลนด์pl-pl
ภาษาโปรตุเกสpt-br
รัสเซียรุ-รุ
สเปนเอส-อี
ไทยไทย-ไทย
ตุรกีทร-ทร
เวียดนามvi-vn