ස්ථාවර හෝ විචල්‍ය කාල පියවරක් භාවිතා කළ යුත්තේ කවදාද?


256

ක්‍රීඩා ලූපයක් ස්ථාවර හෝ විචල්‍ය කාල පියවර මත පදනම් විය යුතුද? යමෙක් සෑම විටම උසස්ද, නැතහොත් ක්‍රීඩාව අනුව නිවැරදි තේරීම වෙනස් වේද?

විචල්ය කාල පියවර

භෞතික විද්‍යාත්මක යාවත්කාලීනයන් "අවසන් යාවත්කාලීනයේ සිට ගත වූ කාලය" යන තර්කය සම්මත කර ඇති අතර එබැවින් ඒවා රාමු මත රඳා පවතී. මෙයින් අදහස් කරන්නේ ගණනය කිරීම් සිදු position += distancePerSecond * timeElapsedකිරීමයි.

වාසි : සුමට, කේත කිරීමට පහසුය
අවාසි : නිර්ණය කළ නොහැකි, ඉතා කුඩා හෝ විශාල පියවර වලින් අනාවැකි කිව නොහැක

deWiTTERS උදාහරණය:

while( game_is_running ) {
    prev_frame_tick = curr_frame_tick;
    curr_frame_tick = GetTickCount();
    update( curr_frame_tick - prev_frame_tick );
    render();
}

ස්ථාවර කාල පියවර

සෑම යාවත්කාලීනයක්ම නිශ්චිත කාල සීමාවක් සඳහා යැයි උපකල්පනය කරන බැවින් යාවත්කාල කිරීම් "ගත වූ කාලය" පවා පිළිගන්නේ නැත. ගණනය කිරීම් එසේ කළ හැකිය position += distancePerUpdate. උදාහරණයට විදැහුම්කරණය අතරතුර අන්තර් මැදිහත්වීමක් ඇතුළත් වේ.

කිහිප දෙනකුගේ හොඳ : අනාවැකි කිව හැකි අයනික (ජාලය සමමුහුර්ත කිරීමට පහසු?), පැහැදිලි ගණනය කේතය
අවාසි : මොනිටරය v-සමමුහුර්ත වෙත සමමුහුර්ත නොවේ (ඔබ සටහන් මිස කලබැගෑනියට රූප හේතු), උපරිම රාමු ෙව්ගය සීමා (ඔබ සටහන් නම්), ඒ රාමුව තුල වැඩ කිරීමට අපහසු විචල්ය කාල පියවර උපකල්පනය කරන්න ( පිග්ලට් හෝ ෆ්ලික්සෙල් වැනි )

deWiTTERS උදාහරණය:

while( game_is_running ) {
    while( GetTickCount() > next_game_tick ) {
        update();
        next_game_tick += SKIP_TICKS;
    }
    interpolation = float( GetTickCount() + SKIP_TICKS - next_game_tick )
                    / float( SKIP_TICKS );
    render( interpolation );
}

සමහර සම්පත්


6
ඔබේ ක්‍රීඩාව සඳහා විචල්‍ය කාලසටහන් සහ භෞතික විද්‍යාව සඳහා ස්ථාවර පියවර භාවිතා කරන්න
ඩැනියෙල් ලිට්ල්

7
විචල්ය කාල පියවර හරියටම කේත කිරීම පහසු යැයි මම නොකියමි, මන්ද ස්ථාවර කාල පියවර සමඟ ඔබ "සෑම ගණනය කිරීමක්ම සෑම තැනකම කාලානුරූපී විචල්‍යය සමඟ පටලවා ගත යුතු නැත". එය එතරම් අපහසු නොවන බව නොවේ, නමුත් මම ගැති ලෙස "කේත කිරීමට පහසු" එකතු නොකරමි.
pek

ඇත්ත, මම හිතන්නේ මම සඳහන් කළේ ඔබට විචල්‍ය කාල පියවර අන්තර්ග්‍රහණය කිරීමට අවශ්‍ය නොවන්නේ කෙසේද යන්නයි.
නික් සොනෙවෙල්ඩ්

@pek මම ඔබ සමඟ එකඟයි. විචල්‍ය කාල පියවරට වඩා සරල කේතගත ක්‍රීඩා ලූපයක් ඇත, නමුත් "එය වේගවත් කිරීම" සඳහා එම විචල්‍යතාවයන් සමඟ කටයුතු කරන ඔබේ ආයතනවල කේත කිරීමට ඔබට තවත් බොහෝ දේ ඇත. ස්ථාවර කාල පියවර කේත ක්‍රීඩා ලූපයට වඩා සංකීර්ණ වේ (මන්දයත් ඔබට කාල ආසන්න විචල්‍යතාවයන් සඳහා නිරවද්‍ය ලෙස වන්දි ගෙවිය යුතු අතර, එකතු කිරීමට ඇති අමතර ප්‍රමාදය හෝ එය නිවැරදිව තබා ගැනීම සඳහා කොපමණ යාවත්කාලීනයන් මඟ හැරිය යුතුද යන්න නැවත ගණනය කරන්න) නමුත් ආයතන සඳහා සරල කේතීකරණයක් ඇත. සෑම විටම එකම කාල පරතරය සමඟ කටයුතු කළ යුතුය. සමස්තයක් වශයෙන් ගත් කල, ප්‍රවේශයන් කිසිවක් අනෙකට වඩා සරල නැත.
ශිවන් ඩ්‍රැගන්

මෙම මෙවලමෙන් ඔබට මෙම දෘශ්‍යතාව පරීක්ෂා කළ හැකිය: s3.amazonaws.com/picobots/assets/unity/jerky-motion/… රාමු අනුපාතය වෙනස් වන විට ඒවා පෙනෙන්නේ කෙසේද යන්න පිළිබඳ අදහසක් ඔබට ලබා නොදුනද
Buddy

Answers:


134

ප්‍රශ්නයට අදාළ කරුණු දෙකක් තිබේ.

  • භෞතික විද්‍යාවේ පියවර අනුපාතය රාමු අනුපාතයට සම්බන්ධ කළ යුතුද?
  • භෞතික විද්‍යාව නියත ඩෙල්ටා සමඟ පියවර ගත යුතුද?

ග්ලෙන් ෆීල්ඩර්ගේ ඔබේ කාල පියවර නිවැරදි කරන්න “භෞතික විද්‍යාව නිදහස් කරන්න” යනුවෙන් ඔහු පවසයි. ඒ කියන්නේ ඔබේ භෞතික විද්‍යාත්මක යාවත්කාලීන අනුපාතය ඔබේ රාමු අනුපාතයට සම්බන්ධ නොවිය යුතුය.

