-
Content Count
4,006 -
Joined
-
Last visited
-
Days Won
13
Posts posted by Asmusr
-
-
7 hours ago, Kiwi said:I think trimming the top and bottom 1/6, and then the top 2/3 of the screen would be the 3D part, the 1/3 can be the stats and text. That way you keep the full 64 wide pixels resolution. I think it'll run a bit quicker since it's drawing less.
I can't believe this is working on a TMS9918a chip. Really nice job.I agree it's probably best not to lose any horizontal resolution, although that would have the biggest effect on performance since fewer rays would have to be cast.
-
1 hour ago, fabrice montupet said:Always great work Rasmus!
I used the page https://raphael.js99er.net/ to make some graphic tests but I haven't found the way to put the textures on the game code. So I have no idea if what I drew is interesting or not. Here is the texture of the door. If you have some time, can you take a look on it?
Thanks, that's definitely better than mine. Here's a version using your door.
What I'm looking for now is dungeon textures and maybe a few monsters, so I can make a demo in a dungeon setting.
-
1
-
-
This is close to my vision for the textured raycaster, but I don't think it's likely to happen.
-
5
-
-
In this version I'm not doing all the hard work of updating the screen if you're not moving. That makes it possible to open the doors by shooting them almost like before.
-
4
-
1
-
-
It looks like you're using the first generation of the emulator, and maybe an old version of that, because the sound issue was fixed in one of the last versions. You have to call a function (AudioContext.resume()) from a handler triggered by the user. That way browsers prevent websites from making sounds without the user's approval. Internet Explorer has never been supported.
Couldn't you just use https://js99er.net/#/cart/munchman for the compo?
-
2
-
-
15 hours ago, jrhodes said:Pressing M opens a map in the latest non-textured .bin, but in this one it just garbles the screen.
I have fixed the map issue in this version. It also has more optimizations: unpacked textures and some code moved to scratch pad. I'm not sure the difference is that noticeable, however.
-
4
-
-
Here is the latest cartridge file for the textured raycaster if you want to try it. My TI has been packed away since the beginning of Corona, so I haven't actually tried this or the fast raycaster on real hardware.
-
4
-
-
48 minutes ago, FarmerPotato said:A version that takes place on a single layer of blocks would be an appropriate subset. Like Flatland-you can't see or go outside your plane.
There would still be a lot of hidden things, and features that are not 3D like crafting.
I was thinking of that in 10-liner 49er (aka 99craft) in the contest this year. Only up-and-down and side-to-side like the original Miner from 99er magazine. Or Lost Ruins.
I would be happy to discuss how to implement Minecraft for the TI in another thread. 🙂
-
2
-
-
6 hours ago, artrag said:Please unpack textures! even if you double the space encoding them twice, once in the lower and in the upper nibble it will be worth!
Yes I will try. But it actually requires 4 times the space since I need each pixel in both upper and lower nibble for the max efficiency. Since each texture is 16x64 pixels it will take 2K per texture, so I have to move to a larger bank switched cartridge where I can store 4 textures in each 8K bank.
The other part of the inner texture loop is calculating the source texture address. I use three 16-bit registers for that:
- One for the base address of the texture column.
- One for the offset into the column, represented as an 8.8 fixed point number.
- One for the increment to the offset for each screen pixel, also FP 8.8.
For each pixel written I add the increment to the offset and the high byte of the offset, which is the number of whole pixels, to the column base address.
Actually I think that could be done slightly faster as well if I could assume that no texture column crosses a 256 byte boundary.
-
3
-
-
17 minutes ago, GDMike said:Oooh.. could makeTIcraft with this sorta thing, TIcraft wouldn't need speed, just objects.
If you mean like like Minecraft then no - that would require a real 3D engine that supports horizontal surfaces, for instance.
-
1
-
-
22 hours ago, jrhodes said:I still want to see a finished 3d shooter on the TI.
Here is the latest version of the non-textured game. It has a boss at the end and a little puzzle.
-
5
-
3
-
-
5 hours ago, artrag said:Great work! It seems faster too
It could be a bit faster if I 'unpacked' my textures (from 2 pixels/byte to 2 textures with 1 pixel/byte) so I didn't have to spend time shifting bits around.
-
2
-
-
1 hour ago, GDMike said:And I wanted to use address >FE00 for a couple K and make it a swap address to page in and out to represent my physical user pages of 9-?? Maybe 100 let's say.
Is that not a good way?
You can swap in a 4K SAMS page at >F000 (not >FE00) by setting the SAMS register at >401E to the SAMS page number you want to swap in.
-
1
-
-
You could also save each page in a separate 'program' file. Then you don't have to deal with records, it will be faster to save and load (I think), and you can easily save only the modified pages.
-
1
-
-
The textures are drawn in an online tool (Raphael) I made for the purpose, because I couldn't find anything else that would create seamless textures with fat pixels.
It works with .rap files like the attached, which are really just text files in JSON format.
-
1
-
1
-
-
I fixed some bugs and optimized a bit, and it now looks like this:
The screen in drawn in bitmap mode using the color table only, which gives a resolution of 64x192 with fat 4x1 pixels in full 16 colors.
-
12
-
-
On 8/9/2020 at 3:24 PM, fabrice montupet said:Hard to modify the 8x8 graphics chars without the possibility to test the result on the game. I will try anyway!
The code is on GitHub: https://github.com/Rasmus-M/raycaster
-
On 8/9/2020 at 3:24 PM, fabrice montupet said:I can't find the wall textures in this file. Is it the one of a previous update?
I want to do more work on the texture code branch before I share it. The textures are not edited in Magellan but in an editor I wrote for that purpose.
-
I think we should still maintain the rpk format in the TI community, even in the event that MAME stopped supporting it. And I would very much like to see Classic99 supporting it too.
-
It looks like UTF-8 encoded characters that are not properly decoded. Maybe I will look at it tomorrow.
-
1
-
-
I like the rpk format because it's one program one file. In a browser you cannot load a file that the user didn't ask for, so you cannot load digdugd.bin if the user asked for digdugc.bin. One thing I believe the rpk format is missing is the ability to load GROMs at different bases.
-
8 hours ago, fabrice montupet said:Yes, having ported Raycasting on the TI-99/4A is a real feat. Rasmus'work will always impressed me! Rasmus, you're awesome!
But I think that (but it is my own opinion) that colors choices and graphics (especially the soldier shape) could be improved and more harmonious.Thanks. You're welcome to improve the graphics. I have attached the Magellan file. It also contains the first level map if you want to design another one.
-
3
-
-
I fixed a number of issues, and now it's close to working correctly. But I still think there is some issue with the textures in the horizontal direction.
Although the code is not yet optimized, clearly textures are too slow for the a person shooter, so this branch of the code intended for something like an RPG.
-
5
-
1
-
-
After fixing a mask it looks like this.
-
12
-

Raycaster
in TI-99/4A Development
Posted
I'm not going to make a WW2 related game, so no.