x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Blendspace 3D, 4D?

Probably a silly question but there are Blendspace 1Ds which allow you to blend together animations based on a single variable, and there are Blendspace 2Ds which allow you to blend together animations with two variables; is there a way to do the same thing with three or more variables. I'm aware this isn't available in Blueprint (probably not anyway), but could it be done in C++ if nothing else?

The ability to blend together many different animations would be a major boost to the overall aesthetic of my game. Blendspace 2D has done wonders. Could it be taken further?

Product Version: Not Selected
Tags:
more ▼

asked Dec 24 '14 at 08:30 AM in C++ Programming

avatar image

TheWTFage
27 10 15 19

avatar image Asher S Einhorn Dec 24 '14 at 08:57 AM

1d's allow you to blend together an infinite number of animations, and 2d's allow you to blend together an infinite number with an infinite number. For example, here's one with 10. alt text

3d's could be theoretically useful in a game that had a character floating through space, however implementing a 4d blend space would probably have to be implemented by a higher dimensional being which might make them a tad tricky to use.

capture.png (26.3 kB)
(comments are locked)
10|2000 characters needed characters left
Viewable by all users

3 answers: sort voted first

What would be the third variable? Normaly "Speed" and "Direction" are used for the Blendspace. Or something like the Aiming Offset. If you need to combine 2 Blendspaces, you can still use a "Layer Blend Per Bone" Blend in your AnimGraph and adjust the Slots.

The Weight value for the blend can be changed with a variable, or a curve from a AnimMontage etc.

more ▼

answered Dec 24 '14 at 10:05 AM

avatar image

eXi
6.8k 333 185 470

avatar image TheWTFage Dec 24 '14 at 10:16 AM

Third value could be used for something like variation. Have variation change gradually over time and you'd be blending alternate versions of the same basic animations together. It'd add to the aesthetic making the animations seem more like natural movement. And thanks for the help! Layer Blend Per Bone should fix my problem.

avatar image eXi Dec 24 '14 at 10:18 AM

Ok i hope i was able to help you. I will mark the qestion as resolved. If you still run into problems, feel free to reopen it.

avatar image RydgeMrPinky Jan 21 '15 at 06:15 PM

variation would be set in an animation montage

avatar image OwenWP Feb 03 '15 at 01:22 AM

The most common application would be for run+strafe+turn blends, as you would see in a third person shooter or sports game, with lots of mocap samples for different combinations of those three variables and root motion. That is pretty hard to implement with the current system.

avatar image Mdweiss Jan 22 '17 at 04:38 PM

I was able to get a pseudo 3 dimensional blendspace by doing this. I have a 2D space that contains slope angle and movement speed. After this, I blended on top of this two 1D blendspaces for bank angle. It turned out quite well.

MovingOnTerrain is two dimensional. MovingBankLeft / MovingBankRight are both 1D blend spaces. alt text

3d blendspace.png (219.7 kB)
avatar image Kieranator Nov 24 '17 at 10:34 AM

I want to use a 3D blendspace to blend speed, height, and direction, cause I'm using incremental crouching.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

You found your own answer: simply blend more blendspaces in nodes. I could vouch for 3D blendspace, but to be realistic, you just need to be a bit more crafty to solve those more specific cases.

more ▼

answered Apr 24 '17 at 09:29 PM

avatar image

chrisplaymind
1 1

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

You can set up a 3rd input axis like this using a simple Blend node and MapRange. In this example, I have the Speed as the 3rd input axis. I think this approach could also be used to add a fourth input as well.

alt text

blendspace3d.png (138.3 kB)
more ▼

answered Jan 20 '19 at 10:19 PM

avatar image

Abeysaurus
139 14 22 31

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question