නිදසුනක් ලෙස, දර්ශන රාමු 50fps සහ අනුකරණය 100fps වේගයෙන් ධාවනය වන පරිදි නිර්මාණය කර ඇත්නම්, භෞතික විද්‍යාව සමමුහුර්තව තබා ගැනීම සඳහා සෑම ප්‍රදර්ශන යාවත්කාලීනයකටම අපි භෞතික විද්‍යාත්මක පියවර දෙකක් ගත යුතුය.

බොක්ස් 2 ඩී සඳහා එරින් කැටෝගේ නිර්දේශයන්හි ඔහු මෙය ද යෝජනා කරයි.

එබැවින් කාල රාමුව ඔබේ රාමු අනුපාතයට සම්බන්ධ නොකරන්න (ඔබ ඇත්ත වශයෙන්ම එසේ නොකළහොත්).

භෞතික විද්‍යාවේ පියවර අනුපාතය ඔබේ රාමු අනුපාතයට සම්බන්ධ කළ යුතුද? නොමැත.


ස්ථාවර පියවර එදිරිව විචල්‍ය පියවර පිළිබඳ එරින්ගේ සිතුවිලි:

Box2D විසින් අනුකලනය ලෙස හැඳින්වෙන පරිගණකමය ඇල්ගොරිතමයක් භාවිතා කරයි. අනුකලනයන් භෞතික කාල සමීකරණ විවික්ත කාලවලදී අනුකරණය කරයි. ... බොහෝ දේ වෙනස් කිරීමට ගතවන පියවරට අපි කැමති නැත. විචල්ය කාල පියවරක් විචල්ය ප්රති results ල ලබා දෙන අතර එය නිදොස්කරණය කිරීම අපහසු කරයි.

ස්ථාවර එදිරිව විචල්‍ය පියවර පිළිබඳ ග්ලෙන්ගේ සිතුවිලි:

ඔබේ වේලාව නිවැරදි කරන්න හෝ පුපුරා යන්න

... ඔබට මෝටර් රථ අනුකරණයක දී කම්පන අවශෝෂක සඳහා සැබවින්ම තද වසන්ත අවහිරතා මාලාවක් තිබේ නම්, ඩීටී හි කුඩා වෙනස්කම් ඇත්ත වශයෙන්ම අනුකරණය පුපුරා යා හැකිය. ...

භෞතික විද්‍යාව නියත ඩෙල්ටා සමඟ පියවර ගත යුතුද? ඔව්.


භෞතික විද්‍යාව නියත ඩෙල්ටා සමඟ පියවර තැබිය යුතු ආකාරය සහ ඔබේ භෞතික විද්‍යාත්මක යාවත්කාලීන අනුපාතය තවමත් රාමු අනුපාතයට සම්බන්ධ නොකිරීම යනු කාල සමුච්චයක් භාවිතා කිරීමයි. මගේ ක්‍රීඩාවේදී මම එය තවත් පියවරක් ඉදිරියට තබමි. එන වේලාවට මම සුමට ශ්‍රිතයක් යොදමි. ඒ ආකාරයෙන් විශාල එෆ්පීඑස් කරල් භෞතික විද්‍යාව ඕනෑවට වඩා පනින්නට හේතු නොවේ, ඒ වෙනුවට ඒවා රාමුවක් හෝ දෙකක් සඳහා වඩාත් ඉක්මණින් අනුකරණය කරනු ලැබේ.

ස්ථාවර අනුපාතයකින් භෞතික විද්‍යාව දර්ශනය සමඟ සමමුහුර්ත නොවන බව ඔබ සඳහන් කරයි. ඉලක්කගත භෞතික විද්‍යාත්මක අනුපාතය ඉලක්ක රාමු අනුපාතයට ආසන්න නම් මෙය සත්‍ය වේ. රාමු අනුපාතය භෞතික විද්‍යාත්මක අනුපාතයට වඩා විශාල වීම නරක ය. පොදුවේ ගත් කල, ඔබට එය දැරිය හැකි නම්, ඔබේ ඉලක්කගත FPS මෙන් දෙගුණයක් භෞතික විද්‍යාත්මක යාවත්කාලීන අනුපාතයක් ඉලක්ක කිරීම වඩා හොඳය.

ඔබට විශාල භෞතික විද්‍යාත්මක යාවත්කාලීන අනුපාතයක් දැරිය නොහැකි නම්, භෞතික විද්‍යාව සැබවින්ම චලනය වනවාට වඩා ඇද ගන්නා ලද ග්‍රැෆික්ස් වඩාත් සුමට ලෙස චලනය වන පරිදි රාමු අතර ග්‍රැෆික්ස් ස්ථාන අන්තර්ග්‍රහණය කිරීම සලකා බලන්න.


1
මගේ යන්ත්‍රය යාවත්කාලීන කිරීමට පෙර සහ පසුව මම ෆ්ලෝ ජෙලි සෙල්ලම් කර ඇති අතර එය මෝඩය: භෞතික විද්‍යාව සැබවින්ම ක්‍රීඩා ලූපයෙන් ආයාචනා කර ඇති නිසා (සහ රාමු අනුපාතයට බැඳී ඇත) ටයිමරයක්. මගේ පැරණි යන්ත්‍රය ඉතා නරක බැවින් එය මන්දගාමී හා වේගවත් චලිත අතර නිරන්තරයෙන් මාරු වන අතර එය ක්‍රීඩාවට විශාල බලපෑමක් ඇති කළේය. දැන් එය ඉතා වේගවත් චලනයකි. කෙසේ වෙතත් එම ක්‍රීඩාව මෙම ගැටළුව කෙතරම් ගැටලු සහගත විය හැකිද යන්නට කදිම නිදසුනකි (තවමත් හුරුබුහුටි ක්‍රීඩාවක් වුවද).
මාස්ටර්මාස්ටික්

55

මම හිතන්නේ සැබවින්ම විකල්ප 3 ක් ඇත, නමුත් ඔබ ඒවා ලැයිස්තුගත කරන්නේ 2 ක් පමණි:

විකල්ප 1

කිසිවක් නොකරන්න. නිශ්චිත කාල පරාසයකින් යාවත්කාලීන කිරීමට සහ ඉදිරිපත් කිරීමට උත්සාහ කිරීම, උදා: තත්පරයට 60 වතාවක්. එය පිටුපස වැටුණොත්, එයට ඉඩ දී කරදර නොවන්න. CPU හට ඔබේ ක්‍රීඩාව දිගටම පවත්වා ගත නොහැකි නම්, ක්‍රීඩා මන්දගාමී වේ. මෙම විකල්පය තත්‍ය කාලීන බහු-පරිශීලක ක්‍රීඩා සඳහා කිසිසේත් ක්‍රියා නොකරනු ඇත, නමුත් තනි ක්‍රීඩක ක්‍රීඩා සඳහා එය කදිම වන අතර බොහෝ ක්‍රීඩා වල සාර්ථකව භාවිතා කර ඇත.

