<p dir="ltr">Hey kupoman, any chance at fitting a new &#39;core profile&#39;?<br>
with the old shader nodes?</p>
<p dir="ltr">Thanks,<br>
BPR.</p>
<div class="gmail_quote">On Jun 7, 2015 7:57 PM, &quot;Daniel Stokes&quot; &lt;<a href="mailto:kupomail@gmail.com">kupomail@gmail.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div>Greetings Bf-viewport,<br><br>I would like to start some discussion on the customizable shading of the viewport. This is an area that I have a strong personal interest in, and I may be able to contribute development time toward it. From the first email on this mailing list, I am referring to this item:<br><br>3) GLSL node/GLSL renderer node tree.<br><br>This sounds scary, but for now we can just add GLSL specific BSDF-like shaders, reuse the existing node shaders and write a special GLSL node.<br>That node will act similarly to the OSL node, basically you will be able to attach a tet file with GLSL code in it. The GLSL code will need a function with a predefined name, which will be parsed for -in and -out variables and sockets will be created in the node accordingly. Then users should be able to write their own shaders to drive real time display. The system will be able to request data from the meshes using the batch manager outlined in 1) based on the inputs the user will plug into this shader. Those inputs will be used to request mesh data during node tree compilation.<br><br>----------------------------------------------------------------------------------------------------------------------------------<br>Here are some of my initial thoughts on this:<br><br>1) The node system, as proposed, could be a great place for this since this code is heavily shared with the Game Engine. This opens up the possibility of making these custom shaders usable in the Game Engine with hopefully little extra development cost. It is worthwhile to note that there are several open material node bugs [1][2][3][4] that would be nice to look at when considering better Game Engine integration.<br><br>2) How would we deal with adding nodes that aren&#39;t compatible with a renderer? Furthermore, would the GLSL node be added to the nodes for Blender Internal?<br><br>3) While the current node system works well for custom fragment shaders, what about vertex, tessellation control, tessellation evaluation, geometry, and compute shaders? Other than compute shaders, the remaining shader stages could possibly be handled by new mesh node system. Again this brings up the question of compatibility with a renderer.<br><br></div>4) While it may be beyond the initial scope of this project, I would like to bring up the possibility of making more use of the material panel for material nodes. It could be very useful to allow the author of a node system to expose inputs to the node system that appear in the material panel. This would make it easier for another user to use and adjust the material without needing to know what the individual nodes do.<br><br></div>Finally, I would like to present a good case study for the usefulness of this feature. At the 2015 Game Developer&#39;s Conference Junya Motomura, a technical artist from ArcSystemWorks, talked about the shading used in their game Guilty Gear Xrd [5]. In this talk, Motomura describes how the shaders relied heavily on artist created content (a lot of which was stored in vertex colors), and how it was essential for artists to see the effects of their changes as they were making them.<br><br></div>I look forward to discussing these details and moving this project along. For anyone who wishes to talk with me on IRC, I am usually lurking in Blender channels, including #blendercoders, as Kupoman when I am not at work. I am in the Pacific Time Zone.<br><br></div>Regards,<br></div>Daniel Stokes<br><div><div><div><div><div><br>[1] <a href="https://developer.blender.org/T17869" target="_blank">T17869 Geometry Node Material doesn&#39;t work properly with shared mesh in BGE</a><br>[2] <a href="https://developer.blender.org/T41829" target="_blank">T41829 Normal Map in Material Node going wrong</a><br>[3] <a href="https://developer.blender.org/T33730" target="_blank">T33730 Node Materials Won&#39;t Display Multiple UVs</a><br>[4] <a href="https://developer.blender.org/T34792" target="_blank">T34792 game engine node material bug with 2 vertex color channels</a><br>[5] <a href="http://www.gdcvault.com/play/1022031/GuiltyGearXrd-s-Art-Style-The" target="_blank">http://www.gdcvault.com/play/1022031/GuiltyGearXrd-s-Art-Style-The</a><br></div></div></div></div></div></div>
<br>_______________________________________________<br>
Bf-viewport mailing list<br>
<a href="mailto:Bf-viewport@blender.org">Bf-viewport@blender.org</a><br>
<a href="http://lists.blender.org/mailman/listinfo/bf-viewport" target="_blank">http://lists.blender.org/mailman/listinfo/bf-viewport</a><br>
<br></blockquote></div>