Comments (2)
Hello, the current algorithm used to compute the order is a BFS, incrementing the compute order for each compute dependecy starting from 0.
I think the way your graph was made highlight an issue with the current system, because it adds the compute order of the dependencies when you have a lot of edges as input to one node it rapidly grows.
I already planned to change the compute order of the graph to a DFS instead (for processing graph with multiple parts) that may solve your issue, I'll update the issue when I have some news
from nodegraphprocessor.
So I changed the compute order in this commit: c712b28, note that the new algorithm is this one: https://en.wikipedia.org/wiki/Depth-first_search
I tried with a large graph and it indeed fixed the negative compute order issue.
If you encounter problems with the new algorithm, please let me know. Also you can revert to the old algorithm by changing
public void UpdateComputeOrder(ComputeOrderType type = ComputeOrderType.DepthFirst)
to
public void UpdateComputeOrder(ComputeOrderType type = ComputeOrderType.BreadthFirst)
from nodegraphprocessor.
Related Issues (20)
- Question: Is it possible to have a dynamic set of ports?
- Creating Input Ports in NodeView and Getting Data From Those Ports HOT 1
- Changing Port Order With OverrideFieldOrder Loses Port Edge Type
- Restyle specific nodes/classes
- Node categories
- CustomPortBehaviour With PropertyDrawer HOT 1
- Undo break dynamic output
- Default input and output parameters
- Is there a way to move port and parameter text locations?
- Undo will lose all group view ! HOT 3
- Nothing shows up in the context menu upon import.
- Is this project abandoned? HOT 15
- Calling `AddExposedParameter` in `BaseGraph.OnEnable` causes all ports and edges to disappear. HOT 3
- CustomPortBehavior from base class not respected.
- This asset causes large delays for entering playmode and recompiling assemblies
- Expanding Exposed Parameter Resets Name
- `FilterCreateNodeMenuEntries` Not working when I create Node by drag HOT 1
- I cant set the value in Parameter Window
- Huge GC alloc, sky high Cpu spikes, almost unusable at runtime
- 关于黑板变量赋值被锁定的问题
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 nodegraphprocessor.