rswiki-book/OB3.mediawiki
2015-06-13 00:14:53 -04:00

39 lines
1.2 KiB
Plaintext

[[Category RSC]]
Work in progress.
This page refers to .ob3, a custom format for 3D models created by Jagex. It is used by the RuneScape Classic engine.
<pre>
[Unsigned Short] vertex_count
[Unsigned Short] face_count
for (int i = 0; i < vertex_count; i++)
[Signed Short] vert_x
for (int i = 0; i < vertex_count; i++)
[Signed Short] vert_z
for (int i = 0; i < vertex_count; i++)
[Signed Short] vert_y
for (int i = 0; i < face_count; i++)
[Unsigned Byte] face_vert_count
for (int i = 0; i < face_count; i++)
[Signed Short] face_back
for (int i = 0; i < face_count; i++)
[Signed Short] face_front
for (int i = 0; i < face_count; i++)
[Unsigned Byte] Boolean. Gourad shading?
for (int i = 0; i < face_count; i++) {
for (int j = 0; j < face_vert_count[i]; j++) {
if (vertex_count < 256)
[Unsigned Byte] Unknown
else
[Unsigned Short] Unknown
}
}</pre>
== '''Face sides''' ==
A '''negative''' face_back or face_front value indicates a '''solid colour''', whereas a '''positive''' value indicates a '''texture'''.
== '''Shading''' ==
The hex value '''0xbc614e''' (or 12345678 in decimal) is believed to be used as a trigger for Gouraud shading.