原创 ThreeJS—物理引擎

ThreeJS物理引擎 對於物理引擎ThreeJS是沒有對其進行封裝的,官方中給出案例中直接使用AmmoJS(使用 Emscripten將Bullet物理引擎的C++源碼直接轉換成JS),渲染引擎和物理引擎結合來實現碰撞檢測、自由

原创 ThreeJS—自定義着色器

ThreeJS自定義着色器 說起着色器的學習,強烈推薦康玉之編寫的《GPU編程與CG語言之陽春白雪下里巴人》,尤其是此書的序言部分針砭時弊毫無隱晦的指出了當今學術現狀的問題,更是發出了“開天闢地,日月重光”的憤慨。着色器的編程語言

原创 ThreeJS核心基類-Object3D

ThreeJS的核心基類Object3D被很多場景對象所繼承,例如Scene、Camera、Mesh、Light等;凡是繼承於該基類的對象都會擁有“旋轉平移縮放”(物理世界三大基本變換)的能力,該類還有兩個“絕頂”重要的矩陣:ma

原创 ThreeJS離屏渲染-WebGLRenderTarget

在WebGL中屏幕默認綁定一個幀緩衝區,渲染管線的輸出結果最終去往這個默認的幀緩衝區,屏幕用其中數據顯示圖像,但是WebGL是支持自定義幀緩衝區的(RenderBuffer),如果用戶自定義了幀緩衝區並使用,那麼渲染管線的輸出數據

原创 Unity3D:Compate Shader

開始用compute shader我喜歡vertex/fragment shaders的簡單,他們只是做一件事:就是把頂點和顏色輸出到屏幕上去,他們做得非常好,但是有時這種簡單限制了你,當你的cpu拼了命的循環那些矩陣,算出並儲存在貼圖上

原创 計算重要天文座標系之間的轉換(C#)

用了一個多月的時間研究天文座標系之間的座標轉換,雖然最終項目不得不砍掉與之相關的功能(因爲某些原因),但是對於使用計算機模擬宇宙中天體座標系的相互轉換還是有一些非常重要的成果值得分享,希望對從事虛擬現實且開發與太陽系天體運動有關的工作人員