A Python script for rendering glTF files with V-Ray App SDK

Overview

V-Ray glTF viewer

Sample render

Overview

The V-Ray glTF viewer is a set of Python scripts for the V-Ray App SDK that allow the parsing and rendering of glTF (.gltf and .glb) files.

Installing and running the V-Ray glTF viewer

With V-Ray App SDK

  • Install Python 3.8 for all users in "c:\Program Files\Python38"

  • Install nightly V-Ray 5 App SDK (Qt version) in "C:\Program Files\Chaos Group\V-Ray\AppSDK". Be sure to choose the Advanced installation type and make sure the installation does not modify any license settings or environment variables.

    Note: In case you accidentally let the V-Ray App SDK installation modify the V-Ray license settings, run the tool setvrlservice.exe or from the start menu search for "Change V-Ray client license settings" to change them.

  • Open a command prompt (press Windows+R, type cmd and press Enter).

  • Execute set path="c:\program files\python38";"c:\program files\python38\scripts";%path%

  • First time only: Execute pip install numpy

  • First time only: Execute pip install pyquaternion

  • First time only: Execute pip install numba

  • First time only: Execute pip install scipy

  • Execute "C:\Program Files\Chaos Group\V-Ray\AppSDK\setenv38.bat"

  • Execute cd /d VRAY_GLTF_FOLDER where VRAY_GLTF_FOLDER is the folder where the file main.py is located.

  • Execute python main.py to see a list of options; use python main.py --help for detailed usage description.

With V-Ray 5 for 3ds Max

The Python binding of the V-Ray AppSDK is also included with V-Ray 5 for 3ds Max and Maya and in this case it is not needed to install the V-Ray AppSDK separately.

  • Make sure you have a recent version of V-Ray 5 for 3ds Max with the Python 3 binding of the V-Ray App SDK included (check if you have the folder "C:\Program Files\Chaos Group\V-Ray\3ds Max 2021\samples\appsdk\python38").

  • Install Python 3.8 for all users in "c:\Program Files\Python38"

  • Open a command prompt (press Windows+R, type cmd and press Enter).

  • Execute set path="c:\program files\python38";"c:\program files\python38\scripts";%path%

  • First time only: Execute pip install numpy

  • First time only: Execute pip install pyquaternion

  • First time only: Execute pip install numba

  • First time only: Execute pip install scipy

  • Execute "C:\Program Files\Chaos Group\V-Ray\3ds Max 2021\samples\appsdk\setenv38.bat"

  • Execute cd /d VRAY_GLTF_FOLDER where VRAY_GLTF_FOLDER is the folder where the file main.py is located.

  • Execute python main.py to see a list of options; use python main.py --help for detailed usage description.

Usage

The V-Ray glTF scripts are command-line only; there is no GUI and all options must be passed on the command line.

Use the --help option to list all possible options and their values.

An example command to render the sample .glb file could look like this (assuming that the vray_gltf project is extracted to d:\temp\vray_gltf):

python main.py d:\temp\vray_gltf\samples\basic\basic.glb --thick_glass --default_lights --default_cam_moffset "(0, 0, -0.5)" --output_file d:\temp\vray_gltf.jpg

Supported features

The glTF parser supports glTF 2.0 with the following extensions:

  • KHR_texture_transform
  • KHR_materials_pbrSpecularGlossiness
  • KHR_materials_transmission
  • KHR_materials_clearcoat
  • KHR_materials_sheen
  • KHR_lights_punctual is mostly working, but light range is not supported

Simple transform animations are supported to some extent. Vertex deformations, either through morphing or skinning are currently not supported.

Most of the sample models provided by Khronos generally render fine, as well as many models from the Windows 3D viewer library.

Owner
Chaos
Makers of the popular V-Ray, Corona and Vantage renderers
Chaos
📅 Calendar file generator for triathlonlive.tv upcoming events

Triathlon Live Calendar Calendar file generator for triathlonlive.tv upcoming events. Install Requires Python 3.9.4 and Poetry. $ poetry install Runni

Eduardo Cuducos 4 Sep 02, 2022
Subtitle Translater

Subtitle Translater

OshadhaVimukthi 2 Nov 29, 2021
Translator based on Google API

