Node based material editor
Looks impressive ! You obviously put in a lot of work there. Plan to release it ?
Yes. One day it will be opensource. Currently it only works with opengl 2. We plan to release it when we finish support for glsl and hlsl. I can provide access to early build for a feedback.
What did you use for UI?
WPF + UrhoSharp for preview. There are plans to make it crossplatform with AvaloniaUI.
Can I ask you what is the node editor you used in WPF?
How did you achieve runtime material modification?
just change the values of an existing material object (sometimes i get confused doing so)
or discard the existing object and instantiate a new one?
The editor generates material.xml, technique.xml and shaders in background. Then it calls https://developer.xamarin.com/api/member/Urho.Resources.ResourceCache.ReloadResourceWithDependencies/p/System.String/ to update the runtime.
Custom one. I’ll release it as a nuget package later. It is also suitable for scripting if you are interested in it
I using https://github.com/Wouterdek/NodeNetwork and it’s have lot of problem and also it’s have memory bug from reactiveui . so modified that lot and i removed reactive ui but still that you did it’s really nice it’s have grouping it’s really nice.
An early version is avaliable via itch.io by invite. Drop me a message if you want a key.
Some limitations of the current version:
- desktop OpenGL only
- forward render only, per pixel lighting only
- bugs are expected
- there are no guarantees that the graph you make will be compatible with the final version. Although I made some safe checks so you can always “upgrade” it manually.
Perfect. It’s working really nice. GOOD JOB
DirectX working much much better with WPF. because WPF is running over directx.
There is a bug in ReactiveUI it’s leaking memory and i saw it’s effecting your project little.
You need to open menu and submenu lot of times and watch the memory or add lot of nodes and remove them you can see memory will not release after that. Dump memory with visual studio i’m sure you will see lot o IDisposable and ReactiveUI classes.
Actually I removed ReactiveUI finally and it’s much faster and no more memory leak. Our application should be run on embedded devices so we are limited on memory that why I found it’s good to don’t use ReactiveUI.
I only use ReactiveUI to throttle user input. Shouldn’t be that bad. Otherwise there is a custom commands and the base node graph implementation doesn’t have any fancy dependencies.
Anyway I’ll run it under profiler later when the architecture gets stable.
Nice. then it’s easy to move from that. really nice. i going to test the new one on my scenes
@glebedev I didn’t success to load my scenes because i have 2 folders.
DesktopUrhoInitializer.AssetsDirectory = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, @"../../Assets");
var options = new ApplicationOptions("Data;Machines")
I didn’t know it’s possible!
Ok, I need to do something about it…
If programn not run, you must manually C: \ Users \ ____ \ AppData \ Roaming \ Urho3DMaterialEditor change settings or delete folder
@glebedev Is there a Linux version available?
No, because I had to use WPF to speedup development. There are plans to utilize AvaloniaUI for cross platform but not at the moment.
Yeh it’s possible
I think it’s more easy to use Xamarin.Forms + GTK+ and WPF.
As you know it’s supporting now and i think you can run UrhoSharp on that.
New version allows you to pick multiple folders. Unfortunately I had to change file format to make naming consistent. I hope it’s the last breaking change for a long time.
Perfect/ I’ll try it at Monday
thanks
Thanks! By that time I hope to finish deferred pass generation and simplified material creation so you won’t need manually wire shadow map to light if all you need is a default diffuse lighting model.
After i added folders i again i cannot open my scene
My I ask you to send me a screenshot of your folder settings?
@glebedev do you mean asset directory?
No, I mean the dialog window that appear when you click on “set resources dir” in the main menu.
this one?
Hmm… Maybe there is a bug due to space in a folder name. I’ll check it tonight.
Btw did you restart the editor after setting the path?
Yes. I did. It’s same.
Sorry for the big. We’ll fix it asap
It’s ok
thanks for responding
I can not reproduce the issue
And then I use
To load scene
Can you spot the difference?
I’ve made a workaround. Now the app offers you to copy file in the right folder. Let’s see what happens now.
I don’t know why. but this time worked well.
Thanks
Good to know
Btw here is what guys made yesterday with the editor:
A live stream of making an effect:
https://www.youtube.com/watch?v=RjrDxjzzKGE
Really looks perfect. NICE
Do you have plan for DirectX ?
Yes, we do. I am not profound in DirectX personally so it depends on my teammates
@Zamir added a model preview:
I’ll be streaming another example tomorrow. You can subscribe to the channel to ask questions and comment live
https://www.youtube.com/channel/UCWxM_7z4Ab0g5wjN36e2Zqg
@glebedev What is the license ?
I generate something and i want to use it and i need to add license to project.
Also it’s good to generate license header in output file.
I Hope you can finish DirectX as soon as possible.
THANKS FOR THIS GREAT TOOLS
The source code will be released under MIT when it’s stable. I don’t think license applies for the files produced by the app. It’s like a Photoshop - you don’t need to include Photoshop license file anywhere if you made textures with it, am I right?
Ok. so simply i’ll copy generated file. thanks again
Hlsl support and “ifdef” nodes are in progress. Stay tuned
Upcoming feature teaser:
Just in case you are wondering what’s the state of the project. Here is a video to demonstrate new features:
Nice. Do you have plan to release it soon?
It should go to open source and open beta soon. We improved UI responsiveness, first experience (start material template), some features added. The only thing that bugs me is matrix multiplication. The 4x3 matrix called that after D3D but order of multiplication is following OpenGL pattern. I think I’ll keep OpenGL order but should I rename matrix then?
And compatibility with previous release is broken
And compatibility with previous release is broken
I think this is not a problem from my point of view. i can reproduce what i have.
Presets are coming to the editor:
Default material:
itch version is updated now.
This is really cool. Congratulations on your amazing work!
This is really great. PERFECT.
I can see you already start directx I really need that.
This perfect project should be include into the urho by default.
Omid, could you help with the translation to directX?
what do you mean ? !!!
translation from GLSL to HLSL
Ah. Yes. sure. why not.
Cool! It goes open source and open beta today. I’ll send you a message.
GOOD NEWS!
It is done.
When I try to watch the video on the page it says:
“Playback on other websites has been disabled by the video owner.”
Ok. This is strange.
yes, it is, but you can continue viewing in the youtube directly
Of course, but this is clearly unintended behaviour. Providing workarounds doesn’t equal fixing bugs.
@glebedev Might Vimeo meet your needs?
I can’t stream to Vimeo, only YouTube and Facebook And recording and uploading isn’t an options as I don’t have much time to do it. It is way easier for me to do it live.
u’ll make in the future possible to export to a script like a .glsl/.hlsl/shader/technique too?
It already creates a material, technique and glsl shader. Enjoy
Here is an example of material made with an editor:
Each butterfly is a quad with animated “wings”. Everything is animated on GPU.