Lou Montana/Sandbox – User

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Fix citation needed position)
m (Future Template:Header/Tutorial template)
(45 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category: Sandbox]]
[[Category: Sandbox]]
{{Informative | Future [[Simulation vs Render Time Scope]] page}}
<noinclude>
 
-----
{{SideTOC}}
Future [[Template:Header/Tutorial|Header/Tutorial]] template
{{GVI|arma2oa|1.60}} {{GVI|TKOH|1.00}} {{GVI|arma3|1.00}}
</noinclude><includeonly>{{Feature|informative
== Definitions ==
|
 
* {{#if:{{{target|}}}
=== Simulation Time Scope ===
| Target: {{#switch:{{{target}}}
 
  |0= newcomer
'''Simulation Time Scope''' is the '''calculated''' position of objects.
  |1= beginner
* It is updated on a lower frequency than the '''rendered''' position in order to save performance. {{cn}}
  |2= moderate
* Refresh frequency is lowered the further the object is from the camera. {{cn}}<!--
  |3= advanced
 
  |4= expert
-->=== Render Time Scope ===
  |#default= -wrong target defined-
 
}}
'''Render Time Scope''' is the '''visual''' position of objects, which is rendered (''estimated'') separately from the calculated one.
| -no target defined-}}
* It is updated on a very high frequency (presumably on each frame). {{cn}}
* {{#if:{{{difficulty|}}}
* The object's position is interpolated depending on its speed and movement direction.
| Difficulty: {{#switch:{{{difficulty}}}
* Due to interpolation, the position might not be accurate but it is updated frequently, resulting in a smooth motion.
  |0= easy {{Colorball|green}}
* Usually, [[:Category:Render Time Scope Scripting Commands|Render Time Scope commands]] should be used when something is visible to the player, such as UI or on-model precision.
  |1= normal {{Colorball|orange}}
 
  |2= hard {{Colorball|red}}
 
  |#default= -wrong difficulty defined-
[[File:Render Visual Time Scope.gif|right]]
}}
== Simulation vs Render ==
| -no difficulty defined-}}
 
{{#if:{{{prerequisites|}}}
For performance concerns, '''Simulation''' and '''Render''' cycles are separated '''since {{arma2oa}} v1.60'''.
|
This means that any object has now "two" positions: the computed one (simulation), and the visual one (render).
* Prerequisites:<br>
 
{{{prerequisites}}}
* For visual (e.g HUD-related) operations, use *visual [[:Category:Render Time Scope Scripting Commands|Render Time Scope scripting commands]] (e.g [[getPosATLVisual]])
}}
* "Normal" commands (e.g [[getPosATL]]) are to be used if the position isn't updated frequently and the effect is not visible to players.
}}</includeonly><noinclude>{{Doc/Template
 
|descr= Tutorial header.
[https://www.youtube.com/watch?v=6xUw0K292sw Video Showcase]
|param1= target
 
|descr1= number in range 0..4: newcomer - beginner - moderate - advanced - expert
<div style="clear: both"></div>
|param2= difficulty
== Before Simulation and Render separation ==
|descr2= number in range 0..2: easy - normal - hard
 
|param3= prerequisites
From {{ofp}} to {{arma2oa}} v1.59, the '''simulation''' first updated the world's state (units position) ''then'' the visual '''rendering''' was done.<br>
|descr3= (Optional) free text for prerequisite tutorials/knowledge. make a (sub-)list with <nowiki>**</nowiki> and new lines
Sequencing these operations worked fine only in non-intensive scenarios; as soon as the CPU reached its limits, the simulation frequency was lowered in order to maintain acceptable FPS, resulting in units visually "jumping".
|example1= <nowiki>{{Header/Tutorial}}</nowiki>
 
|result1= {{User:Lou_Montana/Sandbox}}
 
|example2= <nowiki>{{Header/Tutorial|target=0}}</nowiki>
== See Also ==
|result2= {{User:Lou_Montana/Sandbox|target=0}}
 
|example3= <nowiki>{{Header/Tutorial|target=0|difficulty=0}}</nowiki>
* [https://www.bohemia.net/blog/experimental-betas-interpolating-the-future Experimental betas - Interpolating the future] blog article
|result3= {{User:Lou_Montana/Sandbox|target=0|difficulty=0}}
* [https://forums.bohemia.net/forums/topic/151099-scripting-discussion-dev-branch/?page=21&tab=comments#comment-2720342 Sniperwolf572 forum post] explanation
|example4= <nowiki>{{Header/Tutorial|target=0|difficulty=1|prerequisites=a prerequisite}}</nowiki>
 
|result4= {{User:Lou_Montana/Sandbox|target=0|difficulty=1|prerequisites=a prerequisite}}
 
|example5= <span style="white-space: pre"><nowiki>{{Header/Tutorial|target=0|difficulty=2|prerequisites=** prerequisite 1
[[Category:Scripting Topics]]
** prerequisite 2}}</nowiki></span>
|result5= {{User:Lou_Montana/Sandbox|target=0|difficulty=2|prerequisites=** prerequisite 1
** prerequisite 2}}
}}</noinclude>

Revision as of 16:05, 16 April 2021



Future Header/Tutorial template Tutorial header.

This template is used on these pages.

Usage

{{Lou Montana/Sandbox|target|difficulty|prerequisites}}

  • target: number in range 0..4: newcomer - beginner - moderate - advanced - expert
  • difficulty: number in range 0..2: easy - normal - hard
  • prerequisites: (Optional) free text for prerequisite tutorials/knowledge. make a (sub-)list with ** and new lines
Examples
Code Result
{{Header/Tutorial}}
  • -no target defined-
  • -no difficulty defined-
{{Header/Tutorial|target=0}}
  • Target: newcomer
  • -no difficulty defined-
{{Header/Tutorial|target=0|difficulty=0}}
  • Target: newcomer
  • Difficulty: easy
{{Header/Tutorial|target=0|difficulty=1|prerequisites=a prerequisite}}
  • Target: newcomer
  • Difficulty: normal
  • Prerequisites:
a prerequisite
{{Header/Tutorial|target=0|difficulty=2|prerequisites=** prerequisite 1 ** prerequisite 2}}
  • Target: newcomer
  • Difficulty: hard
  • Prerequisites:
    • prerequisite 1
    • prerequisite 2