Comments (12)
Ok, I'll see what I can do to help you get started
from materialx.
I was able to proceed using tiledimage node. Still trying materialx.
Still need help.
from materialx.
@fire I can try make examples of a few of them. Just to make sure I understand you correctly, you when talking about cones, hemisphere etc, are you referring to a "height map" version of them?
from materialx.
These ones.
The disc and the square are used like this.
from materialx.
You can see how it becomes this.
from materialx.
If it wasn't clear, I'm trying to see if it was feasible to convert a random Substance material to MaterialX as a proof of concept. The goal is using MaterialX to generate texture sheets at runtime or baked for Godot Engine.
from materialx.
I made an intial attempt on some of the shapes using the Designer MaterialX plugin.
Let me know if this is roughly what you are looking for. As opposed to the ordinary Designer versions these are built around a coordinate system from (-1, -1)(1, 1) with the center at (0,0).
Let me know if it helps. I'd be happy to share the source sbs too if you are interested.
Shapes.zip
from materialx.
I think it's easiest to make sure both source sbs and the materialx files are shared.
Are there any other visual materialx editors?
Substance Designer cannot import materialx.
from materialx.
Not sure if there are any out for the public.
I've attached the source sbs here.
Since the subgraph support is pretty crippled you need to do the following to use it:
- Load Shapes.sbs
- Run Export Subgraphs and make sure all subgraphs are selected
- Restart Designer
- Now you can load TestShapes to see the results and instantiate the shapes yourself
The underlying issue for the somewhat cumbersome workflow is Designer can't reload MDL modules on the fly and we model MaterialX nodes as MDL nodes. When exporting subgraphs it will
- Create MaterialX documents for the graphs in /Allegorithmic/Substance Designer/sdmatx/mtlx
- Create MDL versions of these graphs in /Allegorithmic/Substance Designer/sdmatx/mdl
Since the GLSL generation is not limited by the reload issue you can iterate on the inside of a graph if was known by the last restart and reexport it until your implementation works as long as you
- Don't change anything about the exposed inputs or return type.
- Use the GL viewport
from materialx.
Major thanks to @laserallan for providing these example graphs, and we should discuss their inclusion as standard graph-based nodes in a future revision of MaterialX.
As David notes, Substance Designer is the first publicly-available tool for visual editing of MaterialX graphs, and the upcoming LookdevX package from Autodesk is likely to be the second. Early video of LookdevX can be found in this GTC 2020 presentation from Autodesk and Nvidia:
https://developer.nvidia.com/gtc/2020/video/s21469
from materialx.
After discussion with a few people, I think I'm going to wait a bit until there is an MaterialX import from a visual editor.
My plan was to take the GLSL generated from the genGLSL stage and change the snippets so it's compatible with Godot Engine shaders.
Godot Engine 3.2 stable uses GLES 3 shaders, while Godot Engine master uses GLSL from Vulkan which is 450.
https://docs.godotengine.org/en/3.1/tutorials/shading/shading_reference/shaders.html
from materialx.
That sounds very reasonable, and thanks for your original question. We'll keep the MaterialX forum updated with information about Substance Designer, LookdevX, and other upcoming tools.
from materialx.
Related Issues (20)
- Names defined in MaterialX documents displace library names and cause strange behavior HOT 2
- Graph Editor: Deleting a node with multiple output does not update down-nodes properly
- Update UsdUVTexture to single-output signatures in 1.39
- Add support for disabled nodes in shader generation HOT 1
- Suggestion: Add way to determine MaterialX release used for shipped library / nodes HOT 2
- Suggestion: Publish MaterialX Core Javascript package
- Unable to create nodes with namespace in MaterialX Graph Editor
- UINAME in nodedefs does not work when namespace is used
- Preserve tile aspect ratio in GLSL UDIM texture atlas by allowing maxU to be any value
- Web Viewer : Crash when loading shaders with unsupported input types
- UDIMs uv_scale and uv_offset shader uniform parameters not exposed for tiledimage and UsdUVTexture nodes
- Ambiguity of nodes with omitted inputs HOT 11
- Incorrect UsdPreviewSurface opacity-metallic interaction HOT 5
- Add temporal antialiasing to MaterialX Viewer
- range node does not work with inverted output when clamp is enabled
- GlslRenderer not working in Python virtual environment HOT 19
- Incorrect implementation of SplitTB, RampTB and Ramp4 node types HOT 2
- Incorrect implementation of Convert_Vector2_Vector3 HOT 2
- MaterialX WebGL Path Tracer HOT 2
- Wrap a mtlx document into a nodedef (through API or graphEditor) HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from materialx.