විකල්ප 2

වස්තූන්ගේ චලනය වෙනස් කිරීමට එක් එක් යාවත්කාලීන අතර ඩෙල්ටා කාලය භාවිතා කරන්න. න්‍යාය අනුව විශිෂ්ටයි, විශේෂයෙන් ඔබේ ක්‍රීඩාවේ කිසිවක් වේගවත් හෝ අඩු වුවහොත් නියත වේගයකින් ගමන් කරයි. ප්රායෝගිකව, බොහෝ සංවර්ධකයින් මෙය නරක ලෙස ක්රියාත්මක කරන අතර, එය නොගැලපෙන ision ට්ටන අනාවරණය හා භෞතික විද්යාවට හේතු විය හැක. සමහර සංවර්ධකයින් මෙම ක්‍රමය වඩා පහසු යැයි සිතන බව පෙනේ. ඔබට මෙම විකල්පය භාවිතා කිරීමට අවශ්‍ය නම්, ඔබේ ක්‍රීඩාව සැලකිය යුතු ලෙස ඉහළ නංවාගෙන විශාල තුවක්කු ගණිත හා ඇල්ගොරිතම ගෙන ඒමට අවශ්‍ය වේ, උදාහරණයක් ලෙස වර්ලට් භෞතික විද්‍යා අනුකලනය භාවිතා කිරීම (බොහෝ දෙනා භාවිතා කරන සම්මත අයිලර්ට වඩා) සහ ision ට්ටන හඳුනාගැනීම සඳහා කිරණ භාවිතා කිරීම. සරල පයිතගරස් දුර පරීක්ෂාවට වඩා. මම මීට ටික වේලාවකට පෙර ස්ටැක් පිටාර ගැලීම පිළිබඳ ප්‍රශ්නයක් ඇසූ අතර එයට හොඳ පිළිතුරු කිහිපයක් ලැබුණි:

/programming/153507/calulate-the-position-of-an-accelerating-body-after-a-certain-time

විකල්ප 3

ගාෆර්ගේ "ඔබේ කාල පියවර නිවැරදි කරන්න" ප්‍රවේශය භාවිතා කරන්න. 1 වන විකල්පය මෙන් ක්‍රීඩාව ස්ථාවර පියවරයන්ගෙන් යාවත්කාලීන කරන්න, නමුත් විදැහුම් කරන ලද රාමුවකට කිහිප වතාවක් එසේ කරන්න - කොපමණ කාලයක් ගතවී ඇත්ද යන්න මත පදනම්ව - එමඟින් ක්‍රීඩාවේ තර්කනය තථ්‍ය කාලය සමඟ පවත්වා ගෙන යන අතර විවික්ත පියවරවල රැඳී සිටියි. මේ ආකාරයෙන්, අයිලර් අනුකලනයන් වැනි සරල ක්‍රීඩා තර්කනය ක්‍රියාත්මක කිරීම සහ සරල ision ට්ටන අනාවරණය කිරීම තවමත් ක්‍රියාත්මක වේ. ඔබට ඩෙල්ටා වේලාව මත පදනම්ව චිත්‍රක සජීවිකරණ අන්තර්ග්‍රහණය කිරීමේ විකල්පයක් ඇත, නමුත් මෙය දෘශ්‍ය ප්‍රයෝග සඳහා පමණක් වන අතර ඔබේ මූලික ක්‍රීඩා තර්කනයට බලපාන කිසිවක් නැත. ඔබගේ යාවත්කාලීනයන් ඉතා තීව්‍ර නම් ඔබට කරදරයකට පත්විය හැකිය - යාවත්කාලීනයන් පසුබසින්නේ නම්, ඒවා පවත්වා ගෙන යාමට ඔබට වැඩි වැඩියෙන් අවශ්‍ය වනු ඇත, ඔබේ ක්‍රීඩාව ඊටත් වඩා අඩු ප්‍රතිචාරයක් දැක්විය හැකිය.

පුද්ගලිකව, මම විකල්ප 1 ට කැමතියි මට එයින් ගැලවී යා හැකි විට සහ 3 වන විකල්පය මට තථ්‍ය කාලයට සමමුහුර්ත කිරීමට අවශ්‍ය වූ විට. ඔබ කරන්නේ කුමක්දැයි ඔබ දන්නා විට විකල්ප 2 හොඳ විකල්පයක් විය හැකි බව මම ගරු කරමි, නමුත් එයින් ඇති සීමාවන්ගෙන් stay ත්ව සිටීමට තරම් මගේ සීමාවන් මම හොඳින් දනිමි.


2 වන විකල්පය සම්බන්ධයෙන්: ඔබේ පයිතගරස් යෙදුමේ ඔබ ඉතා තිරිසන් බලවේගයක් හැර, පයිතගරස් දුර පරීක්ෂාවට වඩා වේගයෙන් රයිකාස්ට් එකක් විය හැකි බව මට විශ්වාස නැත, නමුත් ඔබ බ්‍රෝඩ්ෆේස් එකක් එකතු නොකළහොත් රේකාස්ට් එකක් ද ඉතා මිල අධික වනු ඇත.
කජ්

4
ඔබ වර්ලට් අසමාන කාල පියවරයන් භාවිතා කරන්නේ නම්, ඔබ ස්නානය කරන ජලය සමඟ දරුවා ඉවතට විසි කරයි. වර්ලට් එය තරම් ස්ථායී වීමට හේතුව, පසු කාල පියවරේදී දෝෂ අවලංගු වීමයි. කාල පියවර සමාන නොවේ නම්, මෙය සිදු නොවන අතර ඔබ නැවත භෞතික විද්‍යා භූමිය පුපුරා යමින් සිටී.
drxzcl

විකල්ප 3 - XNA ප්‍රවේශය පිළිබඳ ජොයෙල් මාටිනෙස්ගේ විස්තරය මෙන් පෙනේ.
topright

1
මෙය ඇත්තෙන්ම හොඳ පිළිතුරකි. විකල්ප තුනටම ඒවායේ ස්ථානයක් ඇති අතර ඒවා සුදුසු විට තේරුම් ගැනීම වැදගත්ය.
ඇඩම් නයිලර්

මම වැඩ කර ඇති සියලුම MMO (EQ, Landmark / EQNext [cry], PS2 [කෙටියෙන්] සහ ESO), අපි සෑම විටම විචල්‍ය රාමු කාලය භාවිතා කර ඇත්තෙමු. මම කිසි විටෙකත් එම නිශ්චිත තීරණයට පක්ෂ නොවෙමි, කාරණයෙන් පසුව පෙනී සිටිමින් අනෙක් අය තීරණය කර ඇති දේ භාවිතා කර ඇත්තෙමි.
මාර්ක් ස්ටෝර්

25

