Exploring the Etymology of Unity Terms

This article is a translated version of my original post on Qiita. Original (Japanese): https://qiita.com/segur/items/28d7c95276dbd8d831be

Exploring the Etymology of Unity Terms

Hello, my name is Segur, and researching etymology is my hobby! I work as a Unity engineer in my day job, and there are some unique terms in Unity. This time, I've explored the origins of these terms!

Please note that this is amateur research conducted as a hobby. Detailed verification has not been conducted, and multiple theories exist regarding these origins. Please read with this in mind.

Unity

"Unity" is an English word meaning "oneness" or "unity."

For example, "team's unity" means "team cohesion."

Here's a look at its origins!

flowchart TD
    Unity("Unity: Unity's game engine")
    unity("unity: [English] oneness, unity")
    unite("unite: [Old French] oneness")
    unitas("unitas: [Latin] oneness")
    unus("unus: [Latin] one")
    oynos("oynos: [Proto-Indo-European] one")
    itas("itas: [Latin] ~ness")

    Unity -.- unity -.- unite -.- unitas
    unitas -.- unus -.- oynos
    unitas -.- itas

Thus, the "uni" part represents the number one!

Another word with "uni" is "union." This means "association" or "union."

For instance, a famous term is the "European Union."

What is Proto-Indo-European?

In the diagram, you might have noticed "Proto-Indo-European." Let's explain for those who aren't familiar!

Languages from the region spanning from India to Europe are thought to have a common ancestor language. This is called "Proto-Indo-European."

Languages derived from it are referred to as "Indo-European languages."

Inspector

For many starting with Unity, the first mysterious term they encounter is "inspector," wouldn't you agree?

You often see explanations like, "Click a GameObject in the Hierarchy window, and its information is displayed in the Inspector window."

Many might have yelled, "What even is an Inspector!?"

"Inspector" is an English word meaning "inspector" or "investigator."

While "inspector" might not immediately make sense, breaking down the word helps.

flowchart TD
    Inspector("Inspector: [Unity term] Function to view GameObject information")
    inspector("inspector: [English] inspector, investigator")
    inspect("inspect: [English] to examine")
    inspectus("inspectus: [Latin] seen into")
    inspicio("inspicio: [Latin] to look into")
    in("in: [Latin] into")
    specio("specio: [Latin] to see")
    spek("spek: [Proto-Indo-European] to see")
    or1("or: [Middle English] person")
    or2("or: [Latin] person")

    Inspector -.- inspector
    inspector -.- inspect
    inspector -.- or1 -.- or2
    inspect -.- inspectus
    inspectus -.- inspicio
    inspicio -.- in
    inspicio -.- specio
    specio -.- spek

From this, it seems to mean someone "who looks inside."

In other words, the Inspector window shows what's inside a GameObject!

Prefab

image.png

In Unity, a Prefab refers to a file that stores a GameObject as an asset.

In Japanese, "prefab" often conjures thoughts of "prefab buildings" or "prefab houses," which feels like a term from the construction industry.

