_________ __                 __
        /   _____//  |_____________ _/  |______     ____  __ __  ______
        \_____  \\   __\_  __ \__  \\   __\__  \   / ___\|  |  \/  ___/
        /        \|  |  |  | \// __ \|  |  / __ \_/ /_/  >  |  /\___ \
       /_______  /|__|  |__|  (____  /__| (____  /\___  /|____//____  >
               \/                  \/          \//_____/            \/
    ______________________                           ______________________
                          T H E   W A R   B E G I N S
                   Stratagus - A free fantasy real time strategy game engine

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Macros
video.cpp File Reference
#include "stratagus.h"
#include <vector>
#include "video.h"
#include "intern_video.h"
#include "cursor.h"
#include "font.h"
#include "iolib.h"
#include "map.h"
#include "ui.h"
#include "SDL.h"

Classes

struct  Clip
 
class  CColorCycling
 

Macros

#define COLOR_CYCLE_SPEED   (CYCLES_PER_SECOND / 4)
 

video.cpp - The universal video functions.

CVideo Video
 Do SDL hardware unlock. More...
 
char ForceUseOpenGL
 
bool UseOpenGL
 
bool ZoomNoResize
 Use OpenGL. More...
 
bool GLShaderPipelineSupported = true
 
char VideoForceFullScreen
 Fullscreen or windowed set from commandline. More...
 
double NextFrameTicks
 fullscreen set from commandline More...
 
unsigned long FrameCounter
 Ticks of begin of the next frame. More...
 
unsigned long SlowFrameCounter
 Current frame number. More...
 
int ClipX1
 Profile, frames out of sync. More...
 
int ClipY1
 current clipping top left More...
 
int ClipX2
 current clipping top left More...
 
int ClipY2
 current clipping bottom right More...
 
static std::vector< ClipClips
 current clipping bottom right More...
 
int VideoSyncSpeed = 100
 
int SkipFrames
 0 disable interrupts More...
 
Uint32 ColorBlack
 Skip this frames. More...
 
Uint32 ColorDarkGreen
 
Uint32 ColorLightBlue
 
Uint32 ColorBlue
 
Uint32 ColorOrange
 
Uint32 ColorWhite
 
Uint32 ColorLightGray
 
Uint32 ColorGray
 
Uint32 ColorDarkGray
 
Uint32 ColorRed
 
Uint32 ColorGreen
 
Uint32 ColorYellow
 
void InitVideoSdl ()
 
void SdlLockScreen ()
 Init SDL video hardware driver. More...
 
void SdlUnlockScreen ()
 Do SDL hardware lock. More...
 
void SetClipping (int left, int top, int right, int bottom)
 
void PushClipping ()
 Push current clipping. More...
 
void PopClipping ()
 Pop current clipping. More...
 
unsigned long GetTicks ()
 Returns the ticks in ms since start. More...
 
void InitVideo ()
 initialize the video part More...
 
void DeInitVideo ()
 deinitliaize the video part More...
 
static int CclSetVideoSyncSpeed (lua_State *l)
 
void VideoCclRegister ()
 register lua function More...
 
void VideoPaletteListAdd (SDL_Surface *surface)
 
void VideoPaletteListRemove (SDL_Surface *surface)
 
void ClearAllColorCyclingRange ()
 
void AddColorCyclingRange (unsigned int begin, unsigned int end)
 
void SetColorCycleAll (bool value)
 
void ColorCycleSurface (SDL_Surface &surface)
 
static void ColorCycleSurface_Reverse (SDL_Surface &surface, unsigned int count)
 
void ColorCycle ()
 Does ColorCycling.. More...
 
void RestoreColorCyclingSurface ()
 

Macro Definition Documentation

#define COLOR_CYCLE_SPEED   (CYCLES_PER_SECOND / 4)

Function Documentation

void AddColorCyclingRange ( unsigned int  begin,
unsigned int  end 
)
static int CclSetVideoSyncSpeed ( lua_State *  l)
static

Set the video sync speed

Parameters
lLua state.
void ClearAllColorCyclingRange ( )
void ColorCycle ( )

Does ColorCycling..

Color cycle.

MACRO defines speed of colorcycling FIXME: should be made configurable

void ColorCycleSurface ( SDL_Surface &  surface)

Color Cycle for particular surface

static void ColorCycleSurface_Reverse ( SDL_Surface &  surface,
unsigned int  count 
)
static

Undo Color Cycle for particular surface

Note
function may be optimized.
void DeInitVideo ( )

deinitliaize the video part

unsigned long GetTicks ( )

Returns the ticks in ms since start.

Return ticks in ms since start.

void InitVideo ( )

initialize the video part

Video initialize.

void InitVideoSdl ( )

Initialize the video part for SDL.

void PopClipping ( )

Pop current clipping.

Pop current clipping.

void PushClipping ( )

Push current clipping.

Push current clipping.

void RestoreColorCyclingSurface ( )
void SdlLockScreen ( )

Init SDL video hardware driver.

Lock the screen for write access.

void SdlUnlockScreen ( )

Do SDL hardware lock.

Unlock the screen for write access.

void SetClipping ( int  left,
int  top,
int  right,
int  bottom 
)

Set clipping for graphic routines.

Parameters
leftLeft X screen coordinate.
topTop Y screen coordinate.
rightRight X screen coordinate.
bottomBottom Y screen coordinate.
void SetColorCycleAll ( bool  value)
void VideoCclRegister ( )

register lua function

void VideoPaletteListAdd ( SDL_Surface *  surface)

Add a surface to the palette list, used for color cycling

Parameters
surfaceThe SDL surface to add to the list to cycle.
void VideoPaletteListRemove ( SDL_Surface *  surface)

Remove a surface to the palette list, used for color cycling

Parameters
surfaceThe SDL surface to add to the list to cycle.

Variable Documentation

std::vector<Clip> Clips
static

current clipping bottom right

int ClipX1

Profile, frames out of sync.

int ClipX2

current clipping top left

int ClipY1

current clipping top left

int ClipY2

current clipping bottom right

Uint32 ColorBlack

Skip this frames.

Editor callbacks.

Uint32 ColorBlue
Uint32 ColorDarkGray
Uint32 ColorDarkGreen
Uint32 ColorGray
Uint32 ColorGreen
Uint32 ColorLightBlue
Uint32 ColorLightGray
Uint32 ColorOrange
Uint32 ColorRed
Uint32 ColorWhite
Uint32 ColorYellow
char ForceUseOpenGL
unsigned long FrameCounter

Ticks of begin of the next frame.

Counts frames.

bool GLShaderPipelineSupported = true
double NextFrameTicks

fullscreen set from commandline

Next frame ticks.

int SkipFrames

0 disable interrupts

unsigned long SlowFrameCounter

Current frame number.

Counts quantity of slow frames.

bool UseOpenGL
CVideo Video

Do SDL hardware unlock.

char VideoForceFullScreen

Fullscreen or windowed set from commandline.

int VideoSyncSpeed = 100

Video synchronization speed. Synchronization time in percent. If =0, video framerate is not synchronized. 100 is exact CYCLES_PER_SECOND (30). Game will try to redraw screen within intervals of VideoSyncSpeed, not more, not less.

See also
CYCLES_PER_SECOND
bool ZoomNoResize

Use OpenGL.

(C) Copyright 1998-2012 by The Stratagus Project under the GNU General Public License.
All trademarks and copyrights on this page are owned by their respective owners.