Enterprise Studio Manual

Enterprise 전용 스튜디오 기능의 사용법이에요

Enterprise 가입방법

Enterprise Account

Enterprise 전용 오브젝트 종류

배치 위치

이름

기능

월드

Media

URL에 해당하는 영상을 재생합니다.

ScreenUI

MediaView

URL에 해당하는 영상을 재생합니다.

ScreenUI

WebBrowser

URL에 해당하는 웹페이지를 출력합니다.

ScreenUI

HyperLinkButton

버튼 클릭시 URL의 웹페이지로 연결합니다.

ScreenUI

YoutubeViewer

URL에 해당하는 유튜브 영상들을 내부 웹페이지 형태의 그리드로 출력합니다.

배치 방법

1. 승인된 Enterprise 계정으로 스튜디오에 로그인 합니다.

2. 작업할 맵 파일을 엽니다.

3. 월드 오브젝트에서 + 버튼을 눌러 Media 오브젝트를 배치할 수 있습니다.

4. ScreenUI에서 + 버튼을 눌러 WebBrowser, MediaView, HyperLinkButton, YouTubeViewer 위젯을 배치할 수 있습니다.

5. 배치한 오브젝트를 선택한 뒤, 프로퍼티창에서 세부 옵션 설정이 가능합니다.

전용 오브젝트 관련 프로퍼티

Media 오브젝트

  • Media Player : 출력할 영상을 미리 재생해볼 수 있어요

  • MediaURL : 미디어 서버에 등록된 출력할 영상의 URL이에요

  • Looping : 출력할 영상의 반복 여부에요 (true = 반복 / false = 미반복)

  • PlayOnOpen : 영상이 스크립트로 열렸을 때 재생할지 여부에요 (true = 재생 / false = 미재생)

  • Target to Sync : 타겟으로 설정된 오브젝트에 동기화하여 영상이 보여져요

  • Sync with Players : 다른 Media 오브젝트와 동기화하여 같이 보여줄지 여부에요 (true = 동기화 / false = 미 동기화)

  • FalloffDistance : 유튜브 영상 소리의 감쇠 반경 범위에요 (모바일에선 감쇠 기능이 동작하지 않아요)

  • InnerRadius : 영상 소리의 반경 범위에요

  • Pause Radius : 캐릭터가 나갔을 때 영상을 일시정지 하는 범위에요

  • Play Radius : 캐릭터가 닿았을 때 영상을 재생하는 범위에요

  • Trigger Play : Play Radius 영역에 들어왔을 때 영상을 재생할지 여부에요 (true = 재생 / false = 미재생)

Media 오브젝트 - 스크린 프로퍼티

MediaMesh : 출력될 미디어 스크린의 Mesh를 변경합니다.

Custom Type의 경우, 툴박스에서 원하는 매쉬를 선택할 수 있습니다.

CurvedScreen : 적용된 Mesh를 휠 수 있습니다. (최소값 -1 최대 1)

FillScreen : 업로드한 영상의 해상도에 맞춰 영상을 재생합니다.

MediaView 위젯

  • URL : 미디어 서버에 등록된 출력할 영상의 URL이에요

  • Quality Type : 미디어 서버에 등록된 영상이 유튜브 URL일 경우, 출력할 유튜브 영상의 품질이에요

  • Quality : 미디어 서버에 등록된 영상이 유튜브 URL일 경우, 유튜브 영상의 해상도에요 (최대 해상도 720)

  • Media Player : 출력할 영상을 미리 재생해볼 수 있어요

YouTubeViewer 위젯

  • Add YoutubeURL : 유튜브 웹 뷰에 출력될 영상 URL을 추가해요

  • URLn : 출력할 영상의 URL이에요

  • 아래는YouTubeViewer 출력 시 이미지에요.

HyperLinkButton 위젯

  • URL : 버튼 클릭시 연결할 웹페이지의 URL이에요

주의 사항

  • YouTube의 경우, 비공개로 설정된 영상은 표시되지 않을 수 있습니다. (만약 영상이 나오지 않는다면 공개로 설정되었는지 확인해보세요!)

스크립트 기능

Media 오픈 (Client와 Server)

--Client 에서 처리
local Media = Workspace.Media --Media 오브젝트를 변수에 할당해요

local ScreenUI = Workspace.ScreenUI