XNA රාමුව ස්ථාවර කාල පියවර ක්‍රියාත්මක කරන ආකාරයට මම ඇත්තෙන්ම කැමතියි . දී ඇති දිනුම් ඇදීම ටිකක් වැඩි කාලයක් ගත වුවහොත්, එය "අල්ලා ගන්නා" තෙක් එය යාවත්කාලීන කිරීම නැවත නැවතත් කරනු ඇත. ෂෝන් හාර්ග්‍රීව්ස් එය මෙහි විස්තර කරයි:
http://blogs.msdn.com/b/shawnhar/archive/2007/11/23/game-timing-in-xna-game-studio-2-0.aspx

2.0 දී, දිනුම් ඇදීමේ හැසිරීම වෙනස් වී ඇත:

  • වත්මන් වේලාව හසු කර ගැනීම සඳහා අවශ්‍ය වාර ගණනක් යාවත්කාලීන කරන්න
  • වරක් Draw අමතන්න
  • ඊළඟ යාවත්කාලීනය සඳහා කාලය පැමිණෙන තෙක් රැඳී සිටින්න

මේ සඳහා මගේ මතයේ ඇති ලොකුම ගැති එක නම් ඔබ සඳහන් කළ එකකි, එය ඔබගේ ක්‍රීඩා කේත ගණනය කිරීම් සියල්ලම සරල කරයි, මන්ද එම ස්ථානයේ විචල්‍යය සෑම තැනකම ඇතුළත් කිරීමට ඔබට අවශ්‍ය නැති බැවිනි.

සටහන: xna විචල්‍ය කාලසටහනට සහය දක්වයි, එය සැකසුමකි.


ක්‍රීඩා ලූපයක් කිරීමේ වඩාත් පොදු ක්‍රමය මෙයයි. කෙසේ වෙතත්, ජංගම උපාංග සමඟ වැඩ කිරීමේදී බැටරි ආයු කාලය සඳහා එය විශිෂ්ට නොවේ.
නයිට් 666

1
@ නයිට් 666; ඔබ යෝජනා කරන්නේ දිගු කාලසටහනක් භාවිතා කිරීමෙන් අඩු කරන ලද පුනරාවර්තන ප්‍රමාණය බැටරි ආයු කාලය ඉතිරි කරන බවයි?
falstro

එය තවමත් විචල්‍ය යාවත්කාලීනයකි - කිසියම් ස්ථාවර අගයකට වඩා රාමුව විදැහුම් කිරීමට කොපමණ කාලයක් ගතවේද යන්න මත පදනම්ව යාවත්කාලීන ඩෙල්ටා වෙනස් වේ (එනම් තත්පරයෙන් 1/30).
ඩෙනිස් මන්සි

1
Enn ඩෙනිස්: මා තේරුම් ගත් පරිදි, යාවත්කාලීන ශ්‍රිතය ස්ථාවර ඩෙල්ටාවකින් හැඳින්වේ ...
RCIX

3
@ knight666 අහ් - ඔබ එය ගණනය කරන්නේ කෙසේද? ඔබ vsync සක්‍රීය කර ඇත්නම් සහ පැකිලෙන්නේ නැතිනම් - මෙම ක්‍රම සමාන විය යුතුය! ඔබ vsync අක්‍රිය කර ඇත්නම්, ඔබට අවශ්‍ය ප්‍රමාණයට වඩා බොහෝ විට යාවත්කාලීන වන අතර, එය නිෂ්ක්‍රීය වීමට ඉඩ නොදී CPU (සහ බැටරි) නාස්ති කරයි!
ඇන්ඩ rew රසල්

12

තවත් විකල්පයක් ඇත - විසන්ධි කරන ක්‍රීඩා යාවත්කාලීන කිරීම සහ භෞතික විද්‍යාව යාවත්කාලීන කිරීම. භෞතික විද්‍යා එන්ජිම ක්‍රීඩා කාලසටහනට ගැලපෙන පරිදි සකස් කිරීමට උත්සාහ කිරීම ඔබ ඔබේ කාලසටහන නිවැරදි කළහොත් ගැටළුවක් ඇති කරයි (පාලනයෙන් ඉවතට යාමේ ගැටළුව නිසා ඒකාබද්ධතාවයට වැඩි කාල පරාසයන් අවශ්‍ය වන බැවින් වැඩි කාල පරාසයන් අවශ්‍ය වේ), නැතහොත් එය විචල්‍ය කර භෞතික විද්‍යාව ලබා ගන්න.

මා බොහෝ දේ දකින විසඳුම නම් භෞතික විද්‍යාව ස්ථාවර කාල පරාසයක් තුළ, වෙනත් ත්‍රෙඩ් එකක (වෙනත් හරයක් මත) ධාවනය කිරීමයි. එය අල්ලා ගත හැකි නවතම වලංගු රාමු දෙක ලබා දී ඇති ක්‍රීඩාවේ අන්තර් මැදිහත්වීම් හෝ අමතර කොටස්. අන්තර් මැදිහත්වීම යම් පසුබෑමක් එක් කරයි, නිස්සාරණය යම් අවිනිශ්චිතතාවයක් එක් කරයි, නමුත් ඔබේ භෞතික විද්‍යාව ස්ථායී වන අතර ඔබේ කාල සීමාව පාලනයෙන් බැහැර නොවේ.

මෙය ක්‍රියාත්මක කිරීම සුළුපටු නොවේ, නමුත් එය අනාගත සාක්‍ෂි බව ඔප්පු කළ හැකිය.


8

පුද්ගලිකව, මම විචල්‍ය කාල-පියවරෙහි විචල්‍යතාවයක් භාවිතා කරමි (එය මා සිතන ස්ථාවර හා විචල්‍ය දෙමුහුන් වර්ගයකි). මම මෙම කාල ක්‍රමය ක්‍රම කිහිපයකින් පරීක්‍ෂා කළ අතර බොහෝ ව්‍යාපෘති සඳහා එය භාවිතා කරන බව මට පෙනේ. සෑම දෙයක් සඳහාම මම එය නිර්දේශ කරනවාද? බොහෝ විට නැත.

මගේ ක්‍රීඩා ලූප මඟින් යාවත්කාලීන කළ යුතු රාමු ප්‍රමාණය ගණනය කරයි (අපි මෙය F ලෙස හඳුන්වමු), ඉන්පසු F විවික්ත තාර්කික යාවත්කාලීන කිරීම් සිදු කරන්න. සෑම තාර්කික යාවත්කාලීනයක්ම නියත කාල ඒකකයක් උපකල්පනය කරයි (එය බොහෝ විට මගේ ක්‍රීඩා වල තත්පරයෙන් 1/100 ක් වේ). සෑම එෆ් විවික්ත තාර්කික යාවත්කාලීනයන් සිදු කරන තුරු සෑම යාවත්කාලීන කිරීමක්ම අනුපිළිවෙලින් සිදු කෙරේ.

