ElixirQuake.Render (elixir_quake v0.1.0)

Copy Markdown View Source

The player's picture: the world and everything in it through Cauldron3D, the held weapon, particles and beams, the status bar, messages, the intermission tally and the closing text, in the palette washed by damage, bonuses, power-ups and liquid.

ElixirQuake.Render.picture(view, {320, 200}, aspect)

aspect is how wide a pixel is on screen against its height. The view keeps Quake's vertical field of view, that of 90 degrees across a 4:3 picture, whatever the shape of the view: a wider view sees further to the sides, a taller one less.

Options

  • :options — the player's options (ElixirQuake.Menu.defaults/0): :gamma (0.5 to 1.0, lower brighter) curves the palette, and :screen_size sets the view as Quake's does: below 100 a smaller view framed by the background tile, 100 both status bars, 110 the main bar only, 120 none
  • :menu — an open ElixirQuake.Menu, drawn over the darkened picture

Summary

Functions

The picture of view at {width, height} pixels.

Functions

picture(view, arg, aspect, opts \\ [])

@spec picture(map(), {pos_integer(), pos_integer()}, number(), keyword()) ::
  FrenchCurve.Raster.t()

The picture of view at {width, height} pixels.