Reading Unity documentation was one of my bed time stories before. I am always addicted to discovering and collecting those trivia information. And I reckon it would be good to write down a summary of my discoveries.

  1. Updating Rigidbody.position is faster than Transform.position
    Rigidbody.position allows you to get and set the position of a Rigidbody using the physics engine. If you change the position of a Rigibody using Rigidbody.position, the transform will be updated after the next physics simulation step. This is faster than updating the position using Transform.position, as the latter will cause all attached Colliders to recalculate their positions relative to the Rigidbody.[1]

  2. Unity’s default mass is in kilograms. Unity’s default unit scale is 1 unit = 1 meter. [2]

  3. Time Manager
    The concept of time manager was something I wish I could know when I just started Unity. You can open the time manager through Edit > Project Settings > Time.
    Fixed Timestamp dictates when physics calculations and FixedUpdate() events are performed. The default value is 0.02 which means your physics update will be performed 1/0.02 = 50 physics updates per second. If you are working on VR project using HTC Vive or Oculus like me, your game would run 90 fps but your physics is only running at 50fps. Therefore, change your fixed timestamp to at least 0.01333.

  4. Any game object with Rigidbody and Collider is considered as Dynamic, any game object with a collider attached but no Rigid-body is Static.

  5. Continuous collision detection is a feature to prevent fast-moving colliders from passing each other. This may happen when using normal (Discrete) collision detection, when an object is one side of a collider in one frame, and already passed the collider in the next frame. [2] BTW, collision detection mode can be changed in Rigidbody.

  6. Mesh vs texture vs material.
    • Mesh: Mesh is the 3D shape of a model.
    • Texture: A texture is an image, is a sheet that acts like a skin lying on the surface of your model.
    • Material: A material is the details of what an object should look like. Most materials take textures as a parameter. There are many cases where a material takes multiple textures.
  7. Hotkeys
    Being able to use different key bindings to trigger some events would definitely increase your productivity and look more like an expert. With the ability of just using few keys on your keyboard will decrease your hand motion and usage of mouse, which is beneficial to both efficiency and ergonomics! Here is a list of my favorite hotkeys in Unity.
    • Full screen view: shift + space
    • Create empty game object: ctrl + shift + N
    • Create empty object under selected object: alt + shift + N
    • Expand sub-objects: Hold down alt when clicking on the group.
    • Rename object: On Mac press enter on selected object, on Windows use F2 key
    • Play Game: ctrl + P
    • Build: ctrl + shift + B
    • Scene Window: ctrl + 1
    • Game Window: ctrl + 2
    • Animation Window: ctrl + 6
    • Profiler Window: ctrl + 7
    • Console Window: ctrl + shift + C

    NOTE: On Mac, command key should be used instead of ctrl key.

Reference

  1. Rigidbody position
  2. Rigidbody -> Use the right size
  3. Collision Detection
  4. Unity Hotkeys Documentation