2013-04-10 61 views
7

攪拌機是否使用OpenGl或DirectX?還是全部從頭開始?Blender創建了什麼?

+0

如果對您更舒服,您可以爲3ds Max,Maya等等回答相同的問題。 – tiffanyButterfly23 2013-04-10 03:26:43

+1

這個問題很混亂。 OepnGL或D3D的使用與編寫什麼編程語言的問題無關。 – 2013-04-10 06:21:17

回答

5

Blender是否使用OpenGl或DirectX?

Blender的所有圖形輸出都是使用OpenGL完成的。

是否使用編程語言(python?)從頭開始做所有事情?

爲什麼「或」? API不會替代編程語言。 Blender已經用C,C++和Python編程。 OpenGL用於在屏幕上渲染everthing,包括用戶界面。

+1

我的意思是:「他們是使用庫還是從零開始做所有事情?」通過圖形輸出你是指最終渲染和用戶交互? – tiffanyButterfly23 2013-04-11 00:00:10

+1

@ tiffanyButterfly23:Blender使用許多第三方庫。其中包括圖像和視頻文件格式,像「Bullet」物理圖書館的圖像處理,用於空間數據結構和計算機視覺的一些圖書館。然而,當Blender開始時,幾乎所有的東西都是從頭開始編寫的,除了Phython解釋器。而Blender源代碼樹的「額外」第三方代碼目錄中的一些庫確實大部分由Blender開發人員維護。 – datenwolf 2013-04-11 00:24:47

10

你可以看看blender source code,看看它是用Python還是C/C++編寫 - 少用python,多用c。代碼中經常引用OpenGL,而DirectX很少。所以,你去了。

+4

DirectX僅用於獲取用戶輸入到內置遊戲引擎的引用。聲音由OpenAL或PortAudio或SDL輸出。攪拌機貢獻者在這裏。 – datenwolf 2013-04-10 11:03:23

2

對於這樣的問題,我發現ohloh是有用的。它是一個生成開源項目統計信息的站點。統計之一是項目中使用的不同編程語言的列表。您可以查看Blender here的統計數據。 ohloh對於識別項目使用的工具和/或與類似項目進行比較也很有用。

2

擴展了datenwolf的說法。大多數Blender是用C編寫的,遊戲引擎是用C++編寫的,整個應用程序有Python綁定(這意味着你可以在應用程序中使用python)。 Blender使用OpenGL,並且有一個特殊的引擎(由opengl調用和功能組成,主要是傳統的,但是推動使用現代的東西,vbos等),用於繪製接口併爲其3d功能提供動力,稱爲GHOST

相關問題