title: Unity3D (5.3.5) decals instantiate with wrong rotation
body: <p>I still consider myself pretty much a beginner where Unity and C# are concerned, so I'm sorry, if this turns out to be an easy fix, but any help would be appreciated.</p>
  
  <p>What I'm trying to do:<br>
  The player can interact with cubes in the world and I want to give them feedback. For this I have a prefab of a plane with the texture of a hand print applied to it. The interaction happens with a raycast and the hand print is supposed to be instantiated at the hit location.</p>
  
  <p>This is the script I wrote for that:</p>
  
  <pre><code>Ray ray = new Ray (Camera.main.transform.position, Camera.main.transform.forward);
  RaycastHit hitInfo;
  
  if (Physics.Raycast (ray, out hitInfo, usabilityRange)) {
      Vector3 hitPoint = hitInfo.point;
      GameObject go = hitInfo.collider.gameObject;
  
      hasInteract h = go.GetComponent&lt;hasInteract&gt; ();
  
      if (h != null) {
          h.toggleText ();
          if (interactPrefab != null) {
              Quaternion rotation = Quaternion.FromToRotation(Vector3.up, hitInfo.normal);
              Instantiate (interactPrefab, hitPoint, rotation);
          }
      }
  }
  </code></pre>
  
  <p>What's going wrong:<br>
  That Quaternion is used by just about every tutorial I've found on this topic, but when I use this on a regular cube, it instantiates the decal with a different rotation on every cube face (e.g. fingers facing left on one face and facing up on another, etc.). Right now, I have no idea how to calculate the rotation so that the fingers of the hand print always face up no matter what direction the cube is activated from (apart from the top).</p>
  
  <p>Thank you again for reading through this wall of text!</p>