(#1111) Need Motion behaviour random choice to change each time

22 views
Skip to first unread message

Inspired Entertainment

unread,
Jul 17, 2023, 3:56:12 AM7/17/23
to crowd...@golaem.com, andrew....@inseinc.com
Submitted on Friday, July 14, 2023 - 10:36
Submitted by anonymous user: 195.78.80.114
Submitted values are:

First Name: Andrew
Last Name: Hosking
Company: Inspired Entertainment
Status: Customer
Email: andrew....@inseinc.com
Emails to CC: andrew....@inseinc.com
Golaem Version: 8.2.4
Maya Version: 2023
Python Version: Python 3
OS: Windows
Distribution:
Renderer:
Other DCC:
Subject: Need Motion behaviour random choice to change each time
Attachment: https://golaem.com/sites/default/files/webform/motionRandom.JPG
Details:
I have 8 unique motions loaded onto a single motion behaviour.

During each of my many 60 second simulations, each entity will enter this
motion behaviour several times, and each time 1 of these 8 motions will play
ONCE (not looping) and then exit.

The main golaem random seed will be different for each sim.

I've enabled 'Motion id Random' so the motion choice for each entity is
random, but if you look at any 1 entity, it's very obviously repetitive as
this choice is the same each time.

I need to be able to make these random choices change each time this motion
behaviour is triggered.
Is that possible, or is this more of a new feature request?

Thanks in advance,
Andy



The results of this submission may be viewed at:
https://golaem.com/node/250/submission/7871

Nicolas Chaverou

unread,
Jul 17, 2023, 4:39:41 AM7/17/23
to crowd...@golaem.com, andrew....@inseinc.com
Hey there,

That's correct, once a Motion Behavior has been initialized for an Entity, it's not able to change
There are a lot of parameters which are set properly based on the picked motion at init time and changing a motion during the simulation within the same behavior will break a lot a stuff regarding transitions / triggers / blending weights...

The way to work for your use case is rather to have 8 motion behaviors and probably stack them in a NoOrder operator

This will randomly sequence the 8 behaviors inside for each Entity and make sure each behavior is run once only
You can also combine Rand and Loop operators but it may result in a behavior being run multiple times

Does that help ?



--
Note that crowd...@golaem.com is a public list.
If for any reason (confidential project, sending production files...) you need to post a private message to Golaem Support, please use http://support.golaem.com
---
You received this message because you are subscribed to the Google Groups "Golaem List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to crowd-list+...@golaem.com.
To view this discussion on the web visit https://groups.google.com/a/golaem.com/d/msgid/crowd-list/20230714083644.58A504010F%40cluster023.hosting.ovh.net.

Andy Hosking

unread,
Jul 17, 2023, 5:17:50 AM7/17/23
to Golaem List, Nicolas Chaverou, andrew....@inseinc.com
Thanks Nic, that makes sense.
I'll probably just make 4 motion behaviours containing 2-3 jump motions in each and use a NoOrder as described above.

1 question, ... if I have 4 motion behaviours in a NoOrder, what happens if it's called a 5th/6th/7th time? 
The logic behind this isn't discussed on the the doc page.

Nicolas Chaverou

unread,
Jul 17, 2023, 5:22:14 AM7/17/23
to Andy Hosking, Golaem List, andrew....@inseinc.com
Heya,

See below:

On Mon, Jul 17, 2023 at 11:14 AM Andy Hosking <andy.h...@gmail.com> wrote:
Thanks Nic, that makes sense.
I'll probably just make 4 motion behaviours containing 2-3 jump motions in each and use a NoOrder as described above.

1 question, ... if I have 4 motion behaviours in a NoOrder, what happens if it's called a 5th/6th/7th time? 

That doesn't happen : when put into a NoOrder you just have to imagine they are a sequence

The following NoOrder op will flatten into that second image (or its opposite in the order of the behaviors)

2023-07-17 11_19_24-Window.png 2023-07-17 11_19_47-Window.png

Just to make sure we're on the same line here: you do not need to add a Loop operator around it
If you do, it'll just replay the full sequence again from the start.

Best,

Andy Hosking

unread,
Jul 18, 2023, 5:34:43 AM7/18/23
to Golaem List, Nicolas Chaverou, Golaem List, andrew....@inseinc.com, Andy Hosking
OK, imagining it as a sequence makes sense with the NoOrder node.
But this isn't quite the solution to my issue.

An entity will move from it's main looping motion into a Jump motion which plays ONCE and then back to the main looping motion.
Then each entity later will enter a new Jump trigger area and here is my issue, the same Jump motion will be triggered per entity.

The only way I can see to randomise this is to use a Random operator feeding into a motion behaviour per motion which isn't ideal.
I use an 'exitJump' Golaem attribute controlled via chops to give me my correct exit point as all my Jump motions are different lengths.

Nicolas Chaverou

unread,
Jul 18, 2023, 12:05:59 PM7/18/23
to Andy Hosking, Golaem List, andrew....@inseinc.com
For the record, we're moving this discussion to private list for now
Reply all
Reply to author
Forward
0 new messages