Jump to content

Jello-cam: Difference between revisions

650 bytes added ,  4 January 2017
moved technical info to end of article so it doesn't bog down the casual reader; added proper explanation of WHY the jello-cam exists; corrected info on where "_jello_fix" comes from, courtesy of 'dox
(Created page with ""'''Jello-cam'''" is the commonly-used term for a feature of Oni's engine which makes walls semi-opaque when they block the player's view of Konoko. The term came from an inte...")
 
(moved technical info to end of article so it doesn't bog down the casual reader; added proper explanation of WHY the jello-cam exists; corrected info on where "_jello_fix" comes from, courtesy of 'dox)
Line 1: Line 1:
"'''Jello-cam'''" is the commonly-used term for a feature of Oni's engine which makes walls semi-opaque when they block the player's view of Konoko. The term came from an interview with Design Lead Hardy LeBel [http://www.insidemacgames.com/features/view.php?ID=4&Page=2 here].
"'''Jello-cam'''" is the commonly-used term for a feature of Oni's engine which makes walls semi-opaque when they block the player's view of Konoko. The term came from an interview with Design Lead Hardy LeBel [http://www.insidemacgames.com/features/view.php?ID=4&Page=2 here]. This simple feature allowed Bungie West to keep the camera locked behind Konoko, as opposed to most third-person games which move the camera out of the way of intervening walls. If Oni's camera collided with walls, it would disrupt your aim while firing weapons. Keeping it locked to Konoko's line of sight also allows the mouse to control both aiming and the camera, obviating the need for the kind of manual "camera management" that burdens players in other third-person games.
 
The relevant BSL commands are [[cm_jello]], a function that toggles "Jello mode", [[cm_jello_amt]], a variable that determines the opacity of jelloed quads, and [[cm_jello_radius]], a variable that determines how large of a visual space to clear in the quads between the camera and Konoko. The boxes are named with the suffix "_jello_fix" when [[OniSplit]] exports a level model to DAE.


The jello-cam created a problem for Bungie West when they realized that allowing the camera to escape the room would show not only the intervening walls and the adjacent room, but other unintended scenery like the skybox or other parts of the level in the distance. The solution to this problem was surprisingly low-tech, but high-labor. The story of the solution was originally told by Hardy on OCF [http://carnage.bungie.org/oniforum/oni.forum.pl?read=19648 here], then re-told in more detail in a YouTube video [https://youtu.be/4v_elVuwx0c?t=11m38s here]: someone had to create black boxes around every piece of a level that needed to exclude other pieces of the level that the jello-cam might reveal. This task fell upon one of the level designers, Dave Dunn, who put in long hours to create the boxes; the other designer, Sean Turbitt, was probably no longer around, as he left the team at the end of 1999.
The jello-cam created a problem for Bungie West when they realized that allowing the camera to escape the room would show not only the intervening walls and the adjacent room, but other unintended scenery like the skybox or other parts of the level in the distance. The solution to this problem was surprisingly low-tech, but high-labor. The story of the solution was originally told by Hardy on OCF [http://carnage.bungie.org/oniforum/oni.forum.pl?read=19648 here], then re-told in more detail in a YouTube video [https://youtu.be/4v_elVuwx0c?t=11m38s here]: someone had to create black boxes around every piece of a level that needed to exclude other pieces of the level that the jello-cam might reveal. This task fell upon one of the level designers, Dave Dunn, who put in long hours to create the boxes; the other designer, Sean Turbitt, was probably no longer around, as he left the team at the end of 1999.
Line 22: Line 20:


Now we have escaped Training's jello-fix box and can see what BWest never wanted players to see.
Now we have escaped Training's jello-fix box and can see what BWest never wanted players to see.
For modders, the relevant BSL commands are [[cm_jello]], a function that toggles "Jello mode", [[cm_jello_amt]], a variable that determines the opacity of jelloed quads, and [[cm_jello_radius]], a variable that determines how large of a visual space to clear in the quads between the camera and Konoko. In the Windows-only [[AGDB]] data, the black boxes are named with the suffix "_jello_fix"; AGDB names are then applied by [[OniSplit]] to a level's quads when it exports a level model to DAE, allowing them to be distinguished from the rest of the level.


[[Category:Modding information]]
[[Category:Modding information]]