4,495 Commits over 1,614 Days - 0.12cph!
Don't make screen position node a constant
ShaderGraph: Update output handle configs when evaluating nodes so that we never have connections with an unknown color type https://files.facepunch.com/layla/1b0711b1/sbox_VkB7yk9nFf.mp4
Add Menu.RemoveOptions and Menu.RemoveMenus (sometimes you want to clear everything but widgets)
ShaderGraph: Make the node filter on context menu actually work https://files.facepunch.com/layla/1b0711b1/sbox_Pwav4kprlr.mp4
Fix static output result funcs not being evaluated when evaluating all nodes, causing not all previews to be working
ShaderGraph: Ctrl+Spin will rotate the model with the camera, giving the effect of the lights being rotated, similar to what we have in modeldoc https://files.facepunch.com/layla/1b0711b1/sbox_BF0qMUeERK.mp4
Fix bounds on generated sphere
Fix uvs on generated sphere
ShaderGraph: Fix mistake in texture name cleaning
ShaderGraph: Generate tessellated sphere for preview so shaders don't look bumpy and shit https://files.facepunch.com/layla/1b0611b1/sbox_NEn0OBFX0f.png
Fix GraphicsMouseEvent not telling us which button was released
ShaderGraph: Middle mouse button to pan preview camera
Fix another shader compile error in combine node when something other than a float is plugged into it
ShaderGraph: Color input plugs based on connected type, this is useful for when and input has an unknown type, like multiply https://files.facepunch.com/layla/1b0611b1/sbox_FgSqc4RxjO.mp4
Take better care in cleaning name for named constants
Remove delete button from node, this isn't as useful as I thought it would be
Revert time node, a constant time variable shouldn't serve 5 different functions
Make sure user is always notified of graph errors, clear errors on new and open
Evaluate all nodes for preview they can be previewed even if they're not part of the graph
Make WorldNormal, ScreenPosition, WorldPosition and ViewDirection all previewable
Make component outputs of texture node be constant results, no need to make local vars for these
Generate preview shader code using our own time attribute so we have control over it
Update preview camera in PreFrame so we're not running frame event twice
ShaderGraph: Allow node results to be marked as constant so result funcs can return without creating a local variable for it
Remove F_TEXTURE_FILTERING in generated shader, not used here
Documentation pass for texture and texture coord nodes
Property sheet can grow, fixes dodgy layout
Give texture node group and subgroup settings
Better position of initial result node on new graph
Add UI options to branch node
Add select all to toolbar
ShaderGraph: Add Ctrl+A to select everything in the graph because I keep trying to do it and realizing I haven't added it yet
ShaderGraph: Fix input value editor not getting restored when node with connection to it is deleted
ShaderGraph: Allow named constants to full customize group and subgroup UI
ShaderGraph: Disable tint mask input, isn't used and seems pointless so get rid
ShaderGraph: Add mask to texture ext types
Move saturate node to transform category + document it
ShaderGraph: Default branch results to both zero, fix shader error when no conditions are plugged in
ShaderGraph: Add option to preview result of selected node, useful for debugging https://files.facepunch.com/layla/1b0411b1/sbox_tzN9VDd1be.mp4
Don't color plug text, not a fan of how this looks
ShaderGraph: Allow named constants to configure material editor UI
Add SelfIllum to texture ext types
Limit graphics view zoom to reasonable amounts
Remove whitespace in texture parameter name
Add delete button to node UI
async option for RenderToPixmap, fixes thumbnail rendering
ShaderGraph: Add default values to result node so you don't have to plug in a constant if you just want to set a constant value https://files.facepunch.com/layla/1b0211b1/sbox_2nXboeBxrk.png
ShaderGraph: Float editor supports rangeless editing https://files.facepunch.com/layla/1b0211b1/sbox_ri3rVeT2hv.mp4
ShaderGraph: Remove whitespace from param name, fixes shader compile errors
Warn when graph paste is invalid
Still try to compile graph preview if there's no result node, we may have preview nodes
TransformNormal with no input falls back to vNormalWs
Document WorldNormal node to make it clear it's the vertex normal in world space
RenderToPixmap reads pixels in callback for performance
ShaderGraph: Inline float and color editors on nodes, experimental render node previews (only enabled on noise nodes for now) https://files.facepunch.com/layla/1b0111b1/sbox_8EW2bnCQWR.png
Use internal native cursor position to do mouse locking in shader graph
Revert, assumed nothing else was using cursor position