Python API V2의 새로운 기능

각 릴리스에 대해 VRED Python API v2에서 추가 및 변경된 사항을 찾습니다.

자세히 알아보기 아이콘 Python 샌드박스 및 기타 보안 정보에 대한 자세한 내용은 소프트웨어 보안을 참조하십시오.

API v2 2024.2의 새로운 기능

이 페이지에서는 VRED 2024.2에서 Python API v2에 추가되거나 변경된 사항을 2024.1과 비교하여 보여줍니다.

참고:

VRED 2025에서 API에 영향을 미칠 볼륨 렌더링과 관련된 다양한 변경 사항 및 개선 사항을 구현하려는 계획에 따라 Python API v2 릴리즈가 연기되었습니다.

Python 버전

Python 버전이 3.11.6으로 업데이트되었습니다.

중요:

Python 2 스크립트를 Python 3으로 자동 업데이트하는 라이브러리는 Python 3.11부터 사용되지 않으므로 향후 문제가 발생하지 않도록 이러한 스크립트를 Python 3으로 업데이트하는 것이 좋습니다.

Qt 버전

Qt가 6.2.10으로 업데이트되었습니다.

새 환경 변수

다음은 2024.2의 새로운 환경 변수입니다.

  • VRED_CLUSTERSERVICE_CONFIG
  • VRED_CLUSTERSERVICE_DISABLE_ALL
  • VRED_CLUSTERSERVICE_ENABLE_ALL

환경 변수 제거

STARVR_SDK 환경 변수가 제거되었습니다.

API

다음은 새로운 함수, 클래스 및 유형에 대한 요약입니다.

Python API V1 변경 사항

다음은 2024.2에서 발견된 Python API V1 변경 사항입니다.

  • vrMovieExport - 매개변수 background_passvolume_passsetCombinedChannelsRenderPasses에 추가되고 다음 함수가 추가되었습니다.

    • getDepthMode
    • getDepthRange
    • setDepthMode
    • setDepthRange
    • setOcclusionRange
    • getOcclusionRange
  • vrOSGWidget - 다음 함수가 추가되었습니다.

    • setActiveRenderPass - VOLUME_COLOR_LAYER 매개변수가 추가되었습니다.
    • setDisplayMode - VR_DISPLAY_VRHERO_XTAL이 제거되었습니다.
  • vrRenderSettings - 다음 함수가 변경되었습니다.

    • setDenoiseAlpha - 매개변수가 denoiseAlpha로 변경되었습니다.
    • setRenderPasses - 패스 목록에 volume_color가 추가되었습니다.

Python API V2 변경 사항

