Commit Graph

137 Commits (main)

Author SHA1 Message Date
_ 6297079ae9 ♻️ Extract IQM crate 2020-05-25 18:22:06 +00:00
_ cdea0ffbea Blank windows 2020-03-26 01:52:57 +00:00
_ 198254aa79 Copy in physics functions from a 2018 project 2020-03-26 01:27:26 +00:00
_ 1c4edfbcd1 Text rendering works, though it's still ugly 2020-03-15 18:44:05 +00:00
_ 6602e36e5b 🚧 Working on the text stream code 2020-03-15 18:14:09 +00:00
_ 26fc58cdd0 🚧 Need to remember how pixel-perfect text works 2020-03-15 16:37:37 +00:00
_ 7e8902a040 🐛 Fix scale factor on the airplane
Add a little truck that drives around.
2020-03-15 15:58:45 +00:00
_ 18dffdc871 🐛 Fix a bug in gl_state and start prototyping monospace font for UI 2020-03-15 01:04:44 +00:00
_ 51074df84c Add the lookaround feature 2020-03-11 03:49:10 +00:00
_ 754fd681c0 I guess it makes more sense with all-quadratic drag 2020-03-11 03:41:58 +00:00
_ ae19b8bb93 Trying to get the flight physics to feel right 2020-03-11 02:26:46 +00:00
_ a6c4ebff39 ♻️ refactor 2020-03-10 12:47:21 +00:00
_ 7f15b34591 At this point I need to hook up a gamepad 2020-03-09 02:59:17 +00:00
_ 8c32e3674d Flying the plane around without proper physics 2020-03-09 02:00:43 +00:00
_ 372761c1b2 Switch free flight mode to quaternion 2020-03-09 01:53:08 +00:00
_ 3d9f8e1a13 The two modes are working okay 2020-03-09 01:33:27 +00:00
_ d39276d93f Prepare to add a flight mode 2020-03-09 01:10:15 +00:00
_ 61a5aae607 Swap in airplane model and do other fun stuff 2020-03-09 00:53:08 +00:00
_ 0abfb67251 Start to sketch out the idea I had 2020-03-09 00:28:00 +00:00
_ 8a6d5518f1 Start to rig stuff for the aerodynamics test I wanted to make in the first place 2020-03-09 00:18:23 +00:00
_ afb0238c1b 🚧 still improving the pass system 2020-03-08 19:32:02 +00:00
_ 9e74609eb1 Use the passes system 2020-03-08 18:33:57 +00:00
_ 7b140301c3 🚧 checkpoint 2020-03-08 18:21:32 +00:00
_ 838226b2de 🚧 Work on pass manager idea 2020-03-08 18:08:22 +00:00
_ 1a42b60f71 ♻️ Extract GameGraphics struct 2020-03-08 17:20:49 +00:00
_ 1560b2d3cd ♻️ Extract shader_closure.rs 2020-03-08 17:07:13 +00:00
_ 56bc305f00 🚧 checkpoint 2020-03-08 16:56:20 +00:00
_ 4faa272877 Fix the debug arrow lighting too 2020-03-08 06:02:02 +00:00
_ 5b1b59db5e Beautiful badly-lit debug arrows 2020-03-08 05:52:26 +00:00
_ 00a51efb19 ♻️ 2020-03-08 05:26:11 +00:00
_ 6c964c2dd2 ♻️ 2020-03-08 05:23:15 +00:00
_ fcac505286 ♻️ 2020-03-08 05:13:50 +00:00
_ e751288dee ♻️ 2020-03-08 05:06:19 +00:00
_ 0db0df9e0e Switch attributes to use iota in a complicated way 2020-03-08 04:55:04 +00:00
_ cd4a66d764 🚧 checkpoint 2020-03-08 04:40:15 +00:00
_ 07d925dc1e ♻️ 2020-03-08 04:17:57 +00:00
_ 61988a61ce ♻️ Make it harder to access the wrong shader vars by accident 2020-03-08 02:53:02 +00:00
_ b8e0429095 Remove unwraps from library code 2020-03-08 02:32:17 +00:00
_ e980599347 ♻️ Allow models to render all their meshes in a batch 2020-03-08 01:59:44 +00:00
_ 04328b3564 ♻️ refactor mesh loading 2020-03-08 01:45:35 +00:00
_ e4f8d3e1b3 Got the _good_ stencil shadows going 2020-03-07 15:05:59 +00:00
_ 376b06abc3 Make it look better 2020-03-07 14:16:51 +00:00
_ 18da547bc5 Made some awful shadows 2020-03-07 03:36:05 +00:00
_ e5b6d7839a Add func to retrieve mesh names 2020-03-07 02:23:23 +00:00
_ cd46a8dfcb Fix clippy lint 2020-03-07 02:23:09 +00:00
_ 24418bfa55 ♻️ Extract gpu_buffers.rs and renderable_model.rs 2020-02-17 03:06:52 +00:00
_ a1c21b92c9 Replace string lookups for uniforms with const int lookups 2020-02-17 02:57:30 +00:00
_ 3c37cd030b Use iota crate 2020-02-17 02:31:52 +00:00
_ c4d6243d15 🚨 Fix clippy warnings 2020-02-17 02:09:13 +00:00
_ a41eb8b969 Switch to glDrawRangeElements 2020-02-17 02:03:53 +00:00
_ 1cc363f8d5 Removing test which no longer passes 2020-02-17 02:01:40 +00:00
_ e2b14f3dfb ♻️ Pull out shader source code to text files 2020-02-17 02:00:41 +00:00
_ af4ef579c1 RenderableModel is now using VBOs.
And I made the sky model use RenderableModel, so there are no unsafe blocks
in the main file now.
2020-02-17 01:53:50 +00:00
_ 0e0e3f833a 🚧 RenderableModel uses an index buffer now 2020-02-17 01:27:57 +00:00
_ 5def012e85 Didn't end up adding GPU buffers, but I made the RenderableModel class.
This class clones all the data from iqm::Model that's needed to draw
a mesh / model safely, so I can draw it without unsafe. It can be
upgraded mostly in-place to use GPU buffers later on.
2020-02-17 01:22:05 +00:00
_ c415e9ed80 🚧 checkpoint before adding GPU buffers 2020-02-17 00:32:52 +00:00
_ d45b95961e ♻️ Safened all GL calls except those that actually do access arbitrary memory. 2020-02-16 23:49:38 +00:00
_ c6f71abbca ♻️ More safening 2020-02-16 23:48:26 +00:00
_ 09ce9ab580 ♻️ Make more safe wrappers 2020-02-16 23:44:01 +00:00
_ 963b344122 ♻️ Extract GLES functions that are trivially safe 2020-02-16 23:32:35 +00:00
_ 6b9b2a4e93 Move main.rs to pumpkin.rs 2020-02-16 23:24:33 +00:00
_ ad7b52c0bf ♻️ Extract file.rs 2020-02-16 23:21:32 +00:00
_ 94f963bca6 ♻️ Extract get_attribute_locations 2020-02-16 23:18:23 +00:00
_ 88e58d5677 ♻️ extract get_uniform_locations 2020-02-16 23:14:28 +00:00
_ 358e139c9c ♻️ Extract texture.rs and add forgotten shader.rs 2020-02-16 23:07:32 +00:00
_ 593784917e ♻️ Extract timestep.rs 2020-02-16 22:58:45 +00:00
_ f8ceec6b9f 🚨 Fix clippy warnings 2020-02-16 22:56:35 +00:00
_ ffcb2c114d ♻️ Remove now-redundant Iqm* and iqm_* prefixes from names 2020-02-16 22:41:24 +00:00
_ c3473b9507 ♻️ Extract iqm.rs 2020-02-16 22:38:34 +00:00
_ b98a4f09d3 Was gonna make that jet fighter game but then didn't 2020-02-16 22:33:31 +00:00
_ 2e98f3eeda Extract TimeStep 2020-01-26 00:54:16 +00:00
_ 34cb79bef0 Factor out ControllerState and WorldState 2020-01-26 00:41:59 +00:00
_ ab03d50a2f Extract point_to_model 2020-01-26 00:31:26 +00:00
_ 71400eb4ff Add arrow key spinnies 2020-01-17 23:18:08 -06:00
_ 9a1e43700d Add textured sky sphere 2020-01-15 03:45:47 +00:00
_ b82b39c8d2 Lighting is decent enough 2020-01-13 04:07:56 +00:00
_ aa36fddb09 Got the stem 2020-01-12 19:10:58 +00:00
_ a1911141e1 Pumpkin is lit af but stem isn't drawing yet 2020-01-12 18:46:16 +00:00
_ 9e03a9cbec Rendering mesh 2020-01-09 03:55:44 +00:00
_ 5687dff5db Loading mesh metadata 2020-01-09 03:15:41 +00:00
_ 52e1b71038 Parsing a few header fields from nom 2020-01-09 00:27:46 +00:00
_ 8b25b2fadd Sending the IQM file into nom 2020-01-09 00:18:12 +00:00
_ 90484feee5 Remember how to use nom and Cargo tests 2020-01-08 23:58:36 +00:00
_ 05eca4840f LOTS of unsafe later... got my black triangle. 2020-01-07 05:50:20 +00:00
_ bfeb111b14 Bit of a snag that Rust doesn't use nul-terminated strings. This is
necessary for Rust's slices to be internally consistent, but it means
a slight FFI hitch when working with C. I have to say I take Rust's
side - Strings without a size have been considered a security smell
for a while now.
2020-01-06 02:19:41 +00:00
_ dfecbdd4fb Shader class... appears to work 2020-01-06 01:57:34 +00:00
_ 952b924425 Aha! OpenGL! And Rust! 2020-01-06 01:25:17 +00:00