Creating a level: Difference between revisions

m
no edit summary
mNo edit summary
mNo edit summary
Line 184: Line 184:


==Terminology==
==Terminology==
;Vertex (Plural<nowiki>:</nowiki> vertices)
;Polygon
:A polygon is a shape defined by points (vertices) in space. Polygons are the most fundamental building block in games. Oni uses only shapes with 3 and 4 points (triangles and quads). Other games might also use N-gons, shapes with more points.
;Face
:The '''surface of a polygon''' is also named face. The '''direction''' of a face in '''defined by its normal'''. If an object seems to have a hole, it might be that the polygon just has a '''flipped normal''' and is therefore wrongly rendered (displayed on screen).
;Normal
:Faces and even vertices themselves have directions. The normals of vertices determine how smooth or sharp edges are will appear.
;Vertex (plural<nowiki>:</nowiki> vertices)
:A point within a polygon.
:A point within a polygon.
:Vertex colors radiate from one vertex to another vertex, whereby their different color values blend into each other so that gradients can appear.  
:Vertex colors radiate from one vertex to another vertex, whereby their different color values blend into each other so that gradients can appear.  
;Edge
;Edge
:A line of two points within a polygon.
:A line of two points within a polygon.
;Tris (Triangles)
;Tris (triangles)
:Polygons made of 3 points.
:Polygons made of 3 points.
;Quads
;Quads
:Polygons made of 4 points. Planes. Rectangles
:Polygons made of 4 points. Planes. Rectangles.
:Internally, all quads get converted into two triangles and will affect the maximum triangle count accordingly.
;Geometry
;Geometry
:Objects made of tris and/or quads.
:Objects made of tris and/or quads.
Line 203: Line 210:
:* Pushable objects (not used in the original game)
:* Pushable objects (not used in the original game)
;Static geometry
;Static geometry
:* Unique level geometry with no functions (AKEV core geometry such as building and streets)
:* '''Unique level geometry with no functions''' (AKEV core geometry such as buildings and streets).
:* Repeating objects are considered furniture (FURN) although they can be ugly boxes, containers, benches, etc. FURN was used to be imported by an object collection, an CJBO.<!--
:* '''Repeating objects''' are flagged as '''furniture (FURN)''' although they can be outdoor objects such as boxes and containers. <!--Oni's story plays out most often inside buildings. So, there you go. -->FURN objects were used to be imported by an object collection, an CJBO. Nowadays, furniture collections can be used (again) for imports, but the individual objects are stored as OFGA files. This modularity is known in many game editors (like the Unreal Engine Editor). So, '''OFGA are nothing else than "game assets".''' The drawback of OFGA is that they '''will not import with any vertex shading'''. Only their '''geometries''', attached '''particle''' and '''gunk flags''' get copied into final (baked) level geometry.
:** Individual game assets can be considered a class, when placing or baked into the game, the instances (copies) of that class are made-->
:* '''Objects with actual functions''' (CJBO such as doors, consoles, triggers)
:* Geometry objects with actual functions (CJBO such as doors, consoles, triggers)
:** Some types of CJBO (spawn lists of weapons, characters, powerups and of course flags and patrol paths) are not considered as level geometry.
:** Some types of CJBO (flags, patrol paths, and spawn lists of weapons, characters, powerups) are not considered being part of the level geometry.
;[[XML:AKEV#AGQG|Gunk flags]]
:Properties directly associated with the polygons. Among others, these can be: Transparent, TwoSided, NoCollision, Invisible, NoObjectCollision, NoCharacterCollision, NoDecals, Furniture, Impassable.
;Baking
;Baking
:When a level gets baked, all geometry get merged.
:When a level gets baked, all geometries get merged.
:*Unique level geometry will have vertex painting.
:*Unique level geometry will have vertex painting.
:*Objects derived from already compiled oni-files (shared classes) will have no vertex painting.
:*Objects derived from already compiled oni-files (shared classes) will have no vertex painting.
8,013

edits