다음은 2024.2에서 발견된 Python API V2 변경 사항입니다.

  • vrCADFileTypes - 다음과 같이 변경되었습니다.

    • Maya가 제거되었습니다.
    • SLP가 추가되었습니다.
  • vrdAtfSettings - getJtToolkit에 대해 Jt Open (Experimental)에서 Jt Open으로 이름이 변경되었습니다.

  • vrdBaseLightNode - 다음이 추가되었습니다.

    • getVolumeIlluminationMode
    • setVolumeIlluminationMode
  • vrdDeviceInteraction- 다음 클래스에 대한 설명서가 변경되었습니다.

    • addSupportedInteractionGroup
    • createControllerAction
    • getControllerAction
    • removeControllerAction
    • removeSupportedInteractionGroup
    • setControllerActionMapping(변경된 mapping 매개변수 포함)
    • setSupportedInteractionGroups
  • vrDeviceService - 다음 클래스에 대한 설명서가 변경되었습니다.

    • addBlockedDeviceModelOrSerial
    • createInteraction
    • getBlockedDeviceModelsOrSerials
    • getLeftTrackedHand
    • getRightTrackedHand
    • getVRDeviceBySerialNumber
    • isBlockedDeviceModelOrSerial
    • removeBlockedDeviceModelOrSerial
    • setBlockedDeviceModelsOrSerials
    • setTrackingOrigin
    • deviceCollisionStarted
    • deviceCollisionStopped
    • deviceMoved
  • vrdFileExportSettings - 모든 SurfaceExportMode 열거 항목에 대한 설명서가 추가되었습니다.

  • 다음 함수에 대해 아래에 명시된 예외를 제외하고 매개변수 value 이름이 enable로 변경되었습니다.

    • setExportAnimationClips
    • setExportAnimationCurves
    • setExportAnnotations
    • setExportCameras
    • setExportColors
    • setExportEnvironmentGeometries
    • setExportGeometrySwitches
    • setExportInvisibleData
    • setExportLightmaps
    • setExportLights
    • setExportMaterialSwitches
    • setExportMeshes
    • setExportMetadata
    • setExportSceneplates
    • setExportScripts
    • setExportSurfaces - value 매개변수의 이름이 mode로 변경되었습니다.
    • setExportTouchSensors
    • setExportTransformVariants
    • setExportVariants
    • setExportVariantSets
    • setExportVertexColors
    • setFbxFormat - value 매개변수의 이름이 format으로 변경되었습니다.
    • setFbxVersionId - value 매개변수의 이름이 id로 변경되었습니다.
    • setInlineTextures
    • setKeepEmptyGeometryNodes - value 매개변수의 이름이 keep으로 변경되었습니다.
    • setKeepEmptyGroupNodes - value 매개변수의 이름이 keep으로 변경되었습니다.
    • setKeepEmptyMaterialGroupNodes - value 매개변수의 이름이 keep으로 변경되었습니다.
    • setKeepEmptyShellNodes - value 매개변수의 이름이 keep으로 변경되었습니다.
    • setKeepUnusedMaterials - value 매개변수의 이름이 keep으로 변경되었습니다.
    • setRemoveBSides
    • setStlFormat
  • vrdVertexBakeSettings - setIntensityThreshold 함수 설명서가 업데이트되었습니다.

  • vrdVRDevice - OpenXR 모드와 관련하여 다음 사항에 대한 참고 사항이 변경되었습니다.

    • addVirtualButton
    • disableRay
    • enableRay
    • getSerialNumber
    • getWristOrientationAngle
    • pick
    • removeVirtualButton - 오버로드된 두 메서드 모두
    • setButtonPressed
    • setButtonTouched
    • setTrackingMatrix
    • signal
    • vibrate
  • vrFileIOService - 다음 신호가 제거되었습니다.

    • addedGeometry

    • addLoadedMaterial

    • preExportGeometry

    • 'cad'의 철자가 'CAD'로 변경되고 'vred'가 'VRED'로 변경되었습니다.

    • project에 대한 설명서가 추가되었습니다.

    • 다음 함수에 대한 설명서가 업데이트되었습니다.

      • checkCadType
      • getImageReadFilter
      • getImageReadFilter
      • importFiles
  • vrGPUService - gpuStateInfo가 추가되었습니다.

  • vrGUIService - DialogType 열거형에 OpenVDB 값이 추가되었습니다.

  • vrHMDService - 다음 함수가 제거되었습니다.

    • getStarVRRenderSettings
    • setStarVRRenderSettings
  • vrImmersiveInteractionService - setViewpointMode 설명서가 변경되었습니다.

  • vrLightTypes - 열거형 VolumeIlluminationMode가 추가되었습니다.

  • vrMaterialTypes - MaterialType에 다음 값이 추가되었습니다.

    • VolumeScatter
    • OpenVDBVolume

제거된 항목

vrdStarVRRenderSettings에 대한 지원이 제거되었습니다.

API v2 2024.1의 새로운 기능

노드 내보내기용 Python

노드를 내보내는 새로운 방법이 추가되었습니다. vrFileIoService, vrdFileExportSettingsvrdFileExportSettings::SurfaceExportMode를 확인하십시오. 파일을 가져오고 내보내는 방법과 이러한 설정을 변경하는 방법을 보여 주는 몇 가지 기본적인 예가 vrFileIOService에 추가되었습니다. 자세한 내용은 vrdFileExportSettingsvrdFileExportSettings 예를 참조하십시오.

환경 변수 업데이트

다음이 수정되었습니다.

  • VRED_COLLABORATION_NO_UPLOAD - 수정되었습니다("uupload").
  • VRED_CURRENT_PROJECT_DIR - '_DIR" 앞의 추가 공백이 제거되었습니다.

