Friday, 21 November 2008
Tuesday, 18 November 2008
Tutorials Thursday
thanks to those who made it yesterday and sorry again for the late notice.
I will be giving tutorials on your submissions tomorrow.
I will be available in the 1st year studio- (back office)
from: 9:00 - 12:00
and : 16:00-18:00
If you are coming though please email/post the time you are planning to attend.
You can also get a digital version of the submission guidelines
HERE
As a reminder, you may work in pairs on the project, but each person must submit a copy.
Monday, 17 November 2008
Saturday, 15 November 2008
Monday 17th
because of the pt3 exams the time/place for the course had to be changed. So we will meet Monday morning @ 10:00am in the Diploma Jury room- please spread the word. As I said before I will be talking with each of you about your submissions and going over the guidelines
Nick
Monday, 10 November 2008
Monday, 27 October 2008
Fixed Files
I think I found the problem with the files from last time[download below] Sorry about the hassle, the new version of the software seems to have some bugs
SESSION 3 FIXED
Saturday, 25 October 2008
geometry attach
I added some blend to a geo node and when i connect the geo node with skeleton node, the blending cannot be activated but when they are disconnected i can see the blending by pulling the active slider. However, i've got multi skeleton nodes and want to assign different geo node to them. How do i attach them seperately?
Another question, how to show the yellow color on geometry in Bone View?
Friday, 24 October 2008
placing geometry question….
So I made a new geometry to use with your blend2 file and I can see my new geometry in the view window (off of the surface grid), however when I try to place the new geometry on the plane (Ctrl + P) only the little spheres show up and not the geometry.
Monday, 20 October 2008
Sunday, 19 October 2008
Saturday, 11 October 2008
Thursday, 9 October 2008
Tutorial files
Nick
Tuesday, 7 October 2008
session 1
AGENTS SESSION 1
MpM Session 1 Notes
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
Monday, 10 March 2008
Submission Day
just a reminder that submissions are due today (I'm sure you had forgotten)
I'll be in the 1st year studio office until 5pm, so please drop off a disk.
If you are planning to submit your final version after the break I still need whatever you have so far today by 5.
Friday, 7 March 2008
Submission Requirements
I wanted to clarify what is exactly required for the submission.
minimum
1CD with:
-.mas file setup
-.cdl files of agents
- at least 1 diagram explaining the logic of your system
Preferred:
everything above +
-a solved sim file
-an image sequence of the frames
(go to Run -> Sim)
-animation of compiled frames
from the dialouge box click the Sim button in output and make the format amc
create a folder in your default massive directory (//program files/massive/bin)
called Sim
and 1 called Pic
run the simulation for however many frames you want.
for the images it is only an opengl capture so you may want to change the look of the screen
you can hide the grid and time code under View (uncheck them)
and you can give a different background colour by
selecting the camera from the scene view
click on the background tab
select an image file
I have to admit since this is the 1st round of work using the software, I'm feeling a bit generous so if you don't think you are going to finish everything by monday let me know.
You must at least hand in your diagram and the massive files (as developed as possible) to me by 5pm monday, but I'm willing to let you finish the work over the Easter break as I think its important to get quality output.
I'll be in the 1st year space all day, so just come find me. and of course if you have any questions between now and them just post them here
Nick
Tuesday, 4 March 2008
schedule
Wednesday 2 - 5
Thursday 10 - 1
Friday (not sure)
if you are planning to come by please send me an email
Monday, 3 March 2008
Blend Shape problems
To solve the segmentation fault problem:
-save the agent file in the same folder as the obj files.
-write in the mesh names rather than using the file browser.
MESH DOESN'T Blend
In massive if the mesh don't have exactly the same number of vertices the blendshape won't work.
I recommended to a few of you if you are creating geometry in rhino to bring it to maya to convert to polygons, but it seems the method i originally thought:
Convert polygons / triangles / count (pick how many triangles) isn't so reliable as it seems to somehow still not always give the same number of points even when you give the same number of triangles.
SO, the best way to convert is to
-import into maya as an iges
-((make sure you have the iges and obj plugins loaded:
((Windows/ settings preferences / plugin manager / [check Iges.mll ] [check obj.mll] ))
-Modify / Convert / NURBS to Polygons / Control Points
this seems to be the most reliable
-export as an OBJ
Saturday, 1 March 2008
seperate segment movement
thanks, david
Thursday, 28 February 2008
lighting data
Below is the link to a maya script which generates a series of grayscale maps which display the intensity of light on the surface over time.
lightMap script
To use it:
(Assuming you already have the lights animated)
copy the entire script and execute it (ctrl+enter)
First make a material which calculates the light intensity by running from the script editor:
surfLum;
this will make a new lambert with the right connections to it to calculate.
apply this material to the surface you want to calculate for.
The other procedure calculates the lighting over whatever range of frames you specify. The format of it is
calcLight(start frame, end frame)
For example if you wanted to calculate the maps from frame 1 to frame 50:
select the surface
shift select the material
calcLight(1,50);
it saves the maps into your project directory, or if you have hypershade open you can see them all.
paint Example
there were a couple of question about "agent painting" last time so I put together a simple example:
paint example
It explains it pretty well in the manual, but basically you need:
a terrain to paint on
a map on the terrain (in this case a blank white image) in tiff format
-the resolution of the image has an effect on how the agent paints as the size is in pixels
To save the map that agents have painted go to File/ Save Terrain Map
Tuesday, 26 February 2008
Just signed up to blogger - testing
# CDL created with massive v3.0.1
units m
object wind Respond
id 1
colour 0.000000
angles degrees
render_pass 1 shadowpass velocity visible casts_shadows
render_pass 2 beauty velocity visible casts_shadows
bounding_box_tolerance 0
collisions normal
dynamics
angle spring 500.000000
angle dampen 0.000000
angle friction 0.100000
collision spring 1000.000000
collision dampen 100.000000
collision friction 100.000000
CFM 0.000000
ERP 0.200000
ODE ff 1.000000
collision CFM 0.000000
collision ERP 0.200000
collision mu 1.000000
bounce 0.000000
bounce velocity 0.000000
drag 0.000000
gravity 980.000000
steps 1000
end dynamics
segment box
translate 240 520
density 0.01000000
primitive box
size 1.000000 0.200000 0.200000
centre 0.000000 0.000000 0.000000
geometry geo
id 1
translate 240 440
fuzzy input
id 1
name wind.x
translate -400 560
channel wind.x
integrate position
range 0.000000 1.000000
fuzzy output
id 2
name tx
translate -280 560
channel tx
defuzz COM
integrate position
range 0.000000 1.000000
1 input 1
fuzzy input
id 3
name wind.z
translate -400 500
channel wind.z
integrate position
range 0.000000 1.000000
fuzzy output
id 4
name tz
translate -280 500
channel tz
defuzz COM
integrate position
range 0.000000 1.000000
1 input 3
fuzzy output
id 5
name box ry
translate -280 380
channel box:ry
defuzz COM
integrate position
range 0.000000 1.000000
1 input 6
fuzzy input
id 6
name -(atan(wind.z/wind.x))
translate -400 380
channel -(atan(wind.z/wind.x))
integrate position
range 0.000000 1.000000
tree active 0
end object
Hope to combine with two other agents as macros.
Monday, 25 February 2008
object painting
Lara
Monday, 4 February 2008
session 4
Nick
Friday, 1 February 2008
Performance issues w/ Mac+Bootcamp
Seems to happen when I load a terrain file...
Sunday, 27 January 2008
Using the computer lab
PC21 , PC22, and PC23 in the computer lab. (I'm assuming they are ones in the back room)
Session 3
Just a reminder that for tomorrow you are to present a quick example of your first Sound Agent. (As I mentioned its fine if you work in pairs on this) The focus should be on smaller numbers of agents and focussing on the ways that they (and especially their geometry) interact.
Afterwards we will be looking at VISION as another source of sensing for the agents. (I'll post the example files a bit later)
see you tomorrow
Nick
Sunday, 20 January 2008
License errors again....
Nick, it's unlikely that Massive/AA Sysadmins have a fix for this so I would suggest the following:
First run a test to see what happens on the client when the lic server is reset. If it just hangs until the license can be re-established (ie. no crashing/no work is lost), then I think we could ask the AA sysadmins to set up a job on the server that kicks the lic server/mhost every 12 hours (or even shorter intervals, like every 2 hours).
In my experience this can sometimes be the only temp workaround when dealing with crap homebrewed licensing software. What you think?
I can't prep for class now (although admittedly it's late) - I just wanted to do a batch run through the tutorials and it worked earlier in the week. It's going to be very frustrating to have to schedule one's work around when the license server is up and running. Getting more licenses won't neccesarily solve this I think.
Best,
Henrik
Session 2
Here is the link to download the agent files we will be looking at this week:
Session2 files
We will be reviewing some topics from last week as well as:
-More advanced uses of sound (Priorities and multiple decisions)
-Variables and expressions
-Beacons and frequencies
-blendshapes and controlling geometry
See you tomorrow,
Nick
Friday, 18 January 2008
software and tutorials
Thanks, David + Andrew
Tuesday, 15 January 2008
license working again!!
license error
Monday, 14 January 2008
Session 1
http://mindplusmatter.blogspot.com/feeds/posts/default
Its important that you look through the manual and the tutorials to begin to get a better understanding of how the program works as there's a lot to take in. The main difference between programming with "fuzzy logic" rather than traditional boolean is that you set up a network of possible outcomes which evaluate to certain degrees rather than to set values.
Important to Review in the Manual
Intro to fuzzy logic in massive
Input Nodes
Output Nodes
fuzz nodes
And nodes
defuzz nodes
In the tutorials Have a look @
1-1 basic skeletons + skeleton01.mov
1-2 basic channels
2-3 placing agents + place01.mov
2-5 sound + sound01.mov (this shows you how to make the agent from today)
For next week each of you should have produced a variation of the sound agent by either adding to the form or adding new logic OR BOTH!
As I mentioned, any questions or discoveries should be posted here and I'll be adding new things along the way as well