|
1 <stránka |
|
2 xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana" |
|
3 xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"> |
|
4 |
|
5 <nadpis>ShaderShark</nadpis> |
|
6 <perex>X11 application for prototyping OpenGL shaders (GLSL)</perex> |
|
7 <pořadí>20</pořadí> |
|
8 |
|
9 <text xmlns="http://www.w3.org/1999/xhtml"> |
|
10 <p> |
|
11 ShaderShark is an OpenGL/X11 application |
|
12 consisting of a single window |
|
13 that shows simple 3D scene of a textured rectangle |
|
14 with applied vertex and fragment shaders (GLSL). |
|
15 </p> |
|
16 |
|
17 <p>Features:</p> |
|
18 |
|
19 <ul> |
|
20 <li>load textures in various formats (PNG, JPEG etc.)</li> |
|
21 <li>rotations and movement in the 3D space</li> |
|
22 <li>fully controllable using keyboard</li> |
|
23 <li>automatically reloads textures and shaders</li> |
|
24 <li>configurable background color</li> |
|
25 <li>can be embedded in another X11 window</li> |
|
26 </ul> |
|
27 |
|
28 <p> |
|
29 There are no buttons, no text editors, just a 3D scene. |
|
30 The user is expected to use his own favourite text editor to edit the shaders |
|
31 and just save the file – the save operation (inotify/CLOSE_WRITE) |
|
32 from the external editor triggers reload of the shader or texture |
|
33 in ShaderShark. |
|
34 </p> |
|
35 |
|
36 <p>Roadmap and ideas:</p> |
|
37 |
|
38 <ul> |
|
39 <li>modular design and API to allow <a href="https://relational-pipes.globalcode.info/v_0/principles.xhtml#optional_complexity">optional complexity</a></li> |
|
40 <li>abstract layer for loading textures from various sources (not only image formats but also e.g. camera or other X11 window)</li> |
|
41 <li>optional continuous mode (render the scene not only when shaders/textures change, but continually like games do and provide time variable to the shaders)</li> |
|
42 <li>multiple rectangles (to show multiple texture/shader combinations at once)</li> |
|
43 <li>other objects in the 3D scene (floor, background, lights etc.)</li> |
|
44 <li>3D sound</li> |
|
45 <li>stereoscopic mode</li> |
|
46 <li>batch mode (apply fragment shader as a filter to images)</li> |
|
47 <li>other input methods and devices (like <a href="https://mouse.globalcode.info/v_0/spacenav-demo.xhtml">3D mouse</a>)</li> |
|
48 <li>render text files using bitmap fonts</li> |
|
49 <li>visualize binary files</li> |
|
50 <li>…</li> |
|
51 </ul> |
|
52 |
|
53 <p> |
|
54 This tool was created for our internal purposes and is published |
|
55 <i>as is</i> without any guarantees. |
|
56 In the future, it might become a <i>product</i> (however still free software, of course) |
|
57 with regular releases, but we are not there yet. |
|
58 </p> |
|
59 |
|
60 </text> |
|
61 |
|
62 </stránka> |
|
63 |