තාර්කික පියවරයන්හි විවික්ත යාවත්කාලීන කිරීම් ඇයි? හොඳයි, ඔබ අඛණ්ඩ පියවර උත්සාහ කර භාවිතා කරන්නේ නම්, හදිසියේම ඔබට භෞතික විද්‍යාවේ දෝෂ ඇතිවේ. මන්ද ගණනය කළ වේගය සහ ගමන් කිරීමට ඇති දුර ප්‍රමාණය එෆ් හි විශාල අගයකින් ගුණ කිරීමෙනි.

මෙය දුර්වල ලෙස ක්‍රියාත්මක කිරීමෙන් සිදුවන්නේ F = වත්මන් කාලය - අවසාන රාමු කාල යාවත්කාලීන කිරීම් ය. නමුත් ගණනය කිරීම් බොහෝ පසුගාමී වුවහොත් (සමහර විට CPU වේලාව සොරකම් කරන වෙනත් ක්‍රියාවලියක් වැනි ඔබගේ පාලනයෙන් ඔබ්බට ගිය තත්වයන් නිසා), ඔබ ඉක්මනින් භයානක මඟ හැරීම දකිනු ඇත. ඉක්මනින්, ඔබ නඩත්තු කිරීමට උත්සාහ කළ ස්ථාවර FPS SPF බවට පත්වේ.

මගේ ක්‍රීඩාවේදී, දිනුම් දෙකක් අතර විය හැකි තර්කානුකූලව අල්ලා ගැනීමේ ප්‍රමාණය සීමා කිරීමට මම “සුමට” (වර්ග කිරීම) මන්දගාමී වීමට ඉඩ දෙමි. මම මෙය කලම්ප කිරීමෙන් සිදු කරමි: සාමාන්‍යයෙන් MAX_FRAME_DELTA = 2/100 * s හෝ 3/100 * s ඇති F = min (F, MAX_FRAME_DELTA). එබැවින් ක්‍රීඩා තර්කනයට වඩා බොහෝ දුරින් සිටින විට රාමු මඟ හැරීම වෙනුවට, ඕනෑම දැවැන්ත රාමු අලාභයක් ඉවතලන්න (එමඟින් දේවල් මන්දගාමී වේ), රාමු කිහිපයක් නැවත ලබා ගන්න, අඳින්න, නැවත උත්සාහ කරන්න.

මෙය කිරීමෙන්, ක්‍රීඩකයාගේ පාලනය තිරයේ සැබවින්ම පෙන්වන දේ සමඟ සමීපව සමපාත වන බවට මම සහතික වෙමි.

අවසාන නිෂ්පාදන ව්‍යාජ කේතය මේ වගේ දෙයක් (ඩෙල්ටා යනු කලින් සඳහන් කළ එෆ්):

// Assume timers have 1/100 s resolution
const MAX_FRAME_DELTA = 2
// Calculate frame gap.
var delta = current time - last frame time
// Clamp.
delta = min(delta, MAX_FRAME_RATE)
// Update in discrete steps
for(i = 0; i < delta; i++)
{
    update single step()
}
// Caught up again, draw.
render()

මේ ආකාරයේ යාවත්කාලීනයන් සෑම දෙයකටම සුදුසු නොවේ, නමුත් ආකේඩ් විලාසිතාවේ ක්‍රීඩා සඳහා, ක්‍රීඩාව මන්දගාමී වන බව මට පෙනේ, මන්ද මිස් රාමු වලට වඩා බොහෝ දේ සිදුවෙමින් පවතින අතර ක්‍රීඩකයන්ගේ පාලනය නැති වී යයි. රාමු නැතිවීම නිසා ඇති කළ නොහැකි ප්‍රති g ල ඇති විය හැකි වෙනත් විචල්‍ය-කාලීන පියවර ප්‍රවේශයන්ට ද මම මෙය කැමැත්තෙමි.


එම අවසාන කරුණ සමඟ තදින්ම එකඟ වන්න; එච්චරමයි දී සියලු වන framerate පහළ වැටෙන විට ක්රීඩා, ආදාන කළ යුත්තේ 'මන්දගාමී'. සමහර ක්‍රීඩා වලදී මෙය කළ නොහැකි වුවද (එනම් බහු ක්‍රීඩකයා), හැකි නම් එය වඩා හොඳ වනු ඇත. : P එය දිගු රාමුවක් තිබීම හා ක්‍රීඩා ලෝකය 'නිවැරදි' තත්වයට 'පැනීම' වඩා හොඳ යැයි හැඟේ.
ඉප්ස්කිගල්

ආකේඩ් යන්ත්‍රයක් වැනි ස්ථාවර දෘඩාංග නොමැතිව, දෘඩාංග පවත්වා ගෙන යාමට නොහැකි වූ විට ආකේඩ් ක්‍රීඩා තිබීම අනුකරණය මන්දගාමී වේ.

ජෝ වැදගත් වන්නේ අපි "වංචා කිරීම" ගැන සැලකිලිමත් වන්නේ නම් පමණි. බොහෝ නවීන ක්‍රීඩා ඇත්ත වශයෙන්ම ක්‍රීඩකයන් අතර ඇති තරඟය ගැන නොවේ, විනෝදජනක අත්දැකීමක් ලබා දෙයි.
ඉයන්

1
ඉයන්, අපි මෙහි විශේෂයෙන් කතා කරන්නේ සාම්ප්‍රදායිකව ඉහළ ලකුණු-ලැයිස්තු / ප්‍රමුඛ පුවරුව මත පදනම් වූ ආකේඩ් විලාසිතාවේ ක්‍රීඩා ගැන ය. මම ෂම්අප් ටොන් ගණනක් වාදනය කරන අතර, යමෙකු ලීඩර්බෝඩ් වෙත කෘතිම මන්දගාමිත්වයක් සහිතව ලකුණු පළ කරන බව මට පෙනී ගියේ නම්, ඔවුන්ගේ ලකුණු අතුගා දැමීමට මට අවශ්‍යය.

ඔබේ පිළිතුර හීන කිරීමට උත්සාහ නොකෙරේ, නමුත් මම මෙය අර්ථ නිරූපණය කරන්නේ විදැහුම්කරණය භෞතික විද්‍යාත්මක යාවත්කාලීන අනුපාතයට කෙලින්ම සම්බන්ධ නොවන අතර භෞතික විද්‍යාව හසුකර ගැනීම විදැහුම්කරණයට වඩා ප්‍රමුඛතාවය ගනී. එය අනිවාර්යයෙන්ම හොඳ ගුණාංග ඇත.
ආරොන්එල්එස්

6

මෙම විසඳුම සෑම දෙයකටම අදාළ නොවේ, නමුත් ලෝකයේ එක් එක් වස්තුව සඳහා විචල්ය කාලරාමුවෙහි තවත් මට්ටමක් ඇත - විචල්ය කාලරාමුව.