Upon researching its meaning, it turns out that "prefab" is short for "prefabricate"! (I didn't know this until I researched it.)

Tracing back the origins, it delves quite deeply and is fascinating!

flowchart TD
    Prefab("Prefab: [Unity term] File turning a GameObject into an asset")
    prefab("prefab: [English] abbreviation of prefabricate")
    prefabricate("prefabricate: [English] to assemble beforehand")
    pre("pre: [Latin] before")
    fabricate("fabricate: [English] to assemble")
    fabric("fabric: [English] textile, building material, craftsman creation")
    faber("faber: [Latin] craftsman")
    dhabh("dhabh: [Proto-Indo-European] to produce")
    icus("icus: [Latin] pertaining to")
    ate("ate: [English] to do")
    atus("atus: [Latin] resembling")

Prefab -.- prefab -.- prefabricate
prefabricate -.- pre
prefabricate -.- fabricate
fabricate -.- fabric
fabricate -.- ate -.- atus
fabric -.- faber -.- dhabh
fabric -.- icus

Thus, a Prefab suggests something pre-made by a craftsman!

Texture

In the CG world, "texture" generally refers to the image data applied to surfaces.

"Texture" in English means "texture" or "feel."

You might hear phrases like "smooth texture wine" on gourmet shows, indicating "mouthfeel."

Tracing back its origins looks like this:

flowchart TD
    Texture("Texture: [CG term] Image data applied to surfaces")
    texture1("texture: [English] texture, feel")
    texture2("texture: [Middle French] fabric's feel")
    textura("textura: [Latin] way of weaving fabrics")
    texo("texo: [Latin] to weave")
    tek("tek: [Proto-Indo-European] to produce")
    tura("tura: [Latin] action")

    Texture -.- texture1 -.- texture2 -.- textura
    textura -.- texo -.- tek
    textura -.- tura

Originally, it referred to the way fabrics were made, then to the feel of fabrics, and eventually used for texture beyond fabrics.

I love tracing how meanings of words gradually change like this.

Incidentally, the word "text" also traces back to textiles. It signifies weaving words into fabric, thus representing written text.

Material

In the CG world, "material" refers to a set of parameters that adjust the appearance of surfaces.

"Material" is an English word meaning "raw material."

For example, you might combine wood materials and stone materials to create a house GameObject.

"Material" as an adjective means "made of substance." Let's trace this back.

flowchart TD
    Material("Material: [CG term] The texture or quality of a surface")
    material("material: [English] raw material, made of substance")
    materialis("materialis: [Latin] made of substance")
    materia("materia: [Latin] substance")
    mater("mater: [Latin] source, mother")
    mehter("mehter: [Proto-Indo-European] mother")
    alis("alis: [Latin] of")

    Material -.- material -.- materialis
    materialis -.- materia -.- mater -.- mehter
    materialis -.- alis

It turns out "material" shares its origin with "mother"!

Thus, GameObjects are born from the motherly Material!

Shader

image.png

In Unity, programs executed on the GPU are called "Shaders."

However, the origin "Shade" means "shadow," which may not seem related to "GPU."

In the CG world, "Shading" refers to "shadow processing," and the program is called a "Shader."

Shadow processing is typically executed on the GPU, leading to Shader being used for programs beyond shading eventually.

Furthermore, CG "Shading" appears influenced by painting techniques!

flowchart TD
    Shader("Shader: [Unity term] A program executed on the GPU")
    shader1("shader: [GPU term] A program executed on the GPU")
    shader2("shader: [CG term] Program performing shading")
    shading1("shading: [CG term] Shading process")
    shading2("shading: [Art term] Shading technique")
    shade1("shade: [Art term] Shade, hue")
    shade2("shade: [English] Shadow")
    schade("schade: [Middle English] Shade")
    sċeadu("sċeadu: [Old English] Shade")
    skadu("skadu: [West Germanic] Shade")
    skadwaz("skadwaz: [Proto-Germanic] Shade")
    er("er: [English] Person")
    ere("ere: [Middle English] Person")
    arius("arius: [Latin] Person")


    Shader -.- shader1 -.- shader2
    shader2 -.- shading1 -.- shading2 -.- shade1 -.- shade2
    shader2 -.- er -.- ere -.- arius
    shade2 -.- schade -.- sċeadu -.- skadu -.- skadwaz

"Shade" is not from Latin but from the Germanic lineage! It's fascinating to know ancient Germanic people had the concept of "shadow."

Rigidbody

Unity's Rigidbody is remembered by many as a "feature that enables gravity!" (At least I did.) Some may know it as "a feature that enables physics calculations!"

While not incorrect, this doesn't quite capture the essence of the term "Rigidbody" itself!

"Rigid body" is an English term for "rigid body," meaning an object that doesn't deform!

In many university science courses, mechanics of rigid bodies are taught in the first year.

Thus, a Rigidbody is a feature that simulates rigid body mechanics on a computer!

Let's focus on "rigid." Rigid is an English word meaning "hard."

flowchart TD
    Rigidbody("Rigidbody: [Unity term] Simulation of rigid body mechanics")
    rigidbody("rigid body: [English] Rigid body")
    rigid("rigid: [English] Hard")
    rigeo("rigeo: [Latin] Rigidity")
    reyg("reyg: [Proto-Indo-European] Taut")
    body("body: [English] Body")
    bodig("bodig: [Old English] Body")
    budaga("budaga: [Proto-Germanic] Body")
    bhewdh("bhewdh: [Proto-Indo-European] To be aware of")

    Rigidbody -.- rigidbody
    rigidbody -.- rigid
    rigidbody -.- body
    rigid -.- rigeo -.- reyg
    body -.- bodig -.- budaga -.- bhewdh

Thus, a rigid body means a hard body that doesn't deform!

Collider

In Unity, a Collider is the concept equivalent to hit detection in CG terminology.

In English, it means "collision device."

flowchart TD
    Collider("Collider: [CG term] Hit detection")
    collider("collider: [English] Collision device")
    collide("collide: [English] To collide")
    collidere("collidere: [Latin] To strike")
    col("col: [Latin] Together")
    laedo("laedo: [Latin] To strike")
    er("er: [English] Person")
    ere("ere: [Middle English] Person")
    arius("arius: [Latin] Person")

    Collider -.- collider
    collider -.- collide
    collider -.- er -.- ere -.- arius
    collide -.- collidere
    collidere -.- col
    collidere -.- laedo

In other words, "to strike together" leads to "to collide"!

In Closing

There are many other intriguing terms, but we'll stop here for now!

In preparing this article, I made use of the following sites. Thank you for your invaluable resources!