Thursday, February 21, 2013

Personal tutorial: Maya fluids

This isn't exactly particles, but involves principles that could help with controlling particle meshes.

Based on experimentation, I have to agree with the author's conclusions: the fluid effects are best simply as liquids, and not in the air.  The picture kind of explains why; the ripples ruin the surface as the fluid moves through air.

Similar to particles, it is incredible how many settings can adjust the fluid's nature, including movement, density, buoyancy, etcetera.  Wonder how many things it's been used for?

Wednesday, February 20, 2013

Group tutorial: Particles in Unity


I would recommend this tutorial (which I will try to use), but it's in German.  If you have good eyesight or can understand German, great.  If not, then activate subtitles to translate and hope whatever is displayed is half legible.

At any rate, the particle effect allows for a change in the size of particles, the energy per particle, the direction of the particle movement, and when the particles flow.  The settings are similar to the ones in Maya, but the coding appears to be more user friendly.  Not that this is a good thing; I'm used to more basic coding, per se.  Do not ask me to code in basic, I've seen it, it's a nightmare.

Tutorial: Low poly character modeling

While this tutorial was useful for modeling experience, it's taught me that trying to model when under stress or exhaustion, the job will look terrible, as shown below.

The intended view.  Note that she's wearing a shirt underneath the first one.

Side 

Front

Back

Cutting faces, deleting edges and vertices, merging vertices, combining, and extruding all in this, I've had enough for now.  I need sleep, good grief.

Tuesday, February 19, 2013

Personal tutorial: Realistic dripping water

This is derived from this incredibly useful page on particles.


I haven't been able to attach deformers to the individual particles, but at the very least, I can get them to stick to the plane emitting them.  Interestingly, this was actually achieved not through particle creation settings, but through rigid body stats.  The higher the stickiness and friction, the longer the particles stuck.

The particles start at a certain size, and increase in size as time passes (Radius Scale Input: Age, under Radius Scale, under Particle Size).  The time in which the particles stay attached can be changed with the Input Max setting under Radius Scale.

The result is something hopefully pretty that at least imitates water.  I would use a squash deformer to make it look more like water when it drops, but this only affects the mesh, which for some reason glitches toward the end of the animation.  I've checked on that, and it may be that the Max Triangle Resolution (number of triangles that can be on a scene at a time) is too low.  I tried adjusting that on a graphically powerful computer and not, and it worked on neither computer.  Well, at least you can see the pre mesh result.


Friday, February 15, 2013

Group tutorial: Coding with Javascript

Here's the site for reference to what I'm talking about.  link

I'm familiar with coding in Java, importing classes and checking syntax, but Javascript appears to be riddled with more advanced knowledge and methods that would appear to be illegal.  For example, in Java, this is an average section of code:

public class Banana()  //Must declare the class first.  Also, the filename and class name must match.
{
     String ohai="ohai";
//Syntax is key; remember the semicolon at the end.
     System.out.println(ohai);
//Here it outputs a String, named ohai, and set to "ohai".  (I would follow grammar rules on that period, but that would mean something entirely different in programming terms.)
}  //Remember these things.  They must go outside a method.  By the way, the double slash marks mean that the text following them is not active code, unless it is a method calling a file location.

In Javascript, we get this lovely mayhem:

function Update()
{
     transform.Translate(0,0,Time.deltaTime);
     transform.Translate(0,Time.deltaTime,0,Space.world);
// Having the two methods as shown is legal in Java; I just didn't show that in the first example.   However, methods like "Time.deltaTime" would be illegal, as they lack parentheses at the end.  Also, there is no simple (commonly denoted by all lowercase) class in Java named "function."  While one can create a more complex class with all lowercase letters, but this is not recommended to avoid confusion.
}

Also, sometimes you get code that reads "something :: random."  This is not taught in high school programming courses (I am not declaring a class), and thus my personal experience is minimal.

So if I'm helping with programming our game, I'll need to acclimate myself to the insanity of simplicity, and lack of easy modification options.  Joyous. :(

Wednesday, February 13, 2013

Personal tutorial: Dissolving an Object into Particles

I've always thought this was cool, so I'm learning how.  Tutorial: link

There are still some adjustments than need to be made to the particle rate so that they particles only flow exactly at the edges, but apart from that, it seems to have worked out well.  The texture emission attributes, with an ability to have the particles to inherit the color, and to have particle flow position and rate affected by the texture given, allow for realistic dissolution.

Here's a sample of what this looks like.