ef2-ubertools-gdk/Documentation/content/scripting_globalscripts_cin...

304 lines
17 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>ÜberTools Game Development Kit</title>
<link rel="stylesheet" href="style.css">
<script type="text/javascript">
/***********************************************
* Switch Menu script- by Martial B of http://getElementById.com/
* Modified by Dynamic Drive for format & NS4/IE4 compatibility
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/
if (document.getElementById){ //DynamicDrive.com change
document.write('<style type="text/css">\n')
document.write('.submenu{display: none;}\n')
document.write('</style>\n')
}
function SwitchMenu(obj){
if(document.getElementById){
var el = document.getElementById(obj);
var ar = document.getElementById("masterdiv").getElementsByTagName("span"); //DynamicDrive.com change
if(el.style.display != "block"){ //DynamicDrive.com change
for (var i=0; i<ar.length; i++){
if (ar[i].className=="submenu") //DynamicDrive.com change
ar[i].style.display = "none";
}
el.style.display = "block";
}else{
el.style.display = "none";
}
}
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<a name="top"></a>
<table width="702" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td colspan="3"><img src="../images/header.jpg" width="702" height="101" border="0"></td>
</tr>
<tr>
<td width=158 valign="top"><table border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" class="menu">
<!-- Keep all menus within masterdiv-->
<div id="masterdiv">
<img src="../images/navigation.jpg" width="158" height="27"><br>
UberTools GDK
<div class="menutitle" onclick="SwitchMenu('sub0')">&raquo; Introduction &amp; Contents</div>
<span class="submenu" id="sub0">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="../start.html">Introduction</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="../start.html#2">Utilities</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="../start.html#3">Source Files</a><br>
</span>
<br>Level Design<br>
<div class="menutitle" onclick="SwitchMenu('sub1')">&raquo; Setting Up UberRadiant</div>
<span class="submenu" id="sub1">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_setup.html">That Scary Error Msg</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_setup.html#2">General Tab</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_setup.html#3">Display Tab</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_setup.html#4">User Interface Tab</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_setup.html#5">Keyboard Shortcuts Tab</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_setup.html#6">Colors Tab</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_setup.html#7">Game / Paths Tab</a><br>
</span>
<div class="menutitle" onclick="SwitchMenu('sub2')">&raquo; Building Your First Room</div>
<span class="submenu" id="sub2">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_firstroom.html">Editor Interface Basics</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_firstroom.html#2">Choosing Your Textures</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_firstroom.html#3">Building The Room</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_firstroom.html#4">Adding a Light</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_firstroom.html#5">Adding a Player Start</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_firstroom.html#6">Compiling Your Level</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_firstroom.html#7">Viewing the Level</a><br>
</span>
<div class="menutitle" onclick="SwitchMenu('sub3')">&raquo; Constructing Terrain</div>
<span class="submenu" id="sub3">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_terrain.html">Setting up the Tools</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_terrain.html#2">Creating Terrain</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_terrain.html#3">Modifying the Textures</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="radiant_terrain.html#4">Adding More Terrain</a><br>
</span>
<div class="menutitle" onclick="SwitchMenu('sub4')">&raquo; Additional Reference</div>
<span class="submenu" id="sub4">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="ldesign_lighting.html">Lighting System</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="ldesign_terrain.html">Terrain Texture Blending</a><br>
</span>
<br>Scripting<br>
<div class="menutitle" onclick="SwitchMenu('sub5')">&raquo; Scripting Tutorials</div>
<span class="submenu" id="sub5">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_syntax.html">Scripting Syntax</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_waves.html">Spawning Waves</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_flying.html">Creating Flying Creatures</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_tripwires.html">Setting Up Tripwires</a><br>
</span>
<div class="menutitle" onclick="SwitchMenu('sub6')">&raquo; Global Script Synopsis</div>
<span class="submenu" id="sub6">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts.html">Introduction</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_accelmove.html">global_accelerated</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_accelmove.html">Movement.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_archetype.html">global_archetype.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_array.html">global_array.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_cinefx.html">global_cinematicFX.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_common.html">global_common.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_debug.html">global_debugUtils.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_flyin.html">global_flyin.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_math.html">global_math.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_ploadout.html">global_playerLoadout.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_soundpan.html">global_soundPan.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_spawnwave.html">global_spawnWave.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_transport.html">global_Transport.scr</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="scripting_globalscripts_tripwire.html">global_tripwire.scr</a><br>
</span>
<div class="menutitle" onclick="SwitchMenu('sub7')">&raquo; Classes Reference</div>
<span class="submenu" id="sub7">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="allclasses_g.html">Game Module</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="allclasses_cl.html">Client Module</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="allclasses_cg.html">Client Game Module</a><br>
</span>
<br>Older Documentation<br>
<div class="menutitle" onclick="SwitchMenu('sub8')">&raquo; Heavy Metal FAKK2</div>
<span class="submenu" id="sub8">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_camera.html">Camera Documentation</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_clientsidecmds.html">Client Side Commands</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_gui.html">GUI Documentation</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_ingameutils.html">In-Game Utilities</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_max2skl.html">MAX2SKL Reference</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_shadermanual.html">Shader Manual</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_soundsystem.html">Sound System</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="fakk2_tiki.html">TIKI Model System</a><br>
</span>
<br>Other<br>
<div class="menutitle" onclick="SwitchMenu('sub9')">&raquo; Web Links &amp; Credits</div>
<span class="submenu" id="sub9">
&nbsp;&nbsp;&nbsp;&nbsp;<a href="other_links.html">Web Links</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;<a href="other_credits.html">Credits</a><br>
</span>
</div>
</td>
</tr>
</table></td>
<td width="13" background="../images/vert_line.jpg"><img src="../images/vert_line.jpg" width="13" height="1"></td>
<td valign="top" width="533"><p class="header"><br>
global_cinematicFX.scr</p>
<p class="subheader">Dependencies</p>
<p> #include &quot;maps/global_scripts/global_common.scr&quot;<br>
#include &quot;maps/global_scripts/global_math.scr&quot;</p>
<p class="subheader">Purpose</p>
<p> Commands used mainly for cinematic stuff</p>
<p class="subheader"> How To Use</p>
<p> These are a set of functions that effect camera FOVs, and camera path
and object positioning.</p>
<p class="subheader">External Functions</p>
<p> <strong>globalCineFX_CameraFOVLerp( entCamera, fltFOVStart, fltFOVEnd,
fltTime, strCurve )</strong></p>
<blockquote>
<p><strong>Purpose:</strong><br>
Smoothly changes a camera's FOV with acceleration for a Zoom effect.</p>
</blockquote>
<ul type="square">
<strong>Parms:</strong>
<li> <strong>entCamera</strong> (entity)<br>
The camera to zoom.<br>
<br>
</li>
<li> <strong>fltFOVStart</strong> (float)<br>
Starting FOV for the zoom.</li>
<li> <strong>fltFOVEnd</strong> (float)<br>
The ending FOV for the zoom.</li>
<li> <strong>fltTime</strong> (float)<br>
The time to take for the zoom.</li>
<li> <strong>strCurve</strong> (string)<br>
The acceleration curve to use, there are 3 options:<br>
<br>
<ul>
<li><strong>rampup</strong><br>
This will make the object start from still and ramp up to it's maximum
velocity.
<li><strong>rampdown</strong><br>
This will make the object start at maximum velocity and slow down
to still.
<li><strong>rampupdown</strong><br>
This will make the object start from still, ramp up to it's maximum
velocity, the slow down to still again.
</ul>
</ul>
<p><strong>globalCineFX_CameraPathRemove( entCamPath ) </strong></p>
<blockquote>
<p> <strong>Purpose:</strong><br>
Removes an entire camera path. This was created so camera paths created
with the in-game path creator could be removed.</li> </ul> </p>
</blockquote>
<ul type="square">
<strong>Parms:</strong>
<li> <strong>entCamPath</strong> (entity)<br>
The lead node in the path. If the camera path was created with the in-game
path creator, this is the name of the path </li>
</ul>
<p> <strong>globalCineFX_CameraPathRotate( entCamPath, fltDegrees, vecPivotCoordinate,
vecDestinationCoordinate )</strong></p>
<blockquote>
<p> <strong>Purpose:</strong><br>
Takes a path and rotates the entire path around a desired pivot point.
This will also rotate the facing on all of the nodes in the path accordingly.</p>
</blockquote>
<ul type="square">
<strong>Parms:</strong>
<li> <strong>entCamPath</strong> (entity)<br>
The lead node in the path. If the camera path was created with the in-game
path creator, this is the name of the path.<br>
<br>
</li>
<li> <strong>fltDegrees</strong> (float)<br>
How far to rotate the path around in degrees. Positive is counterclockwise
and negative is clockwise.<br>
<br>
</li>
<li> <strong>vecPivotCoordinate</strong> (vector)<br>
The origin of the point to pivot the path around.<br>
<br>
</li>
<li> <strong>vecDestinationCoordinate</strong> (vector)<br>
The origin of the final position for the entire path based off of the
pivot point. What this means is that it will rotate the entire path
around the pivot point, and then re-position the entire path by moving
the pivot point with the new rotational orientation locked to the pivot
point as it moves.<br>
So if you want to just rotate the path without re- positioning it, just
enter the pivot point coordinate as the destination coordinate</li>
</ul>
<p> <strong>globalCineFX_TimeLerp( fltTimeScaleStart, fltTimeScaleEnd, fltTime,
strCurve )</strong> </p>
<blockquote>
<p> <strong>Purpose:</strong><br>
The goal of this function was to create cool slow motion transitions
as it would ramp time up or down. But the timescale command didn't work
very well with this technique, so hence this function doesn't really
work all too well. Try at yer own risk suchah's :).</p>
</blockquote>
<ul type="square">
<strong>Parms:</strong>
<li> <strong>fltTimeScaleStart</strong> (float)<br>
The starting timescale value based on a normalized scale. Meaning 1
is in normal time, .5 would be half-time, and 2 would be double time<br>
<br>
</li>
<li> <strong>fltTimeScaleEnd</strong> (float)<br>
The ending timescale value based on a normalized scale. Since I know
you just read the previous description, I'm not going to repeat the
whole, 'what does normalized' mean schpeal. :)<br>
<br>
</li>
<li> <strong>fltTime</strong> (float)<br>
The time for the whole lerp to take. This starts getting tricky because
this wouldn't be the actual time. As you start to timescale the game,
the actual time of the game will be effected, thus effecting the timers
in the engine that count time. There were no time commands written 'outside'
of normal time to account for this and the timescale command. Wow, there's
a lot of time in this description, I think it's time to move on. </li>
</ul>
<p> <strong>globalCineFX_PositionObject( entObject, entDestination )</strong></p>
<p><strong>Purpose:</strong><br>
Takes an object and moves it to be at the same position and orientation
of another object.</p>
<p><strong>Parms:</strong></p>
<ul type="square">
<li> <strong>entObject</strong> (entity), <br>
The object to re-position and re-orient<br>
<br>
</li>
<li> <strong>entDestination</strong> (entity)<br>
The destination entity. This function will take the entObject and set
it's origin and angles to this entities origin and angles</li>
</ul>
<p>&nbsp;</p></td>
</tr>
<tr>
<td colspan="3"><img src="../images/footer.jpg" width="702" height="36" border="0" usemap="#Map"><br>
<img src="../images/hor_line.jpg" width="702" height="1"></td>
</tr>
<tr>
<td colspan="3" class="legal"><table width="100%" border="0" cellspacing="0" cellpadding="4">
<tr>
<td class="legal"> Copyright &copy;2003 Ritual Entertainment, Inc. All rights reserved.<br>
Please do not email Ritual Entertainment with questions about the
UberTools Game Development Kit. It is provided as is and is not supported by Ritual Entertainment.</td>
<td><a href="http://www.ritual.com/tech/overview.html" target="_blank"><img src="../images/uber_logo.jpg" width="43" height="56" hspace="4" border="0"></a></td>
<td><a href="http://www.ritual.com" target="_blank"><img src="../images/ritual_logo.jpg" width="100" height="56" hspace="4" border="0"></a></td>
</tr>
</table>
<p align="center">&nbsp;</p></td>
</tr>
</table>
<map name="Map">
<area shape="rect" coords="601,10,693,28" href="#top">
</map>
</body>
</html>