2012-02-10 704 views
8

我正在尋找一個GLSL編輯器程序。我確實發現了一些使用谷歌搜索,但我想知道是否有任何基於用戶體驗的首選。GLSL編輯器程序

可能特點:

  • 語法高亮
  • 智能感知
  • 自動編譯和鏈接

附:
我甚至不確定自動編譯GLSL是否有意義/可能(任何註釋?)。

編輯:
這裏是我的發現:

+0

你有恩記什麼版本的GLSL的?這是WebGL,Op​​enGL ES還是OpenGL? – Mortennobel 2012-02-10 08:43:07

+0

@Mortennobel:GLSL 330,它是OpenGL。 – atoMerz 2012-02-10 08:45:12

+0

編輯程序對你意味着什麼?你的意思是有些語法高亮顯示,還是GLSL的完整IDE? – 2012-02-10 10:24:26

回答

5

試試KickJS的着色器編輯器。它目前支持語法高亮並在編寫時編譯代碼。

http://www.kickjs.org/example/shader_editor/shader_editor.html

如果您運行的OS/X,你應該嘗試的OpenGL着色生成器,即使這個工具感覺有點過時:

/開發/應用/圖形工具/ OpenGL着色Builder.app

還有GLman,它可能比編輯器更像GLSL沙箱環境。這本優秀的書「圖形着色器 - 理論與實踐 - 第二版」中介紹了該程序的一個很好的介紹。

http://web.engr.oregonstate.edu/~mjb/glman/

+0

謝謝,我認爲KickJS用於WebGL,對不對?不過,我仍然可以使用語法高亮功能。但是,我想知道是否有可下載的版本? – atoMerz 2012-02-10 14:10:01

+0

是KickJS是爲WebGL編寫的,因此GLSL主要用於WebGL或OpenGL ES 2.0。如果您使用OpenGl 4.1或更高版本,着色器也應該運行。在不同版本的GLSL之間遷移着色器代碼應該相當容易。最難的部分是實現着色器:) – Mortennobel 2012-02-10 18:13:28

+0

感謝您介紹KickJS,我之前從未聽說過它,它看起來非常有希望,並且具有比ShaderToy更多的功能(但感覺更少了「社交導向」)。 – wil 2014-01-30 02:24:00

2

我發現着色器玩具是有幫助的。包含一些預定義着色器,您可以調整並查看即時結果。所有在線並涵蓋WebGL,Op​​enGL ES 1.1 /(某些)2.0,可能還包括OpenGL各種版本。

https://www.shadertoy.com/

它傳入一些預定義的制服,以及多達4個紋理你可以超得。

這裏有下列輸入:

  • 均勻vec4鼠標:XY包含當前像素COORDS(如果LMB是向下)。 zw包含點擊像素。
  • 統一vec2分辨率:渲染vieport分辨率。
  • uniform float time:當前時間,以秒爲單位。
  • 均勻sampler2D tex0:採樣器輸入紋理0
  • 均勻sampler2D tex1:採樣器輸入紋理1.
  • 均勻sampler2D TEX2:採樣器輸入紋理2。
  • 均勻sampler2D tex3:採樣器輸入紋理3.