このドキュメントでは、Twitter API v2 サンプル コードと Mitoba 3 レンダラーの使用に関する包括的なガイドを提供します。さまざまなプログラミング言語 (Java、Node.js、Python、R、Ruby) のセットアップ手順、環境変数の詳細、トラブルシューティングのヒントが含まれています。 Mitoba 3 については、インストール ガイド、使用例、主な機能と貢献者に関する情報が提供されます。
Twitter API v2 サンプルコード
Twitter API v2 エンドポイントのサンプル コード。
個々の API 機能には、いくつかのコーディング言語 (Java、Node.js、Python、R、Ruby) での使用例を見つけることができるフォルダーがあります。
前提条件
コードサンプルの使用
このリポジトリ内のサンプルを実行するには、いくつかの環境変数を設定する必要があります。資格情報とベアラー トークンは、開発者ポータルのダッシュボードにあるプロジェクト内のアプリで確認できます。
OAuth 1.0a サンプルの場合、端末でコンシューマ キーとシークレットをエクスポートする必要があります。必ず交換してください
ベアラー トークン認証を使用するサンプルの場合は、ベアラー トークンをエクスポートする必要があります。必ず交換してください
言語固有の要件
Java環境のセットアップ
Homebrew を使用している場合は、以下を使用して Java ランタイムをインストールできます。
コードを構築して実行するには、個々のサンプルで参照されている関連する JAR ファイルをダウンロードする必要もあります。 IDE を使用している場合は、これを自動的に実行できる場合があります。
JavaScript(Node.js)環境のセットアップ
このコードを実行するには、Node.js をインストールする必要があります。すべての Node.js サンプルでは、HTTP クライアントとして針を使用します。これには、npm がインストールされている必要があります。ユーザー コンテキスト リクエストを伴う OAuth の場合は、got および oauth-1.0a パッケージをインストールする必要があります。
Python環境のセットアップ
このコードを実行するには、Python 3 をインストールする必要があります。 Python サンプルでは、requests==2.24.0 を使用し、requests-oauthlib==1.3.0 を使用します。
(オプション) 必要なパッケージをグローバルにインストールするのではなく、venv を使用してローカルのプロジェクト サブフォルダーにインストールするのが一般的であり、推奨されます。
これらのパッケージは次のようにインストールできます。
Ruby環境のセットアップ
コードを実行するには、Ruby (推奨: 2.0.0 以上) がインストールされている必要があります。 Ruby の例では HTTP クライアントとして typhoeus を使用していますが、これには gem をインストールする必要があります。ユーザー コンテキスト リクエストを伴う OAuth の場合は、oauth gem をインストールする必要もあります (以下を参照)。
追加のリソース
当社は、個々の API エンドポイントを実行するために使用できる Postman コレクションを維持しています。
サポート
API と機能に関する一般的な質問については、開発者コミュニティ フォーラムの v2 セクションをご利用ください。
サンプル コード自体にバグや問題がある場合は、GitHub で新しい問題を作成してください。
貢献する
これらのコード サンプルに意味のある追加を追加するプル リクエスト、特にここにまだ記載されていない言語のプル リクエストを歓迎します。
私たちは、歓迎的なコミュニティが重要であると考えており、コミュニティとのすべてのやり取りにおいて Twitter のオープンソース行動規範に従っていただくようお願いいたします。
ライセンス
Copyright 2021 Twitter, Inc.
Apache License、バージョン 2.0 に基づいてライセンス供与: https://www.apache.org/licenses/LICENSE-2.0
例:
ミツバレンダラー3
ドキュメント | チュートリアルビデオ | Linux | MacOS | 窓 | PyPI |
---|---|---|---|---|---|
️
警告
️
現在、文書化されていない不安定な作業が大量に行われています。
master
ブランチ。ぜひご利用ください。
最新リリース
追って通知があるまで。
今後の変更をすでに試してみたい場合は、こちらをご覧ください。
この移植ガイド。
今後の新機能と重大な変更のほとんどがカバーされているはずです。
導入
ミツバ 3 は、順光と逆光の研究指向のレンダリング システムです。
スイスのEPFLで開発された輸送シミュレーション。
コア ライブラリと機能を実装するプラグインのセットで構成されます。
マテリアルや光源から完全なレンダリング アルゴリズムに至るまで。
ミツバ 3 は再ターゲット可能です。これは、基礎となる実装と
データ構造は、さまざまな異なるタスクを実行するために変換できます。のために
たとえば、同じコードで両方のスカラー (一度に 1 レイずつの古典的な) RGB トランスポートをシミュレートできます。
または GPU 上の差分スペクトル転送。これはすべてに基づいています
Dr.Jit は、このプロジェクトのために特別に開発された特殊なジャストインタイム(JIT) コンパイラーです。
主な特長
クロスプラットフォーム:Mitsuba 3 は Linux ( x86_64
)、macOS でテストされています
( aarch64
、 x8664
)、および Windows ( x8664
)。
高いパフォーマンス: 基盤となる Dr.Jit コンパイラーがレンダリング コードを融合します
を使用して最先端のパフォーマンスを実現するカーネルに組み込まれます。
CPU をターゲットとする LLVM バックエンドと CUDA/OptiX バックエンド
レイ トレーシング ハードウェア アクセラレーションを備えた NVIDIA GPU をターゲットとしています。
Python ファースト: ミツバ 3 は Python と深く統合されています。材料、
テクスチャ、さらには完全なレンダリング アルゴリズムさえも Python で開発できます。
これは、システムによってオンザフライで JIT コンパイル (およびオプションで微分) されます。
これにより、コンピュータ グラフィックスの研究に必要な実験が可能になり、
他の分野。
微分: ミツバ 3 は微分可能なレンダラーです。
入力に関するシミュレーション全体の導関数を計算できます
カメラのポーズ、ジオメトリ、BSDF、テクスチャ、ボリュームなどのパラメータ。それ
EPFL で開発された最近の微分可能レンダリング アルゴリズムを実装します。
スペクトルと偏光:Mitsuba 3 は単色として使用可能
レンダラー、RGB ベースのレンダラー、またはスペクトル レンダラー。各バリアントでは、
必要に応じて、分極の影響をオプションで考慮します。
チュートリアルビデオ、ドキュメント
優しい紹介を提供する YouTube ビデオをいくつか録画しました。
ミツバ3とドクタージット。さらに、完全な Juypter ノートブックを見つけることができます。
さまざまなアプリケーション、ハウツー ガイド、リファレンス ドキュメントを網羅
readthedocs で。
インストール
PyPI 経由でコンパイル済みのバイナリ ホイールを提供します。この方法でのMitsubaのインストールは、実行するのと同じくらい簡単です
pip インストールミツバ
コマンドラインで。 Python パッケージにはデフォルトで 13 のバリアントが含まれています。
scalar_rgb
scalar_spectral
scalarspectralpolarized
llvmadrgb
llvmadmono
llvmadmono_polarized
llvmadspectral
llvmadspectral_polarized
cudaadrgb
cudaadmono
cudaadmono_polarized
cudaadspectral
cudaadspectral_polarized
最初の 2 つは、RGB のいずれかを使用して、一度に 1 レイずつの古典的なシミュレーションを実行します。
またはスペクトル色表現、後者の 2 つは逆変換に使用できます。
CPU または GPU でのレンダリング。追加のバリアントにアクセスするには、次のことを行う必要があります。
CMake を使用して Dr.Jit のカスタム バージョンをコンパイルします。をご覧ください。
ドキュメント
詳細については。
要件
Python >= 3.8
(オプション) GPU での計算の場合: Nvidia driver >= 495.89
(オプション) CPU でのベクトル化/並列計算の場合: LLVM >= 11.1
使用法
これは、レンダリングがいかに簡単であるかを示す単純な「Hello World」の例です。
PythonからMitsuba 3を使用したシーン:
# エイリアス "mi" を使用してライブラリをインポートしますimport tsuba as mi# renderer のバリアントを設定しますmi.setvariant('scalarrgb')# シーンをロードしますscene = mi.loaddict(mi.cornellbox())# シーンをレンダリングしますimg = mi。 render(scene)# レンダリングされたイメージを EXR ファイルに書き込みますmi.Bitmap(img).write('cbox.exr')
さまざまなアプリケーションをカバーするチュートリアルとノートブックの例が見つかります。
ドキュメントにあります。
について
このプロジェクトは Wenzel Jakob によって作成されました。
コードの重要な機能や改善は、次の寄稿者によって行われました。
セバスチャン・シュパイラー
ニコラ・ルーセル
マーリン・ニミエ=デイヴィッド
デリオ・ヴィチーニ
ティツィアン・ツェルトナー
バティスト・ニコレット
ミゲル・クレスポ
ヴァンサン・リロイと
チャン・ツィイー。
学術プロジェクトでMitsuba 3を使用する場合は、以下を引用してください。
@software{Mitsuba3,title = {Mitsuba 3 renderer},author = {Wenzel Jakob、Sébastien Speierer、Nicolas Roussel、Merlin Nimier-David、Delio Vicini、Tizian Zeltner、Baptiste Nicolet、Miguel Crespo、Vincent Leroy、Ziyi Zhang},note = {https://tsuba-renderer.org}、バージョン = {3.1.1}、年 = 2022}