Nico de Poel
|
72d03aff9c
|
Fixed some issues with texture atlas, page and ID generation. Texture references generally seem to be in order now, but UVs are still a problem.
|
3 years ago |
Nico de Poel
|
d84a14973b
|
First pass at converting texture info to PS1 VRAM data. Not quite right yet but it's starting to work.
|
3 years ago |
Nico de Poel
|
1882d246b9
|
A bit of cleanup ahead of attempting to make textures work
|
3 years ago |
Nico de Poel
|
bf3bf810f6
|
Added computation of face area by projecting its vertices onto its plane and then generating a bounding box. Will be used for determining tessellation subdivisions.
|
3 years ago |
Nico de Poel
|
e65ce7b673
|
First attempt at calculating lighting per face-vertex with smoothing based on the angle between faces, using edge adjacency to determine neighbouring faces.
Not quite right yet but it does get a result, and it's given me a good idea of what the correct solution for this should be.
|
3 years ago |
Nico de Poel
|
a1e289f5fa
|
Export plane type field, to allow optimizations for axis-aligned planes
|
3 years ago |
Nico de Poel
|
eb548d13d8
|
Added plane and center point to face struct, for early backface culling.
|
3 years ago |
Nico de Poel
|
f6da144c6a
|
Padded some structs to make them 32-bit aligned
|
3 years ago |
Nico de Poel
|
86343e96a9
|
Added export of PVS data
|
3 years ago |
Nico de Poel
|
049a02fec7
|
Added conversion of plane, node and leaf data
|
3 years ago |
Nico de Poel
|
a631e5a90d
|
Reworked PS1BSP format to use dentry-style header info, and added structs for planes, nodes and leafs.
|
3 years ago |
Nico de Poel
|
9af577773d
|
Improved lightmap sampling for face vertices
|
3 years ago |
Nico de Poel
|
f596c008d7
|
Store sampled light data per face vertex, so we can individually light each face without having to average lighting values.
Keeping averaged light per vertex intact for now, as sampling isn't quite perfect yet and I like to have some options.
|
3 years ago |
Nico de Poel
|
ba68bc128e
|
Write face vertex indices to output file instead of triangle data, which takes up less space and allows the PS1 code to decide how to draw the primitives.
|
3 years ago |
Nico de Poel
|
2f3facc4d8
|
Added a few more bits of BSP data, fixed edge list which is in fact an array of ints; the documentation was wrong.
|
3 years ago |
Nico de Poel
|
bd339fc737
|
Separated file loading from BSP processing, making it easier to use data from different sources and also ensuring everything gets cleaned up properly at the end.
|
3 years ago |
Nico de Poel
|
fac8e40425
|
Made an attempt to add some structure to the BSP file processing
|
3 years ago |
Nico de Poel
|
8f82f467a0
|
First import of PS1 MDL/BSP tools project, long overdue
|
3 years ago |