스튜디오 플러그인

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

A plugin은 스튜디오에 추가 기능이나 기능을 추가하는 확장 프로그램입니다. 커뮤니티에서 만든 플러그인은 설치하여 사용할 수 있으며, 생성하고 게시하여 툴박스에서 게임 전반에 걸쳐 사용할 수 있습니다.

플러그인을 Creator Store에 배포하기로 선택하면 무료로 제공하거나 미국 달러로 판매할 수 있습니다. Roblox는 이러한 판매에 대해 세금 및 결제 처리 수수료만 공제되므로 업계 최고의 수익 분배를 제공합니다. 플러그인 판매에 대한 자세한 내용은 Creator Store - 자산 배포 및 판매를 참조하세요.

새 플러그인 만들기

스튜디오에서 작업 흐름을 개선하기 위해 자신의 플러그인을 만들 수 있습니다. 다음 코드 샘플은 Instance의 자식으로 또는 ServerScriptService에 빈 Script를 삽입하는 AddEmptyScript라는 플러그인입니다. 다음 섹션에서는 이 플러그인을 만드는 주요 부분을 설명합니다.

시작하려면 스튜디오 설정의 Studio 섹션에서 플러그인 디버깅 활성화를 활성화해야 합니다. 이렇게 하면 플러그인 코드에 대한 실시간 디버깅을 제공하는 PluginDebugService가 스튜디오에 노출되어 플러그인을 더 쉽게 다시 로드하고 저장할 수 있습니다.

AddEmptyScript 플러그인
local ServerScriptService = game:GetService("ServerScriptService")
local Selection = game:GetService("Selection")
-- "Custom"이라는 제목의 새 툴바 섹션 및 플러그인 메뉴 폴더 생성
local toolbar = plugin:CreateToolbar("Custom")
-- "Empty Script"라는 레이블의 툴바 버튼 추가
local newScriptButton = toolbar:CreateButton("Empty Script", "빈 스크립트를 생성합니다", "rbxassetid://14978048121")
-- 3D 뷰포트가 숨겨져 있어도 버튼 클릭 가능하게 설정
newScriptButton.ClickableWhenViewportHidden = true
local function onPluginButtonClicked()
local selectedObjects = Selection:Get()
local parent = selectedObjects[1] or ServerScriptService
local newScript = Instance.new("Script")
newScript.Source = ""
newScript.Parent = parent
end
newScriptButton.Click:Connect(onPluginButtonClicked)

플러그인 스크립트 저장

플러그인을 만들려면 먼저 Script를 생성하고 로컬에 저장해야 합니다.

  1. ServerStorage에 새 Script를 삽입하고 이름을 AddEmptyScript로 변경합니다.

  2. 위의 AddEmptyScript 플러그인 코드를 새 스크립트에 복사하여 붙여넣습니다.

  3. Explorer 창에서 새 스크립트를 선택한 상태에서 스튜디오의 플러그인 메뉴에서 로컬 플러그인으로 저장을 선택합니다.

  4. 팝업 창에서 저장을 클릭하여 플러그인 스크립트를 스튜디오 설치의 로컬 플러그인 폴더에 삽입합니다.

  5. 플러그인이 PluginDebugService에 나타나고 실행되기 시작합니다.

  6. 중요
    ServerStorage에 있는 원본 스크립트를 삭제하고 PluginDebugService 내의 AddEmptyScript 플러그인에서 작업하세요. 그렇지 않으면 잘못된 스크립트에 변경 사항을 적용할 수 있습니다.

툴바 버튼 추가

플러그인을 스튜디오 툴바의 플러그인 탭에 추가하려면 Plugin:CreateToolbar()PluginToolbar:CreateButton() 메서드를 사용합니다. AddEmptyScript의 코드에서 5번째 줄은 툴바에 Custom이라는 제목의 새 섹션과 플러그인 메뉴 폴더를 생성하고, 8번째 줄은 Empty Script라는 레이블의 버튼을 생성합니다.

스튜디오 툴바에 추가된 새 플러그인 버튼

클릭 시 코드 실행

사용자가 툴바 버튼을 클릭할 때 플러그인이 코드를 실행하도록 하려면 버튼의 PluginToolbarButton.Click 이벤트에 함수를 연결합니다. AddEmptyScript의 코드에서 연결 함수는 onPluginButtonClicked()입니다.

사용자 선택 확인