Yakusu Toshiko Translator based on Google API. Instance of this bot is running as @yakusubot. Features Add a plus to a language's name to show an orig

Arisu W. 2 Sep 21, 2022
Telegram Voice Chat UserBot made with Pyrogram and MarshalX/tgcalls with playlist and Heroku support

Telegram Voice Chat UserBot A Telegram UserBot to Play Audio in Voice Chats. This is also the source code of the userbot which is being used for playi

Calls Music 164 Nov 12, 2022
Elemeno.ai standard development kit in Python

Overview A set of glue code and utilities to make using elemeno AI platform a smooth experience Free software: Apache Software License 2.0 Installatio

Elemeno AI 3 Dec 14, 2022
CVE-2021-39685 Description and sample exploit for Linux USB Gadget overflow vulnerability

CVE-2021-39685 Description and sample exploit for Linux USB Gadget overflow vulnerability

8 May 25, 2022
Mass Instagram Checker

Mass Instagram Checker

X - MrG3P5 5 Nov 09, 2022
Official implementation of DeepSportLab (a fork of OpenPifPaf)

DeepSportLab DeepSportLab: a Unified Framework for BallDetection, Player Instance Segmentationand Pose Estimation in Team Sports Scenes This paper pre

ISPGroupUCL 8 Sep 27, 2022
An API wrapper for the file.io web service.

🗃️ File.io An API wrapper for the file.io web service. Install $ pip3 install fileio or

nkot56297 1 Dec 18, 2021
A stack-based systems language that supports structures, functions, expressions, and user-defined operator behaviour

A stack-based systems language that supports structures, functions, expressions, and user-defined operator behaviour. Currently compiles to URCL with plans to add additional formats in the future.

Lucida Dragon 3 Nov 03, 2022
A multi-platform HTTP(S) Reverse Shell Server and Client in Python 3

Phantom - A multi-platform HTTP(S) Reverse Shell Server and Client Phantom is a multi-platform HTTP(S) Reverse Shell server and client in Python 3. Bi

85 Nov 18, 2022
A Bot to Upload files to Many Cloud services. Powered by Telethon.

oVo MultiUpload V1.0 👀 A Bot to Upload files to Many Cloud services. Powered by Telethon _ 🎯 Follow me and star this repo for more telegram bots. @H

32 Dec 30, 2022
Example code for interacting with solana anchor programs - candymachine

candypy example code for interacting with solana anchor programs - candymachine THIS IS PURELY SAMPLE CODE TO FORK, MODIFY, UNDERSTAND AND INTERACT WI

dubbelosix 3 Sep 18, 2022
A Python library wrapping the iFixit (Dozuki) API.

A Python library wrapping the iFixit API. Status Working, but incomplete. Fully tested and documented. Hacking I highly recommend using virtualenv: [$

James Pearson Hughes 13 May 24, 2021
DSAIL repos - DSAIL Repository Template

DSAIL Repository Template DSAIL @ KAIST . ├── configs ('--F', help='for configur

yunhak 2 Feb 14, 2022
Block Telegram's new

Telegram Channel Blocker Bot Channel go away! This bot is used to delete and ban message sent by channel How this appears? The reason this appears ple

16 Feb 15, 2022
A calculator telegram bot.

Calculator-Bot A calculator telegram bot. Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github.com/Fay

Fayas Noushad 33 Nov 30, 2022
Framework for Telegram users and chats investigating.

telegram_scan Fantastic and full featured framework for Telegram users and chats investigating. Prerequisites: pip3 install pyrogram; get api_id and a

71 Dec 17, 2022
Written in Python, freezed into stand-alone executable with PyInstaller. This app will make sure you stay in New World without getting kicked for inactivity.

New World - AFK Written in Python, freezed into stand-alone executable with PyInstaller. This app will make sure you stay in New World without getting

Rodney 5 Oct 31, 2021
PyFIR - Python implementations of Finite Impulse Response (FIR) filters

pyFIR Python implementations of Finite Impulse Response (FIR) filters. The algorithms are mainly (but not strictly) the ones described in WEFERS, Fran

Davi Carvalho 4 Feb 12, 2022