Sunday, 10 September 2017
Dissolving Sandman
In this tutorial I'm showing how to do a simple dissolve effect with grains. There is a download link for the scene file under the video.
Download the scene file here
Sunday, 13 August 2017
Stick Textures to Dynamic Objects
Sorry for the wait but here is at last another tutorial. In this video, I'm showing how to stick textures to simulated objects in Houdini. An effect that you can use to create cool logo reveals for instance.
Sunday, 23 July 2017
Crowd Course Finally Done!
I'm sorry for the lack of updates, but I'm finally done with my crowd course which took way longer to finish than I thought it would. I’m really proud of the result though and I’ve basically done a 2 hours course in the same fast paced tempo as my short tutorials. I will now get back to doing short ones! :)
Meanwhile if you are interested in crowds and want to see what I’ve been up to, you can go to the course here: Crowds for Feature Film in Houdini
In this you will learn how to import your own characters into the crowd system, set up loops and transitions for your animation clips, set up a simulation without any shelf tools, set up behaviours and triggers, shade and finally render your crowds.The course is also split up in short chapters so you can, with ease, find exactly what you are looking for when revisiting the videos after your first playthrough
Last, but not least, I want to thank Centroids who helped me capturing all the mocap for the course which was obviously a huge help!
Meanwhile if you are interested in crowds and want to see what I’ve been up to, you can go to the course here: Crowds for Feature Film in Houdini
In this you will learn how to import your own characters into the crowd system, set up loops and transitions for your animation clips, set up a simulation without any shelf tools, set up behaviours and triggers, shade and finally render your crowds.The course is also split up in short chapters so you can, with ease, find exactly what you are looking for when revisiting the videos after your first playthrough
Last, but not least, I want to thank Centroids who helped me capturing all the mocap for the course which was obviously a huge help!
Sunday, 16 July 2017
Lack of Updates
I know that there haven't been that much excitement on this blog for a while. The reason for this is that I've been spending time on creating a 2 hours Crowd Course for Houdini. More info on this will come shortly, but don't worry. I'll be posting new free tutorials soon. :)
Sunday, 14 May 2017
How to Create Custom Constraints for Your Ragdolls in VEX
In this
tutorial I’m talking about how to create custom constraints in VEX for your
ragdoll sim. Unfortunately I got over my 10 minutes limit, but there was just
so much stuff that I needed to squeeze in.
It’s a bit technical so you probably need to have some basic understanding of VEX and ragdolls to be able to appreciate it.
It’s a bit technical so you probably need to have some basic understanding of VEX and ragdolls to be able to appreciate it.
If you don’t
want to write the code yourself you can copy it from here:
int
number_of_agents=npoints(1)-1;
string
left_hand;
string right_hand;
string right_hand;
int
pointID_left;
int pointID_right;
int pointID_right;
for(int
i=0; i<number_of_agents;i++){
left_hand=sprintf("mocapbiped3_%d/LeftFingerBase_To_LeftHandIndex1",i);
right_hand=sprintf("mocapbiped3_%d/RightFingerBase_To_RightHandIndex1",i+1);
right_hand=sprintf("mocapbiped3_%d/RightFingerBase_To_RightHandIndex1",i+1);
pointID_left=findattribval(0,"point", "name",
left_hand,0);
pointID_right=findattribval(0,"point", "name", right_hand,0);
pointID_right=findattribval(0,"point", "name", right_hand,0);
int primID=addprim(0,"polyline",
pointID_left, pointID_right);
setprimattrib(0,"constraint_name", primID, "Pin","set");
setprimattrib(0,"constraint_name", primID, "Pin","set");
}
Sunday, 16 April 2017
Emit Particles from Geometry Intersections
In this tutorial I’m showing how you can use the Intersection Analysis tool to create emitters whenever you have geometry that intersect.
Sunday, 2 April 2017
Combining Solvers With a Multi-Solver
A cool thing that you can do in Houdini is to stack solvers with the help of a multi-solver. In this tutorial I'm showing a simple example of this by using a pop solver together with a bullet solver.
Sunday, 12 March 2017
Basic Material Style Sheets in Houdini
There seems to be a lot of confusion around Material Style Sheets in Houdini so I decided to make a very basic tutorial about it.
Quick Tip: Using the built in mocap biped 3 for crowds
I got some questions about how to use Houdini's built in mocap biped 3 instead of an fbx for your crowds so I decided to make a quick video about it.
Saturday, 11 March 2017
Create Arrays Containing the Vertices for Each Primitive
I got a question about how you could create an array out of four points for each primitive in one of the comments so I thought that I make a quick example.
So in this scene I'm reading every vertex for each primitive, put them in an array, move the box, read them back and then add a point at the original position. It looks like this.
Make sure that your Attribute VOPS are running over primitives.
Inside the first VOP I'm using a For Loop and the numvtx (which is the number of verticies that the current primitive has) to drive how many time it will loop. I'm then using an Import Vertex Attribute with the current element index to pick up the position of the vertices. Lastly I'm appending them to an array. As we've selected that we are running over Primitives this will create an array for each Primitive.
So in this scene I'm reading every vertex for each primitive, put them in an array, move the box, read them back and then add a point at the original position. It looks like this.
Make sure that your Attribute VOPS are running over primitives.
Inside the first VOP I'm using a For Loop and the numvtx (which is the number of verticies that the current primitive has) to drive how many time it will loop. I'm then using an Import Vertex Attribute with the current element index to pick up the position of the vertices. Lastly I'm appending them to an array. As we've selected that we are running over Primitives this will create an array for each Primitive.
To read it back is very easy. Just make sure that you are running over Primitives here as well. After that you can just use an for each node to step through your arrays.
Hope that you will find this useful, The project file can be downloaded from here: Project File
Sunday, 26 February 2017
HeightFields for Crowds
In this tutorial I show how you can use heightFields to speed up crowds with terrain adaptation.
Thursday, 16 February 2017
Crowd Basics 2: The Transition Graph
Part 2 in my Crowd Basic Series. This time about transitions with the help of the transition graph. You probably want to check out part 1 as well if you are new to crowds in Houdini.
Tuesday, 7 February 2017
Crowd Basics 1: Locomotion And Foot Locking
In this video I'm talking about some basic, but important crowd concepts that often seem to be forgotten.
Tuesday, 31 January 2017
Scene File Posted For Last Weeks Tutorial
I've added a scene file to the last tutorial about states and streams. Download it here
Tuesday, 24 January 2017
XSI To Houdini 4: From States to Streams
In this tutorial I'm showing how you could set up something similar to XSI's states in Houdini through POP streams and a SOP Solver.
I realized after that I've recorded the tutorial that I didn't show the DOP set-up that I'm starting out with so I made a screen grab. As you can see it's very basic.
Labels:
DOP,
houdini,
POP Stream,
SOP Solver,
States,
VOP,
xsi
Wednesday, 18 January 2017
Quick Start: Arrays in VOPs
Usually it's easier to use wrangles for arrays, but sometimes it's nice to be able to do them in VOPs as well. In this video I'm showing how to use an array to create a simple lag.
Thanks Olivier Jeannel for the suggestion!
Tuesday, 10 January 2017
XSI To Houdini 3: The Solver Node
In this tutorial I'm talking about how you can reproduce XSI's simulation stack with a Solver node in Houdini.
Wednesday, 4 January 2017
Everything in English
A colleague of mine pointed out that the blog language was set to Swedish which it obviously shouldn't be. It's changed now. Let me know if there are other issues.
Tuesday, 3 January 2017
String Attributes Through Stamping in a Font SOP
I'm showing how to get the Font SOP to type out values from a string attribute when you are using stamp. Maybe not the most exciting subject, but it can be quite useful.
If it's hard to read in the video, the expression I'm typing is the following:
`points("../assemble1", stamp("../copy1", "pName",0), "name")` Don't forget the ` in the beginning and end.
Subscribe to:
Posts (Atom)