사용자가 선택한 항목에 따라 플러그인의 동작을 수정하려면 Selection 서비스를 사용합니다. onPluginButtonClicked() 함수는 사용자가 선택한 항목이 있는지 확인하고, 선택된 항목이 있으면 해당 항목의 자식으로 새 스크립트를 생성하고, 선택된 항목이 없으면 ServerScriptService에 새 스크립트를 생성합니다.

실행 취소 및 다시 실행 지원

ChangeHistoryService를 사용하여 사용자가 게임 내에서 플러그인으로 수행한 변경 사항을 실행 취소하고 다시 실행할 수 있도록 합니다. 스크립트에서 플러그인이 ChangeHistoryService:TryBeginRecording()을 호출하도록 설정하고, 변경 사항을 적용하기 전에 API 호출에 할당된 식별자를 저장합니다. 그런 다음 변경 사항을 적용한 후 플러그인이 ChangeHistoryService:FinishRecording()을 호출하여 기록 세션 중에 발생한 모든 변경 사항을 캡처하여 실행 취소 및 다시 실행할 수 있도록 합니다.

다음 코드 샘플은 선택된 부품에 네온 재질을 적용할 수 있는 예제 플러그인을 생성합니다. 이 플러그인은 ChangeHistoryService를 사용하여 플러그인에 의해 수행된 변경 사항을 기록하고 관리합니다:

실행 취소 및 다시 실행을 위한 기록이 있는 예제 재질 플러그인
local ChangeHistoryService = game:GetService("ChangeHistoryService")
local Selection = game:GetService("Selection")
-- 예제 플러그인 생성
local toolbar = plugin:CreateToolbar("Example Plugin")
local button = toolbar:CreateButton("Neon it up", "", "")
-- 클릭 이벤트에 함수를 연결
button.Click:Connect(function()
-- 특정 식별자로 기록 시작 시도
local recording = ChangeHistoryService:TryBeginRecording("Set selection to neon")
-- 기록이 성공적으로 시작되었는지 확인
if not recording then
-- 이는 플러그인이 이전 기록을 시작했지만 완료하지 않았음을 나타냅니다
-- 플러그인당 한 번에 하나의 기록만 활성화할 수 있습니다
return
end
-- 선택된 인스턴스를 반복
for _, instance in Selection:Get() do
-- 인스턴스가 BasePart인지 확인
if instance:IsA("BasePart") then
instance.Material = Enum.Material.Neon -- 부품의 재질을 네온으로 설정
end
end
-- 기록을 완료하고 변경 사항을 기록에 커밋
ChangeHistoryService:FinishRecording(recording, Enum.FinishRecordingOperation.Commit)
end)

플러그인 업로드

플러그인 생성을 마친 후, 모든 프로젝트에서 접근할 수 있도록 인벤토리에 업로드할 수 있습니다.

플러그인을 업로드하려면:

  1. Explorer 창에서 플러그인 스크립트를 선택합니다.

  2. 스튜디오의 플러그인 메뉴로 이동한 다음 플러그인으로 게시를 선택합니다.

  3. 선택 사항
    자산 구성 창의 왼쪽 상단 모서리에서 기본 퍼즐 조각 이미지를 클릭하여 플러그인에 대한 512×512 이미지 썸네일을 업로드합니다.

  4. 다음 필드를 작성합니다:

    • 이름 — 플러그인에 대한 제목입니다.
    • 설명 — 잠재적인 사용자가 플러그인이 수행할 것으로 기대할 수 있는 내용을 설명하는 설명입니다.
    • 제작자 — 플러그인의 제작자로 귀속하고 싶은 제작자 또는 그룹입니다.
  5. 제출 버튼을 클릭합니다. 이제 플러그인이 툴박스에서 인벤토리창작물 탭 아래에서 사용할 수 있습니다.

플러그인 배포 및 판매

자신의 플러그인을 Creator Store에서 공개적으로 배포하고 판매하여 다른 사람들이 자신의 게임 개발에 사용할 수 있도록 할 수 있습니다. 이 수익화 방법을 통해 플랫폼 수수료 및 DevEx 비율을 우회하여 거래의 100% 순수익을 얻을 수 있습니다. 이 프로세스에 대한 자세한 내용은 판매자 계정을 설정하여 가격을 책정하고 지급을 받는 방법을 포함하여 Creator Store - 자산 배포 및 판매를 참조하세요.

©2026 Roblox Corporation. Roblox 및 Roblox 로고, 'Powering Imagination'은 미국 및 기타 국가 내 당사의 등록 및 미등록 상표입니다.