Changes between Version 12 and Version 13 of Actors


Ignore:
Timestamp:
Apr 10, 2021, 7:27:36 PM (3 years ago)
Author:
wraitii
Comment:

Quality Levels

Legend:

Unmodified
Added
Removed
Modified
  • Actors

    v12 v13  
    11''Actors'' are the graphical representations of objects in the game. They combine meshes, textures, animations and props, and also control some other graphical features (such as whether the objects casts shadows or has transparent textures - see MaterialSystem).
    22
    3 Actor data is stored in XML files, which can be edited by hand, but usually the [wiki:Actor_Editor Actor Editor] is used instead. Actor XML files are located in subdirectories of [source:/ps/trunk/binaries/data/mods/public/art/actors art\actors\] for a given mod (see [wiki:Mod_Layout mod layout]).
     3Actor data is stored in XML files. You can use the [wiki:Actor_Editor Actor Editor] or edit them by hand - the latter is necessary if you're working with quality levels. [[BR]]
     4Actor XML files are located in subdirectories of [source:/ps/trunk/binaries/data/mods/public/art/actors art\actors\] for a given mod (see [wiki:Mod_Layout mod layout]).
    45
    56To test how an actor will look in-game, use Atlas' [wiki:Atlas_Manual_Object_Tab#TheActorViewer actor viewer].
     
    78== Terminology ==
    89
     10 * '''Quality level''': actor files can define different actors for different quality levels. Depending on the user's graphics setting, he will then see different models/textures/props for a given unit.
    911 * '''Variant''': a named collection of data items, specifying the actor's texture, animations, etc (or any subset of those data). Shown in the [wiki:Actor_Editor Actor Editor] as a single row. A variant can also be defined in an external file (located under [source:/ps/trunk/binaries/data/mods/public/art/variants art/variants/]), or as a combination of an external file with extra internal definitions (which merges both definitions).
    1012 * '''Group''': a set of variants; represented in the [wiki:Actor_Editor Actor Editor] by a block of rows, separated from other groups by blank rows.
     
    102104</actor>
    103105}}}
     106
     107== Quality Levels ==
     108
     109You have several options to define quality levels, illustrated below (they can be freely combined):
     110{{{
     111#!xml
     112<?xml version="1.0" encoding="utf-8"?>
     113<qualitylevels version="1">
     114  <!-- Define the actor directly inline. This actor will be used for settings "low" and worse. -->
     115  <actor quality="low">
     116    <group>
     117      <variant frequency="100" name="Base">
     118        ...
     119      </variant>
     120    </group>
     121    <group>
     122      ...
     123    </group>
     124    ...
     125  </actor>
     126  <!-- Define the actor in a separate file -->
     127  <actor quality="medium" file="some_other_actor"/>
     128  <!-- Refer to the inline actor (see below). -->
     129  <actor quality="high" inline=""/>
     130  <!-- Quality is just a number from 0 to 255. "low" is 100, "medium" 150 and "high" is 200. -->
     131  <actor quality="255" inline=""/>
     132  <!--
     133    The inline actor is just a regular actor, but it will can be parsed several times.
     134    You can use "minquality" and "maxquality" to define a [minquality, maxquality[ range in which to use groups & variants.
     135    You can also use this for materials & other actor attributes (though not variant attributes, you will have to define different variants).
     136  -->
     137  <inline version="1">
     138    <!-- This group only exists if the actor quality is strictly under "high", e.g. "medium" or "low". -->
     139    <group maxquality="high">
     140      <variant frequency="100" name="Base">
     141      </variant>
     142    </group>
     143    <!-- This group exists if the actor quality is "high" or more. -->
     144    <group minquality="high">
     145      <!-- This variant exists if the actor quality is 230 or more.-->
     146      <variant minquality="230" frequency="100" name="Base">
     147        ...
     148      </variant>
     149      <variant frequency="100" name="Base">
     150        ...
     151      </variant>
     152    </group>
     153    <!-- This actor will only cast shadow if the actor quality is 220 or more.-->
     154    <castshadow minquality="220"/>
     155  </inline>
     156</qualitylevels>
     157}}}