16 Commits (83a8e132088c18ad034745bfd6b9cbf660252b96)

Author SHA1 Message Date
Nico de Poel d73d86ce11 Keep hold of surface flag when converting brush model surfaces, and use this to identify liquid surfaces during material creation. Liquids now have their own material with the option to apply alpha blending depending on the type of liquid. 5 years ago
Nico de Poel 59a64473b0 Marshal only one polygon per brush model surface for conversion into a Unity mesh. Any subsequent polygons are pre-tessellated versions meant for the water warping effect, which we won't need as this will be handled by GPU tessellation. Fixed garbled water surface caused by having two polygon meshes overlapping. 5 years ago
Nico de Poel 331aa4bccc Some cleanup and organization: 5 years ago
Nico de Poel 15e3faa753 Added callback function to allow Quake to send the view parameters to Unity, and apply them to the main camera. This makes actual movement through the map in Unity possible. 5 years ago
Nico de Poel a615495c25 Recursively traverse the BSP tree and create surface meshes per node 5 years ago
Nico de Poel 11c3b2d826 Defined structs for BSP SubModels and Nodes, which will allow for a more systematic conversion to Unity meshes. Also moved more marshalling code into the data classes, which seems like a more natural place. 5 years ago
Nico de Poel 211c64a879 "Fixed" coordinate conversion from Quake to Unity, by swizzling Y and Z coordinates during vector conversion. There seems to be a lot of confusion and disagreement about Quake's coordinate system, but this setup is simple and looks correct both in-game and in-editor, and the world isn't mirrored anymore either. 5 years ago
Nico de Poel 403e7d0eb4 Added struct definitions and marshaling code to obtain texture numbers for brush model surfaces 5 years ago
Nico de Poel 89f3600608 Reconstruct brush model data based on glpoly_t data generated by GLQuake. We can now successfully display BSP maps in Unity! 5 years ago
Nico de Poel 3988db5f8e Defined a bunch more data for brush models and initial marshaling of model data 5 years ago
Nico de Poel 4a7155bb1b Fixed marshaling of multi-dimensional arrays of QGLTextures, and add a second unlit material layer with additive blending for models that use fullbright textures 5 years ago
Nico de Poel e70d363998 Implemented uploading of skin texture data to Unity, and linking loaded alias models to their primary skin texture 5 years ago
Nico de Poel 428eebb941 Pass along alias frame type and correctly count the total number of poses in a model, so that the correct number of pose vertices are marshaled and we can identify models that use group frame animations instead of typical single frames. Quake's model formats are weird. 5 years ago
Nico de Poel 96d2a1fe7b First setup to upload brush models (specifically: the world model) from Quake to Unity. Updated the QWorld class to include the fields added by QuakeSpasm. 5 years ago
Nico de Poel 0f02005c58 Reimplemented uploading of alias model data, which now includes all vertex, triangle index and UV data 5 years ago
Nico de Poel 3b4382954a Some renaming and reorganization 5 years ago
Nico de Poel ec8951fa7c First test to upload model data (brush models and alias models) from Quake to Unity 5 years ago