Difference between revisions of "OCCL"

From GTAMods Wiki
Jump to navigation Jump to search
m (Viewing It)
m
 
(13 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Cleanup-rewrite}}
 
 
{{IplSection
 
{{IplSection
| name       = OCCL
+
| game       = {{Icon|VC}} {{Icon|SA}} {{Icon|4}}
| game        = [[GTA VC]], [[GTA SA]], [[GTA IV]]
+
| description = Creates occlusion culling zones
| description = Creates zones for separated rendering
 
 
}}
 
}}
'''Occlusion''' is a feature in Vice City and San Andreas that helps make the game run smoother in certain parts of the map. The occlusions are created using invisible boxes. These boxes disable models that are behind the boxes from rendering. This feature is not really effective and Rockstar did not use this feature efficiently. There are not much improvements on occlusions in San Andreas compared to Vice City. Deleting all entries in the occlu section does not have any major effects on the game.
+
'''OCCL''' is a section in the [[item placement]] file in [[Vice City]], [[San Andreas]], and [[GTA IV]]. It is used to create [[wikipedia:Hidden surface determination|occlusion culling]] zones that helps make the game run smoother in certain parts of the world. Since it is wasteful to render models behind opaque models, these zones can disable the rendering of any models that are directly behind the zones.
  
==Location==
+
== Format ==
Occlusions are controlled by the <code>occl</code> section of the [[IPL]] files. Rockstar created the occlusions through the <code>occlu.ipl</code> in Vice City and the <code>occlu.ipl</code>, <code>occluint.ipl</code>, <code>occluLA.ipl</code>, <code>occlusf.ipl</code>, and the <code>occluveg.ipl</code> in San Andreas. You can open these files using Microsoft Notepad. You do not need to use these files to create your own occlusions as long as the entry is in a defined IPL file.
+
=== Vice City ===
 +