다음이 추가되었습니다.

  • VRED_IMPORT_PERFORMANCE_LOG
  • VRED_SECURE_PYTHON
  • VRED_WORKSPACES_PATH

API V1 업데이트

다음이 vrCollision에 추가되었습니다.

  • getCollidingNodes
  • getCollidingTriangleIndices
  • getCollidingTriangles
  • getCollisionInfo
  • getCollisionPoint

API V2 업데이트

다음 클래스가 추가되었습니다.

다음 클래스가 변경되었습니다.

  • vrCADFileTypes에 대한 변경 사항:

    • CatiaV5 - 주석이 V5를 참조하도록 업데이트되었습니다.
    • C3MF
    • IFC
    • SLP
  • vrdAtfSettings에 대한 변경 사항:

    • getImportColors()
    • setImportColors()
  • vrdMaterialXProperties에 대한 변경 사항:

    • 클래스 설명의 코드 예가 업데이트되었습니다(PySide2 -> PySide6).
  • vrdMDLProperties에 대한 변경 사항:

    • 클래스 설명의 코드 예가 업데이트되었습니다(PySide2 -> PySide6).
  • vrFileIOService에 대한 변경 사항:

    • 다음이 추가되었습니다.
    • abortJobs()

    • exportNodes()

    • getExportSettings()

    • getExportSettingsFromPreferences()

    • setExportSettings()

      • 다음 신호가 제거되었습니다.
    • addedGeometry

    • addLoadedMaterial

    • importedFile

    • preExportGeometry

    • sequences

  • vrGUIService에 대한 변경 사항:

    • openExportDialog()
    • openExportSceneDialog()
  • vrLightService에 대한 변경 사항:

    • copyLights()
    • getLightsClipboard()
    • isLightsClipboardEmpty()
    • pasteLights()
  • vrMaterialTypes에 대한 변경 사항:

    • MergeOptions
    • Default의 경우 설명서가 변경되었습니다.
    • IgnoreName의 경우 설명서가 변경되었습니다.
    • IncludeSwitchMaterials의 경우 설명서가 변경되었습니다.
    • ExcludeXRiteMaterials가 추가되었습니다.
  • vrQueryService에 대한 변경 사항:

    • 클래스 설명서가 업데이트되고 코드 예가 추가되었습니다.

API v2 2024의 새로운 기능

이 페이지에서는 VRED 2024에서 Python API v2에 추가되거나 변경된 사항을 2023.4와 비교하여 보여 줍니다.

Python 버전

Python 버전이 3.11.3으로 업데이트되었습니다. VRED의 Python 버전은 VRED 내에서 다음을 통해 출력할 수 있습니다.

print(sys.version)

Qt 버전

Qt 버전이 Qt 5에서 6.2로 업데이트되었습니다. 여기에서는 PySide 모듈 이름이 PySide2에서 PySide6으로 변경되고 shiboken2가 shiboken6으로 변경됩니다.

참고:

"기본 설정 > 스크립트 > 스크립트를 현재 Python 버전으로 변환" 옵션을 활성화하면 VRED에서 Python 스크립트를 실행하기 전에 PySide2와 shiboken2라는 이름이 즉시 PySide6과 shiboken6으로 자동 교체됩니다.

PySide2에서 PySide6으로 응용프로그램 포팅

VRED의 Qt 버전은 VRED 내에서 다음을 통해 출력할 수 있습니다.

print(PySide6.QtCore.qVersion())

API

다음은 새 함수 및 클래스입니다.

새로운 재질 거칠기

VRED 2024에서 재질 거칠기는 선형 동작으로 변경되며 새로운 값 범위는 0에서 1 사이입니다. 이전 VRED 버전에서는 비선형 동작이었으며 최대값은 40이었습니다. 이전 파일을 VRED로 가져오면 재질 거칠기 값이 새 동작에 맞게 자동으로 조정됩니다.

스크립트를 통해 명시적으로 특정 거칠기 값을 설정하는 경우(예: vrdPlasticMaterial.setRoughness(roughness)) 스크립트에서 값을 조정해야 합니다.

변환에 대한 다음 스니펫을 참조하십시오(snippets/convertRoughness.py).