Man Linux: Main Page and Category List

NAME

       cube3d - 3D cube console

SYNOPSIS

       cube3d

DESCRIPTION

       cube3d  is  a  LibGGI  "middleend",  that  allows to run up to 6 LibGGI
       applications on one screen, mapped to the six sides of a cube.

       The programs program1 to program6 are invoked and mapped  to  the  cube
       sides  after  the 3d program itself has started. You can interleave the
       program names with size parameters of the form -xxx,yyy that  will  ask
       the  programs  that  come  later on the commandline to start up in that
       size.  The default size is half that of the visual 3d is running on.

       You can  add  more  programs  while  3d  is  running  by  setting  some
       environment variables and starting them:

       GGI_DISPLAY=display-memory:-input:keyfile:1048576:[0-5]:/dev/null

       The [0-5] selects on which face of the cube you want the application to
       run.

       You should as well set GGI_DEFMODE  to  a  mode  with  the  same  color
       organization  like  the  one  3d itself is running on, and the mode, 3d
       believes it should run in, as specified with a size parameter.

       Once cube3d is invoked, the program will display the cube with the  six
       other  applications  mapped  to  it.  But  you  will  probably only see
       application number 1 (and maybe 3 from behind), as this is the way  the
       cube  is  oriented.  The keyboard is redirected to the application that
       has the blinking border.

FUNCTION KEYS

       # is the "escape" key. After pressing it, the  blinking  border  should
       turn  red.  All further input now goes to the 3d program and is used to
       manipulate the appearance and behaviour of the cube:

       #      A double-escape is used to send the escape-char ’#’ itself.

       Enter  or any unknown keypress will end the  escape  mode.  The  border
              will  turn  white  again  and  input  will  go  to  the bordered
              application.

       Left, Right, Up, Down, Home,  End
              will make the cube turn along the respective axis.

       PageUp, PageDown
              will make the cube enlarge/shrink.

       s, S   will stop any cube motion.

       c, C   will center the currently active face (the one with the  border)
              in  a  smooth motion and when this is finished, it will stop all
              motion.  This is a toggle, that gets  turned  off  automatically
              when  the final position is reached. That is, you can disable it
              on its way, which will leave the cube spinning  in  the  current
              direction.

       b, B   will toggle backface culling. In that case, the three back sides
              of the cube are not drawn. Looks much less nice, but is  faster.
              Use on slow systems.

       a, A   will  toggle  autoactivation.  If this is on, the blinking frame
              will automatically move to the face, that is facing  the  viewer
              most   directly,   i.e.  the  front  face.  This  can  be  quite
              irritating, especially, if the cube is  moving  fast.  But  it’s
              cool at times ...

       t, T   will  toggle  transparency.  The  pixelvalue  of  0x00000000  is
              treated as "transparent" usually. This not  only  looks  better,
              but  often  even improves performance, as there is less to draw.
              However things like shells (nixterm) might be hard to read on  a
              colorful  background, so you might want to turn it off at times.

       0-5    select the active console that will get input,  when  you  leave
              the  escaped  mode.  The  blinking  rectangle  will  move there.
              Together with ’c’, this is used to get a particular  console  to
              the front.

       q, Q   quit  3d.  This  also  tries  to  kill the apps started from it.
              Externally started apps are _not_ killed. They will continue  to
              run  and  might  interfere with future runs of 3d, as they still
              hog the shared memory used to communicate  between  3d  and  the
              apps.

       f, F   display framerate. (undocumented, may disappear)

       d,  D  display  debugging  info.  Not  very  useful. (undocumented, may
              disappear)

BUGS

       Too numerous to count.