本文檔提供了使用 Twitter API v2 範例程式碼和 Mitsuba 3 渲染器的綜合指南。它包括各種程式語言(Java、Node.js、Python、R、Ruby)的設定說明、環境變數的詳細資訊以及故障排除提示。對於 Mitsuba 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 範例都使用 Needle 作為 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 範例使用tyhoeus 作為HTTP 用戶端,需要安裝gem。對於具有使用者上下文請求的 OAuth,您還需要安裝 oauth gem(請參閱下文)。
其他資源
我們維護一個 Postman 集合,您可以使用它來練習各個 API 端點。
支援
對於與 API 和功能相關的一般問題,請使用我們開發者社群論壇的 v2 部分。
如果範例程式碼本身有錯誤或問題,請在 GitHub 上建立新問題。
貢獻
我們歡迎拉取請求,為這些程式碼範例添加有意義的補充,特別是對於此處尚未表示的語言。
我們認為,一個熱情的社群很重要,我們要求您在與社群的所有互動中遵循 Twitter 的開源行為準則。
執照
版權所有 2021 Twitter, Inc.
根據 Apache 授權 2.0 版授權:https://www.apache.org/licenses/LICENSE-2.0
例子:
三葉渲染器 3
文件 | 教學影片 | Linux | 蘋果系統 | 視窗 | 皮伊 |
---|---|---|---|---|---|
️
警告
️
目前,大量無證且不穩定的工作正在進行
master
分支。我們強烈建議您使用我們的
最新版本
直至另行通知。
如果您已經想嘗試即將發生的更改,請查看
本移植指引。
它應該涵蓋大部分新功能和即將到來的重大變化。
介紹
Mitsuba 3 是一款以研究為導向的前向光和反向光渲染系統
瑞士洛桑聯邦理工學院 (EPFL) 開發的交通模擬。
它由一個核心庫和一組實現功能的插件組成
從材質和光源到完整的渲染演算法。
Mitsuba 3 是可重定向的:這意味著底層實作和
資料結構可以轉換以完成各種不同的任務。為了
例如,相同的程式碼可以模擬標量(經典的一次一束)RGB 傳輸
或 GPU 上的差分光譜傳輸。這一切都建立在
Dr.Jit,專為此專案開發的專用即時(JIT) 編譯器。
主要特點
跨平台:Mitsuba 3 已在 Linux ( x86_64
)、macOS 上進行測試
( aarch64
、 x8664
)和 Windows ( x8664
)。
高效能:底層Dr.Jit編譯器融合渲染程式碼
進入內核,使用實現最先進的性能
針對 CPU 的 LLVM 後端和 CUDA/OptiX 後端
針對具有光線追蹤硬體加速功能的 NVIDIA GPU。
Python優先:Mitsuba 3與Python深度整合。材料,
紋理,甚至完整的渲染演算法都可以用Python開發,
系統即時編譯(並可選擇區分)。
這使得電腦圖形學研究所需的實驗成為可能
其他學科。
差異化:Mitsuba 3 是一個可微分渲染器,這表示它
可以計算整個模擬相對於輸入的導數
參數,例如相機姿態、幾何形狀、BSDF、紋理和體積。它
實作了 EPFL 最近開發的可微分渲染演算法。
光譜和偏振:Mitsuba 3 可用作單色儀
渲染器、基於 RGB 的渲染器或光譜渲染器。每個變體都可以
如果需要的話,可以選擇考慮極化的影響。
教學影片、文檔
我們錄製了幾個 YouTube 視頻,提供了溫和的介紹
三葉 3 和 Dr.Jit。除此之外,您還可以找到完整的 Juypter 筆記本
涵蓋各種應用程式、操作指南和參考文檔
閱讀文檔。
安裝
我們透過 PyPI 提供預編譯的二進位輪。以這種方式安裝三葉就像運行一樣簡單
pip安裝三葉
在命令列上。 Python 套件預設包含 13 個變體:
scalar_rgb
scalar_spectral
scalarspectralpolarized
llvmadrgb
llvmadmono
llvmadmono_polarized
llvmadspectral
llvmadspectral_polarized
cudaadrgb
cudaadmono
cudaadmono_polarized
cudaadspectral
cudaadspectral_polarized
前兩個使用 RGB 執行經典的一次一光模擬
或光譜顏色表示,而後兩者可用於反演
在 CPU 或 GPU 上渲染。要存取其他變體,您需要
使用 CMake 編譯 Dr.Jit 的自訂版本。請參閱
文件
有關詳細資訊。
要求
Python >= 3.8
(可選)對於 GPU 上的計算: Nvidia driver >= 495.89
(可選)對於 CPU 上的向量化/平行計算: LLVM >= 11.1
用法
這是一個簡單的「Hello World」範例,展示了渲染一個
使用 Python 中的 Mitsuba 3 的場景:
# 使用別名「mi」導入庫 import mitsuba as mi# 設定渲染器的變體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,標題= {Mitsuba 3 渲染器},作者= {Wenzel Jakob 和Sébastien Speierer 和Nicolas Roussel 和Merlin Nimier-David 和Delio Vicini 和Tizian Zeltner 和Baptiste Nicolet 和Miguel Crespo 和Vincent Leroy 和Ziyi Zhu},註= {https://mitsuba-renderer.org},版本 = {3.1.1},年份 = 2022}