3dsupport.lua

3D Support Script

This script is used to help with setting up models, shaders etc.
It is loaded and initialized by calling:

::lua

system_load("scripts/3dsupport.lua")();
setup_3dsupport();

The setup_3dsupport function will need to be re-initialized if the stack context is popped. This function also maintains a cache of found models, so any changes to resources/models themepath/models won't be reflected until this cache is invalidated by re-initialization.

It also opens and parses a group_sets file for mapping multiple games to shared cabinets (shid)

Exported Functions:

name args returns description
setup_3dsupport Initialize (setup camera, shared textures etc.)
load_shader vertname, fragname, label, definestbl a wrapper around build shader that reads in two resources and builds into the label shader, but replacing all preprocessor boolean defines with those of the definestbl
load_model modelname modeltbl Load and prepare a model by using the basic fall-back loader or, preferably, if a loader script was found, use that.
find_cabinet_model gametbl modelname Heuristic to determine which model should actually fit a particular game based on the contents of gametbl.
setup_cabinet_model modelname, restbl, optionstbl modeltbl A higher-level loader that takes care of lots of arcade cabinet specific remapping, preferring dynamic resources from the resourcefinder.

Related

Wiki: Support Scripts

MongoDB Logo MongoDB