Guide:Glossary

From Game Making Tools Wiki
Revision as of 00:53, 2 March 2022 by Rjt (talk | contribs) (→‎CLI: automate note)

Explanation of jargon used on this blog. Please ask if there's something you don't understand!

Terms are linked here with anchors (I guess this is the best way???)

3-D Graphics

CSG

Constructive Solid Geometry is a technique for building 3-D models by adding together and subtracting using different geometric forms. It's often the basis of tools built round prototyping or quickly building levels, but is also just fine for finished ones.

Normals

The typical way to render a polygon is with a single side. The 'normal' is the side that is able to be seen.

Primitives

Primitives are basic, building-block shapes. For example spheres, cubes, planes, toruses, pyramids... I guess they're usually generated procedurally.

Shader

A Shader is a small program that tells the computer how to render a surface. A shader is what makes polygonal graphics look smooth, or makes some appear like cartoons (cel-shader), etc.

Audio

DAW

DAW stands for Digital Audio Workstation; a program for recording and manipulation audio.

General Computing

CLI

A Command Line Interface, as opposed to a graphical user interface (GUI), is a way of interacting with software through text imput. Think of MS-DOS, for example. It's often used to quickly do, or even automate, tasks where a variety of options can be included in one command.

GPG

Linux Distribution

A Linux distribution or distro is the term for what you can think of as a particular flavour of Linux. Each shares the core linux kernal and GNU software, but attaches other things, such as window managers, desktop environments, package managers, packaged software, etc.

Node-Based

Generally, a 'node' is a connection point. In software, a node-based interface is one where each function is represented graphically (a node), and you can draw connections between the inputs and outputs of these functions. It's becoming common for there to be a node-based programming language for scripting, Unreal and Godot both include this by default. They can be an intuitive, but they can also get fiddly and cluttered.

Popular examples are:

  • Twine, which uses nodes and lines to show the structure of the story.
  • Bespoke, which is like a modular synthesiser, where each node is a doodad that can effect the sound, and each line is the connection between those doodads.
  • Blender, has a node-based editor for materials.


Open-Source

Open-source is a term used to describe software who's source code has been made available. Open this is done to encourage others to contribute to the software's development, and to assist in the development of new software. A common system used for contributing to open-source software is Git, and the most common website for sharing Git projects is GitHub.

You will probably also encounter the acronym FOSS.

Plain-Text

Plain-text (or 'plain text', or 'plaintext') is a way of describing files whose content is human-readable. That is, they contain regular letters and numbers and stuff, so you can open them in a text editor (say notepad) and view and edit their content.

According to the Unicode Standard: Plain text is public, standardized, and universally readable.

Procedural Generation

Procedural generation describes content that it generated by a program (algorithmically) rather than being made specifically. A common use it to provide random and effectively infinte level layouts, but it can also be used for sound, textures, terrain, and much more.

SaaS

SaaS or SAAS stands for Software As A Service, and is a horrible trend in software pricing that doesn't sell you a copy of the program, but a licence to use it for a certain time. Think Adobe's Creative Cloud, which requires an ongoing, yearly fee. Boooooooo.

SSH

Version Control

A means of managing changes to files in a project. Mostly associated with programming stuffs?

The most common system currently is Git (previously Subversion was most popular), particularly using Github (though there are alternatives, including self-hosted ones like Gitlab—which will all potentially federate in the future!).

Virtual Machine

A virtual machine (or VM) is an emulation of one computer system within another. For example a person may run Windows XP as a virtual machine from within their main Linux operating system to give them access to older Windows programs. Some people do it for security reasons too.
VirtualBox is a common and free tool, and allows you to save configurations for multiple systems, which you can quickly launch. An open-source alternative is QEMU.

Workflow

WYSIWYG

Pronounced whizzy-wig, stands for What You See Is What You Get. Used to describe software that lets you edit in a form that looks like what the end user will receive. Think MSWord over writing your document in markup or LaTex.

Internet

Alt Text

Text that is used when the image is not accessed. For example for people with limited vision who use a screen reader, or people on slow connections who disable images. A succinct description of the image.

Language

Camel Case

Often used in programming, and in social network tags for accessibility.

Programming

API

Natural-Language Programming

Natural-language programming, or NLP, is a term used to describe programming languages whose syntax is similar to human languages.

This is different to how the term is used in linguistics, in the game of computer programming a natural language is a programming language that mimics a natural language, theoretically/potentially making the more intuitive to understand and use.

Syntax

Videogames

Turn-Based