home *** CD-ROM | disk | FTP | other *** search
- ╚π≡εΓεΘ SDK
- ├δαΓα 32
-
- ╥σ∩σ≡ⁿ 1!█ πε≥εΦ√ Ω ß√±≥≡εΘ ±∞σφσ ±≥≡αφΦ÷. ╬φα ≥αΩα µσ, ΩαΩ Φ ≡αφσσ, ≥εδⁿΩε φα ²≥ε≥ ≡ατ Γ√ß≤Σσ≥σ ≤ΓσδΦ≈ΦΓα≥ⁿ φα
- σΣΦφΦ÷≤ FlipCount, Ωε≥ε≡√Θ ΣεßαΓΦδ Γ ⌠ε≡∞≤. ▌≥ε ∩εδσ ± ≥Φ∩ε∞ integer Σδ ⌡≡αφσφΦ εß∙σπε ≈Φ±δα ±∞σφφ√⌡ ±≥≡αφΦ÷,
- ε≥εß≡αµασ∞√⌡ φα ²Ω≡αφσ Γ ±σΩ≤φΣ≤. ┬ε≥ ∞εΣΦ⌠Φ÷Φ≡εΓαφφ√Θ ΩεΣ ß√±≥≡εΘ ±∞σφ√ ±≥≡αφΦ÷:
-
- // ±σΘ≈α± ∩≡εΦτΓεΣΦ∞ ±∞σφ≤
- repeat
-
- until MakeltSo( PrimarySurf α±σ. Flip ( NIL, DDFIilP_WAIT ) ) ;
- inc ( FlipCount ) ;
-
- ╚ ∩εΣ Ωεφσ÷ ∩σ≡σΣΓΦφσ∞ ±∩≡αΘ≥√. ▌≥ε ∩≡ε±≥εΘ ±δ≤≈αΘ Γ√τεΓα Φ⌡ ∞σ≥εΣα Move Φ ∩σ≡σΣα≈Φ ≈Φ±δα ε≥±≈σ≥εΓ Γ≡σ∞σφΦ ±ε
- Γ≡σ∞σφΦ ∩ε±δσΣφσπε ΣΓΦµσφΦ . ╩δα±± ±∩≡αΘ≥εΓ ε≥Γσ≈ασ≥ τα ∩±σ ∩εΣ≡εßφε±≥Φ, ∩εΣ±≈Φ≥√Γασ≥ φεΓ≤■ ∩ετΦ÷Φ■ ±∩≡αΘ≥α, ε±φε-
- Γαφφ≤■ φα ∩εΣ±≈σ≥α⌡ σπε ±Ωε≡ε±≥Φ, εßφεΓδ σ≥ ±Ωε≡ε±≥ⁿ ΓΓσΣσφΦσ∞ ≤±Ωε≡σφΦ Φ Γ√τ√Γασ≥ ±εß√≥Φσ OnCheckLimits, ≈≥εß√
- ∩ετΓεδΦ≥ⁿ ∩≡εΦτΓεΣΦ≥ⁿ ∩σ≡σΩ≡√≥Φ , σ±δΦ ²≥ε φσεß⌡εΣΦ∞ε. ╬ßφεΓΦ≥σ LastTickCount ∩σ≡σΣ Γ√⌡εΣε∞ Φτ ∩≡ε÷σΣ≤≡√. ╦Φ±≥Φφπ
- 32.40 ∩εΩατ√Γασ≥ Γα∞. ΩαΩΦ∞ εß≡ατε∞ ±δσΣ≤σ≥ ∩σ≡σ∞σ∙α≥ⁿ ±∩≡αΘ≥√.
-
- ╦Φ±≥Φφπ 32.40 ╧σ≡σΣΓΦµσφΦσ ±∩≡αΘ≥εΓ
-
- // ∩σ≡σ∞σ±≥Φ≥ⁿ ±∩≡αΘ≥√
- for i := 0 to Sprites .Count - I do
- TDDSprite( Sprites [ i ] ).Move( TicksSinceLast ) ;
-
- // ∩ε∞φΦ≥ⁿ ε TickCount
- LastTickCount := TickCount ;
- end ;
-
- ╬ßφεΓδσφΦσ ±≥α≥Φ±≥ΦΩΦ
-
- ┬√ φσ εßφεΓδ σ≥σ ±≥α≥Φ±≥ΦΩ≤ ± ΩαµΣεΘ ±∞σφεΘ ±≥≡αφΦ÷. ▌≥ε ß√δε ß√ φσ²⌠⌠σΩ≥ΦΓφε, Γ√⌡εΣφ√σ Σαφφ√σ "φσ≡ΓφΦ≈αδΦ ß√
- ΩαΩ ±≤∞α±°σΣ°Φσ", εßφεΓδ ±ⁿ ±ε ±Ωε≡ε±≥ⁿ■ 60 ≡ατ Γ ±σΩ≤φΣ≤ Φ ßεδⁿ°σ! ┬∞σ±≥ε ²≥επε ΣεßαΓⁿ≥σ TTimer ± Φφ≥σ≡Γαδε∞ Γ εΣφ≤
- ±σΩ≤φΣ≤ Φ εßφεΓΦ≥σ ∩εΓσ≡⌡φε±≥ⁿ Stats ∩≡Φ τα∩≤±Ωσ ≥αΘ∞σ≡α. ╤επδα±φε Γ√°σΦτδεµσφφε∞≤, Γ√ ΓσΣσ≥σ ≤≈σ≥ ≈Φ±δα ±∞σφφ√⌡
- ±≥≡αφΦ÷ Γ FlipCount. ┬√ Φ±∩εδⁿτ≤σ≥σ Σ≡≤πεσ ∩εδσ Σδ ≤≈σ≥α τφα≈σφΦ TickCount ± ∞ε∞σφ≥α ∩ε±δσΣφσπε εß≡α∙σφΦ Ω ≥αΘ∞σ≡≤,
- ≈≥ε ∩ετΓεδ σ≥ ∩εδ≤≈Φ≥ⁿ ≥ε≈φ√Θ τα∞σ≡ Φφ≥σ≡Γαδα ∞σµΣ≤ ±εß√≥Φ ∞Φ ≥αΘ∞σ≡α. ╙±≥αφεΓΦ≥σ εß≡αßε≥≈ΦΩ ±εß√≥Φ OnTimer Σδ
- Γ√τεΓα (JpdateStatsData, Ωε≥ε≡α ∩εΣ±≈Φ≥ασ≥ φεΓεσ ≈Φ±δε ΩαΣ≡εΓ Γ ±σΩ≤φΣ≤ Φ ±Ωε≡ε±≥ⁿ ∩σ≡σΣα≈Φ Φτεß≡αµσφΦ Γ ∞σπαßαΘ≥α⌡ Γ
- ±σΩ≤φΣ≤, ⌡≡αφ Φ⌡ ±εε≥Γσ≥±≥Γσφφε Γ ∩εδ ⌡ ⌠ε≡∞√ FPS (±εΩ≡α∙σφΦσ Σδ Frames Per Second, "ΩαΣ≡√ Γ ±σΩ≤φΣ≤") Φ MBperSec
- (±εΩ≡α∙σφΦσ Σδ MegaBytes per Second, "∞σπαßαΘ≥√ Γ ±σΩ≤φΣ≤").
-
- ╦Φ±≥Φφπ 32.41 ╠σ≥εΣ UpdateStatsData εßφεΓδ σ≥ ±≥α≥Φ±≥Φ≈σ±Ω≤■ Φφ⌠ε≡∞α÷Φ■.
-
-
-
- procedure TFormI. UpdateStatsData ;
- var TickCount : integer ;
- begin
-
- TickCount := GetTickCount ;
- if FlippingEnabled and ( LastTimerTick <> 0 ) and
-
- ( TickCount <> LastTimerTick ) then
- begin
-
- FPS ;= FlipCount * 1000 div ( TickCount - LastTimerTick ) ;
- MBperSec := ( ( 640 * 480 ) + Sprites. Count * ( 64 * 64 )+
-
- ( StatsRect. Right * StatsRect. Bottom ) ) * FPS / ( 1024 * 1024 ) ;
- end ;
-
- LastTimerTick := TickCount ;
- FlipCount := 0 ;
- end ;
-
- ╟α∞σ≥ⁿ≥σ, ≈≥ε ∩σ≡σΣ ΩαµΣεΘ ±∞σφεΘ ±≥≡αφΦ÷√ Γ√ ∩σ≡σφε±Φ≥σ ∩εδφε±≥ⁿ■ ⌠εφεΓ≤■ εßδα±≥ⁿ. ▌≥ε ±ε±≥αΓδ σ≥ 640⌡480 ∩ΦΩ-
- ±σδσΘ, ΦδΦ 307200 ßαΘ≥εΓ Φ ε∩≡σΣσδ σ≥ ∞ΦφΦ∞αδⁿφ≤■ ±Ωε≡ε±≥ⁿ ∩σ≡σφε±α. ┼±δΦ ß√ φα° ∞εφΦ≥ε≡ Φ∞σδ Γετ∞εµφε±≥ⁿ εßφεΓ-
- δ ≥ⁿ± ± ≈α±≥ε≥εΘ 75 π÷, ²≥ε ß√ ∩≡ΦΓσδε Ω ε±φεΓφεΘ ±Ωε≡ε±≥Φ ∩σ≡σφε±α 75*307200, ΦδΦ φσ±ΩεδⁿΩε ∞σφⁿ°σ, ≈σ∞ 22╠┬ Γ
- ±σΩ≤φΣ≤ Σαµσ ßστ ±∩≡αΘ≥εΓ! ╥αΩα ±Ωε≡ε±≥ⁿ ß√δΦ ß√ φσΓετ∞εµφεΘ ±ε ±≥α≡εΘ °ΦφεΘ AT, φε Σαµσ ± δεΩαδⁿφ√∞Φ °Φφα∞Φ εφ ß√
- Γ±α±√Γαδ Γ ±σß ±εδΦΣφ√Θ Ω≤±εΩ ∩≡ε∩≤±ΩφεΘ ±∩ε±εßφε±≥Φ °Φφ√. ═ε ∞√ Φ±∩εδⁿτ≤σ∞ DirectDraw, Φ ∩ΦΩ±σδΦ ∩≡ε±≥ε τα∩Φ±√-
- Γα■≥± Γ ∩α∞ ≥ⁿ φα ΓΦΣσεΩα≡≥σ ± ∩ε∞ε∙ⁿ■ Φ∞σ■∙σπε± φα ΓΦΣσεΩα≡≥σ α∩∩α≡α≥φεπε εßσ±∩σ≈σφΦ ∩σ≡σΣα≈Φ ßΦ≥εΓ√⌡ ßδεΩεΓ.
- ┬ε≥ ∩ε≈σ∞≤ ∞√ ∞εµσ∞ εßσ±∩σ≈Φ≥ⁿ ≥αΩεΘ Γ√±εΩΦΘ ≤≡εΓσφⁿ ±Ωε≡ε±≥Φ ∩σ≡σΣα≈Φ ßΦ≥εΓ√⌡ ßδεΩεΓ.
-
- ┬√ τα∞σ≥Φ≥σ ≤ΓσδΦ≈σφΦσ ±Ωε≡ε±≥Φ ∩σ≡σΣα≈Φ ßΦ≥εΓ√⌡ ßδεΩεΓ, σ±δΦ ΣεßαΓΦ≥σ ±∩≡αΘ≥√. ═α ±εΓ≡σ∞σφφ√⌡ π≡α⌠Φ≈σ±ΩΦ⌡ Ωα≡-
- ≥α⌡ ±Ωε≡ε±≥ⁿ Γ 40╠┬ Γ ±σΩ≤φΣ≤ Γ∩εδφσ Σε±≥ΦµΦ∞α. ╬φα ≡αΓφα 60 φα°Φ∞ ±∩≡αΘ≥α∞ ∩δ■± ⌠εφ; ΣεΓεδⁿφε Γ∩σ≈α≥δ ■∙ΦΘ ≡στ≤δⁿ-
- ≥α≥ ± ≤≈σ≥ε∞ ≥επε, ≈≥ε Γ√∩εδφσφΦσ ∩≡εΦ±⌡εΣΦ≥ ±ε ±Ωε≡ε±≥ⁿ■ 75 ΩαΣ≡εΓ Γ ±σΩ≤φΣ≤. ─αµσ ßεδσσ, ≈σ∞ Γ∩σ≈α≥δ ■∙σ - ∩≡Φ
- ΣεΓεδⁿφε ∩≡Φσ∞δσ∞εΘ ±Ωε≡ε±≥Φ Γ 25 ΩαΣ≡εΓ Γ ±σΩ≤φΣ≤ ∞√ ∞επδΦ ß√ ∩εδ≤≈Φ≥ⁿ ±Γ√°σ 340 ≡ατ∞σ≡ε∞ 64⌡64 ±∩≡αΘ≥εΓ - Γε≥ ²≥ε
- Σε±≥ΦµσφΦσ!
-
- ┬σ≡φσ∞± Ω ΩεΣ≤. ┬ ±εß√≥ΦΦ OnTimer ∞√ ∞εµσ∞ τα≥σ∞ Γ√τΓα≥ⁿ UpdateStatsSurface Σδ Γ√ΓεΣα ≥σΩ±≥α, ΩαΩ ∩εΩαταφε Γ
- δΦ±≥Φφπσ 32.42.
-
-