------------ 미디어 파일 업로드 중일때 진행도를 PrograssBar로 보여줘요
local function Media_UploadProgress(progress)     
    ScreenUI.ProgressBar:SetPercent(progress)
end
Media.OnUploadProgress:Connect(Media_UploadProgress)

------------ 1. 파일 다이얼로그를 오픈해요
local function OpenFileDialog(self)
    Media:OpenFileDialog()
end
ScreenUI.OpenFileDialogButton.OnPressEvent:Connect(OpenFileDialog) ------------ 버튼을 통해, FileDialog를 오픈해요

------------ 2. 미디어 서버에 파일 업로드 완료 상태를 체크해요.
local function Media_LoadComplete()        
    local mediaURL = Media.MediaURL ------ BroadCast를 위해, 미디어 서버에 올라간 MediaURL을 가져와요.
    Game:SendEventToServer("GetMediaURL", mediaURL) ------------ BroadCast를 위해, 서버에 MediaURL을 보내요     
end
Media.OnLoadCompleted:Connect(Media_LoadComplete)
--Server 에서 처리
local Media = Workspace.Media --Media 오브젝트를 변수에 할당해요

------------ 3. 미디어 키로 영상을 오픈해요
local function GetMediaURL(player, mediaURL)
    Media.MediaURL = mediaURL
    Media:OpenURL() ------ MediaURL을 오픈해요.
end
Game:ConnectEventFunction("GetMediaURL", GetMediaURL)

Media 재생 제어 (Client/Server Script)

local Media = Workspace.Media --Media 오브젝트를 변수에 할당해요

--Media 오브젝트의 영상을 재생해요 
Media:Play()
 
wait(5)
Media:Pause() --재생중인 영상을 일시정지해요
 
wait(5)
Media:Pause() --일시정지한 영상을 다시 재생해요
 
wait(2)
Media:Close() --영상 재생을 멈춰요

YouTubeViewer Widget (Client Script)

local ScreenUI = Workspace.ScreenUI --UI를 변수에 할당해요 
local Youtube_Viewer = ScreenUI.Youtube_Viewer --Youtube_Viewer 위젯을 변수에 할당해요

Youtube_Viewer:OpenViewer() --YoutubeViewer 웹 페이지를 오픈해요

WebBrowser Widget (Client Script)

local ScreenUI = Workspace.ScreenUI --UI를 변수에 할당해요 
local WebBrowser = ScreenUI.WebBrowser --WebBrowser 위젯을 변수에 할당해요
local InitLink = WebBrowser.WebURL --WebBrowser 위젯에 설정된 링크를 변수에 할당해요 
 
wait(5)
print("Change Link!")
WebBrowser.WebURL = "https://ditoland.net/main" --WebBrowser 위젯의 링크를 변경해요 

HyperLinkButton Widget (Client Script)

local ScreenUI = Workspace.ScreenUI --UI를 변수에 할당해요 
local HyperLinkButton = ScreenUI.HyperLinkButton --HyperLinkButton 위젯을 변수에 할당해요
local InitLink = HyperLinkButton.URL --HyperLinkButton 위젯에 설정된 링크를 변수에 할당해요 
 
wait(5)
print("Change Link!")
HyperLinkButton.URL = "https://ditoland.net/main" --HyperLinkButton 위젯의 링크를 변경해요 

ChattingChannel (ClientScript)

local ChannelName = "Channel1" --채팅 채널 이름을 변수에 할당해요 
 
wait(2)

--LocalPlayer를 Channel1 채널에 입장시켜요 
--같은 채널에 있는 플레이어끼리만 채팅이 보이게 돼요 
LocalPlayer:JoinChattingChannel(ChannelName) 

ImageID (ClientScript)

local ScreenUI = Workspace.ScreenUI --UI를 변수에 할당해요 
local Image = ScreenUI.Image --Image 위젯을 변수에 할당해요

--변경할 Image 리소스의 ID를 변수에 할당해요 
--Image 리소스의 ID는 툴박스에서 이미지를 우클릭해서 확인할 수 있어요
local ResourceID = 6800 
 
wait(5)
print("Change Image!")
Image.ImageID = ResourceID --Image 위젯에 표시할 리소스 ID를 적용해요

더 많은 기능을 보려면

API ReferenceSample

기타 문의 방법

다른 개발자들과 다양한 정보를 공유하세요. 디토랜드 운영에게 직접 질문할 수도 있습니다.

Last updated