Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Tutorial na SDL bočné scroller

Simple DirectMedia vrstva umožňuje prístup k zvuku , klávesnicu , myš , joystick , OpenGL 3 - D hardvéru a 2 - D videa framebuffer . Používa sa pre prehrávanie MPEG softvér , emulátorov a iných hier , programu SDL sa hodí pre celý rad vecí , ako je napríklad animácia bočné scroller hru . SDL pracuje natívne v C + + , ale tiež pracuje v C , Ada , C # , D , Eiffell , Erlang , Euphoria , Go , Guile , Haskell , Java , Lisp , Lua , ML , Objective C , Pascal , Perl , PHP , Pike , poddajný , Python , Ruby , Smalltalk a Tcl . Pokyny dovolená 1

Vytvorte dva nové súbory s názvom " CAnimation.h " a pridať nasledujúce " patrí " smernicu " CApp.h " " CAnimation.cpp /. " " # include " CAnimation.h ' "
2

Otvoriť " CAnimation.h " a zadajte nasledujúci kód : .

# ifndef _CANIMATION_H_ # define _CANIMATION_H_ # include < SDL . h > class CAnimation { private : int currentFrame , int FrameInc , private : int Frekvencia snímkov ; //milisekundy dlhé oldtime , public : int MaxFrames ; public : CAnimation ( ) ; void OnAnimate ( ) ; public : void SetFrameRate ( int Rate ) ; void SetCurrentFrame ( int Frame ) ; int GetCurrentFrame ( ) ; } ; # endif
3

Otvoriť " CAnimation.cpp " a zadajte nasledujúci kód s hodnotami pre počet snímok za sekundu : # include " CAnimation.h " CAnimation :: CAnimation ( ) { currentFrame = 0 ; MaxFrames = 0 ; FrameInc = 1 ; Frekvencia snímkov = 100 ; //milisekundy oldtime = 0 ;

} void CAnimation :: OnAnimate ( ) { if ( oldtime + Frekvencia snímok > SDL_GetTicks ( ) ) { return ; } oldtime = SDL_GetTicks ( ) ; currentFrame + = FrameInc ; if ( FrameInc > 0 ) { if ( currentFrame > = MaxFrames - 1 ) { FrameInc = - FrameInc ; } } else { if ( currentFrame < = 0 ) { FrameInc = - FrameInc ; } } } else { if ( currentFrame > = MaxFrames - 1 ) { currentFrame = 0 ; } } } void CAnimation :: SetFrameRate ( int Hodnotiť ) { Frekvencia snímkov = rýchlosť ; } void CAnimation :: SetCurrentFrame ( int Frame ) { if ( rám < 0

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené