Intro:
-Massive is not a modelling program. It is used to build up the logic systems for geometry created in other programs(maya, rhino, etc..)
-Fuzzy logic is a methodology of creating rules as a series of graphs which describe an inputs degree of truth (ie any number between 0 and 1) which is different from traditional programming languages which operate most from Boolean logic.(ie. YES or NO).
-The degree of truth is described by where the incoming number intersects the graph: see example below:
-SEE MpM reference for hotkeys/basic navigation
How to run the program
-For massive to work the license manager must be running
double-click mhost to run it
when the box opens click -start-
you should get a message about how many licenses you have available
Next session I show you how to set it up where mhost automatically starts when you start Windows.
Placing agents
Edit -> Place
select what type of placement Circle, point, line, poly
set the parameters
click Place to create the agents
click Close
Agent #1 – moving around
1A:
-To create an agent you first need some geometry to visualize it.
1.Go to the Body section (change tab on the upper right)
2.drag a box onto the scene
3.click on the box to show its properties. In the Shape tab you can adjust the size and rest position of the box
Make it move
-Go to the Brain Page (change the drop down on the top right corner)
-Drag an OUTPUT node onto the scene
NOTE: The way an output node knows what to do is by what you write in the CHANNEL box. The output can be named anything, but the CHANNEL must be one of the specified keywords.(see MpM reference for a list of all CHANNEL names)
-make the channel tz
this specifies the translate Z channel for the agent. Massive is Y up so tz means forward
-either move the slider or give it a value (say around 3)
since tz is an agent channel it means the rate of change per frame and not an absolute value. Check here for the difference between agent and segment channels.
-add other output nodes for tx and ty to see how they combine together
-also try rotations rx , ry, rz
TIMER AGENT
This agent uses a TIMER node to input information into the graph
-drag on a FUZZ node
-connect the Timer to it: hold Ctrl – L click timer – L click fuzz
-to disconnect nodes hold Ctrl+Alt and repeat the above process
-start the simulation (spacebar)
-select the fuzz node and you should see a blue line running across it: this is the value coming from the Timer.
-We will use the shape of the function to determine how the box moves in the Y direction (up and down)
-The fuzz node is connect to an AND node which is connected to a DEFUZZ node;
-DEFUZZ nodes determine the output value range. Fuzzy logic rules only operate on the values 0 -> 1 so defuzz nodes allow you to relate the degree of truth to a specific value.
-NOTE: by setting the range of the output node before connecting the DEFUZZ nodes it determines the range of the DEFUZZ sliders
by pressing the Else button on a defuzz node it makes calculate its output based on what the other DEFUZZ is not doing, therefore balancing the system
-
Extended:
Download Timer 2 – an introduction to Alt connections
Download Timer 3 – alt connections and variables- randomized heights.
Place 1000+ and watch results
Basic crowd: Using Sound to avoid.
-In Massive, sound is used like sonar (bats, dolphins, submarines) as a means of determining the environment around an agent.
-To use sound an agent must emit sound: this is done by making 2 OUTPUT nodes setting one’s channels to:
sound.f the frequency it is broadcasting on
sound.a how far it is sending the sound
-The information used here is through the channels:
(drag on 2 INPUTs and set the source attribute to.
sound.x the angel between the agent and the other agents around
sound.d the distance to the agents
Extended:
Sound Agent2: Avoids and interprets distance in other ways
No comments:
Post a Comment