title: Is OpenGL a "state machine"?
body: <p>OpenGL is usually described as a "state machine" because, as far as I know, it consists of global variables which can be set through its API and they change/define its behavior. For example it is possible to set current color or transformation matrix. Many of state variables have continuous value range.</p>
  
  <p>However, as far as I understand, a "state machine" or "finite state machine" in computer science is defined as a directed graph of states (as nodes) and transitions (as directed edges).</p>
  
  <p>Is the "state machine" term used to describe OpenGL the same as the "state machine" which is <a href="https://en.wikipedia.org/wiki/Finite-state_machine" rel="nofollow">defined</a> in general computer science.</p>