Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

tinyusdz

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tinyusdz

  • 0.8.0rc6
  • PyPI
  • Socket score

Maintainers
1

Python binding of TinyUSDZ

Currently in testing stage. Does not work well.

Core part is deletegated to native module(ctinyusd.so)

W.I.P.

Requirements

  • Python 3.7 or later
    • Python 3.10+ recommended
    • For developping and testing, Python 3.8 or later is required.
  • numpy
    • For efficient Attribute data handling.
    • from_numpy and to_numpy method available when numpy is installed..
  • pandas
    • To support TimeSamples data efficiently(e.g. read/write to CSV, Excel)
  • typeguard
    • To do type check at runtime.

Structure

  • ctinyusdz: Native C++ module of tinyusdz
    • Python binding on top of C binding of TinyUSDZ.
  • tinyusdz: Python module. Wraps some functions of ctinyusdz

TinyUSDZ's Python binding approach is like numpy: Frontend is written in Python for better Python integration(type hints for lsp(Intellisense), debuggers, exceptions, ...), and calls native C modules as necessary.

Supported platform

  • Linux
    • x86-64
    • aarch64
  • Windows
    • 64bit AMD64
    • 32bit x86
    • ARM64(not intensively tested, but should work)
  • macOS
    • arm64
    • Intel

Features

  • T.B.W.

Optional

  • pxrUSD compatible Python API?(pxr_compat folder)

Install through PyPI

$ python -m pip install tinyusdz

For developers. Build from source

Back to tinyusdz's root directory, then

# Use `build` module(install it with `python -m pip install build`) 
$ python -m build .

If you are working on TinyUSDZ Python module, Using setup.py recommended.

# install dependencies
$ python -m pip install setuptools scikit-build cmake ninja
$ python setup.py build
# Then copy `./_skbuild/<arch>-<version>/cmake-install/tinyusdz/ctinyusdz.*.so/dll to `<tinyusdz>/python` folder.

Re-generate ctinyusdz.py

When TinyUSDZ C API has been updated, need to re-genrerate <tinyusdz>/python/tinyusdz/ctinyusd.py using ctypesgen https://github.com/ctypesgen/ctypesgen .

# if you do not install ctypesgen
$ python -m pip install ctypesgen


$ cd <tinyusdz>/python
$ sh gen-ctypes.sh 

Asan support

If you built ctinyusdz with ASAN enabled, use LD_PRELOAD to load asan modules.

LD_PRELOAD=/path/to/clang+llvm-14.0.0-x86_64-linux-gnu-ubuntu-18.04/lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu/libclang_rt.asan.so  python tutorial.py

Please see https://tobywf.com/2021/02/python-ext-asan/ for more infos.

License

Apache 2.0 license.

EoL.

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc