Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Software >> animatie Software >> Content
Tutorial over SDL Side - scroller
Simple DirectMedia Layer geeft toegang tot audio- , toetsenbord , muis , joystick , OpenGL 3 - D hardware en 2 - D video framebuffers . Gebruikt met MPEG- afspeelsoftware , emulators en andere spellen , het SDL programma is handig voor een verscheidenheid van dingen , zoals het animeren van een side scroller spel . SDL werkt met native C + + , maar werkt ook in C , Ada , C # , D , Eiffell , Erlang , Euphoria , Go , Guile , Haskell , Java , Lisp , Lua , ML , Objective C , Pascal , Perl , PHP , Pike , Pliant , Python , Ruby , Smalltalk en Tcl . Instructies
1

Maak twee nieuwe bestanden met de naam " CAnimation.h " en Voeg de volgende " onder " richtlijn " CApp.h " " CAnimation.cpp /. " : " # include " CAnimation.h ' "

Open 2 " CAnimation.h " en voer de volgende code : .

# ifndef _CANIMATION_H_ # define _CANIMATION_H_ # include < SDL . h > class CAnimation { private : int currentFrame ; int FrameInc ; private : int framerate ; //milliseconden lang oldtime ; public: int MaxFrames ; publiek : CAnimation ( ) ; void OnAnimate ( ) ; publiek : void SetFrameRate ( int Rate ) ; leegte SetCurrentFrame ( int Frame ) ; int GetCurrentFrame ( ) ;} ; # endif
3

Open " CAnimation.cpp " en voer de volgende code met je waarden voor frame rate : # include " CAnimation.h " CAnimation :: CAnimation ( ) { currentFrame = 0 ; MaxFrames = 0 ; FrameInc = 1 ; framerate = 100 ; //Milliseconden oldtime = 0 ;

} void CAnimation :: OnAnimate ( ) { if ( oldtime + framerate > 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 Rate ) { framerate = Rate ; } void CAnimation :: SetCurrentFrame ( int Frame ) { if ( Frame < 0 | | Frame > = MaxFrames ) return ; currentFrame = Frame ; } int CAnimation :: GetCurrentFrame ( ) { return currentFrame ; }
4

Teken de " currentFrame " van de side scrolling animatie door het bepalen van het deel van de oppervlakte zal trekken je naar het scherm . Bijvoorbeeld, als de animatie is 64 bij 64 pixels , zul je inbreng iets dergelijks als dit :

CSurface :: handler OnDraw ( Surf_Display , Surf_Image , 0 , 0 , 0 , Animate.GetCurrentFrame ( ) op Twitter * 64 , 64 , 64 ) ;
5

weten hoeveel frames je animatie bevat , ook wel bekend als Gebruik deze code in de functie " OnAnimate " om uit te vinden de " MaxFrames " " MaxFrames . " :

if ( oldtime + framerate > SDL_GetTicks ( ) ) { return ; }
6

Controleer de " Old Time " tegen de looptijd van het SDL . Als de gewenste frame rate is " 1 , " de framerate zal evenaren 1000 milliseconden . Daarom, zodra " 0 + 1000 " is kleiner dan " SDL_GetTicks , " het betekent een seconde van het frame is verstreken . Reset de " ouderwetse " om de huidige tijd .
7

Zet uw animatie in actie door het creëren van een nieuwe " CAnimation " object in " CApp.h : "

CAnimation Animate
;
8

Stel de " MaxFrames " door toevoeging van de volgende code om " CApp_OnInit " en het aanpassen van de " MaxFrames " nummer naar uw voorkeur :

Animate.MaxFrames
= 8 ;
9

Loop de animatie met de volgende code toe te voegen aan " CApp_OnLoop : "

Animate.OnAnimate ( ) ;
10

Animate het door toevoeging van deze code om " CApp_OnRender : "

CSurface
:: handler OnDraw ( Surf_Display , Surf_Test , 290 , 220 , 0 , Animate.GetCurrentFrame ( ) * 64 , 64 , 64 ) ;
< br >

Previous: Next:
  animatie Software
·Hoe te Animated Cartoons maken…
·Tutorials voor Verlichting in …
·Hoe de acties Panel Dock in Fl…
·Hoe maak je een dinosaurus mak…
·Hoe kan ik Flash en AS3 Leer 
·Hoe maak je een Flash FLV Play…
·Hoe te gebruiken Apple Motion 
·Hoe te Preloaders In Flash Mov…
·Hoe maak Moving Logos in Flash…
  Related Articles
Hoe maak je een Holiday Nieuwsbrief op u…
Hoe je WordPress installeren op een webs…
Hoe te Math Schrijven op een tekstverwer…
Afdrukken op indexkaarten gebruiken Open…
Hoe kan ik HTML gebruiken op de PalmOne …
Hoe te Borders verdienen op visitekaartj…
Hoe te Etiketten op de computer afdrukke…
Hoe maak ik Address Labels op een Mac ? 
Hoe maak je visitekaartjes op Windows Vi…
  Software Articles
·Hoe maak je een McAfee Antivirus File Sy…
·Hoe te koppelen met SharePoint in Web Pa…
·Hoe te Hyperlink Knoppen maken in een PD…
·Hoe kan ik video bestanden naar MP3 -bes…
·Hoe het standaard Reactie in MS Excel Ch…
·Hoe te Paper Crafts ontwerp op een Mac 
·Hoe maak je een lijn invoegen in een Pow…
·Hoe kan ik Noise Verwijder de luidspreke…
·Spelen op je laptop : Wat kunt u kijken 
Copyright © Computer Kennis http://www.nldit.com