-
-
Notifications
You must be signed in to change notification settings - Fork 64
"Import Jack" node #53
Comments
I agree that Blackjack currently lacks a mechanism for modularity, this has been on my radar for quite a while now. What you are describing is similar to the role HDAs play in Houdini. There are other related features that I'd like to be part of this:
I need to think about the best way to tackle this, but I think it is one of the major topics I could prioritize after I finish with the next big update (gizmos). An "Import jack" node would, as of today, be a bit of a hack. I'm not against adding it, but only as a temporary solution: Jack files only contain compiled code, so I wouldn't be able to implement the other features I'm describing on top of that node. |
I agree with any kind of modularity. Would it be possible to save encapsulated nodes as a separate project? Or import a project into another project as a node/group of nodes? I proposed to use Jack format mainly because inputs are clearly defined in it but if it was possible to import .blj projects and use promoted parameters as inputs as well I would like that too. |
With the rework I have in mind, that would be equivalent to saving a game asset: I need to give this a bit more thought, but I'm currently leaning towards unifying the So, we'll add the ability to encapsulate nodes as an embedded subgraph, or splitting them out in multiple files. The former is better for when you just want modularity / composability, and the latter would be for when you want to reuse a jack across multiple projects.
Yeah, the two file formats are currently serving two slightly different purposes. I still do not have a serious solution for serialization in blackjack. I've been mainly relying on dumping struct information via Unlike other proprietary 3d applications, Blackjack has nothing to hide, 🙂 so there's no need to store obscured compiled outputs and split project and export files in different file formats. |
This is a small detour initiated in #53, due to the fact that the Jack file format is now broken after we no longer represent graphs themselves as compiled lua code (which is a prerequisite to implement Gizmos, among other useful optimizations). The idea is to get a single canonical file format that can be used both as an editor representation, and a representation for exported 'Jacks'. Additionally, we will take extra care to make the format forwards-compatible by defining mirror structs for the serialization. This may be tedious, but gives us better control of the serialization output and lets us build a more future-proof format.
After the merge in #62, there is now a single serialization format |
I really love the latest work that has been done on Blackjack. I think it's currently missing an ability to import one blackjack project as a node to a different blackjack project. I think the most straightforward approach would be to use Jack files and expose their promoted parameters as inputs.
Since it introduces dependencies it would be cool if it was then possible to export Jack files which would bundle in all other Jack files which were imported. Or maybe include relative paths to those Jack files.
The text was updated successfully, but these errors were encountered: