Over time all the animation capabilities of UEFN will be exposed to the scene graph. There are still a lot of details to work through as we may reshape some of the components from their ActorComponent counterparts but largely the capabilities should remain the same when we’re done.
There is a reference implementation that matches the Verse Calculus. This is not publicly available, as type checking is still very much in-progress. Even so, the reference implementation is not what UEFN will ever directly use. I can’t give a timeframe for when MaxVerse will be available in UEFN.
This is very much on our minds, but I can’t really say much more than that.
We are in the process of designing what this would look like while still being compatible with what MaxVerse requires.
Persistence in MaxVerse will mostly be an implicit thing - any module-scoped var
mutation is globally visible, and almost any particular type may be used.
Can you give some examples of how you would use this? Technically, this wouldn’t be horrible to implement, but use cases would help with prioritizing.
In the long run we’ll develop some tooling to aid with transitioning actor based content to scene graph based content, which we’ll also use internally as we transition Fortnite to the scene graph. We haven’t invested in this yet as we’re currently focused on buttoning up the initial component set and core APIs so we can get an experimental version of the scene graph into users hands.
Lack of a Sort
method without a Less
predicate is due to the language currently lacking a means of describing how the ordering should be defined (perhaps by the user). For a Sort
method that takes a Less
predicate: the language mechanism that may be settled on to satisfy a Less
-less Sort
may remove the need for this version.
Eventually you will be able to build any content with the scene graph that you could build with Actors in Unreal Engine today. The specific makeup of the components and classes may change as they’re exposed to Verse but generally everything will have representation as scene graph constructs and Verse code.
Nothing that I’m aware of - but that’s a neat idea way outside my wheelhouse so I’ll ask around internally!
Can you give some example code? If you mean an invocation of a constructor function where the invocation is annotated with <constructor>
in an archetype instantiation: this is what makes constructor functions valuable - they can be used to partially initialize an instance, with parts of the initialization overridden.
Unfortunately, I can’t give much of a timeframe here, other than that the new VM is being designed with MaxVerse very much in mind.
No plans, but I’ve passed this onto the UI folks here for consideration.
More fine grained control of elements within the scene graph on a per-user level has not been implemented yet but is something we’re thinking about
#cat := class:
# Name:string
# Sound:string
MakeCat1<constructor>(name:string, sound:string) := cat:
Name := name
Sound := sound
MakeCat2(name:string, sound:string):cat = cat:
Name := name
Sound := sound
cat := MakeCat2<constructor>("foo","boo")
can be compiled.
I personally use coroutines (i.e. functions with suspends
effect) whenever possible due to how powerful the structured concurrency macros are. There are also some things that are hard to describe using Subscribe
currently due to lack of lambdas. Once lambdas are available, passing parameters through Subscribe
will require less code (though will have comparable efficiency to the hand-written equivalent).
Are there plans for creator made verse devices to get custom gameplay events in sequencer?
Due to the way the compiler is currently implemented, processing of types is very dependent on the order the types occur, most obvious with parametric types. This can be resolved in the same file by reordering definitions, but ordering between files is not specified. MaxVerse will alleviate this issue via pervasive leniency.
We’re looking into what UMG would look like in UEFN yup.
From Reddit:
Is there any plan to implement any more improvements to AI assistance with verse? Being a new language popular AI models have a challenging time using the right syntax and having that sort of assistances could open a lot of doors for the majority of UEFN users.