QtQuickStreaming 동영상 캡션: 새로 만든 스크립트 모듈을 사용하여 QT 컨텐츠를 VRED 장면으로 직접 스트리밍할 수 있습니다. 스크립트 > QtQuickStreaming으로 이동합니다. 여기에서 QT 컨텐츠가 포함된 .exe 파일을 사용하여 스트림을 시작할 수 있습니다. 이제 대시보드 예에서와 같이 스트림에 연결할 수 있는 웹 엔진을 생성해야 합니다. QtQuickStreaming 창 내에서 여러 스트림을 추가하고, 미디어 편집기를 사용하여 장면의 다른 부분에 할당할 수 있습니다. 여기에서는 QT 대시보드 컨텐츠와 QT 달력이 동시에 실행되는 것을 볼 수 있습니다. 여러 스트림의 구성을 QtQuickStreaming 창에서 파일 > 저장을 선택하여 저장하고 스크립트 메뉴 아래에 저장한 다음 QtQuickStreaming 창에서 파일 > 로드를 사용하여 다시 로드할 수 있습니다.
또 다른 방법은 예를 들어 QT Design Studio에서 웹 스트림을 직접 시작하는 것입니다. 따라서 소프트웨어에 특정 포트로 스트리밍하도록 알리는 명령을 사용하여 QT Design Studio 내에서 새 실행 구성을 생성해야 합니다. 이 경우 포트 8990을 사용하고 있습니다. 이 스트림은 백그라운드에서 실행되고 있으며, 여기 보이는 것처럼 미디어 편집기의 웹 엔진에서 바로 적절한 URL 및 포트 번호를 사용하여 VRED 내에서 사용할 수 있습니다. 새 스크립트를 사용하면 VRED에서 모든 QT 컨텐츠를 실행하고 구성을 저장 및 로드할 수 있어 설계 프로세스에 소요되는 시간을 크게 절약할 수 있습니다.
Qt는 Qt Quick 응용프로그램의 GUI를 웹 브라우저로 스트리밍하기 위한 Qt Quick WebGL 스트리밍이라는 기능을 도입했습니다. 미디어 편집기 웹 엔진 또는 장면 플레이트 편집기웹 전면 플레이트에 웹 페이지를 표시합니다. 응용프로그램의 포트에 연결하고 Qt Quick GUI를 텍스처로 스트리밍합니다. 이 기능은 이미 VRED에서 HTML5 GUI를 사용하여 수행할 수 있는 기능과 매우 유사합니다.
새 스크립트 플러그인(스크립트 > QtQuickStreaming)은 WebGL 스트리밍이 활성화된 QT Quick 응용프로그램을 시작하고 중지할 수 있는 편리한 UI를 만듭니다.
Qt Quick 응용프로그램은 로컬 시스템에서 VRED의 하위 프로세스로 백그라운드에서 실행됩니다.
Qt Quick WebGL 스트리밍에 대한 자세한 내용은 다음 웹 사이트를 방문하십시오. https://blog.qt.io/blog/2018/11/23/qt-quick-webgl-release-512/
QtQuickStreaming을 사용하여 VRED에서 형상 또는 전면 플레이트에 해당 컨텐츠를 재생하는 Qt Quick 응용프로그램을 스트리밍할 수 있습니다.

Qt Quick을 사용하지 않는 일반 Qt 응용프로그램은 지원되지 않습니다.
QtQuickStreaming 대화상자 정보
아이콘 막대의 도구를 사용하여 다음을 수행할 수 있습니다.
추가 - Qt 응용프로그램 실행 파일을 목록에 추가합니다. 스트리밍된 Qt 컨텐츠 재생 의 2단계를 참조하십시오.
모든 프로세스 시작 - QtQuickStreaming 대화상자에서 모든 프로세스 스트리밍을 시작합니다.
모든 프로세스 중지 - QtQuickStreaming 대화상자에서 모든 프로세스 스트리밍을 중지합니다.
VRED가 종료되면 모든 프로세스가 자동으로 중지됩니다. VRED가 충돌 보고서 없이 충돌하는 경우에만 시작한 프로세스가 계속 실행됩니다. 작업 관리자에서 이러한 프로세스를 찾습니다.
모든 프로세스 삭제 - QtQuickStreaming 대화상자에서 모든 프로세스 스트리밍을 삭제합니다.
QtQuickStreaming 대화상자의 이 섹션에는 WebGL 스트리밍에 사용되는 포트와 함께 Qt Quick 응용프로그램 이름이 나열됩니다. 포트 번호는 프로세스가 실행되고 있지 않은 경우(즉, 프로세스 시작 전)에만 변경할 수 있습니다.
모든 실행 파일 옆에 다음 버튼이 있습니다.
시작 - 프로세스를 시작합니다.
중지 - 프로세스를 중지합니다.
삭제 - Qt 프로세스를 중지하고 삭제합니다.
URL - 스트리밍 웹 서버의 웹 URL을 클립보드에 복사합니다. 웹 엔진에 이 URL을 사용합니다. 스트리밍된 Qt 컨텐츠 재생 의 4단계를 참조하십시오.
예를 들어 미디어 편집기에서 웹 엔진을 만들거나 장면 플레이트 편집기에서 유형이 웹인 전면 플레이트를 만듭니다. 복사한 URL(포트 9000의 경우 http://localhost:9000 )을 웹 엔진에 붙여넣고 Enter 키를 누릅니다. 성공한 경우 VRED에서 웹 엔진을 사용한 형상 또는 전면 플레이트에 대한 Qt Quick 응용프로그램 렌더링을 확인할 수 있습니다.
파일 메뉴에는 다음과 같은 두 가지 옵션이 있습니다.
로드 - Qt Quick 응용프로그램이 포함된 저장된 장면이 열리면 로드를 사용하여 구성을 장면으로 로드합니다. 자세한 내용은 *Qt 스크립트를 사용하여 저장된 장면 다시 열기*를 참조하십시오.
저장 - 이 옵션을 사용하여 장면에 대한 Qt Quick 응용프로그램 구성을 저장합니다. 자세한 내용은 *QtQuickStreaming 구성 저장*을 참조하십시오.
이 확인란은 파일 메뉴 바로 아래에 있습니다. 기본적으로 꺼져 있습니다.
자동 시작이 꺼진 경우 실행 파일이 시작되지 않습니다.
자동 시작이 켜진 경우 QT Quick 프로세스가 자동으로 시작됩니다.
구성 파일을 저장할 때 실행 중인 프로세스만 자동으로 실행됩니다.
실행 파일이 아직 시작되지 않은 경우 시작하려면 재생 버튼을 누릅니다.
명령행을 사용하여 프로세스 시작
다음을 사용하여 명령줄 도구로 프로세스를 수동으로 시작합니다.
$ ./your-qt-application -platform webgl:port=8998
또는 프로젝트를 준비할 때 VPB에 스크립트를 포함합니다.
VRED를 실행하는 시스템에서 응용프로그램에 액세스할 수 있어야 합니다.
Python 스크립팅을 사용하여 프로세스 시작
웹 엔진을 포함하여 VPB를 로드할 때 프로세스를 시작하는 스크립팅 솔루션의 경우 Qt Quick 응용프로그램 컨텐츠를 표시하려면 다음을 수행합니다.
다음은 포트 9000에서 WebGL 스트리밍을 사용하여 QT Quick 응용프로그램 calendar.exe를 시작하는 예제 스크립트입니다.
Qt는 이미 사용 중인 포트에 대한 스트리밍을 지원하지 않습니다. 대화상자의 응용프로그램 목록에 새 Qt Quick 응용프로그램을 추가할 때 VRED는 사용하지 않는 포트(번호가 9000으로 시작)를 자동으로 검색합니다.
from PySide2.QtCore import QProcess
process = QProcess()
cmd = "\"C:/qtquick_examples/bin/calendar.exe\" -platform webgl:port=9000"
process.start(cmd)
스트리밍된 Qt 컨텐츠 재생
VRED에서 스트리밍 Qt 컨텐츠를 로드 및 재생하려면 하나 이상의 형상(예: 평면)이 필요합니다. 미디어 편집기 및 재질 편집기의 도움말을 참조하십시오.
평면을 만듭니다.
장면 그래프에서 루트 노드를 마우스 오른쪽 버튼으로 클릭한 다음 만들기 > 형상 만들기 > 평면을 선택합니다.
평면 만들기 대화상자에서 크기 및 해상도를 설정한 다음 만들기를 클릭하여 투영할 Qt 응용프로그램의 평면을 만듭니다.
변환
을 클릭하고 평면을 배치합니다.
Qt 응용프로그램을 로드하여 백그라운드에서 스트리밍을 시작합니다.
스크립트 > QtQuickStreaming을 선택하여 QtQuickStreaming 대화상자를 엽니다.
+를 클릭하고 Qt 실행 파일을 찾아 선택한 다음 열기를 클릭합니다. 그러면 실행 파일이 백그라운드에서 열립니다.
QtQuickStreaming 대화상자에서 Qt 응용프로그램이 스트리밍하는 포트와 함께 표시됩니다.
웹 엔진을 만듭니다.
장면 > 미디어 편집기를 선택하고 +(웹 엔진)를 클릭합니다.
해상도의 폭 및 높이를 설정합니다.
스트리밍 URL을 설정합니다.
QtQuickStreaming 대화상자에 있는 URL 버튼을 클릭하여 포트를 클립보드에 복사합니다.
미디어 편집기에서 URL 필드를 마우스 오른쪽 버튼으로 클릭한 다음 붙여넣기를 선택하여 포트 URL을 웹 엔진에 추가합니다.
평면의 매핑 및 색상을 설정합니다.
재질
을 클릭하여 재질 편집기를 열고 평면의 재질을 미디어 편집기 및 재질 필드로 드래그합니다.
재질 편집기의 분산 텍스처 섹션에서 매핑 유형을 UV로 변경합니다.
QtQuickStreaming 구성 저장
장면을 저장할 때 저장된 VPB에는 장면에 표시하기 위해 실행해야 할 Qt Quick 응용프로그램 목록이 포함되지 않습니다. 이 VPB는 별도로 QtQuickStreaming 플러그인의 구성 파일(.cfg)로 저장해야 합니다.
VRED의 주 메뉴 막대에서 파일 > 다른 이름으로 저장을 선택한 다음 저장을 클릭하여 장면(VPB)을 저장합니다.
VPB 옆에 Qt Quick 응용프로그램 구성을 저장합니다. QtQuickStreaming 대화상자에서 파일 > 저장을 선택합니다.
구성 파일의 경우 VPB와 동일한 이름을 사용합니다(예: C:/myfolder/myscene.vpb 및 C:/myfolder/myscene.cfg).
저장을 클릭하여 구성 파일을 저장합니다.
Qt Quick 응용프로그램을 사용하는 저장된 장면 다시 열기
VPB를 로드할 때 VRED QtQuick 스트리밍 플러그인은 VPB 옆에 있는 VPB와 동일한 파일 이름의 구성 파일을 찾아 자동으로 로드합니다. 구성 파일을 찾을 수 없으면 수동으로 구성 파일을 로드해야 합니다.
스크립트 > QtQuickStreaming을 선택하여 대화상자를 연 다음 파일 > 로드를 선택합니다.
필요한 구성 파일을 두 번 클릭하여 해당 파일을 로드합니다.
QtQuickStreaming 대화상자에서 재생 버튼을 누릅니다.
메뉴 막대에서 장면 > 미디어 편집기를 선택합니다.
미디어 편집기에서 웹 엔진을 클릭한 다음 URL 옆에 있는 다시 로드
버튼을 클릭합니다. 모든 웹 엔진에 대해 이 작업을 수행합니다.