[[File:VC occlu.jpg|thumb|A map of Vice City's <code>occlu.ipl</code> areas]]
 +
{{Pre|
 +
occl
 +
MidX, MidY, BottomZ, WidthX, WidthY, Height, Rotation
 +
end
 +
}}
  
==Format==
+
The section is used in the <code>occlu.ipl</code> file but it can be used in any IPL files.
''Section identifier:''
+
{|class="wikitable center-col-1 center-col-2"
occl
+
!style="width: 3em;"|{{Icon|VC}}
...
+
!style="width: 12em;"|Identifier
end
+
!style="width: 6em;" |Type
 +
!Description
 +
|-
 +
|A,B ||MidX, MidY ||float[2] ||The X and Y coordinates of the center of the occlusion zone.
 +
|-
 +
|C ||BottomZ ||float ||The bottom Z coordinate of the occlusion zone.
 +
|-
 +
|D,E ||WidthX, WidthY ||float[2] ||The width of the occlusion zone in units.
 +
|-
 +
|F ||Height ||float ||The height of the zone &mdash; the difference between the top and the bottom of the zone.
 +
|-
 +
|G ||Rotation ||float ||The [[Angle|rotation]] of the occlusion zone in degrees.
 +
|}
  
''Format of the occlu section of the IPL file:''
+
=== San Andreas ===
mid x, mid y, bottom height z, width x, width y, height from bottom height to top, rotation
+
The section is used in <code>occluint.ipl</code>, <code>occluLA.ipl</code>, <code>occlusf.ipl</code>, and <code>occluveg.ipl</code> files.
*'''mid x, mid y:''' The middle of the occlusion box in X and Y coordinates.
 
*'''bottom height z:''' The bottom Z coordinate of the occlusion box.
 
*'''width x, width y:''' The width of the occlusion box in units.
 
*'''height from bottom height to top:''' The difference in height from the top of the occlusion box to the bottom.
 
*'''rotation:''' The rotation of the occlusion box in angles.
 
  
==Viewing It==
+
{{Pre|
Vice City's occlusions can only be viewed through [[KEd]]. KEd sees occlusion boxes as green, transparent boxes with a small triangular hole in the 3D View. KEd does not support editing the occlusions through the program so you have to create the boxes yourself.
+
occl
 
+
MidX, MidY, BottomZ, WidthX, WidthY, Height, Rotation, , ,
For San Andreas you can use {{U|Deniska}}'s {{GTAF|277798|SA Script pack}} that contains an small tool to import and export the occlusion section of the [[IPL]]
+
end
 
+
}}
[[Image:Occlusion.png|center|frame|Occlusion boxes in KEd]]
+
{|class="wikitable center-col-1 center-col-2"
 
+
!style="width: 3em;"|{{Icon|SA}}
==Creating It==
+
!style="width: 12em;"|Identifier
The following way to make occlusion boxes is practiced by [[User:spaceeinstein|spaceeinstein]]. First find a building that you want to make occlusion boxes and align it to the X- and Y-axis. Get the coordinates of the lower left corner of the building and the upper right corner of the building. The coordinates for the lower left and upper right corner of the building can be inputted as X1, Y1, and Z1, and X2, Y1, and Z2, respectively, into the occlusion tool. If you are not bothered to get the lower Z coordinate of the box, you can input any number that is lower than the foundation of your building. Making the boxes with angles is pretty tough to do and probably needs some trial and error to fit it into the building.
+
!style="width: 6em;" |Type
 +
!Description
 +
|-
 +
|A,B ||MidX, MidY ||float[2] ||The X and Y coordinates of the center of the occlusion zone.
 +
|-
 +
|C ||BottomZ ||float ||The bottom Z coordinate of the occlusion zone.
 +
|-
 +
|D,E ||WidthX, WidthY ||float[2] ||The width of the occlusion zone in units.
 +
|-
 +
|F ||Height ||float ||The height of the zone &mdash; the difference between the top and the bottom of the zone.
 +
|-
 +
|G ||Rotation ||float ||The [[Angle|rotation]] of the occlusion zone in degrees.
 +
|-
 +
|H,I || ||float ||
 +
|-
 +
|J || ||int ||
 +
|}
  
Using [[Deniska]]'s [http://www.gtaforums.com/index.php?showtopic=277798& script] you need only to create a box, press the Export button on the script and paste the line from the MAXScript listener to the [[IPL]] section.
+
== Issues ==
 +
When removing buildings from the world, you may see unexpected pop ups caused by existing occlusion zones. Deleting all the occlusion zones is the easiest solution. An example of this issue is the Liberty City project. Before this section was researched, the team experienced unexpected pop ups with models loading and unloading behind areas where Vice City's buildings used to be. Someone realized that the <code>occlu.ipl</code> was the problem and deleted every line in that file. The pop ups disappeared and the issue was resolved.
  
==Problems==
+
== Statistics ==
If you delete the buildings in Vice City or San Andreas without deleting the occlusions, you would see pop ups behind the occlusions. These occlusions had created problems for a few modifications, most notably in the Liberty City modification. In the Liberty City mod, the team experienced unexpected pop ups caused by the occlusion boxes. These boxes are loading and unloading the models behind boxes where Vice City's buildings used to be at. Someone realized that the <code>occlu.ipl</code> was the problem and deleted every line in that file. The pop ups disappeared.
+
Total number of OCCL entries in:
 +
:Vice City: 344 (max 350)
  
{{N|4|SA}}
+
== Tools and scripts ==
 +
* [[KEd]] &ndash; by {{U|JernejL}}
 +
* {{GTAF|277798|Script pack for 3ds Max}} &ndash; by {{U|Deniska}}
 +
* {{GTAF|402942|&#91;IV&#93;&#91;Rel&#93;GTA-IV Scripts Centre}} &ndash; by {{U|Gforce}}
  
[[Category:Map Formats]][[Category:GTA VC]]
+
{{N|4|SA|VC}}
 +
[[Category:Map Formats]]

Latest revision as of 18:40, 10 November 2016

OCCL (IPL section)
Short description:Creates occlusion culling zones
Supported games:Vice City San Andreas GTA IV
IPL Sections:
2DFX AUZO BLOK CARS CULL ENEX GRGE
INST JUMP LINK LODM MLO+ MULT OCCL
PATH PICK RTFX SLOW TCYC VNOD ZONE

OCCL is a section in the item placement file in Vice City, San Andreas, and GTA IV. It is used to create occlusion culling zones that helps make the game run smoother in certain parts of the world. Since it is wasteful to render models behind opaque models, these zones can disable the rendering of any models that are directly behind the zones.

Format

Vice City

A map of Vice City's occlu.ipl areas
occl
MidX, MidY, BottomZ, WidthX, WidthY, Height, Rotation
end

The section is used in the occlu.ipl file but it can be used in any IPL files.

Vice City Identifier Type Description
A,B MidX, MidY float[2] The X and Y coordinates of the center of the occlusion zone.
C BottomZ float The bottom Z coordinate of the occlusion zone.
D,E WidthX, WidthY float[2] The width of the occlusion zone in units.
F Height float The height of the zone — the difference between the top and the bottom of the zone.
G Rotation float The rotation of the occlusion zone in degrees.

San Andreas

The section is used in occluint.ipl, occluLA.ipl, occlusf.ipl, and occluveg.ipl files.

occl
MidX, MidY, BottomZ, WidthX, WidthY, Height, Rotation, , ,
end
San Andreas Identifier Type Description
A,B MidX, MidY float[2] The X and Y coordinates of the center of the occlusion zone.
C BottomZ float The bottom Z coordinate of the occlusion zone.
D,E WidthX, WidthY float[2] The width of the occlusion zone in units.
F Height float The height of the zone — the difference between the top and the bottom of the zone.
G Rotation float The rotation of the occlusion zone in degrees.
H,I float
J int

Issues

When removing buildings from the world, you may see unexpected pop ups caused by existing occlusion zones. Deleting all the occlusion zones is the easiest solution. An example of this issue is the Liberty City project. Before this section was researched, the team experienced unexpected pop ups with models loading and unloading behind areas where Vice City's buildings used to be. Someone realized that the occlu.ipl was the problem and deleted every line in that file. The pop ups disappeared and the issue was resolved.

Statistics

Total number of OCCL entries in:

Vice City: 344 (max 350)

Tools and scripts