Commit Graph

  • 78b8585093 Added some useful info on perspective transformations based on research. Also added a math source file with a custom rotation matrix routine, which isn't quite working as it should yet. master Nico de Poel 2022-09-21 17:39:37 +0200
  • b8944558fc Clip polygons that are too close to the camera, and increased the analog stick deadzone a bit. Nico de Poel 2022-09-13 10:07:13 +0200
  • 1a4599bf42 Added controller support with first person controls (including analog!) Nico de Poel 2022-09-12 23:57:27 +0200
  • a3827f00a9 Added release configuration to build presets Nico de Poel 2022-09-12 12:37:10 +0200
  • 8bcc7c2e8b Added some more models to play with. Nico de Poel 2022-09-11 21:52:51 +0200
  • 2bacaabfd1 Abuse SVECTOR padding field to store the normal index, so we don't need to do an extra lookup inside the draw loop. Nico de Poel 2022-09-11 20:39:05 +0200
  • 8bb362c53f Scale, translate and convert vertices to SVECTOR ahead of time, to prevent duplicate conversions and make this thing a bit faster. Nico de Poel 2022-09-11 20:34:27 +0200
  • 592145e502 Some cleanup and comments. Nico de Poel 2022-09-11 20:19:11 +0200
  • 2920ac6c16 Made some sense of entity-local transformations, though performing scaling and translation of the vertex data is proving to be a problem. Nico de Poel 2022-09-11 20:11:18 +0200
  • 43adc7c90f First genuine result: combined view and projection matrices allow camera controls in Quake coordinate system with aspect ratio correction. Nico de Poel 2022-09-11 18:56:25 +0200
  • 4b233e596c Small optimization: instead of branching, we can do UV correction with a single calculation. Nico de Poel 2022-09-11 18:20:23 +0200
  • 8ba6b4b073 Checkpoint with some assorted changes, before we break out the CompMatrix and ApplyMatrix big guns. Nico de Poel 2022-09-11 18:13:36 +0200
  • 891a010458 First checkpoint for picking apart and reworking transformations Nico de Poel 2022-09-11 13:29:37 +0200
  • 843c82024c Deleted some old unused texture files. Nico de Poel 2022-09-10 17:21:27 +0200
  • 9914c16d61 Cleaned up some things and made some fixes to allow the app to run on real hardware again. Nico de Poel 2022-09-10 17:20:08 +0200
  • ac329e1511 Set video mode to 60 Hz NTSC Nico de Poel 2022-09-09 14:32:04 +0200
  • 0665342e66 Changed to 512x240 high resolution output, and implemented aspect ratio correction. Nico de Poel 2022-09-09 14:05:40 +0200
  • 15201a547e Added model scale and translation, so that models have the correct relative sizes. Nico de Poel 2022-09-09 13:27:24 +0200
  • 92a3607fe5 Reorganized code so that each model can have its own position and rotation. Added the Shambler model back in. Nico de Poel 2022-09-08 18:22:36 +0200
  • 5e0641c9ff Rewrote model rendering code using GTE acceleration. Now with 100% more perspective! Nico de Poel 2022-09-08 17:46:09 +0200
  • 02f04ef7ca Further optimized model rendering by reorganizing the loaded data and precalculating & precaching often reused values. Nico de Poel 2022-09-08 12:12:30 +0200
  • 8af98229f5 Reorganized the model rendering loop to reduce duplicate calculations and condition checks. Nico de Poel 2022-09-07 13:44:46 +0200
  • 9525e6e134 Cleaned up and inlined the model drawing code, which bumps performance back up again. Nico de Poel 2022-09-06 20:44:48 +0200
  • 0c4b440b0c Added converted Shambler model. Nico de Poel 2022-09-06 15:37:09 +0200
  • 2e56e6b8bf Made screen width and height into predefined constants. Nico de Poel 2022-09-06 14:59:09 +0200
  • 5f54a4f3b8 Added texture mapping for the character model using a split front/back texture approach. Nico de Poel 2022-09-06 14:53:25 +0200
  • 49918efe5f Added support for stripped MDL model. Nico de Poel 2022-09-06 12:25:25 +0200
  • 57b07ae84f First import of some cool bits of 2D graphics Nico de Poel 2022-09-06 00:02:48 +0200