-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Flow graphs serialization #14389
Flow graphs serialization #14389
Conversation
This reverts commit 4285f50.
Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s). |
Snapshot stored with reference name: Test environment: To test a playground add it to the URL, for example: https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14389/merge/index.html#WGZLGJ#4600 Links to test babylon tools with this snapshot: https://playground.babylonjs.com/?snapshot=refs/pull/14389/merge To test the snapshot in the playground with a playground ID add it after the snapshot query string: https://playground.babylonjs.com/?snapshot=refs/pull/14389/merge#BCU1XR#0 |
Visualization tests for webgl2 have failed. If some tests failed because the snapshots do not match, the report can be found at If tests were successful afterwards, this report might not be available anymore. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a few general comments regarding architecture -
- It seems like every class has the same string repeated 4 times. It could be a const defined outside of the class (that is not exported).
- The
config = { name: ... }
could backfire if someone will pass a different configuration object without a name. - Why is the name needed, why is getClassName not enough?
- Something we have discussed a long time ago - to make the classes a little smaller, we could remove the FlowGraph part of those to make them a little shorter.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, a few other questions that came out over the weekend
Parse should be, in general, a static function. I noticed that you have a class member parse functions. Is that deliberate? does that mean that you need to first create an instance of this class and only then pass the serialized object to parse it?
Also - the idea with making the name a little smaller was not only for the variable name. Changing FlowGraph to FG (for example, or maybe even FlowGraphBlock = FGB) with many nodes will save a lot of space on the serialized JSON.
packages/dev/core/src/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.ts
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a few questions and small nits, otherwise LGTM
Changes
Examples