මෙය සංකීර්ණ බවක් පෙනේ, එය එසේ විය හැකිය, නමුත් එය ඔබගේ ක්‍රීඩාව විවික්ත සිදුවීම් අනුකරණයක් ලෙස නිරූපණය කිරීමක් ලෙස සිතන්න. සෑම ක්‍රීඩක චලනයක්ම චලනය ආරම්භ වන විට ආරම්භ වන අතර චලිතය අවසන් වන විට අවසන් වන සිදුවීමක් ලෙස නිරූපණය කළ හැකිය. සිදුවීම බෙදීමට අවශ්‍ය කිසියම් අන්තර්ක්‍රියාකාරිත්වයක් තිබේ නම් (නිදසුනක් ලෙස ision ට්ටනයක්) සිදුවීම අවලංගු කර තවත් සිදුවීමක් සිදුවීම් පෝලිමට තල්ලු කරනු ලැබේ (මෙය බොහෝ විට සිදුවීම් අවසන් වේලාව අනුව වර්ග කළ ප්‍රමුඛතා පෝලිමකි).

සිදුවීම් පෝලිමේ සිට විදැහුම්කරණය සම්පූර්ණයෙන්ම වෙන් කර ඇත. දර්ශන එන්ජිම අවශ්‍ය ආරම්භක / අවසන් වේලාවන් අතර ලකුණු අන්තර්ග්‍රහණය කරන අතර අවශ්‍යතාවය පරිදි මෙම ඇස්තමේන්තුවේ නිවැරදි හෝ අලස විය හැකිය.

මෙම ආකෘතියේ සංකීර්ණ ක්‍රියාත්මක කිරීමක් බැලීමට, අභ්‍යවකාශ සිමියුලේටර් EXOFLIGHT බලන්න . එය බොහෝ පියාසැරි සිමියුලේටර් වලින් වෙනස් ක්‍රියාත්මක කිරීමේ ආකෘතියක් භාවිතා කරයි - සාම්ප්‍රදායික ස්ථාවර කාල-පෙති ආකෘතියට වඩා සිදුවීම් පදනම් කරගත් ආකෘතියකි. ව්‍යාජ කේත වලින් මෙම වර්ගයේ සමාකරණයේ මූලික ප්‍රධාන ලූපය මේ ආකාරයෙන් පෙනේ:

while (game_is_running)
{
   world.draw_to_screen(); 
   world.get_player_input(); 
   world.consume_events_until(current_time + time_step); 
   current_time += time_step; 
}

අභ්‍යවකාශ සිමියුලේටරයක එකක් භාවිතා කිරීමට ප්‍රධාන හේතුව වන්නේ නිරවද්‍යතාව නැති නොවී අත්තනෝමතික කාල ත්වරණයක් සැපයීමේ අවශ්‍යතාවයයි. EXOFLIGHT හි සමහර මෙහෙයුම් සම්පූර්ණ කිරීමට ක්‍රීඩා-වසර ගතවනු ඇති අතර 32x ත්වරණ විකල්පයක් පවා ප්‍රමාණවත් නොවේ. භාවිතා කළ හැකි සිම් එකක් සඳහා ඔබට 1,000,000x ත්වරණයක් අවශ්‍ය වනු ඇත, එය කාල-පෙති ආකෘතියකින් කිරීමට අපහසුය. සිදුවීම් මත පදනම් වූ ආකෘතිය සමඟ, අපට 1 s = 7 ms සිට 1 s = 1 yr දක්වා අත්තනෝමතික කාල අනුපාත ලැබේ.

කාල අනුපාතය වෙනස් කිරීම සිම් හි හැසිරීම වෙනස් නොකරයි, එය තීරණාත්මක ලක්ෂණයකි. අපේක්ෂිත අනුපාතයට සිමියුලේටරය ක්‍රියාත්මක කිරීමට ප්‍රමාණවත් තරම් CPU බලයක් නොමැති නම්, සිදුවීම් ගොඩගැසී ඇති අතර සිදුවීම් පෝලිම් ඉවත් කරන තුරු අපි UI නැවුම්බව සීමා කරමු. ඒ හා සමානව, අපට අවශ්‍ය තරම් වේගයෙන් සිම් එක ඉදිරියට ගෙන යා හැකි අතර අප CPU නාස්ති නොකරන බව හෝ නිරවද්‍යතාව පරිත්‍යාග නොකරන බවට වග බලා ගන්න.

සාරාංශගත කිරීම: අපට එක් වාහනයක් දිගු, විනෝදකාමී කක්ෂයක (ධාවන පථය ඒකාබද්ධ කිරීම භාවිතා කරමින්) සහ තවත් වාහනයක් එකවරම බිම දිගේ වේගයෙන් ගමන් කළ හැකිය - අපට ගෝලීය කාලසටහනක් නොමැති බැවින් වාහන දෙකම සුදුසු නිරවද්‍යතාවයකින් අනුකරණය කරනු ඇත.

අවාසි: සංකීර්ණත්වය සහ මෙම ආකෘතියට සහාය වන භෞතික විද්‍යා එන්ජින් නොමැති වීම :)


5

පාවෙන ලක්ෂ්‍යයේ නිරවද්‍යතාවය සැලකිල්ලට ගෙන යාවත්කාලීන කිරීම් ස්ථාවර කිරීමට ස්ථාවර කාල පියවර ප්‍රයෝජනවත් වේ.

එය සරල කේත කැබැල්ලකි, එබැවින් එය උත්සාහ කර එය ඔබගේ ක්‍රීඩාවට ගැලපේදැයි බැලීමට ප්‍රයෝජනවත් වනු ඇත.

now = currentTime
frameTime = now - lastTimeStamp // time since last render()
while (frameTime > updateTime)
    update(timestep)
    frameTime -= updateTime     // update enough times to catch up
                                // possibly leaving a small remainder
                                // of time for the next frame

lastTimeStamp = now - frameTime // set last timestamp to now but
                                // subtract the remaining frame time
                                // to make sure the game will still
                                // catch up on those remaining few millseconds
render()

ස්ථාවර කාල පියවරක් භාවිතා කිරීමේ ප්‍රධාන ගැටළුව නම් වේගවත් පරිගණකයක් ඇති ක්‍රීඩකයින්ට වේගය භාවිතා කිරීමට නොහැකි වීමයි. ක්‍රීඩාව යාවත්කාලීන කළ විට 100fps දී විදැහුම් කිරීම 30fps දී පමණක් විදැහුම්කරණයට සමාන වේ.

