The Parts and Whole: Overview

From The DarkMod Wiki
Revision as of 20:51, 19 January 2022 by Geep (talk | contribs)
Jump to navigationJump to search

By Geep 2022

"The Parts and Whole" series explores map objects being brought together into higher-level assemblies... their creation, navigation, manipulation, and benefits. Dark Radiant provides a number of techniques to control the visibility, selectability, and association of multiple objects. Some also can improve game performance. Here's a quick overview. Follow individual links [WIP] for lots more.

Techniques that affect DR Only

To speed up complex editing, DR provides 6 techniques to form collections of associated objects, to benefit:

  • Ease of selection and subsequent manipulation
  • Control of visibility, hiding items that obscure what you really want to see and manipulate.

These techniques do not affect your project's .map file or performance. Those that are persistent across DR sessions store their information in the map/<FM>.darkradiant file.

In a Nutshell

Technique Purpose Pros & Cons
Hide/Show Toggle visibility of selected or deselected objects. Pros: Quick & easy. Important as adjunct to "Group" and "Selection Set".
Region Define a box & temporarily hide everything that doesn’t touch it. Pros: Easy to use. Several way to define box.

Also: Can generate auto-sealed map file of region for testing, but with caveats.

Layer Assign each object to one or more named layers, based on any criteria. Then toggle layer visibility. Pros: Highly customizable. Quick layer select.

Cons: Requires active organization and management.

Filter Toggle visibility based on class name or other attributes (i.e., spawnargs) Pros: Good selection of built-in filters. Quick to use & needs no management. Custom filters possible.

Cons: Custom filters require programming.

Group Cluster objects together to select, move, or copy as group. Pros: Quick, easy, scales well to large number of Groups and of objects within.

Cons: Groups are unnamed.
Also: Stack-like (LIFO) manipulation method to love/hate.

Selection Set Clusters objects together temporarily, with naming. Pros: Consider for one-time complex editing tasks.

Cons: Lacks the persistence and fine-grained control of Groups and Layers.

Additional "Cons"

  • For all techniques that hide items: you might forget the hiding is in effect when it comes time to copy things, so you fail to copy the totality of what’s needed.
  • In the next table’s "Max # of Collections" Column: "Dozens" – typically just a few dozen - refers to practical limitations on suitability of the dropdown menu or scrollable list used to view and manipulate the list.

Characteristics

Technique Collect Items without Touching Them Collection Named Hide Collection Directly Max # of Collections Persistent (Kept Across DR Sessions)
Hide/Show X 1
Region X Non-collection 1
Layer X X Dozens X
Filter X X X Dozens X
Group No limit X
Selection Set X Dozens

Special Case: Prefabs

[PLANNED][Also update of existing Prefab article]

Techniques that Affect Both DR and TDM

[PLANNED][Coverage to include:

  • Entities with Primitives
  • Multiple Instances Combined with SEED
  • Combining Models
  • Func Groups
  • Inlining

]