Raycasting
Posted: Wed Feb 21, 2024 1:33 am
Here's an interesting article about raycasting (not to be confused with raytracing).
This is fake 3D method behind early first person shooters, Wolfenstein, Doom, etc.
https://lodev.org/cgtutor/raycasting.html
And another:
https://permadi.com/1996/05/ray-casting ... -contents/
I think something like that could be rendered by libSkia in a Widget.
Writing it would be a bit of work.
It's also an exercise a bit like reinventing the wheel.
We could probably use Doom engine itself since that was open sourced like 27 years ago.
https://www.chocolate-doom.org/wiki/ind ... evelopment
Here's an article with a breakdown on an HTML5 version (which maybe we could use inside a Browser Widget)
Probably a better use of time would be finding a small game engine or parts of one, that's available in a shared library form, preferably has a basic C APIs, that wouldn't be a huge task to get at least some of it working using FFI binding strings and either rendered in a Widget or use FFI to make a new window for game engine to render to.
I think we should build up our own collection wrapped-up extension libraries and generic template game assets and such that we can use. OXT should have the capabilities of something like PyGame (actually we already have some of PyGames features available for our xTalk. or with The OXT HIDAPI extension for joystick stuff. Get a GameJam sort of thing going.
This is fake 3D method behind early first person shooters, Wolfenstein, Doom, etc.
https://lodev.org/cgtutor/raycasting.html
And another:
https://permadi.com/1996/05/ray-casting ... -contents/
I think something like that could be rendered by libSkia in a Widget.
Writing it would be a bit of work.
It's also an exercise a bit like reinventing the wheel.
We could probably use Doom engine itself since that was open sourced like 27 years ago.
https://www.chocolate-doom.org/wiki/ind ... evelopment
Here's an article with a breakdown on an HTML5 version (which maybe we could use inside a Browser Widget)
Probably a better use of time would be finding a small game engine or parts of one, that's available in a shared library form, preferably has a basic C APIs, that wouldn't be a huge task to get at least some of it working using FFI binding strings and either rendered in a Widget or use FFI to make a new window for game engine to render to.
I think we should build up our own collection wrapped-up extension libraries and generic template game assets and such that we can use. OXT should have the capabilities of something like PyGame (actually we already have some of PyGames features available for our xTalk. or with The OXT HIDAPI extension for joystick stuff. Get a GameJam sort of thing going.