එසේ පැවසුවහොත්, එක් ස්ථාවර කාල පියවරකට වඩා භාවිතා කළ හැකිය. සුළු වස්තූන් (UI හෝ සජීවිකරණ ස්ප්රීතු වැනි) යාවත්කාලීන කිරීමට 60fps භාවිතා කළ හැකි අතර සුළු නොවන පද්ධති (භෞතික විද්‍යාව හා වැනි) යාවත්කාලීන කිරීම සඳහා 30fps භාවිතා කළ හැකි අතර භාවිතයට නොගත් වස්තූන්, සම්පත් යනාදිය මකා දැමීම වැනි තිර කළමනාකරණයට වඩා මන්දගාමී කාලරාමු භාවිතා කළ හැකිය.


2
ක්‍රීඩාව ප්‍රවේශමෙන් සාදා ඇත්නම්, 30fps යාවත්කාලීනයන් සැබවින්ම 30fps දී විදැහුම්කරණයට සමාන නොවන පරිදි විදැහුම්කරණ ක්‍රමයට අන්තර් මැදිහත්වීමක් කළ හැකිය.
රිකට්

3

ඔබ දැනටමත් ප්‍රකාශ කර ඇති දේට ඉහළින් එය ඔබගේ ක්‍රීඩාවට අවශ්‍ය යැයි හැඟීමකට පැමිණිය හැකිය. ඔබට සෑම විටම නියත රාමු අනුපාතයක් ඇති බවට ඔබට සහතික විය නොහැකි නම්, ඔබ කොතැනක හෝ මන්දගාමී වීමට ඉඩ ඇති අතර ස්ථාවර හා විචල්‍ය කාල පියවරයන් බෙහෙවින් වෙනස් වනු ඇත. ස්ථාවර ඔබගේ ක්‍රීඩාව ටික වේලාවක් මන්දගාමීව ගමන් කිරීමේ බලපෑම ඇති කරයි, එය සමහර විට අපේක්ෂිත ප්‍රති be ලය විය හැකිය (ඉකාරුගා වැනි පැරණි පාසල් විලාසිතාවේ වෙඩික්කරුවෙකු දෙස බලන්න, එහිදී විශාල පිපිරීම් ලොක්කාට පහර දීමෙන් පසු මන්දගාමී වීමට හේතු වේ). විචල්‍ය කාලසටහන් මඟින් කාලය අනුව දේවල් නිවැරදි වේගයකින් ගමන් කරනු ඇත, නමුත් ඔබ හදිසියේම ස්ථානගත වෙනස්වීම් දකිනු ඇත. එමඟින් ක්‍රීඩකයාට නිවැරදිව ක්‍රියා කිරීම අපහසු වේ.

ස්ථාවර කාල පියවරක් මඟින් ජාලයක් හරහා දේවල් පහසු වන බව මට නොපෙනේ, ඒවා සියල්ලම ආරම්භ වීමට තරමක් සමමුහුර්ත වී ඇති අතර එක් යන්ත්‍රයක මන්දගාමී වේ, නමුත් තවත් එකක් සමමුහුර්තතාවයෙන් දේවල් තල්ලු නොකරයි.

මම සෑම විටම පුද්ගලිකව විචල්ය ප්රවේශය වෙත නැඹුරු නමුත් එම ලිපි ගැන සිතා බැලීමට සිත්ගන්නා කරුණු කිහිපයක් තිබේ. පරිගණකයේ ලබා ගත හැකි ඉතා ඉහළ අනුපාතයන්ට සාපේක්ෂව රාමු ස්ථායී 60fps යැයි මිනිසුන් සිතන කොන්සෝලවල මම තවමත් ස්ථාවර පියවරයන් සොයාගෙන ඇත.


5
මුල් පෝස්ට් එකේ ඇති ක්‍රීඩා සබැඳිය ගැන ඔබ අනිවාර්යයෙන්ම කියවිය යුතුය. මෙය නරක පිළිතුරක් යැයි මම නොසිතමි, එබැවින් මම එය ඡන්දය ප්‍රකාශ නොකරමි, නමුත් මම ඔබේ කිසිම තර්කයකට එකඟ නොවෙමි .
falstro

ස්ථාවර කාලරාමුවක ප්‍රති game ලයක් ලෙස ක්‍රීඩාවක් මන්දගාමී වීම කිසි විටෙකත් හිතාමතා කළ හැකි යැයි මම නොසිතමි , මන්ද එය පාලනයෙන් තොර වීමයි. පාලනයේ ack නතාවය අර්ථ දැක්වීම අනුව අහම්බයට යටත් වීම නිසා එය හිතාමතා කළ නොහැකිය. එය ඔබගේ මනසෙහි පැවතුන දෙයක් විය හැකිය, නමුත් එය මා ඉදිරියට යාමට කැමති තාක් දුරට ය. ජාලකරණයේ ස්ථාවර කාලරාමුව සම්බන්ධයෙන් ගත් කල, නිශ්චිත ප්ලස් එකක් ඇත, මන්ද භෞතික විද්‍යා එන්ජින් එකම යන්ත්‍රයකින් තොරව විවිධ යන්ත්‍ර දෙකක සමමුහුර්තව තබා ගැනීම තරමක් අපහසුය. එවිට සමමුහුර්ත කිරීමට ඇති එකම විකල්පය වනුයේ සියලු ආයතන පරිණාමනයන් යැවීම බැවින් එය කලාප පළල බරින් වැඩි වේ.
කජ්

0

ගාෆර්ගේ "ඔබේ කාල පියවර නිවැරදි කරන්න" ප්‍රවේශය භාවිතා කරන්න. 1 වන විකල්පය මෙන් ක්‍රීඩාව ස්ථාවර පියවරයන්ගෙන් යාවත්කාලීන කරන්න, නමුත් විදැහුම් කරන ලද රාමුවකට කිහිප වතාවක් එසේ කරන්න - කොපමණ කාලයක් ගතවී ඇත්ද යන්න මත පදනම්ව - එමඟින් ක්‍රීඩාවේ තර්කනය තථ්‍ය කාලය සමඟ පවත්වා ගෙන යන අතර විවික්ත පියවරවල රැඳී සිටියි. මේ ආකාරයෙන්, අයිලර් අනුකලනයන් වැනි සරල ක්‍රීඩා තර්කනය ක්‍රියාත්මක කිරීම සහ සරල ision ට්ටන අනාවරණය කිරීම තවමත් ක්‍රියාත්මක වේ. ඔබට ඩෙල්ටා වේලාව මත පදනම්ව චිත්‍රක සජීවිකරණ අන්තර්ග්‍රහණය කිරීමේ විකල්පයක් ඇත, නමුත් මෙය දෘශ්‍ය ප්‍රයෝග සඳහා පමණක් වන අතර ඔබේ මූලික ක්‍රීඩා තර්කනයට බලපාන කිසිවක් නැත. ඔබගේ යාවත්කාලීනයන් ඉතා තීව්‍ර නම් ඔබට කරදරයකට පත්විය හැකිය - යාවත්කාලීනයන් පසුබසින්නේ නම්, ඒවා පවත්වා ගෙන යාමට ඔබට වැඩි වැඩියෙන් අවශ්‍ය වනු ඇත, ඔබේ ක්‍රීඩාව ඊටත් වඩා අඩු ප්‍රතිචාරයක් දැක්විය හැකිය.

පුද්ගලිකව, මම විකල්ප 1 ට කැමතියි මට එයින් ගැලවී යා හැකි විට සහ 3 වන විකල්පය මට තථ්‍ය කාලයට සමමුහුර්ත කිරීමට අවශ්‍ය වූ විට. ඔබ කරන්නේ කුමක්දැයි ඔබ දන්නා විට විකල්ප 2 හොඳ විකල්පයක් විය හැකි බව මම ගරු කරමි, නමුත් එයින් ඉවත්ව සිටීමට තරම් මගේ සීමාවන් මම හොඳින් දනිමි


ඔබ පිළිතුරු සොරකම් කරන්නේ නම් අවම වශයෙන් පුද්ගලයාට ගෞරවය දෙන්න!
PrimRock

0

60fps සමඟ සමමුහුර්ත කර ඇති ස්ථාවර කාලසටහන් දර්පණ සුමට සජීවීකරණයක් ලබා දෙන බව මම සොයා ගතිමි. VR යෙදුම් සඳහා මෙය විශේෂයෙන් වැදගත් වේ. වෙනත් ඕනෑම දෙයක් ශාරීරිකව ඔක්කාරය ඇති කරයි.

විචල්ය කාලසටහන් VR සඳහා නුසුදුසු ය. විචල්ය කාලරාමු භාවිතා කරන යුනිටි වීආර් උදාහරණ කිහිපයක් බලන්න. එය අප්රසන්න ය.

රීතිය වන්නේ ඔබේ ත්‍රිමාණ ක්‍රීඩාව වීආර් ප්‍රකාරයේදී සුමට නම්, එය වීආර් නොවන ආකාරයෙන් විශිෂ්ට වනු ඇත.

මෙම දෙක සංසන්දනය කරන්න (කාඩ්බෝඩ් වීආර් යෙදුම්)

(විචල්‍ය කාලසටහන්)

(ස්ථාවර කාල සටහන්)

ස්ථාවර කාලරාමුව / රාමු ලබා ගැනීම සඳහා ඔබේ ක්‍රීඩාව බහු-ත්‍රෙඩ් කළ යුතුය. භෞතික විද්‍යාව, යූඅයි සහ විදැහුම්කරණය කැපවූ නූල් වලට වෙන් කළ යුතුය. ඒවා සමමුහුර්ත කිරීම බිහිසුණු PITA වේ, නමුත් ප්‍රති results ල වනුයේ ඔබට අවශ්‍ය කැඩපත් සුමට විදැහුම්කරණයයි (VR සඳහා එස්පී).

ජංගම ක්‍රීඩා එස්.පී. කාවැද්දූ CPU සහ GPU වලට සීමිත කාර්ය සාධනයක් ඇති නිසා අභියෝගයකි. CPU වෙතින් හැකිතාක් වැඩ කිරීම සඳහා GLSL (slang) අරපිරිමැස්මෙන් භාවිතා කරන්න. GPU වෙත පරාමිතීන් යැවීමට වඩා සැලකිලිමත් වන්න බස් සම්පත් පරිභෝජනය කරයි.

සංවර්ධනයේදී සෑම විටම ඔබේ රාමු ප්‍රදර්ශනය කර තබන්න. සැබෑ ක්‍රීඩාව වන්නේ එය 60fps මට්ටමේ තබා ගැනීමයි. මෙය බොහෝ තිර සඳහා සහ බොහෝ ඇහිබැමි සඳහා ස්වදේශීය සමමුහුර්ත අනුපාතය වේ.

ඔබ භාවිතා කරන රාමුවට සමමුහුර්ත ඉල්ලීමක් පිළිබඳව ඔබට දැනුම් දීමට හෝ ටයිමරයක් භාවිතා කිරීමට හැකි විය යුතුය. මෙය ලබා ගැනීම සඳහා නින්දක් / රැඳී සිටීමේ ප්‍රමාදයක් ඇතුල් නොකරන්න - සුළු වෙනස්කම් පවා කැපී පෙනේ.


0

විචල්‍ය කාල පියවර යනු හැකි සෑම විටම ක්‍රියාත්මක කළ යුතු ක්‍රියා පටිපාටි සඳහා ය: චක්‍ර, සිදුවීම් හැසිරවීම, ජාල දේවල් ආදිය.

ස්ථාවර කාල පියවර යනු ඔබට පුරෝකථනය කළ හැකි සහ ස්ථාවර වීමට යමක් අවශ්‍ය වූ විටය. මෙයට භෞතික විද්‍යාව හා ision ට්ටන අනාවරණයට පමණක් සීමා නොවේ.

ප්‍රායෝගිකව ගත් කල, භෞතික විද්‍යාව සහ ision ට්ටන හඳුනාගැනීම අනෙක් සෑම දෙයකින්ම වෙන් කළ යුතුය. කුඩා ස්ථාවර කාල පියවරක් තුළ මෙවැනි ක්‍රියා පටිපාටි සිදු කිරීමට හේතුව, ඒවා නිවැරදිව තබා ගැනීමයි. ආවේගයේ විශාලත්වය කාලය මත බෙහෙවින් රඳා පවතින අතර, පරතරය ඉතා විශාල වුවහොත්, සමාකරණය අස්ථායී වන අතර පිස්සු දේවල් සිදුවන්නේ බිම හරහා වේගයෙන් පන්දුවට පහර දීමක් හෝ ක්‍රීඩා ලෝකයෙන් ඉවතට පැනීම වැනි ය.

අනෙක් සෑම දෙයක්ම විචල්‍ය කාල පියවරක් මත ධාවනය කළ හැකිය (වෘත්තීමය වශයෙන් වුවද, ස්ථාවර කාල පියවරකට අගුළු විදැහුම්කරණයට ඉඩ දීම බොහෝ විට හොඳ අදහසකි). ක්‍රීඩා එන්ජිමක් ප්‍රතිචාර දැක්වීමට නම්, ජාල පණිවිඩ සහ පරිශීලක ආදානය වැනි දෑ හැකි ඉක්මනින් හැසිරවිය යුතුය, එයින් අදහස් වන්නේ ඡන්දය අතර පරතරය හැකි තරම් කෙටි විය යුතු බවයි. මෙය සාමාන්‍යයෙන් විචල්ය යන්නයි.

අනෙක් සෑම දෙයක්ම අසමමුහුර්තව හැසිරවිය හැකි අතර, වේලාව ඉතා වැදගත් වේ.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.